Mount 掛載詳解
====================================================================================
本節內容:
常用掛載選項詳解
掛載設備文件、卷標、UUID
ISO文件創建及掛載
掛載選項 -t 文件系統類型 -o 選項1,選項2...
示例:
mount -t ext4 -o acl /dev/sdb1 /mnt/disk1
文件系統類型:ext4,xfs,nfs,cifs,iso9660,loop
例1:exec/noexec
[root@localhost ~]# mount /dev/vg01/lv01 /mnt/lv01
[root@localhost ~]# mount -o noexec /dev/vg01/lv02 /mnt/lv02
[root@localhost ~]# cp -rf /bin/date /mnt/lv01
[root@localhost ~]# cp -rf /bin/date /mnt/lv02
[root@localhost ~]# /mnt/lv01/date
Fri Jan 10 10:40:21 CST 2014
[root@localhost ~]# /mnt/lv02/date
-bash: /mnt/lv02/date: Permission denied
[root@localhost ~]# mount
/dev/mapper/vg01-lv01 on /mnt/lv01 type ext4 (rw)
/dev/mapper/vg01-lv02 on /mnt/lv02 type ext4 (rw,noexec)
沒有指定任何選項,則為默認選項 man mount
defaults
Use default options: rw, suid, dev, exec, auto,
nouser, async, and relatime.
常見的掛載選項
rw 讀寫
ro 只讀
suid 支持suid
dev 支持設備文件
nodev 不支持設備文件
noexec 不允許執行二進制文件
exec 允許執行二進制文件
auto mount -a 開機自動掛載
noauto mount -a 開機不自動掛載
async 異步寫入
sync 同步同入
noatime 不更新訪問時間atime
usrquota 支持用戶級磁盤配額功能
grpquota 支持組級磁盤配額功能
acl 支持acl功能
remount 在線重新掛載
pri 指定優先級
====================================================================================
Relatime 驅動器訪問優化
POSIX 標准要求操作系統維護記錄每個文件最后一次被訪問的文件系統元數據。這個時間戳被稱為atime,
維護它需要一個重復的對存儲的寫入操作。這些寫入操作讓存儲是設備及其連接保持忙碌和通電狀態。因
為很少應用程序會使用 atim e 數據,所以這個存儲設備活動是在浪費電力。特別是即使沒有從存儲中讀取
該文件也會發生寫入存儲的事件,但是從緩沖中寫入。有時,Linux 內核還支持 mount 的 noatime選項,並
不在使用此選項掛載的文件系統中寫入 atime。但是只是關閉這個特性是有問題的,因為有些應用程序會依
賴 atime 數據,並在此數據不可用時失敗。
紅帽企業版 Linux 6 使用的內核之后此另一個可替換選項 -relatime。Relatime 維護 atime數據,但不是
每次訪問該文件時都更改。啟用這個選項,則只在上次更新 atime(mtime)后修改該文件時,或者最后一次
訪問該文件是在相當長一段時間前(默認為一天)時才會將 atime 數據寫入磁盤。
默認情況下,所有現在掛載的文件系統都啟用 relatime。要在整個系統中限制這個特性,請使用 boot 參
數 default_relatime=0。如果默認在某個系統中啟用 relatime,您可以通過使用選項 norelatime
掛載某個系統來限制它在某個具體文件系統中的使用。最后,要使系統更新文件的 atime 數據的默認周期
有所不同,請使用 relatime_interval= 引導參數,以秒為單位指定周期。默認值為 86400。
注:RHEL6開始relatime,atime延遲修改,必須滿足其中一個條件:
1. 自上次atime修改后,已達到86400秒;
2. 發生寫操作時;
====================================================================================
例2:async,sync
[root@localhost ~]# mount /dev/vg01/lv01 /mnt/lv01
[root@localhost ~]# mount -o sync /dev/vg01/lv02 /mnt/lv02
[root@localhost ~]# mount
/dev/mapper/vg01-lv01 on /mnt/lv01 type ext4 (rw)
/dev/mapper/vg01-lv02 on /mnt/lv02 type ext4 (rw,sync)
[root@localhost ~]# time cp -rf /etc /mnt/lv01
[root@localhost ~]# time cp -rf /etc /mnt/lv02
例3:acl
[root@localhost ~]# vim /etc/fstab
/dev/mapper/vg01-lv01 /mnt/lv01 ext4 defaults,acl 0 0
[root@localhost ~]# mount -o remount /mnt/lv01
[root@localhost ~]# mount
/dev/mapper/vg01-lv01 on /mnt/lv01 type ext4 (rw,acl)
掛載時可以使用(針對基本分區)
設備名 /dev/sda3
卷標 LABEL=yang
UUID UUID="353a34b8-9233-465c-b7cf-92c8d308c05b"
UDEV 可以給設備建立一個別名
例4:使用卷標掛載
[root@localhost ~]# tune2fs -l /dev/vda1 |less
Filesystem volume name: <none>
[root@localhost ~]# tune2fs -L yang /dev/sda3 //設置卷標LABEL
tune2fs 1.39 (29-May-2006)
[root@localhost ~]# vim /etc/fstab
LABEL=yang /mnt/disk1 ext4 defaults 0 0
例5:使用UUID掛載
[root@localhost ~]# blkid /dev/sda5
/dev/sda5: UUID="353a34b8-9233-465c-b7cf-92c8d308c05b" SEC_TYPE="ext2" TYPE="ext3"
[root@localhost ~]# vim /etc/fstab
UUID="353a34b8-9233-465c-b7cf-92c8d308c05b" /mnt/disk1 ext4 defaults 0 0
掛載ISO文件
1. 將光盤制作成iso
[root@localhost ~]# dd if=/dev/cdrom of=/rhel6.iso
[root@localhost ~]# dd </dev/cdrom >/rhel6.iso
2. 將文件制作成iso,例如將/etc制作成etc.iso
[root@localhost ~]# genisoimage -o /tmp/etc.iso -r /etc
[root@localhost ~]# file /tmp/etc.iso
/var/etc.iso: ISO 9660 CD-ROM filesystem data 'CDROM '
3. 使用iso,掛載
[root@localhost ~]# mount -t iso9660 -o loop /tmp/etc.iso /mnt/iso/