Linux下手動設置Windows磁盤掛載點
我的筆記本是同時裝了Linux系統和Windows系統。Linux系統啟動後,Windows磁盤就會自動掛載在/media目錄下,而且掛載點的名稱又長又難記。例如,windows系統C盤掛載後名稱變為FE6C0C5C6C0C1257。如果windows系統總共有好幾個盤,那麼掛載後,就是一堆字符串,很難分辨到底各自對應哪個盤。於是,我決定手動修改磁盤掛載點。
首先,執行命令“sudo fdisk -l”,顯示系統存在的各個磁盤分區信息如下所示:
Device Boot Start End Blocks Id System
/dev/sda1 * 1 2150 17269843 7 HPFS/NTFS
/dev/sda2 2151 14593 99948367 5 Extended
/dev/sda5 2151 4802 21302158+ 7 HPFS/NTFS
/dev/sda6 7414 14593 57673318+ 7 HPFS/NTFS
/dev/sda7 4803 5051 1998848 82 Linux swap / Solaris
/dev/sda8 5052 7413 18971648 83 Linux
由於我的windows系統總共有3個盤:C盤,D盤,E盤,且都是NTFS格式,所以“/dev/sda1”應該對應C盤,“/dev/sda5”應該對應D盤,“/dev/sda6”應該對應E盤。C盤是windows操作系統,一般不需要訪問。只需要重新掛載D盤和E盤即可。於是我使用mkdir命令在"/home/cary"(cary為我的用戶名)目錄下創建了programFiles和myDocuments兩個目錄分別作為D盤和E盤的掛載點(實際上這兩個目錄的名字是可以隨意命名的)。
執行“sudo gedit /etc/fstab”打開fstab文件。參照文件中提示的格式,在文件最後添加下面兩行語句:
/dev/sda5 /home/cary/programFiles ntfs defaults,user,rw 0 0
/dev/sda6 /home/cary/myDocuments ntfs defaults,user,rw 0 0
保存該文件後,先執行"sudo umount -a"命令卸載各磁盤,再執行“sudo mount -a”重新掛載所有磁盤。則D盤和E盤就都掛載在指定路徑下了。通過“~/programFiles”和“~/myDocuments”兩個路徑就能訪問。
下面對fstab文件作簡單介紹。
文件/etc/fstab存放的是系統中的文件系統信息。當正確的設置了該文件,則可以通過mount /directoryname命令來加載一個文件系統,每種文件系統都對應一個獨立的行,每行中的字段都有空格或tab鍵分開。
fstab文件格式示例如下:
fs_spec fs_file fs_type fs_options fs_dump fs_pass
/dev/hda1 / ext2 defaults 1 1
fs_spec - 該字段定義希望加載的文件系統所在的設備或遠程文件系統,對於一般的本地塊設備情況來說:IDE設備一般描述為/dev/hdaXN,X是IDE設備通道 (a, b, or c),N代表分區號;SCSI設備一描述為/dev/sdaXN。
fs_file - 該字段描述希望的文件系統加載的目錄點,對於swap設備,該字段為none;對於加載目錄名包含空格的情況,用40來表示空格。
fs_type - 定義了該設備上的文件系統,一般常見的文件類型為ext2 (Linux設備的常用文件類型)、vfat(Windows系統的fat32格式)、NTFS、iso9600等。
fs_options - 指定加載該設備的文件系統是需要使用的特定參數選項,多個參數是由逗號分隔開來。對於大多數系統使用defaults就可以滿足需要。其他常見的選項包括:rw 以讀寫模式加載該文件系統;user 允許普通用戶加載該文件系統。
fs_dump - 該選項被dump命令使用來檢查一個文件系統應該以多快頻率進行轉儲,若不需要轉儲就設置該字段為0
fs_pass - 該字段被fsck命令用來決定在啟動時需要被掃描的文件系統的順序,根文件系統/對應該字段的值應該為1,其他文件系統應該為2。若該文件系統無需在啟動時掃描則設置該字段為0