/etc/fstab功能詳解

蘭在晨發表於2013-01-31

最近去客戶現場時,遇到 了一個關於掛載檔案/etc/fstab檔案的問題,就寫了一下/etc/fstab檔案的作用一個檔案中各個引數的含義。供大家參考有不正確的地方敬請指正。

 

一、/etc/fstab檔案的作用

         磁碟被手動掛載之後都必須把掛載資訊寫入/etc/fstab這個檔案中,否則下次開機啟動時仍然需要重新掛載。

        系統開機時會主動讀取/etc/fstab這個檔案中的內容,根據檔案裡面的配置掛載磁碟。這樣我們只需要將磁碟的掛載資訊寫入這個檔案中我們就不需要每次開機啟動之後手動進行掛載了。


二、掛載的限制

    在說明這個檔案的作用之前我想先強調一下掛載的限制。

1、根目錄是必須掛載的,而且一定要先於其他mount point被掛載。因為mount是所有目錄的跟目錄,其他木有都是由根目錄 /衍生出來的。

2、掛載點必須是已經存在的目錄。

3、掛載點的指定可以任意,但必須遵守必要的系統目錄架構原則

4、所有掛載點在同一時間只能被掛載一次

5、所有分割槽在同一時間只能掛在一次

6、若進行解除安裝,必須將工作目錄退出掛載點(及其子目錄)之外。

 

三、/etc/fstab檔案中的引數

下面我們看看看/etc/fstab檔案,這是我的linux環境中/etc/fstab檔案中的內容

[root@wpg ~]# cat /etc/fstab

# This file is edited by fstab-sync - see 'man fstab-sync' for details

# Device                Mount point        filesystem   parameters  dump fsck

LABEL=/                 /                       ext3    defaults        1 1

LABEL=/boot             /boot                   ext3    defaults        1 2

none                    /dev/pts                devpts  gid=5,mode=620  0 0

none                    /dev/shm                tmpfs   defaults        0 0

none                    /proc                   proc    defaults        0 0

none                    /sys                    sysfs   defaults        0 0

LABEL=SWAP-sda3         swap                    swap    defaults        0 0

/dev/sdb1               /u01                    ext3    defaults        1 2

UUID=18823fc1-2958-49a0-9f1e-e1316bd5c2c5       /u02    ext3    defaults        1 2

/dev/hdc                /media/cdrom1           auto    pamconsole,exec,noauto,managed 0 0

/dev/fd0                /media/floppy           auto    pamconsole,exec,noauto,managed 0 0

 

在檔案中我已經把每一列都做出來表示方便識別,我們可以看到一共有六列。

第一列 Device

        磁碟裝置檔案或者該裝置的Label或者UUID

1)檢視分割槽的labeluuid

 Label就是分割槽的標籤,在最初安裝系統是填寫的掛載點就是標籤的名字。可以通過檢視一個分割槽的superblock中的資訊找到UUIDLabel name

例如我們要檢視/dev/sda1這個裝置的uuidlabel name

[root@wpg u02]# dumpe2fs -h /dev/sda1

dumpe2fs 1.35 (28-Feb-2004)

Filesystem volume name:   /boot   //這個就是Label name

Last mounted on:         

Filesystem UUID:          3b10fe13-def4-41b6-baae-9b4ef3b3616c    //UUID

Filesystem magic number:  0xEF53

Filesystem revision #:    1 (dynamic)

Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery sparse_super

Default mount options:    (none)

Filesystem state:         clean

簡單點的方式我們可以通過下面這個命令來檢視

[root@wpg u02]# blkid /dev/sda1

/dev/sda1: LABEL="/boot" UUID="3b10fe13-def4-41b6-baae-9b4ef3b3616c" SEC_TYPE="ext3" TYPE="ext2"

 

2)使用裝置名和labeluuid作為標識的不同

          使用裝置名稱(/dev/sda)來掛載分割槽時是被固定死的,一旦磁碟的插槽順序發生了變化,就會出現名稱不對應的問題。因為這個名稱是會改變的。

不過使用label掛載就不用擔心插槽順序方面的問題。不過要隨時注意你的Label name

至於UUID,每個分割槽被格式化以後都會有一個UUID作為唯一的標識號。使用uuid掛載的話就不用擔心會發生錯亂的問題了。

 

 

 

第二列 Mount point

       裝置的掛載點,就是你要掛載到哪個目錄下。

 

第三列 filesystem

磁碟檔案系統的格式,包括ext2ext3reiserfsnfsvfat

 

第四列 parameters

檔案系統的引數

Async/sync

設定是否為同步方式執行,預設為async

auto/noauto 

 當下載mount -a 的命令時,此檔案系統是否被主動掛載。預設為auto

rw/ro        

 是否以以只讀或者讀寫模式掛載

exec/noexec        

 限制此檔案系統內是否能夠進行"執行"的操作

user/nouser

是否允許使用者使用mount命令掛載

suid/nosuid

是否允許SUID的存在

Usrquota

啟動檔案系統支援磁碟配額模式

Grpquota

啟動檔案系統對群組磁碟配額模式的支援

Defaults

同事具有rw,suid,dev,exec,auto,nouser,async等預設引數的設定

 

第四列:能否被dump備份命令作用

         dump是一個用來作為備份的命令。通常這個引數的值為0或者1

         0

代表不要做dump備份

         1

代表要每天進行dump的操作

         2

代表不定日期的進行dump操作

 

第六列 是否檢驗扇區

開機的過程中,系統預設會以fsck檢驗我們系統是否為完整(clean)。

0

不要檢驗

1

最早檢驗(一般根目錄會選擇)

2

1級別檢驗完成之後進行檢驗

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26723566/viewspace-753700/,如需轉載,請註明出處,否則將追究法律責任。

相關文章