Linux之文件系統的開機掛載

方法1.

把掛載的命令放在/etc/rc.d/rc.local中。

這個雖然是一種方法,但不建議這麼做,因爲我們的系統中有統一規劃的解決方案,所以建議用第二種方法。

方法2.

修改配置文件/etc/fstab,這個文件就是設置在啓動時加掛的文件系統,下面我們就一起來研究一下/etc/fstab

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

此處省略多行無用信息

UUID=8e4f6141-20f9-4f5a-aad4-bac048374152 /                       ext4    defaults        1 1

UUID=c70cd6a4-09cd-4aea-ba94-f3641df4e981 swap                    swap    defaults        0 0

tmpfs                   /dev/shm                tmpfs   defaults        0 0

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

sysfs                   /sys                    sysfs   defaults        0 0

proc                    /proc                   proc    defaults        0 0

這個內容和您的系統有關係,最上面兩行的是我們磁盤文件系統,而後面的四行是虛擬文件系統,我們不關心這個。

這個文件裏面分成六個字段。這六個字段是很重要的,所以我們要帶大家一起來認識一下。

第一欄:磁盤設備的文件名或設備的卷標或者是設備的UUID。#關於這些信息的查詢可以通過tune2fs 或者是dumpe2fs來查詢。

[root@yufei ~]# tune2fs -l /dev/sdb1 |more

[root@yufei ~]# dumpe2fs /dev/sdb1 |more

只顯示有用信息

Filesystem volume name:   opsers_tech

Last mounted on:          /mnt

Filesystem UUID:          994ae2b7-d28a-4f7c-9464-c1763860378b

所以這一欄可以有下面三種表示方法,效果都是一樣的,都是表示的是同一個設備。

/dev/sdb1

LABEL=opsers_tech

UUID=994ae2b7-d28a-4f7c-9464-c1763860378b

第二欄:掛載點。#強烈建議用一個空目錄

第三欄:文件系統類型。#在手動掛載時可以讓系統自動測試掛載,但在這個文件中必須要手動寫入文件系統的類型。文件系統類型主要有:ext3、ext4、vfat、ntfs、nfs、smbfs、swap等等。

第四欄:文件系統參數。#這個和我們前面介紹的mount是一樣的,在這裏再做一個簡單的介紹,因爲這個很重要。

async/sync 異步/同步:設定磁盤的運作方式,預設爲async(效能較佳),是把內容寫入日誌,然後保存到磁盤。

auto/noauto 自動/非自動:當下達mount -a 時,此文件系統是否會被主動測試掛載。預設爲auto。

rw/ro 讀寫/只讀:如果你想要分享的數據是不給用戶隨意變更的,就可以設置成ro的,無論在此文件系統的文件是否有w 權限,都是無法寫入內容。

exec/noexec 可被執行/不可被執行:限制在此文件系統內是否可以進行執行的操作,如果此文件系統是純粹用來儲存資料的,那麼可以設定爲noexec 會比較安全。

user/nouser 允許/不允許其他用戶掛載:正常情況下,系統爲了安全,不希望一般身份的用戶能使用mount命令的,因爲太不安全了,默認是設定爲nouser。 

suid/nosuid 具有/不具有suid權限:該文件系統是否允許SUID的存在。因爲這個也和系統的安全相關。如果不是執行文件存放的目錄,可以設定爲nosuid來取消這個功能。

usrquota 注意不要拼錯了。這個是在啓動文件系統的時候,讓其支持磁盤配額,這個是針對用戶的。

grpquota 和上面一樣,支持用戶組的磁盤配額。

defaults 同時具有rw, suid, dev, exec, acl, async參數。

而我們基本上預設使用defaults即可。

第五欄:能否被dump備份指令使用。#dump是一個用來備份的命令,我們可以通過fstab指定哪個文件系統必須要進行dump備份。0代表不要做dump備份,1代表要每天進行dump的動作,2也代表其他不定日期的dump備份。通常這個數值不是0就是1。

