技术贴|【RK3588】ELF 2开发板如何添加exFAT和NTFS文件系统格式原创

发布时间:2025-08-27 09:07:42
rk3588 RK3588开发板 文件系统

基于RK3588设计的ELF 2开发板在搭载Desktop 22.04系统时,对TF卡的文件系统支持存在以下限制:

  • 不支持exFAT格式;

  • 支持NTFS格式,但需手动挂载;

针对上述兼容性问题,本文将介绍如何通过系统配置实现对该两种文件系统的支持,并配置自动挂载功能。

 

Windows系统格式化存储设备

在使用TF卡前,需通过Windows自带工具将其格式化为目标文件系统(exFAT或NTFS),操作步骤如下:

1、将U盘插入电脑的USB接口,确保系统识别到设备;

2、打开“此电脑”;

3、在U盘图标上右键单击,选择“格式化”;

4、在弹出的格式化窗口中选择所需的文件系统格式(exFAT或NTFS);

5、点击 “开始”,完成存储设备的格式化操作;

 

内核添加文件系统支持

通过内核配置添加exFAT和NTFS格式支持,需完成以下步骤:

打开图形配置界面

1、进入源码目录并启动配置工具

在Ubuntu终端中执行以下命令:

elf@ubuntu:~/work/ELF2-linux-source./build.sh kconfig

 

2、配置文件系统支持项

在弹出的内核配置界面中,导航至DOS/FAT/EXFAT/NT Filesystems菜单,勾选以下选项:

保存配置并退出。

 

编译文件系统镜像

1、执行编译命令

配置保存后,在终端中运行:

elf@ubuntu:~/work/ELF2-linux-source./build.sh kernel

 

2、获取输出文件

编译完成后,生成的文件系统镜像会存储在output/firmware目录下,其中boot.img即为需要烧录到开发板的镜像。

 

更新系统到开发板

参考《ELF 2开发板编译手册》中“5.3更新内核”章节的详细步骤,将生成的boot.img镜像烧录至ELF 2开发板,完成系统更新。

 

测试验证

手动挂载exFAT

1、查看文件系统挂载点

执行df -h命令,无TF卡挂载信息:

root@elf2-desktop:~# df -hFilesystem      Size  Used Avail Use% Mounted on/dev/root        14G  4.6G  8.6G  35% /tmpfs           7.8G     0  7.8G   0% /dev/shmtmpfs           3.2G  2.5M  3.2G   1% /runtmpfs           5.0M  4.0K  5.0M   1% /run/locktmpfs           7.8G   12K  7.8G   1% /tmp/dev/mmcblk0p7  123M   12M  108M  10% /oem/dev/mmcblk0p8   96G  284M   92G   1% /userdatatmpfs           1.6G   84K  1.6G   1% /run/user/1000tmpfs           1.6G   56K  1.6G   1% /run/user/0

 

2、确认设备节点

执行fdisk -l命令查看TF卡分区信息,确认TF卡设备节点为/dev/mmcblk1:

root@elf2-desktop:~# fdisk -lDisk /dev/ram0: 4 MiB, 4194304 bytes, 8192 sectorsUnits: sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 4096 bytesI/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk /dev/mmcblk0: 115.23 GiB, 123731968000 bytes, 241664000 sectorsUnits: sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisklabel type: gptDisk identifier: 83480000-0000-4658-8000-52E4000055BA
Device            Start       End   Sectors   Size Type/dev/mmcblk0p1    16384     24575      8192     4M unknown/dev/mmcblk0p2    24576     32767      8192     4M unknown/dev/mmcblk0p3    32768    163839    131072    64M unknown/dev/mmcblk0p4   163840    425983    262144   128M unknown/dev/mmcblk0p5   425984    491519     65536    32M unknown/dev/mmcblk0p6   491520  29851647  29360128    14G unknown/dev/mmcblk0p7 29851648  30113791    262144   128M unknown/dev/mmcblk0p8 30113792 241663966 211550175 100.9G unknown
Disk /dev/mmcblk1: 59.48 GiB, 63864569856 bytes, 124735488 sectorsUnits: sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisklabel type: dosDisk identifier: 0x00000000
Device         Boot      Start        End    Sectors  Size Id Type/dev/mmcblk1p1      4294967295 8589934589 4294967295    2T ff BBT/dev/mmcblk1p2      4294967295 8589934589 4294967295    2T ff BBT/dev/mmcblk1p3      4294967295 8589934589 4294967295    2T ff BBT/dev/mmcblk1p4      4294967295 6854241533 2559274239  1.2T ff BBT

 

