fstab簡(jiǎn)介
fstab簡(jiǎn)介
fstab描述系統(tǒng)中各種文件系統(tǒng)的信息,應(yīng)用程序讀取這個(gè)文件,然后根據(jù)其內(nèi)容進(jìn)行自動(dòng)掛載的工作。因此,我們需要理解其中的內(nèi)容,了解它如何與 mount命令配合工作,并能夠針對(duì)自己的情況進(jìn)行修改。
作為系統(tǒng)配置文件,fstab通常都位于/etc目錄下,它包括了所有分區(qū)和存儲(chǔ)設(shè)備的信息,以及它們應(yīng)該掛載到哪里,以什么樣子的方式掛載。如果遇到一些類(lèi)似于無(wú)法掛載你的windows分區(qū)阿,無(wú)法使用你的光驅(qū)阿,無(wú)法對(duì)某個(gè)分區(qū)進(jìn)行寫(xiě)入操作阿什么的,那么基本上可以斷定,你的fstab內(nèi)容有問(wèn)題了。
/etc/fstab其實(shí)就是一個(gè)文本文件,用gedit或者vi都可以打開(kāi),當(dāng)然,前提是root權(quán)限。在這個(gè)文件中,每個(gè)文件系統(tǒng)(包括分區(qū)或者設(shè)備)用一行來(lái)描述,在每一行中,用空格或TAB符號(hào)來(lái)分隔各個(gè)字段,文件中以*開(kāi)頭的行是注釋信息。
Fstab文件中的紀(jì)錄的排序十分重要。因?yàn)?fsck,mount或umount等程序在做它們的工作時(shí)會(huì)按此順序進(jìn)行本。
在講解之前要說(shuō)一下,每個(gè)人所使用的系統(tǒng)情況都是不同的,包括硬件種類(lèi),所用系統(tǒng)等,因此fstab文件肯定是有所差異的。但是其基本結(jié)構(gòu),如上所述,都不會(huì)變。所以我們先以一個(gè)fstab內(nèi)容作為模板進(jìn)行講解。
首先請(qǐng)看下面這個(gè)例子:
/dev/hda2 / ext2 defaults 1 1
/dev/hdb1 /home ext2 defaults 1 2
/dev/cdrom /media/cdrom auto ro,noauto,user,exec 0 0
fstab第一、二列:設(shè)備和默認(rèn)掛載點(diǎn)
說(shuō)實(shí)話,第一列和第二列的內(nèi)容是最簡(jiǎn)單最直接的,它們的作用就是告訴mount命令,我想掛載什么分區(qū)或者什么設(shè)備,以及我所希望的掛載點(diǎn)在哪里。在fstab中為某一個(gè)設(shè)備指定的掛載點(diǎn)是其默認(rèn)掛載點(diǎn),也就是當(dāng)你在掛載目錄的時(shí)候沒(méi)有手工指定其他目錄的話,系統(tǒng)就將該設(shè)備掛載到這個(gè)目錄。大多數(shù) Linux發(fā)行版都會(huì)為掛載點(diǎn)創(chuàng)建專(zhuān)門(mén)的目錄,大多數(shù)是在/mnt下,但是一些發(fā)行版(比如SUSE或者ubuntu)是在/media下。
按照我們給出的fstab示例,如果你敲入命令
$ mount /dev/fd0
你的軟驅(qū)就將掛載到/media/floppy,因?yàn)檫@是你告訴系統(tǒng)的軟驅(qū)默認(rèn)掛載點(diǎn)。
另外,有一些分區(qū)和存儲(chǔ)設(shè)備是在Linux系統(tǒng)啟動(dòng)的時(shí)候就自動(dòng)掛載的,比如,讓我們看看剛才列出來(lái)的fstab示例信息,有兩行是這樣的:
/dev/hda2 / ext2 defaults 1 1
/dev/hdb1 /home ext2 defaults 1 2
正如剛才我們講到的那樣,這兩行表示/dev/hda2默認(rèn)掛載到/根目錄,而 /dev/hdb1則默認(rèn)掛載到/home目錄,這些工作在你Linux系統(tǒng)啟動(dòng)的時(shí)候就會(huì)通過(guò)讀取fstab自動(dòng)完成。
除了顯示的使用設(shè)備名,你可以使用設(shè)備的UUID或設(shè)備的卷標(biāo)簽,例如,你可以在這個(gè)字段寫(xiě)成“LABAL=root”或“UUID= 3e6be9de- 8139-11d1-9106-a43f08d823a6”,這將使系統(tǒng)更具伸縮性。例如,如果你的系統(tǒng)添加或移除了一個(gè)SCSI硬盤(pán),這有可以改變你的設(shè)備名,但它不會(huì)修改你的卷標(biāo)簽。
對(duì)于NFS mount操作,這個(gè)字段應(yīng)該包含host:dir格式的信息,例如:knuth.aeb.nl:/,對(duì)于進(jìn)程文件系統(tǒng)procfs,使用proc。
/dev/fd0 /media/floppy auto rw,noauto,user,sync 0 0
proc /proc proc defaults 0 0
/dev/hda1 swap swap pri=42 0 0
第一列表示設(shè)備的名稱(chēng),第二列表示該設(shè)備的掛載點(diǎn),第三列是文件系統(tǒng),第四列是掛載選項(xiàng),第五列是dump選項(xiàng)(用一個(gè)數(shù)字表示),第六列(接下來(lái)的數(shù)字)表示文件系統(tǒng)檢查選項(xiàng)。好了,接下來(lái),就要詳細(xì)介紹這些參數(shù)的具體含義了。