1. 程式人生 > >Linux之/etc/fstab檔案講解

Linux之/etc/fstab檔案講解

/etc/fstab是用來存放檔案系統的靜態資訊的檔案。位於/etc/目錄下,可以用命令less /etc/fstab 來檢視,如果要修改的話,則用命令 vi /etc/fstab 來修改。
當系統啟動的時候,系統會自動地從這個檔案讀取資訊,並且會自動將此檔案中指定的檔案系統掛載到指定的目錄。

檢視/etc/fstab

#cat /etc/fstab
<file system>        <dir>         <type>    <options>             <dump> <pass>
tmpfs                  
/tmp tmpfs nodev,nosuid 0 0 /dev/sda1 / ext4 defaults,noatime 0 1 /dev/sda2 none swap defaults,nodelalloc 0 0 /dev/sda3 /home ext4 defaults,noatime 0 2

欄位解釋

/etc/fstab檔案主要包括6段,依次是:

<file system>  <dir>  <type>  <options>  <dump>  <pass>

分別來解釋一下各自的用處:

<file system> 要掛載的分割槽或儲存裝置
<dir> 掛載的目錄位置
<type> 掛載分割槽的檔案系統型別,比如:ext3、ext4、xfs、swap
<options> 掛載使用的引數有哪些。舉例如下:

auto - 在啟動時或鍵入了 mount -a 命令時自動掛載。
noauto - 只在你的命令下被掛載。
exec - 允許執行此分割槽的二進位制檔案。


noexec - 不允許執行此檔案系統上的二進位制檔案。
ro - 以只讀模式掛載檔案系統。
rw - 以讀寫模式掛載檔案系統。
user - 允許任意使用者掛載此檔案系統,若無顯示定義,隱含啟用 noexec, nosuid, nodev 引數。
users - 允許所有 users 組中的使用者掛載檔案系統.
nouser - 只能被 root 掛載。
owner - 允許裝置所有者掛載.
sync - I/O 同步進行。
async - I/O 非同步進行。
dev - 解析檔案系統上的塊特殊裝置。
nodev - 不解析檔案系統上的塊特殊裝置。
suid - 允許 suid 操作和設定 sgid 位。這一引數通常用於一些特殊任務,使一般使用者執行程式時臨時提升許可權。
nosuid - 禁止 suid 操作和設定 sgid 位。
noatime - 不更新檔案系統上 inode 訪問記錄,可以提升效能。
nodiratime - 不更新檔案系統上的目錄 inode 訪問記錄,可以提升效能(參見 atime 引數)。
relatime - 實時更新 inode access 記錄。只有在記錄中的訪問時間早於當前訪問才會被更新。(與 noatime 相似,但不會打斷如 mutt 或其它程式探測檔案在上次訪問後是否被修改的程序。),可以提升效能。
flush - vfat 的選項,更頻繁的重新整理資料,複製對話方塊或進度條在全部資料都寫入後才消失。
defaults - 使用檔案系統的預設掛載引數,例如 ext4 的預設引數為:rw, suid, dev, exec, auto, nouser, async.

<dump>  dump 工具通過它決定何時作備份. dump 會檢查其內容,並用數字來決定是否對這個檔案系統進行備份。 允許的數字是 0 和 1 。0 表示忽略, 1 則進行備份。大部分的使用者是沒有安裝 dump 的 ,對他們而言 <dump> 應設為 0。

<pass> fsck 讀取 <pass> 的數值來決定需要檢查的檔案系統的檢查順序。允許的數字是0, 1, 和2。 根目錄應當獲得最高的優先權 1, 其它所有需要被檢查的裝置設定為 2. 0 表示裝置不會被 fsck 所檢查。