3、手动挂载

创建exfat_fs目录作为exFAT格式TF卡的挂载点,-t exfat指定文件系统类型为exFAT,将dev/mmcblk1挂载到exfat_fs/。

root@elf2-desktop:~# mkdir exfat_fsroot@elf2-desktop:~# mount -t exfat /dev/mmcblk1 exfat_fs/

 

4、查看文件系统挂载点

再次查看挂载状态,确认dev/mmcblk1已挂载到exfat_fs/(验证挂载成功)。

root@elf2-desktop:~# df -hFilesystem      Size  Used Avail Use% Mounted on/dev/root        14G  4.6G  8.6G  35% /tmpfs           7.8G     0  7.8G   0% /dev/shmtmpfs           3.2G  2.5M  3.2G   1% /runtmpfs           5.0M  4.0K  5.0M   1% /run/locktmpfs           7.8G   12K  7.8G   1% /tmp/dev/mmcblk0p7  123M   12M  108M  10% /oem/dev/mmcblk0p8   96G  284M   92G   1% /userdatatmpfs           1.6G   84K  1.6G   1% /run/user/1000tmpfs           1.6G   56K  1.6G   1% /run/user/0/dev/mmcblk1     60G  896K   60G   1% /root/exfat_fs

 

5、读写验证

root@elf2-desktop:~# echo 1 > exfat_fs/test.txtroot@elf2-desktop:~# syncroot@elf2-desktop:~# cat exfat_fs/test.txt1

 

6、卸载TF卡

TF卡使用完成后,在弹出TF卡前,需要使用umount命令卸载TF卡:

root@elf2-desktop:~# umount exfat_fs

 

手动挂载NTFS

1、查看文件系统挂载点

执行df -h命令,无TF卡挂载信息:

root@elf2-desktop:~# df -hFilesystem      Size  Used Avail Use% Mounted on/dev/root        14G  4.6G  8.5G  36% /tmpfs           7.8G     0  7.8G   0% /dev/shmtmpfs           3.2G  2.5M  3.2G   1% /runtmpfs           5.0M  4.0K  5.0M   1% /run/locktmpfs           7.8G   12K  7.8G   1% /tmp/dev/mmcblk0p7  123M   12M  108M  10% /oem/dev/mmcblk0p8   96G  284M   92G   1% /userdatatmpfs           1.6G   88K  1.6G   1% /run/user/1000tmpfs           1.6G   56K  1.6G   1% /run/user/0

 

2、确认设备节点

执行fdisk -l命令查看TF卡分区信息,确认TF卡设备节点为/dev/mmcblk1:

root@elf2-desktop:~# fdisk -lDisk /dev/ram0: 4 MiB, 4194304 bytes, 8192 sectorsUnits: sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 4096 bytesI/O size (minimum/optimal): 4096 bytes / 4096 bytesDisk /dev/mmcblk0: 115.23 GiB, 123731968000 bytes, 241664000 sectorsUnits: sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisklabel type: gptDisk identifier: 50530000-0000-4F1D-8000-4315000064BFDevice            Start       End   Sectors   Size Type/dev/mmcblk0p1    16384     24575      8192     4M unknown/dev/mmcblk0p2    24576     32767      8192     4M unknown/dev/mmcblk0p3    32768    163839    131072    64M unknown/dev/mmcblk0p4   163840    425983    262144   128M unknown/dev/mmcblk0p5   425984    491519     65536    32M unknown/dev/mmcblk0p6   491520  29851647  29360128    14G unknown/dev/mmcblk0p7 29851648  30113791    262144   128M unknown/dev/mmcblk0p8 30113792 241663966 211550175 100.9G unknownDisk /dev/mmcblk1: 59.48 GiB, 63864569856 bytes, 124735488 sectorsUnits: sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisklabel type: dosDisk identifier: 0x73736572Device         Boot      Start        End    Sectors   Size Id Type/dev/mmcblk1p1      1920221984 3736432267 1816210284   866G 72 unknown/dev/mmcblk1p2      1936028192 3889681299 1953653108 931.6G 6c unknown/dev/mmcblk1p3               0          0          0     0B  0 Empty/dev/mmcblk1p4        27722122   27722568        447 223.5K  0 EmptyPartition table entries are not in disk order.

 

3、手动挂载

