ext4 exfat ntfs无法自动挂载问题

问题描述

只有fat32可以识别,其它格式无法正常挂载。

处理过程

ext4处理

# create /dev/sda create /dev/sda1 [  340.311161] EXT4-fs (sda1): Unrecognized mount option "utf8=1" or missing value [  340.323172]
> EXT4-fs (sda1): Unrecognized mount option "utf8=1" or missing value [ 
> 340.341263] F2FS-fs (sda1): Can't find valid F2FS filesystem in 1th superblock [  340.352551] F2FS-fs (sda1): Can't find valid F2FS
> filesystem in 2th superblock

查看挂载脚本:

# cat etc/mdev.conf 

sd[a-z]([0-9])?    0:0 666     * if [ $ACTION = "add" ]; then echo create /dev/$MDEV > /dev/console; /etc/mdev/udisk_insert;else echo remove /dev/$MDEV > /dev/console; /etc/mdev/udisk_remove;fi

mmcblk1(p[0-9])?    0:0 666     * if [ $ACTION = "add" ]; then echo create /dev/$MDEV > /dev/console; /etc/mdev/sdcard_insert;else echo remove /dev/$MDEV > /dev/console; /etc/mdev/sdcard_remove;fi
# ls etc/mdev
do_mount         sdcard_insert    udisk_insert
do_mount_strict  sdcard_remove    udisk_remove

# cat etc/mdev/udisk_insert 
#!/bin/sh
if [ -d /sys/block/*/$MDEV ] || [ -d /sys/block/$MDEV -a ! -d /sys/block/$MDEV/$MDEV* ]
then
        mkdir -p /mnt/usb/$MDEV
        /etc/mdev/do_mount /dev/$MDEV /mnt/usb/$MDEV -o defaults,noatime,async,utf8=1,errors=continue
fi

# cat etc/mdev/do_mount     
#!/bin/sh
mount -t vfat $@
if [ $? -ne 0 ]; then
        mount.ntfs-3g $@
        if [ $? -ne 0 ]; then
                mount.exfat $@
                if [ $? -ne 0 ]; then
                        mount $@
                fi
        fi
fi

可以看到udisk_insert中有“utf8=1”,应该是在ext4中不被支持。删除该选项,ext4回复正常。

exfat和ntfs处理

exFat

create /dev/sda
create /dev/sda1
[18623.906654] F2FS-fs (sda1): Magic Mismatch, valid(0xf2f52010) - read(0x0)
[18623.914357] F2FS-fs (sda1): Can't find valid F2FS filesystem in 1th superblock
[18623.923430] F2FS-fs (sda1): Magic Mismatch, valid(0xf2f52010) - read(0x0)
[18623.931140] F2FS-fs (sda1): Can't find valid F2FS filesystem in 2th superblock

NTFS报错

create /dev/sdb1
create /dev/sdb
[17643.773526] F2FS-fs (sdb1): Magic Mismatch, valid(0xf2f52010) - read(0xc0856600)
[17643.781892] F2FS-fs (sdb1): Can't find valid F2FS filesystem in 1th superblock
[17643.791243] F2FS-fs (sdb1): Magic Mismatch, valid(0xf2f52010) - read(0x0)
[17643.798948] F2FS-fs (sdb1): Can't find valid F2FS filesystem in 2th superblock

应该是文件系统不支持。

内核打开对应NTFS配置:
CONFIG_NTFS_FS=y
# CONFIG_NTFS_DEBUG is not set
CONFIG_NTFS_RW=y

没有看到exFAT配置项,应该是fat里面已经打开。

buildroot下载工具包

etc\mdev\do_mount看到:

#!/bin/sh
mount -t vfat $@
if [ $? -ne 0 ]; then
	mount.ntfs-3g $@
	if [ $? -ne 0 ]; then
		mount.exfat $@
		if [ $? -ne 0 ]; then
			mount $@
		fi
	fi
fi

其中mount.exfat和mount.ntfs-3g都没有。所以不能正常挂载。下载工具:
f2fs-tools-v1.11.0.tar.gz
fuse-exfat-1.3.0.tar
fuse-2.9.9.tar
exfat-utils-1.3.0.tar
ntfs-3g_ntfsprogs-2017.3.23

重新编译打包 。

exfat和ntfs挂载读写
/dev/sda1 on /mnt/usb/sda1 type fuseblk (rw,nosuid,nodev,noatime,user_id=0,group_id=0,allow_other,blksize=4096)
/dev/sdb1 on /mnt/usb/sdb1 type fuseblk (rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096)

读写ntfs:

# touch /mnt/usb/sda1/123ntfs/ntfa_write 
# ls /mnt/usb/sda1/123ntfs/             
ntfa_write

读写exfat:

# touch /mnt/usb/sdb1/exfat.txt         
# ls  /mnt/usb/sdb1/              
exfat.txt  test.txt
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值