fstab
fstab
這個文件描述系統中各種文件系統的信息。一般而言,應用程序僅讀取這個文件,而不對它進行寫操作。對它的維護是系統管理員的工作。
1、fstab文件的作用
2、/etc/fstab文件的一個示例行
3、修改/etc/fstab實現自動掛載Windows分區,並顯示中文目錄
使用許可權: 超級使用者
位置 : /etc/fstab
說明 : 存放檔案系統與目錄結構對應資料的檔案
1、fstab文件的作用
在這個文件中,每個文件系統用一行來描述,在每一行中,用空格或TAB符號來分隔各個欄位,文件中以#開頭的行是註釋信息。Fstab文件中的紀錄的排序十分重要。因為fsck,mount或umount等程序在做它們的工作時會按此順序進行。
2、/etc/fstab文件的一個示例行
fs_spec fs_file fs_type fs_options fs_dump fs_pass
/dev/hda1 / ext2 defaults 1 1
fs_spec - 該欄位定義希望載入的文件系統所在的設備或遠程文件系統,對於一般的本地塊設備情況來說:IDE設備一般描述為/dev/hdXN,X是IDE設備通道(a, b或者c),N代表分區號;SCSI設備一描述為/dev/sdXN。對於procfs,使用`proc'來定義。對文件系統的定義(fsspec),它描述了將被裝載的塊設備或遠程文件系統。對於通常的mount操作而言,這個欄位應該包括一個將被裝載的塊設備的設備結點(通過mknod命令來創建)或指向這類結點的連接(例如/dev/cdrom或/dev/sdb),對於NFSmount操作,這個欄位應該包含host:dir格式的信息,對於進程文件系統procfs,使用proc。
除了顯示的使用設備名,你可以使用設備的UUID或設備的卷標籤,例如,你可以在這個欄位寫成“LABAL=root”或“UUID=3e6be9de-8139-11d1-9106-a43f08d823a6”,這將使系統更具伸縮性。例如,如果你的系統添加或移除了一個SCSI硬碟,這有可以改變你的設備名,但它不會修改你的卷標籤。
fs_file- 該欄位描述希望的文件系統載入的目錄點,對於swap設備,該欄位為none;對於載入目錄名包含空格的情況,用40來表示空格。描述文件系統的載入點,對於交換分區(swap),這個欄位定義為none,如果在載入點的路徑中包含空格符,可以用“\040”來替代空格符。
fs_type- 定義了該設備上的文件系統,一般常見的文件類型為ext2 (Linux設備的常用文件類型)、vfat(Windows系統的fat32格式)、NTFS、iso9600等。文件系統類型(fsvfstype),主要用來定義文件系統的類型。Linux系統支持大量的文件類型,包括sdfs,affs,autofs,jfs,minix,msdos, ncpfs, nfs, ntfs, proc, qnx4, reiserfs, romfs,,smbfs,sysv, tmpfs, udf, ufs, umsdos, vfat, xenix,xfs等等。如果想了解你的kernel目前支持哪些文件系統,可以查看/proc/filesystems的內容。如果這個欄位定義為swap,這條紀錄將關聯到一個用於交換目的的文件或分區。如果這個欄位定義為ignored,這行將被忽略。這對於顯示目前沒有使用的分區非常有用。
fs_options- 指定載入該設備的文件系統是需要使用的特定參數選項,多個參數是由逗號分隔開來。文件系統選項(fsmntops)在裝載文件系統時使用的裝載選項。多個選項之間用逗號做分隔符,這些選項列表包括了裝載類型以及對於該文件系統合適的其它裝載選項。對於非NFS系統可用的裝載選項可以參看mount命令的說明,對於nfs系統的選項可以查看關於nfs的文檔。對於所有文件系統都適用的選項有noauto(當使用mount–a命令時不載入),user(允許用戶進行裝載),owner(允許設備所有人裝載),_netdev(設備需要網路),后兩個選項是linux系統所特有的。
ro 以只讀模式載入該文件系統
sync 不對該設備的寫操作進行緩衝處理,這可以防止在非正常關機時情況下破壞文件系統,但是卻降低了計算機速度
user 允許普通用戶載入該文件系統
quota 強制在該文件系統上進行磁碟定額限制
noauto 不再使用mount -a命令(例如系統啟動時)載入該文件系統
fs_dump - 該選項被"dump"命令使用來檢查一個文件系統應該以多快頻率進行轉儲,若不需要轉儲就設置該欄位為0.文件系統頻率(fs_freq),被dump程序使用來確定哪個文件系統需要dump,如果最後一個欄位沒有設置,系統將認為其值為0,而dump程序則認為此文件系統無需dump。
fs_pass- 該欄位被fsck命令用來決定在啟動時需要被掃描的文件系統的順序,根文件系統"/"對應該欄位的值應該為1,其他文件系統應該為2。若該文件系統無需在啟動時掃描則設置該欄位為0.被fsck程序所使用來確定進行在系統重啟進行文件系統檢查時的順序,對於根系統/這個值應設為1,其它文件系統可以設為2,在同一個物理硬碟內的文件系統應該被順序檢測,而不同硬碟中的文件系統則應該同時檢測以充分利用系統的并行性。如果最後一個欄位值為0或沒有設置,fsck程序裝跳過此文件系統的檢測。在linux編程中可以用getmntent過程來訪問這個文件的內容。