创建ntfs_fs目录作为NTFS格式TF卡的挂载点,-t ntfs-3g指定使用ntfs-3g驱动挂载NTFS格式(Linux 下NTFS读写的常用驱动),将dev/mmcblk1挂载到ntfs_fs/。

root@elf2-desktop:~# mkdir ntfs_fsroot@elf2-desktop:~# mount -t ntfs-3g /dev/mmcblk1 ntfs_fs/

 

4、查看文件系统挂载点

root@elf2-desktop:~# df -hFilesystem      Size  Used Avail Use% Mounted on/dev/root        14G  4.6G  8.5G  36% /tmpfs           7.8G     0  7.8G   0% /dev/shmtmpfs           3.2G  2.5M  3.2G   1% /runtmpfs           5.0M  4.0K  5.0M   1% /run/locktmpfs           7.8G   12K  7.8G   1% /tmp/dev/mmcblk0p7  123M   12M  108M  10% /oem/dev/mmcblk0p8   96G  284M   92G   1% /userdatatmpfs           1.6G   88K  1.6G   1% /run/user/1000tmpfs           1.6G   56K  1.6G   1% /run/user/0/dev/mmcblk1     60G   88M   60G   1% /root/ntfs_fs

 

5、读写验证

root@elf2-desktop:~# echo 1 > ntfs_fs/test.txtroot@elf2-desktop:~# syncroot@elf2-desktop:~# cat ntfs_fs/test.txt1

 

6、卸载TF卡

TF卡使用完成后,在弹出TF卡前,需要使用umount命令卸载TF卡:

root@elf2-desktop:~# umount ntfs_fs

 

自动挂载exFAT

1、确认设备节点

执行fdisk -l命令查看TF卡分区信息,确认TF卡设备节点为/dev/mmcblk1:

root@elf2-desktop:~# fdisk -lDisk /dev/ram0: 4 MiB, 4194304 bytes, 8192 sectorsUnits: sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 4096 bytesI/O size (minimum/optimal): 4096 bytes / 4096 bytesDisk /dev/mmcblk0: 115.23 GiB, 123731968000 bytes, 241664000 sectorsUnits: sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisklabel type: gptDisk identifier: D06F0000-0000-4C4B-8000-216D000071A3Device            Start       End   Sectors   Size Type/dev/mmcblk0p1    16384     24575      8192     4M unknown/dev/mmcblk0p2    24576     32767      8192     4M unknown/dev/mmcblk0p3    32768    163839    131072    64M unknown/dev/mmcblk0p4   163840    425983    262144   128M unknown/dev/mmcblk0p5   425984    491519     65536    32M unknown/dev/mmcblk0p6   491520  29851647  29360128    14G unknown/dev/mmcblk0p7 29851648  30113791    262144   128M unknown/dev/mmcblk0p8 30113792 241663966 211550175 100.9G unknownDisk /dev/mmcblk1: 59.48 GiB, 63864569856 bytes, 124735488 sectorsUnits: sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisklabel type: dosDisk identifier: 0x00000000Device         Boot      Start        End    Sectors  Size Id Type/dev/mmcblk1p1      4294967295 8589934589 4294967295    2T ff BBT/dev/mmcblk1p2      4294967295 8589934589 4294967295    2T ff BBT/dev/mmcblk1p3      4294967295 8589934589 4294967295    2T ff BBT/dev/mmcblk1p4      4294967295 6854241533 2559274239  1.2T ff BBT

 

2、查看TF卡UUID或设备名

root@elf2-desktop:~# blkid/dev/mmcblk0p7: LABEL="oem" UUID="5fce90f2-82c7-401e-8ccd-b265d1d1a04e" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="oem" PARTUUID="a9390000-0000-4339-8000-737c00004c7d"/dev/mmcblk0p5: PARTLABEL="backup" PARTUUID="0b7f0000-0000-484e-8000-37da00004385"/dev/mmcblk0p3: PARTLABEL="boot" PARTUUID="7a3f0000-0000-446a-8000-702f00006273"/dev/mmcblk0p1: PARTLABEL="uboot" PARTUUID="fa0f0000-0000-4829-8000-6e9700004422"/dev/mmcblk0p8: LABEL="userdata" UUID="0ab8136a-151e-4ecb-8c4e-bcba85a0ef17" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="userdata" PARTUUID="59490000-0000-4b30-8000-47ea00003767"/dev/mmcblk0p6: UUID="4d1b5f8b-020c-499a-bac9-269c5104f9e7" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="rootfs" PARTUUID="614e0000-0000-4b53-8000-1d28000054a9"/dev/mmcblk0p4: PARTLABEL="recovery" PARTUUID="8e500000-0000-4554-8000-7a1500002ce6"/dev/mmcblk0p2: PARTLABEL="misc" PARTUUID="4d2e0000-0000-4d59-8000-14bb00003cfd"/dev/mmcblk1: LABEL="M-fM-^VM-0M-eM-^JM- M-eM-^MM-7" UUID="24BD-6CCA" BLOCK_SIZE="512" TYPE="exfat"

 

