Linux 以编程方式获取USB文件系统格式

Linux 以编程方式获取USB文件系统格式,linux,usb,embedded-linux,mount,Linux,Usb,Embedded Linux,Mount,我需要将USB驱动器安装到运行Linux的嵌入式系统上。USB可以是FAT、NTFS或ExFAT格式 如何在代码中处理此问题,以便在mount命令中传递适当的类型,例如 安装-t vfat/dev/sda1/mnt 因此,我尝试了以下方法: 挂载-t vfat,ntfs/dev/sda1/mnt 此命令给出的参数无效,但如果USB为NTFS或VFAT格式,它将成功装载USB。然而,如果我试图给予 挂载-t vfat、ntfs、exfat/dev/sda1/mnt 命令失败 任何指针都会非常有用。

我需要将USB驱动器安装到运行Linux的嵌入式系统上。USB可以是FAT、NTFS或ExFAT格式

如何在代码中处理此问题,以便在mount命令中传递适当的类型,例如

安装-t vfat/dev/sda1/mnt

因此,我尝试了以下方法:

挂载-t vfat,ntfs/dev/sda1/mnt

此命令给出的参数无效,但如果USB为NTFS或VFAT格式,它将成功装载USB。然而,如果我试图给予

挂载-t vfat、ntfs、exfat/dev/sda1/mnt

命令失败


任何指针都会非常有用。

从安装手册页面:

如果未提供-t选项,或者指定了自动类型, mount将尝试猜测所需的类型。Mount使用blkid 用于猜测文件系统类型的库

libblkid是否可用于您的嵌入式系统

尝试:


如评论中所述,确保嵌入式系统的内核支持exfat。

内核和挂载程序都支持exfat吗?如果单独指定
-t exfat
,它是否有效?不,它不起作用。我想我需要在系统中安装exfat UTIL。我也尝试了自动。但它不起作用。blkid存在,但在命令输出中不提供文件系统类型。blkid/dev/block/*/dev/block/sda1:UUID=“AE12479512476207”
mount -t auto /dev/sda1 /mnt
mount /dev/sda1 /mnt