linux usb光驱挂载报错

最近解了一个问题,就是Linux光驱自动挂载报错

通过执行上图中的

mount-t "iso9660" -o"uhelper=udisks2,nodev,nosuid,uid=1000,gid=1000,iocharset=utf8,mode=0400,dmode=0500""/dev/sr0" /mnt

发现,确实没有办法挂载。

但是通过实践发现,如果把iocharset=utf8去掉就可以挂载了。

系统中挂载光驱是

/usr/lib/udisks2/udisksd这个进程实现的,然后找到对应的src.rpm包,在src/udisklinuxfilesystem.c中可以知道系统默认的就是utf8这种编码方式,如果修改可能会造成一些隐患。

通过在我x86_64机器上挂载usb光驱发现,他是可以通过utf8方式挂载的(中间由于自己粗心,挂载时把utf8写成了uft8,导致严重的判断失误,真是不应该)。

此时就想到了可能是内核上面的一些配置选项没有打开导致的

通过在menuconfig里搜索iocharset,utf8等一些于配置相关的参数,发现在

Filesystems->Native language support中有一些相关的配置。

通过不断尝试,最终可以发现NLSUTF-8这个参数编译进内核就可以让光驱正常挂载了。

总结:

遇到问题多观察,复现现象要多分析,多尝试,找到问题的关键点。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值