3、创建挂载点目录

root@elf2-desktop:~# mkdir -p /mnt/sdcard

 

4、编辑/etc/fstab文件

root@elf2-desktop:~# vi /etc/fstab

 

文件内容如下:

#                                           /dev/root                       /                       ext4            rw,noauto               0       1proc                            /proc                   proc            defaults                0       0devpts                          /dev/pts                devpts          defaults,gid=5,mode=620 0       0tmpfs                           /dev/shm                tmpfs           mode=0777               0       0tmpfs                           /tmp                    tmpfs           mode=1777               0       0tmpfs                           /run                    tmpfs           mode=0755,nosuid,nodev  0       0sysfs                           /sys                    sysfs           defaults                0       0debug                           /sys/kernel/debug       debugfs         defaults                0       0pstore                          /sys/fs/pstore          pstore          defaults                0       0/dev/mmcblk0p7                  /oem                    ext4            defaults                0       0/dev/mmcblk0p8                  /userdata               ext4            defaults                0       0/dev/mmcblk1                    /mnt/sdcard             exfat           defaults,nofail         0       0
 
含义:

 

5、保存重启

root@elf2-desktop:~# syncroot@elf2-desktop:~# reboot

 

6、查看文件系统挂载点

重启后TF卡自动挂载到/mnt/sdcard(自动挂载成功):

root@elf2-desktop:~# df -hFilesystem      Size  Used Avail Use% Mounted on/dev/root        14G  4.6G  8.5G  36% /tmpfs           7.8G     0  7.8G   0% /dev/shmtmpfs           3.2G  2.5M  3.2G   1% /runtmpfs           5.0M  4.0K  5.0M   1% /run/locktmpfs           7.8G   12K  7.8G   1% /tmp/dev/mmcblk0p7  123M   12M  108M  10% /oem/dev/mmcblk0p8   96G  284M   92G   1% /userdata/dev/mmcblk1     60G  768K   60G   1% /mnt/sdcardtmpfs           1.6G   84K  1.6G   1% /run/user/1000tmpfs           1.6G   56K  1.6G   1% /run/user/0

 

7、读写验证

root@elf2-desktop:~# echo 1 > /mnt/sdcard/test.txtroot@elf2-desktop:~# syncroot@elf2-desktop:~# cat /mnt/sdcard/test.txt1

 

自动挂载NTFS

1、确认设备节点

执行fdisk -l命令查看TF卡分区信息,确认TF卡设备节点为/dev/mmcblk1:

root@elf2-desktop:~# fdisk -lDisk /dev/ram0: 4 MiB, 4194304 bytes, 8192 sectorsUnits: sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 4096 bytesI/O size (minimum/optimal): 4096 bytes / 4096 bytesDisk /dev/mmcblk0: 115.23 GiB, 123731968000 bytes, 241664000 sectorsUnits: sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisklabel type: gptDisk identifier: 50530000-0000-4F1D-8000-4315000064BFDevice            Start       End   Sectors   Size Type/dev/mmcblk0p1    16384     24575      8192     4M unknown/dev/mmcblk0p2    24576     32767      8192     4M unknown/dev/mmcblk0p3    32768    163839    131072    64M unknown/dev/mmcblk0p4   163840    425983    262144   128M unknown/dev/mmcblk0p5   425984    491519     65536    32M unknown/dev/mmcblk0p6   491520  29851647  29360128    14G unknown/dev/mmcblk0p7 29851648  30113791    262144   128M unknown/dev/mmcblk0p8 30113792 241663966 211550175 100.9G unknownDisk /dev/mmcblk1: 59.48 GiB, 63864569856 bytes, 124735488 sectorsUnits: sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisklabel type: dosDisk identifier: 0x73736572Device         Boot      Start        End    Sectors   Size Id Type/dev/mmcblk1p1      1920221984 3736432267 1816210284   866G 72 unknown/dev/mmcblk1p2      1936028192 3889681299 1953653108 931.6G 6c unknown/dev/mmcblk1p3               0          0          0     0B  0 Empty/dev/mmcblk1p4        27722122   27722568        447 223.5K  0 EmptyPartition table entries are not in disk order.

 

