Linux 核心支援讀寫Fat、NTFS、Vfat、Fat32、Hfs 等檔案系統(至少可以讀),因此在 Linux 下訪問 Windows 要比在 Windows 下訪問 Linux 方面的多,不需要使用專門的軟體,直接使用 Linux 命令即可。
Fat/Fat32分區時 Linux 訪問 Windows 分區
Linux 將系統中所有的裝置都看作檔案,所以在 Linux 下訪問 Windows 分區非常方便,只要使用 mount 命令將 Windows 分區掛接成 Linux 的一個檔案夾即可。
mount 命令的使用格式是(必須以 root 使用者身份登陸):
mount [-afFhnrvVm] [-|<標籤>] [-o<選項>] [-t<檔案系統>] [裝置名稱] [掛接點]
若我們要將 Windows 的某一分區(如D盤)掛接到 Linux 的 /mnt/win 這個目錄下,首先請在 /mnt下建立 win 檔案夾,然後啟動 Console 終端模式,輸入命令“mount /dev/hda5 /mnt/win”,再進入 /mnt/win 目錄,您就能看到 Windows 中 D 盤的內容了。
可能有的朋友要問了,為何要輸入上面的命令,特別是那個 /dev/hda5 是什麼東西呢?這是 Linux 下分區的一種表示方式,在 Linux 下看 Windows 分區一般是:hda1 為C盤,hda5為D盤,hda6為E盤,以此類推。。。
不過用上面的方法載入 Windows 分區後,另一個麻煩的事情出現了,就是 Windows 中所有的中文檔案名稱和檔案夾名全部顯示為問號,英文卻能正常顯示,這電腦也有民族歧視啊!反對這種歧視,就要充分利用我們手中的武器,在 mount 命令中加入一些參數讓它正確顯示中文。這時,只要將上述命令改為“mount -t vfat -o iocharset=cp936 /dev/hda5 /mnt/win”,運行就可以了。
載入了這個分區,在不使用時我們還可以將它卸載,而卸載的命令為 umoun,若是卸載上述分區,只要輸入“umount /mnt/win”即可。
另外,我們還可以讓 Linux 在啟動時自動載入分區,這樣就不用每次使用 Windows 分區時都要輸入命令載入了。
首先請以 root 使用者登陸,進入圖形介面後通過 Linux 的檔案管理工具找到 /etc 目錄下的 fstab 檔案,單擊右鍵選擇一個文字編輯軟體開啟此檔案,在內容的最下方添加一行命令“/dev/hda5 /mnt/win vfat codepage=936,iocharset=cp936 1 1”,然後在 /mnt 目錄下建立 win 檔案夾,重新啟動電腦後,再訪問 /mnt/win 目錄就是 Windows 分區的內容了。您也可以通過此種方法載入多個分區,而編輯時也可以在命令列方式下使用 vi 等編輯器。
NTFS 分區時 Linux 訪問 Windows 分區
若是使用 Mandrake 或者紅旗 Linux,並且在安裝時硬碟中已經存在 NTFS 分區,則安裝後不需要重新編譯核心就可以實現對硬碟 NTFS 分區的訪問;若是安裝時硬碟中沒有 NTFS 分區,或者使用的是 RedHat Linux,則必須重新編譯核心,添加 NTFS 模組才能正常訪問 NTFS 分區。
首先以 root 使用者登陸,然後將 RedHat Linux 的第二張安裝盤插入光碟機中,在 /redhat/RPMS 目錄下找到 kernel-source-2.4.xx-x.i386.rpm(這裡x代表數字)檔案,若是圖形介面,直接雙擊安裝,若是命令列,請輸入“rpm -ivh kernel-source-2.4.xx-x.i386.rpm”命令。
再進入 /usr/src/linux-2.4.xx-x/configs 目錄,這裡有許多編譯核心需要的培植檔案,一般選擇“kernel-source-2.4.xx-x.i686.config”即可。將此檔案複製到 /usr/src/linux2.4.xx-x 目錄,用文字編輯器開啟,將“#CONFIG_NTFS_FS is not set”行改為“CONFIG_NTFS_FS=m”。
在終端模式下,進入 /usr/src/linux-2.4.xx-3 目錄,運行“make modules”命令來編譯想要的 NTFS 模組,在編譯的過程中不需要理會與 NTFS 模組,在編譯的過程中不需要理會與 NTFS 無關的內容,編譯完成後,在 /usr/src/linux-2.4.xx-x/fs/ntf 目錄下可以找到一個 ntfs.o 檔案,將其複製到 /lib/modules/2.4.xx-x/kernel/fs 目錄,然後回到 /usr/src/linux-2.4.xx-3 目錄,輸入命令:
#depmod
#modprobe ntfs
剩下的工作和前面 Fat/Fat32分區時 Linux 訪問 Windows 分區相同。
最新讓linux訪問ntfs分區方法
[聲明]本文是參考:劉軍民先生的《你的Linux快速編譯所需要的模組》一文,因為這篇文章太老了,對於老手來說可能只是改動一下就能用了,但對於新手,就顯得不太適合了。
[致謝]多謝劉軍民先生。
[問題]這個方法不能向ntfs格式的磁碟寫入資料,如果有弟兄們有問題可向劉先生髮電子信。他的電子信箱是fancao0515@0451.com。
[作業環境]
RedHat7.2(Engma);Kernel 2.4.7-10
[本文]
1]在/usr/src/linux-2.4.7-10/configs目錄下有若干編譯核心所用的配置。選擇我們想要的配置,如果你的機器是i686的,你就要選擇kernel-2.4.7-i686.config,
並把它複製到/usr/src/linux-2.4.7-10目錄下,改名為.config。
[注]如果你的機器是其它的,你就要選相應的了。這個可以在你關機時,或啟動機器時就能看到。在關機時,有一個i686的,那你就選i686吧。如果是i386的,你就選擇i386,其它的以此類推。因為我還不知道怎麼來選擇相應的檔案,所以就用這個比較笨的辦法了。如果你也不知道,那你就
也用這個方法吧。哈。。。。。。。。。。
2]修改.config檔案,去掉不用的模組,加上自己想要的模組。
開啟.config,有許多XXXX=m的項,這些都是要被編譯為模組的項,因為我們不希望編譯這些模組,所以要把XXXX=m的項統統去掉。然後再加上我們想要的模組,將
# CONFIG_NTFS_FS is not set 改為
CONFIG_NTFS_FS=m
CONFIG_NTFS_RW=m
[注]記住要把#號也去掉,這個步聚可用編輯器來修改,當然,可以用你熟悉的工具來做這件事。
3]編譯NTFS模組。
在/usr/src/linux-2.4.7-10目錄下運行命令,來編譯我們想要的NTFS模組。
#make modules
注意:千萬不能運行命令make modules_install,否則將帶來嚴重的後果,它會刪除你系統中的所有模組。
4]安裝NTFS模組。
編譯後得到的ntfs.o在/usr/src/linux-2.4.7-10/fs/ntfs目錄下,手動將它複製到/lib/modules/2.4.7-10/kernel/fs目錄下。
5]載入NTFS模組;
在這個目錄下/usr/src/linux2.4.7-10,運行命令:
#depmod
#modprobe nfts
6]修改/etc/fstab檔案,這個只好以我的機器上的配製方法來說了,請按如下方法填加,這樣做的目的是機器啟動時就能自己載入分區。
/dev/hdc1 /mnt/WinC ntfs iocharset=cp936 0 0
/dev/hdc5 /mnt/WinD ntfs iocharset=cp936 0 0
/dev/hdc6 /mnt/WinE ntfs iocharset=cp936 0 0
/dev/hdc7 /mnt/WinF ntfs iocharset=cp936 0 0
7]在/mnt/目錄下建立檔案夾:在/mnt中建立檔案夾,要和載入的分區一樣的檔案夾,以我的機器的為例。
WinC
WinD
WinE
WinF
[注]注意大小寫。
8]重新啟動機器。如果在案頭上沒有你要載入的分區,象硬碟一樣的表徵圖,你可以按下面的方法做;
在KDE下的案頭的空白處按滑鼠的右鍵,選擇[建立]-》[硬碟]-》
在[常規]中取一個與載入的硬碟機對應的名字。然後在[裝置]中選擇你要載入的分區。
9]如果不想載入到案頭上,你可以直接到/mnt/下訪問你的ntfs格式的磁碟。