QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1249|回复: 2

在gbk系统下挂载utf8盘符时的编码处理

[复制链接]
发表于 2009-9-16 12:19:56 | 显示全部楼层 |阅读模式
通常大家都用着n多系统,因此在不同的系统下查看其他系统目录时,编码成了问题,中文字符不能正常显示。

根据sejishikong大哥的指点,总结了一些命令,分享给大家,您也甭去google了。

根据我的系统,在magiclinux下操作,挂载ubuntu盘符。magiclinux下编码是gbk ubuntu下是utf-8。

一是在/etc/fstab中指定编码,或者在mount的时候指定。

相关命令:
fstab中指定locale 或者iocharset为目标编码。
locale=utf8
iocharset=utf8
ntfs-3g (fuse)使用locale指定,ext3之类的fs使用iocharset指定。

mount –o iocharset=utf8 /dev/hda5 /mnt/hda5
ext4不能指定 iocharset,因此ext4的用户要使用下面的第三种方法了。

二是利用convmv把文件名的编码转换了,不过这样会影响到原来的编码。
没试过,不想转换文件名编码,怕半路失败,不能恢复。

三是用convmvfs,这是基于fuse的一个编码转换fs,可以不影响原来的文件名,而且会自动的互相转换。
convmvfs /mnt/sda9_utf8 -o srcdir=/mnt/sda9,icharset=utf8,ocharset=gbk
 楼主| 发表于 2009-9-16 12:23:03 | 显示全部楼层
to umount

fusermount -u /mnt/sda9_utf8
回复

使用道具 举报

发表于 2009-9-16 12:29:55 | 显示全部楼层
用iocharset指定我知道的只有vfat(msdos),iso9660及内核的ntfs支持。ext2/3/4,reisefs之类的是不支持的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-2 20:18 , Processed in 0.049566 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表