2、查看TF卡UUID或设备名

root@elf2-desktop:~# blkid/dev/mmcblk0p7: LABEL="oem" UUID="5fce90f2-82c7-401e-8ccd-b265d1d1a04e" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="oem" PARTUUID="a9390000-0000-4339-8000-737c00004c7d"/dev/mmcblk0p5: PARTLABEL="backup" PARTUUID="0b7f0000-0000-484e-8000-37da00004385"/dev/mmcblk0p3: PARTLABEL="boot" PARTUUID="7a3f0000-0000-446a-8000-702f00006273"/dev/mmcblk0p1: PARTLABEL="uboot" PARTUUID="fa0f0000-0000-4829-8000-6e9700004422"/dev/mmcblk0p8: LABEL="userdata" UUID="0ab8136a-151e-4ecb-8c4e-bcba85a0ef17" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="userdata" PARTUUID="59490000-0000-4b30-8000-47ea00003767"/dev/mmcblk0p6: UUID="4d1b5f8b-020c-499a-bac9-269c5104f9e7" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="rootfs" PARTUUID="614e0000-0000-4b53-8000-1d28000054a9"/dev/mmcblk0p4: PARTLABEL="recovery" PARTUUID="8e500000-0000-4554-8000-7a1500002ce6"/dev/mmcblk0p2: PARTLABEL="misc" PARTUUID="4d2e0000-0000-4d59-8000-14bb00003cfd"/dev/mmcblk1: LABEL="M-fM-^VM-0M-eM-^JM- M-eM-^MM-7" BLOCK_SIZE="512" UUID="14B26844B2682C84" TYPE="ntfs"

 

3、创建挂载点目录

root@elf2-desktop:~# mkdir -p /mnt/sdcard

 

4、编辑/etc/fstab文件

root@elf2-desktop:~# vi /etc/fstab

 

文件内容如下:

#                                                           /dev/root                       /                       ext4            rw,noauto               0       1proc                            /proc                   proc            defaults                0       0devpts                          /dev/pts                devpts          defaults,gid=5,mode=620 0       0tmpfs                           /dev/shm                tmpfs           mode=0777               0       0tmpfs                           /tmp                    tmpfs           mode=1777               0       0tmpfs                           /run                    tmpfs           mode=0755,nosuid,nodev  0       0sysfs                           /sys                    sysfs           defaults                0       0debug                           /sys/kernel/debug       debugfs         defaults                0       0pstore                          /sys/fs/pstore          pstore          defaults                0       0/dev/mmcblk0p7                  /oem                    ext4            defaults                0       0/dev/mmcblk0p8                  /userdata               ext4            defaults                0       0/dev/mmcblk1                    /mnt/sdcard             ntfs-3g         defaults,nofail         0       0

 

含义:

 

5、保存重启

root@elf2-desktop:~# syncroot@elf2-desktop:~# reboot

 

6、查看文件系统挂载点

重启后TF卡自动挂载到/mnt/sdcard(自动挂载成功):

root@elf2-desktop:~# df -hFilesystem      Size  Used Avail Use% Mounted on/dev/root        14G  4.6G  8.6G  35% /tmpfs           7.8G     0  7.8G   0% /dev/shmtmpfs           3.2G  2.5M  3.2G   1% /runtmpfs           5.0M  4.0K  5.0M   1% /run/locktmpfs           7.8G   12K  7.8G   1% /tmp/dev/mmcblk0p7  123M   12M  108M  10% /oem/dev/mmcblk0p8   96G  284M   92G   1% /userdata/dev/mmcblk1     60G   88M   60G   1% /mnt/sdcardtmpfs           1.6G   88K  1.6G   1% /run/user/1000tmpfs           1.6G   56K  1.6G   1% /run/user/0

 

7、读写验证

root@elf2-desktop:~# echo 1 > /mnt/sdcard/test.txtroot@elf2-desktop:~# syncroot@elf2-desktop:~# cat /mnt/sdcard/test.txt1

其它推荐:

推荐阅读:

/* 53客服*/ /* 百度统计*/ /* 百度站长*/