上面说明了,硬盘的划分和格式化,那么怎么使用,还没说,这里说一下,怎么使用建立好的文件系统。linux
只要把文件系统“挂载”到某个目录上,就能够经过这个目录访问文件系统了。ios
这个目录就叫作:挂载点(mount_point):用于做为另外一个文件系统的访问入口。c++
挂载点的目录要知足的条件:shell
1,事先存在centos
2,为被使用过的,而且不会被其余进程使用bash
3,挂载点下,原有的文件,挂载后会被隐藏微信
这个“挂”上去的动做,就是mount
命令。app
把挂载点,摘下来的动做,就是umount
命令。
umount device|dir
注意:若是某个用户的某个进程在使用这个挂载点,则没法umout,直到使用这个挂载点的进程退出。
好比,某个用户,cd进入到了挂载点,这时系统管理员执行umount命令,则显示以下:
# umount /mnt umount: /mnt: target is busy. (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1))
1,查看哪一个用户的哪一个进程在使用挂载点
lsof mount_point
]# lsof /mnt lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs Output information may be incomplete. COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME bash 5482 root cwd DIR 8,17 1024 2 /mnt
fuser -v mount_point
# fuser -v /mnt USER PID ACCESS COMMAND /mnt: root kernel mount /mnt root 5482 ..c.. bash
2,杀死使用挂载点的因此进程:fuser -km mount_point
# fuser -km /mnt/ /mnt: 5482c
直接执行mount
命令,显示出当前系统的挂载状况。注意,在centOS7下,显示的内容比较多,里面比CentOS6多了cgroup的挂载信息。
1,基本用法
语法:mount [-fnrsvw][-t vfstype] [-o options] device dir
# mount /dev/sdb1 /mnt
以只读方式挂载:-r
以可读写方式挂载:-w
挂载时不更新/etc/mtab文件:-n
/etc/mtab文件里,保存了当前的挂载状况,每挂载一个文件系统,就在此文件追加一行,卸载文件系统后,就删除追加的行。当/etc目录下的文件不能够写入时,可使用此选项。但,在CentOS7上即便指定了-n,也更新了/etc/mtab文件。
指定要挂载设备的文件系统类型:-t
通常能够省略,mount目录会自动根据blkid命令的结果,找到要挂载设备的文件系统类型。
不指定设备文件,而是经过指定卷标,来挂载:-L
# e2label /dev/sdb1 m1 # blkid /dev/sdb1 /dev/sdb1: LABEL="m1" UUID="4752177b-e026-483d-b166-19229b64e4c3" TYPE="ext2" # mount -L m1 /mnt
不指定设备文件,而是经过指定UUID,来挂载:-U
# mount -U 4752177b-e026-483d-b166-19229b64e4c3 /mnt
2,挂载选项(-o options):下面是-o后面的选项的具体值。
sync/async:当写入到磁盘时,是立刻就写到磁盘上,仍是先不急,等会一块儿写入到磁盘的选项。
sync:立刻写入到磁盘
async:稍等一会再写入磁盘。因此,async的性能好!
atime/noatime:文件或目录在被访问后,是否更新其访问时间戳
diratime/nodiratime:目录在被访问后,是否更新其访问时间戳
remount:当想增长挂载选项时,但又不想卸载文件系统。使用此选项自动从新挂载文件系统,并让新的挂载选项生效。
好比,挂载的时候,指定的是只读选项,但想改为可读写,就能够用下面的用法,/mnt/t1是挂载点。
mount -o remount rw /mnt/t1
acl:使facl功能有效,也就是setfacl功能生效。
ro:只读
rw:读写
dev/nodev:此文件系统上是否容许识别(interpret )设备文件。即便是nodev,也可使用mknod命令建立设备文件。
exec/noexec:是否容许在此文件系统上运行程序
suid/nosuid:是否容许程序文件上的suid和sgid特殊权限生效。
relatime/norelatime:是否容许根据modify time或change time去更新 access time。
defaults:当不仅读options时,实际是:rw, suid, dev, exec, auto, nouser, and async被启用了。
3,绑定目录到挂载点。
mount命令不只能够挂载设备文件到挂载点,还能够挂载别的目录到挂载点。使用--bind
# mount --bind /etc /mnt
4,查看挂载了哪些设备
mount
cat /etc/mtab
cat /proc/mounts
5,挂载光盘
通常光盘的设备文件是/dev/cdrom或/dev/dvd
# mount -r /dev/cdrom /mnt
6,挂载u盘
和挂载分区没什么区别,只是须要先找到u盘对应的设备文件,能够经过文件的大小去判断哪一个设备文件是u盘。
7,挂载本地回环文件(ios文件,img文件等)
# mount -o loop /tmp/ttylinux.so /mnt
启用:swapon [option] device
-a:定义在/etc/fstab文件中的全部设备
# fdisk -l /dev/sdb6 Disk /dev/sdb6: 26 MB, 26214400 bytes, 51200 sectors # mkswap /dev/sdb6 mkswap: /dev/sdb6: warning: wiping old swap signature. Setting up swapspace version 1, size = 25596 KiB no label, UUID=a4dc9e83-5e28-49e1-9aa0-6e7059fcb227 # free -m total used free shared buff/cache available Mem: 3789 631 2547 21 610 2872 Swap: 3967 0 3967 # swapon /dev/sdb6 # free -m total used free shared buff/cache available Mem: 3789 631 2547 21 610 2872 Swap: 3992 0 3992 # swapoff /dev/sdb6 # free -m total used free shared buff/cache available Mem: 3789 631 2546 21 610 2871 Swap: 3967 0 3967
禁用:swapoff [option] device
-a:定义在/etc/fstab文件中的全部设备
通常usr,var,home目录能够不和根目录在同一个分区,其余的大部分必须和根目录在同一个分区。
那么问题来了,既然usr等目录不是和根目录在同一个分区,那么它们是怎么在系统开机后自动挂载上去呢?
在/etc/fstab文件里定义的设备文件,开机后会自动挂载。
解读/etc/fstab文件中各个列的含义
第一列:设备文件,或UUID,或LABLE
第二列:挂载点
swap类型的文件系统的挂载点不是目录,直接是【swap】
第三列:文件系统类型
第四列:挂载选项
若是有多个挂载选项,用逗号分隔。例如:defaults,acl,noexec
第五列:备份频率
0:从不备份
1:天天备份
2:隔天备份
第六列:自检次序
0:不自检
1:第一个自检。一般只能是根文件系统可使用1.
2:第二个自检。能够把根文件系统之外的文件系统设置成2.
...
# cat /etc/fstab # # /etc/fstab # Created by anaconda on Fri Nov 29 16:44:28 2019 # # 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 # /dev/mapper/centos-root / xfs defaults 0 0 UUID=3d3b316a-529e-484a-9895-e785fdde5365 /boot xfs defaults 0 0 /dev/mapper/centos-home /home xfs defaults 0 0 /dev/mapper/centos-swap swap swap defaults 0 0
mount -a
目录会自动把/etc/fstab文件里定义的设备,所有挂载
下面的一行,是本身追加的。
/dev/sdb5 /mnt/t2 ext3 defaults,acl 0 0
df
显示全部文件系统的空间使用情况:df
# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/centos-root 38815216 18982084 19833132 49% / devtmpfs 1923436 0 1923436 0% /dev tmpfs 1940308 9712 1930596 1% /run tmpfs 1940308 0 1940308 0% /sys/fs/cgroup /dev/mapper/centos-home 18950144 1842644 17107500 10% /home tmpfs 388064 4 388060 1% /run/user/42 tmpfs 388064 32 388032 1% /run/user/1000 /dev/sda1 1038336 182380 855956 18% /boot /dev/sdb5 45478 827 42091 2% /mnt/t2
显示全部文件系统的空间使用情况:df -l
# df -l Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/centos-root 38815216 18982116 19833100 49% / devtmpfs 1923436 0 1923436 0% /dev tmpfs 1940308 9712 1930596 1% /run tmpfs 1940308 0 1940308 0% /sys/fs/cgroup /dev/mapper/centos-home 18950144 1842644 17107500 10% /home tmpfs 388064 4 388060 1% /run/user/42 tmpfs 388064 32 388032 1% /run/user/1000 /dev/sda1 1038336 182380 855956 18% /boot /dev/sdb5 45478 827 42091 2% /mnt/t2
显示文件系统的空间使用情况(适合阅读):df -h
# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 38G 19G 19G 49% / devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 1.9G 9.5M 1.9G 1% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/mapper/centos-home 19G 1.8G 17G 10% /home tmpfs 379M 4.0K 379M 1% /run/user/42 tmpfs 379M 32K 379M 1% /run/user/1000 /dev/sda1 1014M 179M 836M 18% /boot /dev/sdb5 45M 827K 42M 2% /mnt/t2
显示全部文件系统的inode的使用情况:df -i
# df -i Filesystem Inodes IUsed IFree IUse% Mounted on /dev/mapper/centos-root 19417088 416785 19000303 3% / devtmpfs 480859 403 480456 1% /dev tmpfs 485077 751 484326 1% /run tmpfs 485077 16 485061 1% /sys/fs/cgroup /dev/mapper/centos-home 9480192 912 9479280 1% /home tmpfs 485077 6 485071 1% /run/user/42 tmpfs 485077 19 485058 1% /run/user/1000 /dev/sda1 524288 341 523947 1% /boot /dev/sdb5 12824 11 12813 1% /mnt/t2
du
显示目录下每一个文件所占用的空间:du
# du /home/ys/bin/ 56 /home/ys/bin/ 52 /home/ys/sbin/
显示目录下全部文件所占用的空间:du -s
-h:人类可读。
# du -s /etc/ 42732 /etc/ # du -sh /etc/ 42M /etc/