CBJenjoy 发表于 2016-01-16 19:04

关于mount_msdosfs挂载中文错误

mount_msdosfs -L zh_CN.UTF-8这样挂载会产生段段误:
Segmentation fault

而用
mount_msdosfs挂载就没事,不能加-L参数

lsstarboy 发表于 2016-01-17 16:03

fat的编码应该是gbk或gb2312的吧?

CBJenjoy 发表于 2016-01-17 19:54

回复 2# lsstarboy

这不是重点啊,只要加上-L参数,无论是en,zh,还是gbk还是什么都会出现这个错误,以前都可以的,不知道,我设置了什么,但回想起来我也没动过什么设置
Freebsd9.3
   

kangtian 发表于 2016-01-18 09:36

不知你用的是自定义内核还是通用内核,我注意到freebsd的内核模块中不光有msdosfs模块,还有相应的msdosfs_iconv模块,这个模块应该就是处理语言编码转换的。你不妨试试加载这个模块。

CBJenjoy 发表于 2016-01-18 19:08

kangtian 发表于 2016-01-18 09:36 static/image/common/back.gif
不知你用的是自定义内核还是通用内核,我注意到freebsd的内核模块中不光有msdosfs模块,还有相应的msdosfs_ ...

通用内核,你能试试你的mount_msdosfs 能用-L参数吗
现在用的就是msdosfs_iconv

我怀疑是mount_msdosfs没用对-L参数后的字符段做'\0'结尾检查,引起的段错误

lsstarboy 发表于 2016-01-19 08:52

root@test:~ # mount_msdosfs -D CP936 -L zh_CN.GB2312 /dev/da0s1 /mnt
root@test:~ # ll /mnt
total 3296
-rwxr-xr-x1 rootwheel1931878 Jun 302015 WinSCP.rar*
-rwxr-xr-x1 rootwheel1421975 Aug 27 09:19 ????????1-8??????????.rar*
root@test:~ # ls -w /mnt
WinSCP.rar                      盗墓笔记1-8大结局全集.rar
root@test:~ # uname -a
FreeBSD wlan 10.2-RELEASE FreeBSD 10.2-RELEASE #0 r286666: Wed Aug 12 15:26:37 UTC 2015   root@releng1.nyi.freebsd.org:/usr/obj/usr/src/sys/GENERICamd64

lsstarboy 发表于 2016-01-19 08:54

root@test:~ # kldstat
Id Refs Address            Size   Name
1   30 0xffffffff80200000 8d6448   kernel
2    1 0xffffffff81011000 245      msdosfs_iconv.ko
3    1 0xffffffff81012000 bc86   msdosfs.ko
4    1 0xffffffff8101e000 3117   libiconv.ko

lsstarboy 发表于 2016-01-19 08:55

root@test:~ # gpart show da0
=>   633895233da0MBR(1.9G)
       633887667    1fat16(1.9G)
3887730   7566       - free -(3.7M)

CBJenjoy 发表于 2016-01-19 19:25

回复 6# lsstarboy


太感谢了,这下搞定了,原来是我的挂载姿势不对,哈哈哈

lsstarboy 发表于 2016-01-20 08:40

回复 9# CBJenjoy


    你的命令用错了?不会挂到/dev/da0上去了吧。
页: [1]
查看完整版本: 关于mount_msdosfs挂载中文错误