【转载】Fuse和ntfs-3g的安装

刚装完CentOS 5.3没多久,面对陌生的Linux完全迷失方向。
为了挂载XP下的NTFS分区,我陷入了与Fuse艰苦斗争的泥潭..........
我先从http://fuse.sourceforge.net/ 和 http://www.ntfs-3g.org/分别下载好新版本的fuse和ntfs-3g:
fuse-2.8.1.tar.gz
ntfs-3g-2009.4.4.tgz
用tar解压到/home目录,按照README的步骤编译安装,过程如下( 最好先安装fuse再安装ntfs-3g):
    ./configure
make
make install # or 'sudo make install' if you aren't root
恩,还好过程很顺利,没出现什么错误,于是乎我兴高采烈的去mount我可爱的硬盘:
mkdir /mnt/j
mount /dev/sdb7 -t ntfs-3g /mnt/j

等待我的是两行噩梦......
FATAL: Module fuse not found.
ntfs-3g-mount: fuse device is missing, try 'modprobe fuse' as root

这两行英文陪伴了我随后的N+N个小时,唉,我感动的都要哭了......
我不断的baidu来google去,幸运的是发现了很多和我一样受苦受难的同胞的发帖,心想还好有前辈解决了问题,但不幸的是我还得继续受难一阵子--完全没找到解决办法。我祥林嫂般的重复重复再重复的安装着fuse,看着终端的命令一行行的飘过,确始终停留在FATAL: Module fuse not found.                                 绝望
继续投靠搜索引擎......终于在我勤奋的‘考古发掘’下,一个2006年的帖子重见天日了!!!彻底拯救了我!
fuse属于扩展内核模块,无法加载的问题可能在于相关内核文件没有安装,立马动手安装:

yum install kernel* 
(升级前最好先编辑一下 /etc/yum.repos.d/CentOS-Base.repo ,把[centosplus] 中的 enabled=0 改为enabled=1)
下载更新完毕后,记得重启下机子,然后赶忙安装fuse:
 ./configure
make
make install

再小心翼翼的键入:

modprobe fuse

YES! 终于成功了!紧接着安装好ntfs-3g,mount分区,一路顺利!
要想开机自动挂载分区,可以编辑fstab文件:

vi /etc/fstab

下面是我编译好的文件:
/*----------------------------------------------------------------------------------

LABEL=/ / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/sda5 /mnt/d ntfs-3g defaults 0 0
/dev/sda6 /mnt/e vfat defaults 0 0
/dev/sda7 /mnt/f ntfs-3g defaults 0 0
/dev/sda8 /mnt/g ntfs-3g defaults 0 0
/dev/sdb5 /mnt/h ntfs-3g defaults 0 0
/dev/sdb6 /mnt/i vfat defaults 0 0
/dev/sdb7 /mnt/j ntfs-3g defaults 0 0
LABEL=SWAP-sda10 swap swap defaults 0 0

-------------------------------------------------------------------------------------*/

其中有2块SATA硬盘,分别是sda和sdb,ntfs分区参数使用:ntfs-3g;fat32使用参数:vfat
如果挂载分区的中文出现乱码,可以在defaults后加入参数codepage=936,iocharset=cp936或locale=zh_CN.UTF-8
如:

/dev/sda5        /mnt/d         ntfs-3g defaults,codepage=936,iocharset=cp936     0 0
/dev/sdb6 /mnt/i vfat defaults,locale=zh_CN.UTF-8 0 0

重启,哈哈,成功!现在linux里也能随意访问WinXP下的资源了。

注: codepage 指的是一个经过挑选的以特定顺序排列的字符内码列表,对于早期的单字节内码的语种,codepage中的内码顺序使得系统可以按照此列表来根据 痰氖淙胫蹈 鲆桓龆杂Φ哪诼?对于双字节内码,则给出的是MultiByte到Unicode的对应表,这样就可以把以Unicode形式存放的字符转化为相应的字符 内码,或者反之,在Linux核心中对应的函数就是utf8_mbtowc和utf8_wctomb.

CP932

Shift-JIS包含日本语 charset JIS X 0201 (每个字符一个字节) 和 JIS X 0208 (每个字符两个字节),所以 JIS X 0201平假名包含一个字节半宽的字符,其剩馀的60个字节被用做7076个汉字以及648个其他全宽字符的首字节.同EUC-JP编码区别的是, Shift-JIS没有包含JIS X 202中定义的5802个汉字.

CP936

GBK 扩展了 EUC-CN 编码( GB 2312-80编码,包含 6763 个汉字)到Unicode (GB13000.1-93)中定义的20902个汉字,中国大陆使用的是简体中文zh_CN.

CP949

UnifiedHangul (UHC) 是韩文 EUC-KR 编码(KS C 5601-1992 编码,包括2350 韩文音节和 4888 个汉字a)的超集,包含 8822个附加的韩文音节( 在C1中 )

CP950

是代替EUC-TW (CNS 11643-1992)的 Big5 编码(13072 繁体 zh_TW 中文字) 繁体中文,这些定义都在Ken Lunde的 CJK.INF中或者 Unicode 编码表中找到.

 Microsoft采用以上四种Codepage,因此要访问Microsoft的文件系统时必需采用上面的Codepage .




你可能感兴趣的:(【转载】Fuse和ntfs-3g的安装)