關於"在Linux下訪問Windows分割槽"的補充(轉)
關於"在Linux下訪問Windows分割槽"的補充(轉)[@more@] 這篇文章對於初學者是相當有用的,但是還不很完善。
第一,windows系統分割槽有不同格式的問題,如9x的fat和fat32,nt的ntfs,以及2000和最新的xp的ntfs5,至於fat(fat32)格式,該文已經講得非常清楚了,而ntfs的訪問需要編譯核心。因為現在裝win2000和xp的讀者也很多了,必須說一下。
第二,現在新版的linux如redhat已經不再在其package中包括linuxconf了,即使光碟上還帶得有此軟體包,預設狀態下也是不會安裝的,因此使用linuxconf並不是最好的方法,也絕非最簡單的方法。
第三,文章中沒有說明中文的問題,而這是我們在使用中必然碰到的。因為通常在我們的windows分割槽中都有中文的目錄和檔案,如果不加入中文的支援,我們能訪問windows分割槽,也沒有太大的意義。
本著對讀者負責的態度,現在補充如下:
一、ntfs分割槽的訪問
最好的辦法是在linux安裝前已經具有ntfs分割槽,這樣在安裝如mandrake和suse linux版本時,可以自動為你安裝相應的核心並設定好,你就可以在不知情的情況下自由地訪問windows分割槽,這也是我推薦初學者使用mandrake或者suse linux的原因,而redhat不會,因此需要編譯核心。
1、找到編譯核心所需要的.config檔案。 在/usr/src/linux/configs目錄下有若干編譯核心所用的配置。選擇我們想要的配置,將它複製到/usr/src/linux目錄下,改名為.config,命令如下:cp /usr/src/linux/configs/kernel-2.2.16-i686.config /usr/src/linux/.config
2 、修改.config檔案,去掉不用的模組,加上自己想要的模組。 開啟.config,有許多XXXX=m的項,這些都是要被編譯為模組的項,因為我們不希望編譯這些模組,所以要把XXXX=m的項統統去掉。然後再加上我們想要的模組,將# CONFIG_NTFS_FS is not set 改為CONFIG_NTFS_FS=m 當然,可以用你熟悉各種工具來做這件事。
3、編譯NTFS模組。 在/usr/src/linux目錄下執行命令make modules來編譯我們想要的NTFS模組。
4、安裝NTFS模組。 編譯後得到的ntfs.o在/usr/src/linux/fs/ntfs目錄下,手動將它複製到正確的目錄下。 cp /usr/src/linux/fs/ntfs/ntfs.o /lib/modules/2.2.16-22/fs/
注意:千萬不能執行命令make modules_install,否則將帶來嚴重的後果,它會刪除你係統中的所有模組,只安裝剛剛編譯的模組(ntfs.o)。
5、載入NTFS模組. 執行命令depmod;modprobe ntfs (以上為劉軍民先生找到的方法,該方法比較簡單和實用)
另外你也可以使用make menuconfig,重新定製你需要的所有模組,接著執行make modeules;make modeules_install來安裝。但是這種方式要麻煩和費時些。
二、直接編寫fstab檔案
這是最簡單的方法。直接編寫fstab檔案的好處還在於,linux會在啟動時自動為你裝載你在其中定義的windows分割槽,不用在每次使用都要輸入:mount -t vfat /dev/hda1 /mnt/winc。使用su命令轉為root許可權,用vim或者其他編輯軟體開啟fstab(位於/etc/fstab),命令如下:vim /etc/fstab,內容示例如下:
/dev/hda8 / ext2 defaults 1 1
/dev/hda6 /boot ext2 defaults 1 2
none /dev/pts devpts mode=0620 0 0
/dev/hda9 /home ext2 defaults 1 2
/mnt/cdrom /mnt/cdrom supermount fs=iso9660,dev=/dev/cdrom 0 0
/mnt/floppy /mnt/floppy supermount fs=vfat,dev=/dev/fd0 0 0
/dev/hda1 /mnt/winc vfat user,exec,umask=0,codepage=936,iocharset=gb2312 0 0
/dev/hda5 /mnt/wind vfat user,exec,umask=0,codepage=936,iocharset=gb2312 0 0
none /proc proc defaults 0 0
/dev/hda7 /usr ext2 defaults 1 2
/dev/hda10 swap swap defaults 0 0
我的fstab檔案內容多了一點,因為我的分割槽細了一點。你只要注意紅色那兩行。把/dev/hda1改為你的windows分割槽所在即可,如果windows有兩個分割槽,一般就是/dev/hda1和/dev/hda3。 如果你不清楚,按照我的fstab內容在你的fstab檔案中加入那兩行就行了,如果使用ntfs的,把其中的vfat改為ntfs即可。當然你首先要在/mnt目錄下建立兩個目錄winc和wind,命令如下:mkdir /mnt/winc /mnt/wind。重新啟動後看能不能訪問你的windows分割槽,逐步試探更改/dev/hda?(?代表數字)直到能訪問為止。
三、關於中文的支援
關鍵在於在你的fstab檔案中定義windows分割槽的一行的最後面加上:codepage=936,iocharset=gb2312 0 0,但是對於使用COSIX中軟linux或者紅旗linux的讀者來說,可以不加,顯示中文目錄和檔案也沒有問題,畢竟是漢化版本嘛。另外說明一點,中文目錄和檔案的顯示跟整個linux的設定有關,如果你沒有在此之前設定好中文環境,你還是無法在你的分割槽中看到中文目錄和檔案的,全部是些????代替了你的中文字,這不是這篇文章的內容了,有興趣的讀者請參考其他文章。
第一,windows系統分割槽有不同格式的問題,如9x的fat和fat32,nt的ntfs,以及2000和最新的xp的ntfs5,至於fat(fat32)格式,該文已經講得非常清楚了,而ntfs的訪問需要編譯核心。因為現在裝win2000和xp的讀者也很多了,必須說一下。
第二,現在新版的linux如redhat已經不再在其package中包括linuxconf了,即使光碟上還帶得有此軟體包,預設狀態下也是不會安裝的,因此使用linuxconf並不是最好的方法,也絕非最簡單的方法。
第三,文章中沒有說明中文的問題,而這是我們在使用中必然碰到的。因為通常在我們的windows分割槽中都有中文的目錄和檔案,如果不加入中文的支援,我們能訪問windows分割槽,也沒有太大的意義。
本著對讀者負責的態度,現在補充如下:
一、ntfs分割槽的訪問
最好的辦法是在linux安裝前已經具有ntfs分割槽,這樣在安裝如mandrake和suse linux版本時,可以自動為你安裝相應的核心並設定好,你就可以在不知情的情況下自由地訪問windows分割槽,這也是我推薦初學者使用mandrake或者suse linux的原因,而redhat不會,因此需要編譯核心。
1、找到編譯核心所需要的.config檔案。 在/usr/src/linux/configs目錄下有若干編譯核心所用的配置。選擇我們想要的配置,將它複製到/usr/src/linux目錄下,改名為.config,命令如下:cp /usr/src/linux/configs/kernel-2.2.16-i686.config /usr/src/linux/.config
2 、修改.config檔案,去掉不用的模組,加上自己想要的模組。 開啟.config,有許多XXXX=m的項,這些都是要被編譯為模組的項,因為我們不希望編譯這些模組,所以要把XXXX=m的項統統去掉。然後再加上我們想要的模組,將# CONFIG_NTFS_FS is not set 改為CONFIG_NTFS_FS=m 當然,可以用你熟悉各種工具來做這件事。
3、編譯NTFS模組。 在/usr/src/linux目錄下執行命令make modules來編譯我們想要的NTFS模組。
4、安裝NTFS模組。 編譯後得到的ntfs.o在/usr/src/linux/fs/ntfs目錄下,手動將它複製到正確的目錄下。 cp /usr/src/linux/fs/ntfs/ntfs.o /lib/modules/2.2.16-22/fs/
注意:千萬不能執行命令make modules_install,否則將帶來嚴重的後果,它會刪除你係統中的所有模組,只安裝剛剛編譯的模組(ntfs.o)。
5、載入NTFS模組. 執行命令depmod;modprobe ntfs (以上為劉軍民先生找到的方法,該方法比較簡單和實用)
另外你也可以使用make menuconfig,重新定製你需要的所有模組,接著執行make modeules;make modeules_install來安裝。但是這種方式要麻煩和費時些。
二、直接編寫fstab檔案
這是最簡單的方法。直接編寫fstab檔案的好處還在於,linux會在啟動時自動為你裝載你在其中定義的windows分割槽,不用在每次使用都要輸入:mount -t vfat /dev/hda1 /mnt/winc。使用su命令轉為root許可權,用vim或者其他編輯軟體開啟fstab(位於/etc/fstab),命令如下:vim /etc/fstab,內容示例如下:
/dev/hda8 / ext2 defaults 1 1
/dev/hda6 /boot ext2 defaults 1 2
none /dev/pts devpts mode=0620 0 0
/dev/hda9 /home ext2 defaults 1 2
/mnt/cdrom /mnt/cdrom supermount fs=iso9660,dev=/dev/cdrom 0 0
/mnt/floppy /mnt/floppy supermount fs=vfat,dev=/dev/fd0 0 0
/dev/hda1 /mnt/winc vfat user,exec,umask=0,codepage=936,iocharset=gb2312 0 0
/dev/hda5 /mnt/wind vfat user,exec,umask=0,codepage=936,iocharset=gb2312 0 0
none /proc proc defaults 0 0
/dev/hda7 /usr ext2 defaults 1 2
/dev/hda10 swap swap defaults 0 0
我的fstab檔案內容多了一點,因為我的分割槽細了一點。你只要注意紅色那兩行。把/dev/hda1改為你的windows分割槽所在即可,如果windows有兩個分割槽,一般就是/dev/hda1和/dev/hda3。 如果你不清楚,按照我的fstab內容在你的fstab檔案中加入那兩行就行了,如果使用ntfs的,把其中的vfat改為ntfs即可。當然你首先要在/mnt目錄下建立兩個目錄winc和wind,命令如下:mkdir /mnt/winc /mnt/wind。重新啟動後看能不能訪問你的windows分割槽,逐步試探更改/dev/hda?(?代表數字)直到能訪問為止。
三、關於中文的支援
關鍵在於在你的fstab檔案中定義windows分割槽的一行的最後面加上:codepage=936,iocharset=gb2312 0 0,但是對於使用COSIX中軟linux或者紅旗linux的讀者來說,可以不加,顯示中文目錄和檔案也沒有問題,畢竟是漢化版本嘛。另外說明一點,中文目錄和檔案的顯示跟整個linux的設定有關,如果你沒有在此之前設定好中文環境,你還是無法在你的分割槽中看到中文目錄和檔案的,全部是些????代替了你的中文字,這不是這篇文章的內容了,有興趣的讀者請參考其他文章。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617731/viewspace-952719/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- linux 訪問 windows NTFS 格式分割槽LinuxWindows
- 在 Linux 下使用 fdisk 擴充套件分割槽容量Linux套件
- Windows原理深入學習系列-訪問控制列表-關於安全描述符的補充Windows
- Linux主分割槽,擴充套件分割槽,邏輯分割槽Linux套件
- 關於磁碟陣列,分割槽載入的問題(轉)陣列
- 用windows或ubuntu訪問apfs或mac分割槽WindowsUbuntuMac
- (轉)關於NAND flash的MTD分割槽與uboot中分割槽的理解NaNboot
- (轉) linux下增加swap分割槽Linux
- Linux主分割槽,擴充套件分割槽,邏輯分割槽[final]Linux套件
- 在MacOSX下重灌BC分割槽Windows系統MacWindows
- Linux下硬碟分割槽的最佳方案 (轉)Linux硬碟
- Linux下硬碟分割槽的最佳方案(轉)Linux硬碟
- windows下讀取Linux分割槽軟體WindowsLinux
- 關於ORACLE MYSQL在非字首分割槽索引上分割槽剪裁的比較OracleMySql索引
- linux下分割槽相關知識Linux
- linux下線上擴大擴充套件分割槽的方法Linux套件
- 關於修改分割槽表的問題總結
- 訪問硬碟DOS分割槽、軟盤和光碟(轉)硬碟
- 在linux安裝中的分割槽概念(轉)Linux
- 關於使用GHOST後硬碟分割槽整合,資料丟失補救方法(轉)硬碟
- 關於分割槽表的操作
- SQL Server大分割槽表沒有空分割槽的情況下如何擴充套件分割槽的方法SQLServer套件
- Linux 下匿名訪問windows 下的ftpLinuxWindowsFTP
- 關於分割槽表的move操作
- 關於SQL Server的分割槽表SQLServer
- Linux下擴充套件根檔案系統所在的分割槽Linux套件
- 談Linux分割槽(轉)Linux
- Linux與分割槽 (轉)Linux
- linux下磁碟分割槽的案例Linux
- Windows 8.1怎麼建立擴充套件分割槽?Windows套件
- oracle關於分割槽相關操作Oracle
- 在Linux下訪問MSSQLServer資料庫 (轉)LinuxSQLServer資料庫
- 關於分割槽表中的全partition掃描問題
- Linux下恢復硬碟分割槽資料(轉)Linux硬碟
- [轉載+補充]windows下SVN客戶端的安裝Windows客戶端
- 關於 Struts 1.1 Exception Handler 的應用補充 (轉)Exception
- 關於分割槽表和分割槽索引(About Partitioned Tables and Indexes)索引Index
- 擴充套件redhat linux as 5 的swap分割槽套件RedhatLinux