8.10-11 mount、umount
阿新 • • 發佈:2019-05-11
entos 文件的 1.4 rep cdrom some processes code 集群
8.10 mount:掛載文件系統
mount命令可以將指定的文件系統掛載到指定目錄(掛載點),在Linux系統下必須先掛載所有的設備,然後才能被訪問,掛載其實就是為要訪問的設置開個門(開門才能訪問)。 mount [option] [device] [dir] 掛載的目錄必須事先存在且最好為空,如果目錄不為空,那麽掛載設備後會掩蓋以前的目錄內容,但原目錄下的內容不會受損,所以,如果卸載了相應的設備,那麽此前的目錄內容又可以訪問了。mount命令的參數選項及說明
-l 顯示系統已經掛載的設備的相關信息 -a 根據/etc/fstab文件裏的配置掛載文件系統 -t 指定掛載的文件系統類型,例如,文件系統類型有,nfs(網絡文件系統),iso9660(掛載CD-ROM光盤),auto(自動檢測文件系統)。如果不設置t參數,或使用-t auto參數,mount命令會自行選擇掛載的文件類型 -o 後接一些掛載的選項,是安全、性能優化的重要選項 -r 只讀掛載,等同於-o ro的掛載方式 -w 讀寫掛載,等同於-o rw的掛載方式 其中mount的-o參數可以接的掛載選項請參見下表 mount的-o參數可接的選項*async 所有涉及文件系統/O的操作都是異步處理,即數據不會同步寫入到磁盤,而是寫入到緩沖區中,這種設置會提高系統的性能,但同時也會降低數據的安全性,一般在生產環境下不推薦使用。除非對性能要求很高,對數據可靠性要求不高的場景sync 與async相反,即有I/O操作時,都會同步處理/O,即把數據同步寫入硬盤,此參數會犧牲一部分I/O性能,但是換來的是系統突發宕機後數據的安全性 atime 在每一次數據訪問時,都會同步更新每次訪問的文件的inode時間,是默認選項,在高並發的情況下,要明確加上noatime來取消該默認項,以達到提升/O性能,優化磁盤I/O的目的 noatime 不更新文件系統上文件的inode訪問時間,在高並發環境下,應用此選項,可以在一定程度上提高系統I/O的性能 nodiratime 不更新文件系統上目錄的inode訪問時間,在高並發環境下,應用此選項,可以在一定程度上提高系統I/O的性能 auto 通過-a參數能夠被自動掛載 noauto 不會自動掛載文件系統 defaults 默認值包括rw、suid、dev、exec、auto、nouser 和 async,/etc/fstab文件掛載配置的很多情況下都使用默認值 exec 允許執行二進制程序,取消該參數,可以提升系統的安全性 noexec 不能執行二進制程序 nosuid 不允許suid(Linux的特殊權限)特殊功能生效 nouser 禁止一個普通用戶掛載該文件系統,這是掛載時的默認選項 remount 嘗試重新掛載一個已經掛載了的文件系統,其通常用於改變一個文件系統的掛載標誌,從而使得一個只讀文件系統變得可寫,這個動作不會改變設備或者掛載點。提示一下,當系統發生故障時或者進入單用戶模式、教援模式時,會發現根文件系統經常會變成只讀文件系統,不允許修改,此時該命令就派上用場了,具體命令為:mount -o remount,rw / 會將根文件系統重新掛載使其可寫。
在單用戶模式或教援模式修改系統時該命令十分重要 ro 只讀掛載 rw 讀寫掛載
顯示系統已掛載的信息(不加參數或加-l參數)
[[email protected] ~]# mount /dev/mapper/vg_cs6-lv_root on / type ext4 (rw) #<==磁盤/dev/mapper/vg_cs6-lv_root掛載在(on)根上,文件系統類型為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/sda1 on /boot type ext4 (rw) none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw) /dev/sdb1 on /mnt/data1 type ext4 (rw)
對系統的光驅進行掛載
首先要把光盤放入光驅驅動器中,如果是VM(虛擬機),則需要將ISO鏡像放入VM光驅驅動器中,然後執行下面的操作:[[email protected] ~]# mount /dev/cdrom /mnt #<=這裏沒有指定-t iso9660,但mount命令會自動識別 mount: block device /dev/sr0 is write-protected, mounting read-only #<=提示設備寫保護,只讀掛載。 [[email protected] ~]# mkdir /mnt/cdrom [[email protected] ~]# mount /dev/cdrom /mnt/cdrom mount: block device /dev/sr0 is write-protected, mounting read-only [[email protected] ~]# ll -h /mnt/cdrom/ total 82K -r--r--r--. 1 root root 14 Jun 29 2018 CentOS_BuildTag dr-xr-xr-x. 3 root root 2.0K Jun 30 2018 EFI -r--r--r--. 1 root root 212 Nov 27 2013 EULA -r--r--r--. 1 root root 18K Nov 27 2013 GPL dr-xr-xr-x. 3 root root 2.0K Jun 30 2018 images dr-xr-xr-x. 2 root root 2.0K Jun 30 2018 isolinux dr-xr-xr-x. 2 root root 40K Jun 30 2018 Packages -r--r--r--. 1 root root 1.4K Jun 29 2018 RELEASE-NOTES-en-US.html dr-xr-xr-x. 2 root root 4.0K Jun 30 2018 repodata -r--r--r--. 1 root root 1.7K Nov 27 2013 RPM-GPG-KEY-CentOS-6 -r--r--r--. 1 root root 1.7K Nov 27 2013 RPM-GPG-KEY-CentOS-Debug-6 -r--r--r--. 1 root root 1.7K Nov 27 2013 RPM-GPG-KEY-CentOS-Security-6 -r--r--r--. 1 root root 1.7K Nov 27 2013 RPM-GPG-KEY-CentOS-Testing-6 -r--r--r--. 1 root root 3.4K Jun 30 2018 TRANS.TBL [[email protected] ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_cs6-lv_root 26G 1.7G 24G 7% / tmpfs 931M 0 931M 0% /dev/shm /dev/sda1 477M 28M 424M 7% /boot /dev/sdb1 392M 2.3M 369M 1% /mnt/data1 /dev/sr0 406M 406M 0 100% /mnt/cdrom
使用性能及安全掛載參數選項(-o多選項)的企業案例
在工作中,我們會經常使用NFS網絡文件系統,若要使用NFS文件系統,則需要進行掛載。有關NFS網絡文件系統的部署請讀者參考《跟老男孩學習Linux運維;Web集群實戰》一書的第10章,本例假定讀者已經部署了NFS網絡文件系統服務,掛載點為:10.0.0.3:/data,掛載操作如下:[[email protected] ~]# mount -t nfs -o nosuid,noexec,nodev,noatime,nodiratime,rsize=131072,wsize=131072 172.16.1.31:/data/ /upload [[email protected] ~]# grep upload /proc/mounts 172.16.1.31:/data/ /upload nfs4 rw,nosuid,nodev,noexec,noatime,nodiratime,vers=4,rsize=131072,wsize=131072,namlen=255,hard,pro to=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=172.16.1.45,minorversion=0,local_lock=non e,addr=172.16.1.31 0 0
生產場景文件系統故障解決案例。 由於系統等問題,在工作中可能會造成文件系統只讀,這時就需要重新掛載根(/)為讀寫模式。 mount -o remount,rw / #<==remount 索試重新掛載“/”為rw(可讀可寫)。 如果上述操作還不能解決問題,則需要重啟系統或使用救援模式來解決。
生產場景配置fstab後防止開機啟動出錯案例
在工作中,當添加新的磁盤時,會有永久性掛載的需求,此時就會配置/etc/fstab這個文件,但這個文件若配置錯誤則有可能造成系統重啟後無法開機,因此,在配置好fstab文件後可先用mount -a讀取/etc/fstab進行掛載測試,如果能掛載成功,那麽重啟一般也會正常,反之則會出現異常。[[email protected] ~]# tail -1 /etc/fstab /dev/sdb1 /mnt ext4 defaults 0 0 [[email protected] ~]# mount -a
提示:經過這樣的掛載測試以後,就可以確保下一次開機的時候,系統能夠重啟成功,當然修改fstab文件也要特別註意,最後一列的數字最好改為0(表示不用fsck檢查)。
8.11 umount:卸載文件系統
umount命令可以卸載已經掛載的文件系統。 umount卸載可以接掛載點目錄,也可以接設備文件。 -f 強制卸載 -l 懶情地卸載。將文件系統從文件系統層次結構中分離出來,並清除對文件系統的所有引用。一般和-f參數配合使用其卸載效果更佳*卸載已掛載的光盤
[[email protected] ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_cs6-lv_root 26G 1.7G 24G 7% / tmpfs 931M 0 931M 0% /dev/shm /dev/sda1 477M 28M 424M 7% /boot /dev/sdb1 392M 2.3M 369M 1% /mnt [[email protected] ~]# umount /mnt/ [[email protected] ~]# ls /mnt/ cdrom data1 data2 [[email protected] ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_cs6-lv_root 26G 1.7G 24G 7% / tmpfs 931M 0 931M 0% /dev/shm /dev/sda1 477M 28M 424M 7% /boot
生產場景下強制卸載的例子
有的時候由於掛載的設備停止了響應(例如NFS),或者在當前掛載點的目錄下,直接執行卸載命令就會無法卸載設備,而使用如下的方式就可以輕松卸載: 這裏簡單舉例如下,進入到掛載點目錄進行卸載嘗試。[[email protected] ~]# mount /dev/sdb1 /mnt/data1 [[email protected] ~]# ls /mnt/data1 1.html 2.html 3.html 4.html 5.html lost+found [[email protected] ~]# cd /mnt/data1 [[email protected] data1]# umount /mnt/data1 #<==固為當前在/mnt/data1目條中,所以無法卸載,此處執行方法一,退出當前目錄卸載。 umount: /mnt/data1: device is busy. (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1)) [[email protected] data1]# umount -lf /mnt/data1 #<==方法二:使用-lf參教進行強制師載。 [[email protected] data1]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_cs6-lv_root 26G 1.7G 24G 7% / tmpfs 931M 0 931M 0% /dev/shm /dev/sda1 477M 28M 424M 7% /boot
8.10-11 mount、umount