mount
1 掛載mount
掛載:將額外檔案系統與根檔案系統現存的目錄建立起關聯關係,進而使得此目錄做為其它檔案存取入庫的行為
卸載:為解除關聯關係的流程
注意:在掛載點下原有的檔案在掛載完成後會暫時被隱藏,但資料不會丟失。所以掛載目錄最好是空目錄。
2掛載方法
mount DEVICE MOUNT_POINT
其中DEVICE為要掛載的設備,可以是磁碟分割區、磁碟區標(LABEL)、UUID或檔案(檔案格式化後也可以當做磁碟掛載);MOUNT_POINT為掛載點。
例如:
[root@local ~]# mount /dev/sdc1 /mnt/sdc1 [root@local ~]# mount -U "95c37ae8-7bd9-4d8b-ba17-61aaf39f292f" /mnt/sdc1 [root@local ~]# mount -L "SDC1" /mnt/sdc1/ #SDC1位分区?dev/sdc1的卷标。
以上三種方法可以將/dev/sdc1分區掛載到/dev/sdc1目錄下,現在就可以進入/mnt/sdc1目錄存取/dev/sdc1磁碟,此時在/mnt/sdc1上的所有對資料的操作都會儲存至/dev/sdc1分割區。
在掛載前必須先建立檔案系統,也就是格式化分割區。
3查看掛載的指令
df、lsblk或者cat /proc/mounts
[root@local ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda2 12254344 6357184 5251632 55% / devtmpfs 1001592 0 1001592 0% /dev tmpfs 1016064 88 1015976 1% /dev/shm tmpfs 1016064 9292 1006772 1% /run tmpfs 1016064 0 1016064 0% /sys/fs/cgroup /dev/sda1 194235 123782 56117 69% /boot tmpfs 203216 16 203200 1% /run/user/0 /dev/sr0 8086368 8086368 0 100% /run/media/root/CentOS 7 x86_64 /dev/sdc1 1998672 6144 1871288 1% /mnt/sdc1 #可以看到分区已经挂载成功
[root@local ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT fd0 2:0 1 4K 0 disk sda 8:0 0 20G 0 disk ├─sda1 8:1 0 200M 0 part /boot ├─sda2 8:2 0 12G 0 part / └─sda3 8:3 0 1G 0 part [SWAP] sdb 8:16 0 5G 0 disk ├─sdb1 8:17 0 976M 0 part ├─sdb2 8:18 0 975.6M 0 part └─sdb3 8:19 0 975M 0 part sdc 8:32 0 5G 0 disk └─sdc1 8:33 0 2G 0 part /mnt/sdc1 sr0 11:0 1 7.7G 0 rom
[root@local ~]# cat /proc/mounts rootfs / rootfs rw 0 0 sysfs /sys sysfs rw,seclabel,nosuid,nodev,noexec,relatime 0 0 proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0 devtmpfs /dev devtmpfs rw,seclabel,nosuid,size=1001592k,nr_inodes=250398,mode=755 0 0 securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec,relatime 0 0 tmpfs /dev/shm tmpfs rw,seclabel,nosuid,nodev 0 0 [. . . . .] tmpfs /run/user/0 tmpfs rw,seclabel,nosuid,nodev,relatime,size=203216k,mode=700 0 0 /dev/sdc1 /mnt/sdc1 ext4 rw,seclabel,relatime,data=ordered 0 0
4 mount常用指令選項
-t vsftype:指定要掛載的裝置上的檔案系統型別 -r:readonly,唯讀掛載 -w:read and write,讀取與寫入掛載 -n:不更新/etc/mtab,mount看不見,不僅是mount指令看不到已經掛載成功
-a:自動掛載所有支援自動掛載的裝置(指定了在/etc/fstab檔案中,且掛載選項中有auto功能) -L"LABEL":以卷標指定掛載裝置 -U "UUID ":以UUID指定要掛載的裝置 -B,--bind:綁定目錄到另一目錄上 -o option:以掛載檔案系統的選項,多個選項同時使用以逗號分隔。是一個神奇的選項。 async:一步掛載 sync:同步掛載 ##diratime/nodiratime:目錄的存取
時間戳# auto/noauto:是否支援自動掛載,是否支援-a選項## noexec:是否支援將檔案系統上執行應用程式
dev/nodev:是否支援在次檔案系統上使用裝置檔案 # suid/nosuid:是否支援suid和sgsgid#suremount:重新掛載
ro:只讀掛載
rw:使用掛載裝置「使用掛載」下載使用裝置使用裝置使用裝置使用裝置:裝置裝置是否使用裝置安裝或裝置裝置裝置是否為「掛」」安裝裝置使用裝置裝置是否符合使用裝置裝置裝置是否符合使用裝置裝置裝置是否符合使用裝置裝置裝置是否符合使用裝置裝置裝置是否符合使用裝置裝置裝置是否符合「安裝裝置裝置裝置裝置裝置是否「載」》「載」」接合,默認管理員才能掛載
acl:啟用此文件系統上的acl功能
默認:相當於re,nosuid,dev,exec,auto,nouser,async
5其它掛載相關的命令
(1)查看掛載點的掛載情況:findmnt MOUNT_POINT#
[root@local ~]# findmnt /mnt/sdc1 TARGET SOURCE FSTYPE OPTIONS /mnt/sdc1 /dev/sdc1 ext4 rw,relatime,seclabel,data=ordered [root@local ~]# findmnt /mnt/sdc2 TARGET SOURCE FSTYPE OPTIONS /mnt/sdc2 /dev/sdc2 xfs rw,relatime,seclabel,attr2,inode64,noquota
(2)查看正在存取指定的檔案系統的進程
:
[root@local ~]# lsof /mnt/sdc1 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME bash 1615 root cwd DIR 8,33 4096 2 /mnt/sdc1 bash 2024 root cwd DIR 8,33 4096 2 /mnt/sdc1
可以看到有两个用户正在访问/mnt/sdc1目录
[root@local ~]# fuser -v /mnt/sdc1 USER PID ACCESS COMMAND /mnt/sdc1: root kernel mount /mnt/sdc1 root 1615 ..c.. bash root 2024 ..c.. bash
(3)终止所有正在访问指定的文件系统的进程
[root@local ~]# fuser -km /mnt/sdc1 /mnt/sdc1: 1615c 2024c
接下来查看是否成功
[root@local ~]# lsof /mnt/sdc1
可以看到以及踢成功,不过在实际应用时,最好提前发通知,以免用户在线导数据丢失
6 卸载
卸载命令:umount DEVICE
或者umount MOUNT_POINT
[root@local ~]# umount /dev/sdc1 #卸载/dev/sdc1
以及看不到/dev/sdc1说明卸载成功
[root@local ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda2 12254344 6869184 4739632 60% / devtmpfs 1001592 0 1001592 0% /dev tmpfs 1016064 84 1015980 1% /dev/shm tmpfs 1016064 9232 1006832 1% /run tmpfs 1016064 0 1016064 0% /sys/fs/cgroup /dev/sda1 194235 123782 56117 69% /boot tmpfs 203216 16 203200 1% /run/user/42 tmpfs 203216 0 203216 0% /run/user/0 /dev/sdc2 1038336 32944 1005392 4% /mnt/sdc2
下来用另一种方法卸载/dev/sdc2
[root@local ~]# umount /mnt/sdc2 [root@local ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda2 12254344 6869184 4739632 60% / devtmpfs 1001592 0 1001592 0% /dev tmpfs 1016064 84 1015980 1% /dev/shm tmpfs 1016064 9232 1006832 1% /run tmpfs 1016064 0 1016064 0% /sys/fs/cgroup /dev/sda1 194235 123782 56117 69% /boot tmpfs 203216 16 203200 1% /run/user/42 tmpfs 203216 0 203216 0% /run/user/0
以及看不到/dev/sdc2,说明卸载成功
7 修改/etc/fstab文件,设置自动挂载
查看/etc/fstab文件
[root@local ~]# cat /etc/fstab # # /etc/fstab # Created by anaconda on Sun Apr 16 10:18:50 2017 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # UUID=dddd23d1-1012-4bac-9717-56b9b469e0c2 / ext4 defaults 1 1 UUID=316d8677-25b8-49af-b4eb-54daa20b6595 /boot ext4 defaults 1 2 UUID=dacd6ddd-d765-4646-b98c-0579f2732749 swap swap defaults 0 0
可以看到,每行定义一个要挂载的文件系统,有六个字段,每个字段对于的含义:
第一个字段:要挂载的设备或者伪文件系统
设备文件、卷标(LABEL)、UUID、伪文件系统名称(proc、sysfs)
第二个字段:指定挂载点
第三个字段:文件系统类型
第四个字段:挂载选项
sync、atime/noatime、diratime/nodiratime、auto/noauto、exec/noexec、dev/nodev、suid/nosuid、
remount、ro、rw、user/nouser、 acl
第五个字段:转存频率
0:不做备份
1:每天转存
2:没隔一天转存
第六感字段:启动时自检次序
0:表示不自检
1:首先自检,一般只有rootfs才用1
以上是掛載mount的詳細內容。更多資訊請關注PHP中文網其他相關文章!