Ict-創新/LPI/104.3
考生應能夠配置檔案系統的掛載
關鍵知識領域
- 手動掛載和解除安裝檔案系統。
- 在啟動時配置檔案系統掛載。
- 配置使用者可掛載的可移動檔案系統。
在啟動時掛載檔案系統
在啟動時,/etc/fstab 檔案為塊裝置分配掛載點。
/etc/fstab 的格式
/etc/fstab 示例
| LABEL=//ext2defaults1 1 LABEL=/boot /boot ext2defaults1 2 LABEL=/home /home ext3defaults1 2 /dev/fd0/mnt/floppy autonoauto,owner0 0 LABEL=/usr/usrext2defaults1 2 LABEL=/var/varext3defaults1 2 none/procprocdefaults0 0 none/dev/shmtmpfsdefaults0 0 none/dev/pts devpts gid=5,mode=6200 0 /dev/hdc9swap,pri=-1swapdefaults0 0 /dev/cdrom /mnt/cdrom iso9660 noauto,owner,kudzu,ro 0 0 |
可用於 fstab 檔案的選項
- atime / noatime / relatime Unix stat 結構記錄檔案最後訪問時間 (atime)、修改時間 (mtime) 和建立時間 (ctime)。一個結果是,每次讀取檔案時都會寫入 atime,這已被嚴重批評會導致效能下降和磨損增加。但是,atime 被一些應用程式使用,並被一些使用者需要,因此它可以配置為 atime(按訪問更新)、noatime(不更新)或(在 Linux 中)relatime(如果比 mtime 更舊則更新 atime)。在 Linux 2.6.29 之前,atime 是預設值;從 2.6.30(2009 年 6 月 9 日)開始,relatime 是預設值,
- auto / noauto - 使用 auto 選項,裝置將在啟動時或執行 mount -a 命令時自動掛載。auto 是預設選項。如果您不想自動掛載裝置,請在 /etc/fstab 中使用 noauto 選項。使用 noauto,裝置只能顯式掛載。
- dev / nodev - 在檔案系統上解釋/不解釋塊特殊裝置。
- exec / noexec - exec 允許您執行該分割槽上的二進位制檔案,而 noexec 不允許您這樣做。noexec 可能對不包含二進位制檔案的分割槽(如 /var)有用,或者包含您不想在系統上執行的二進位制檔案,或者甚至無法在系統上執行的二進位制檔案。最後一種情況可能是 Windows 分割槽。
- ro - 以只讀方式掛載。
- rw - 以讀寫方式掛載檔案系統。再次,使用此選項可能會緩解新 Linux 使用者的困惑,因為他們無法寫入軟盤、Windows 分割槽或其他媒體,
- sync / async - 檔案系統的輸入和輸出應如何執行。sync 表示同步執行。如果您檢視 fstab 示例,您會注意到這是與軟盤一起使用的選項。簡單地說,這意味著當您例如將檔案複製到軟盤時,更改將在您發出複製命令的同時物理寫入軟盤。
- suid / nosuid - 允許/阻止 suid 和 sgid 位的操作。
- user / users / nouser - user 允許任何使用者掛載檔案系統。這會自動隱含 noexec、nosuid、nodev,除非被覆蓋。如果指定了 nouser,則只有 root 可以掛載檔案系統。如果指定了 users,則 group users 中的每個使用者都將能夠解除安裝卷。
- owner - 允許裝置所有者掛載,
- defaults - 使用預設設定。預設設定在檔案系統級別按檔案系統定義。對於 ext3 檔案系統,這些設定可以使用 tune2fs 命令設定。Ext3 檔案系統的正常預設值等效於 rw,suid,dev,exec,auto,nouser,async(無 acl 支援)。現代基於 Red Hat 的系統在根檔案系統上設定 acl 支援,但在使用者建立的 Ext3 檔案系統上不設定。某些檔案系統(如 XFS)預設啟用 acl。預設檔案系統掛載屬性可以在 /etc/fstab 中被覆蓋。
mount 命令用於使特定裝置在特定目錄(掛載點)上可用。語法是
mount -t [FSTYPE] -o [OPTIONS] DEVICE DIRECTORY
例如,我們可以使用以下命令將 CDROM 掛載到掛載點 /media/cdrom 上
|
# mount -t iso9660 /dev/cdrom /media/cdrom |
Mount 將已掛載檔案系統的列表儲存在 /etc/mtab 中。不帶任何選項輸入 mount 將顯示當前已掛載的所有檔案系統。輸出類似於 /etc/mtab。核心還在 /proc/mounts 中跟蹤已掛載的檔案系統。
使用者可掛載的可配置系統
在執行的系統上,/etc/fstab 檔案還充當將資源分配給特定目錄的快捷方式。例如
|
# mount /dev/cdrom |
mount 實用程式會讀取 fstab 並推斷出在哪裡掛載資源。請注意,一些裝置使用標籤進行訪問。標籤使用 tune2fs 工具分配給裝置
|
#tune2fs -L /usr/local /dev/hdb12 |
Mount 可以接受上面列出的大多數 fstab 選項。這允許使用者以只讀方式或使用 noexec 來掛載檔案系統。除了掛載已在 /etc/fstab 檔案中定義的檔案系統外,mount 還可用於掛載未在 fstab 中定義的新裝置。例如,如果將外部 SATA 驅動器插入機器,並給出其裝置節點 /dev/sdc,則可以將其第一個分割槽掛載為
|
# mount /dev/sdc1 /mnt |
這將使裝置的第 1 個分割槽在 /mnt 目錄下可用。
| 請記住,mount -a 將掛載所有未掛載且沒有選項 noauto 的 /etc/fstab 中的檔案系統 |
umount 命令將解除安裝裝置。請注意,命令拼錯了!語法是
umount DEVICE or MOUNT-POINT
例如,以下命令都將解除安裝 CDROM 裝置
|
# umount /dev/cdrom |
或
|
# umount /media/cdrom |
按照慣例,/media 下的掛載點用於可移動裝置,例如 CD 或 USB 儲存驅動器。
使用過的檔案、術語和實用程式:* /etc/fstab
- /media
- mount
- umount