Linux系統下掛載exFAT和NTFS格式硬碟的驅動安裝和配置(原創)
餘超 yuchao86@gmail.com
先說掛載exFAT格式的移動硬碟,最近剛剛做了個雙系統,一個盤是Windows7,硬碟的格式是exFAT的,
想在Linux系統下面訪問Windows7下面的檔案,問題出現了:mount不了。
# mount –t exfat /dev/sda2 /mnt/d
mount: unknown filesystem type ‘exfat’
這是由於RedHat 6.0上無法識別exFAT格式的分區。
對於移動硬碟或者隨身碟,FAT32支援的檔案不能大於4G,所以只能格式化成exFAT,
如下記錄一下怎樣在Linux下掛載exFat格式的各種硬碟.
1.安裝
sudo apt-get install subversion scons libfuse-dev gcc
svn co http://exfat.googlecode.com/svn/trunk/ exfat-read-only
cd exfat-read-only
scons
sudo scons install
rm –rf exfat-read-only
2.掛載
sudo mount -t exfat -o iocharset=cp936 /dev/sda2 /mnt/d
3.卸載
sudo umount /mnt/d
下面是掛載NTFS格式的,
其中要使用一個開源軟體NTFS-3g,它支援在Linux下面讀寫NTFS格式的分區。它非常的快速,同時也很安全。它支援Windows 2000、XP、2003和Vista,並且支援所有的符合POSIX標準的磁碟操作。 ntfs-3g的目的是為了持續的發展,各硬體平台和作業系統的使用者需要可靠的互連與支援ntfs的驅動,ntfs-3g可以提供可信任的、功能豐富的高 效能解決方案。經過了12年多的發展,ntfs-3g已經逐漸穩定。(官網翻譯出來)
#wget http://tuxera.com/opensource/ntfs-3g_ntfsprogs-2011.4.12.tgz
編譯安裝 ntfs-3g
# tar zxvf ntfs-3g_ntfsprogs-2011.4.12.tgz
# cd ntfs-3g_ntfsprogs-2011.4.12
# ./configure
# make
# make install
mount檔案
# fdisk -ll
... ....
Device Boot Start End Blocks Id System
/dev/sda1 * 1 2600 204800 83 HPFS/NTFS
/dev/sda2 5223 1459* 75272557+ f extFAT
/dev/sda3 **** **** 37544960 83 Linux
/dev/sda4 700* 522* 4194304 82 Linux SWAP
... ....
通過上面的查看,我們知道/dev/sda1是NTFS格式
1. 我們要建一個掛載點的目錄,比如是在/mnt/目錄下建一個 c 的目錄:
# mkdir /mnt/c
2. 把/dev/sda1 掛載到 /mnt/c 中,這樣我們如果查看/dev/sda1磁碟內容時,就會在/mnt/c 中找得到
# mount -t ntfs-3g -o nls=utf8,umask=000 /dev/sda1 /mnt/c
開機分區自動掛載
應把一下命令放入/etc/fstab中
/dev/sda1 /mnt/c ntfs-3g umask=000,iocharset=utf8 0 0
/dev/sda2 /mnt/d exfat umask=000,iocharset=cp936 0 0
# cp -r -f srcDir dstDir //複製目錄檔案。
# rm -rf dstDir //刪除目錄檔案。
取消磁碟掛載:umount命令
# umount /mnt/c
# umount /mnt/d
註:mount -t 檔案格式 -o 選項參數 磁碟分割掛載點目錄名
比如:mount -t vfat -o iocharset=utf8,umask=000 /dev/sda2 /mnt/d
再如:mount -t ntfs -o nls=utf8,umask=000 /dev/sda1 /mnt/c
-t ntfs 說明檔案系統的格式是ntfs的;-o是選項 ,nls=utf8 ,意思是Native Language Support(本地語言支援)是utf8,也就是大家常說的語言編碼,也可以換成iocharset=utf8;
RedHat Enterprise 6.0預設的語言編碼就是utf8的,這樣能顯示出中文來;umask=000表示所有的使用者組都可讀可寫,但因NTFS在Linux中寫入不安全,所以只能讀,不能寫入.