第六欄:是否用fsck 檢驗扇區:#開機的過程中,系統默認會用fsck檢驗文件系統是否完整。不過,某些文件系統是不需要檢驗的,例如swap以及特殊文件系統/proc、/sys等等。0是不要檢驗,1表示最先檢驗(一般只有根目錄會設定爲1),2也是要檢驗,只是1是最先,2是其次才進行檢驗。這一項只針對操作系統的分區有效果,其他的文件系統根據需要來設置,因爲他不影響系統的引導。 

特別提醒1:因爲/etc/fstab這個文件和系統啓動有很大的關係,如果你一不小心,把裏面的內容寫錯了,可能導致系統無法啓動。爲了防止這個問題的發現,當你增加了相應的掛載內容後,最好用mount -a命令進行一下測試,在沒有錯誤的情況,才能保證下次在系統啓動的時候是正常的。

特別提醒2:如果我在此文件中修改了相應的掛載參數的話,你需要用mount -o remount來重新使新的參數生效。而mount -a則是加載不了已經掛載了文件系統的參數信息。可以用mount命令查看到參數的信息。

最後我們把昨天格式化出來的分區寫到/etc/fstab文件中。在開始編輯文件前,我再給大家介紹一個很實用的工具blkid,他會顯示出系統中所有的文件系統的信息,包括設備名、卷標、UUID以及文件系統類型。下面的看效果

[root@yufei ~]# blkid

/dev/sda1: UUID="8e4f6141-20f9-4f5a-aad4-bac048374152" TYPE="ext4"

/dev/sda2: UUID="c70cd6a4-09cd-4aea-ba94-f3641df4e981" TYPE="swap"

/dev/sdb1: LABEL="opsers_tech" UUID="994ae2b7-d28a-4f7c-9464-c1763860378b" TYPE="ext4"

/dev/sdb2: SEC_TYPE="msdos" UUID="7F29-8A7A" TYPE="vfat"

 

[root@yufei ~]# vim /etc/fstab

/dev/sdb1               /mnt                    ext4    defaults        0 0

UUID=7F29-8A7A          /test                   vfat    defaults        0 0

 

[root@yufei ~]# mount -a

[root@yufei ~]# mount -a

沒有錯誤提示,說明我們的配置是沒有錯誤的,那麼在下次系統啓動後就不會有錯誤了,而導致系統啓動不了。

啓動系統後,用df -T來查看掛載在系統中的磁盤信息情況


[root@yufei ~]# df -T

Filesystem    Type   1K-blocks      Used Available Use% Mounted on

/dev/sda1     ext4    15118728   6980432   7370296  49% /

tmpfs        tmpfs      255784         0    255784   0% /dev/shm

/dev/sdb1     ext4     1033560     40980    939568   5% /mnt

/dev/sdb2     vfat      409424         0    409424   0% /test

用mount命令可以查看系統中的掛載情況

 

[root@yufei ~]# mount

/dev/sda1 on / type ext4 (rw)

proc on /proc type proc (rw)

sysfs on /sys type sysfs (rw)

devpts on /dev/pts type devpts (rw,gid=5,mode=620)

tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")

/dev/sdb1 on /mnt type ext4 (rw)

/dev/sdb2 on /test type vfat (rw)

none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)

none on /proc/fs/vmblock/mountPoint type vmblock (rw)

sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)

/etc/fstab 是開機時的配置文件,實際上文件系統的掛載是記錄在/etc/mtab 與/proc/mounts 這兩個文件中的。如果萬一在/etc/fstab中寫入的數據錯誤時候,會導致無法順利開機成功,而進入單人維護模式,而這時候/ 是隻讀的狀態,要想修改/etc/fstab,就要用到下面這個常用的系統修復命令了。

 

mount -o remount,rw /

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章