挂载:
将一个文件系统与根文件系统中的某个目录建立关联关系,进而使得此目录作为该文件系统的访问入口
解除此关系,称为卸载。
挂载点:mount point
挂载命令:mount(手动挂载开机失效,需要更改fstab配置文件才能永久)
卸载:可使用命令,也可使用挂载点
卸载命令:umount(正在被访问的无法卸载)
挂载时,若原目录下有文件,则会被临时隐藏,直到卸载。
挂载方法:mount DEVICE MOUNT_POINT
mount:显示当前系统已挂载的所有设备
mount [-fnrsvw] [-t vfstype] [-o options] device dir
DEVICE:指明要挂载的设备
- 设备文件:如 /dev/sda5
- 卷标:-L ‘LABEL’,如:-L ’卷标‘
- UUID:-U ‘UUID’,如 -U ‘161d2b58-bfe0-4b10-b0b8-68c3252d82fb’
- 伪文件系统名称:proc,sysfs,devtmpfs,configfs
dir:挂载点,事先存在,建议使用空目录
常用命令选项:
-r:只读挂载
-w:读写挂载
-n:不更新/etc/mtab
-a:自动挂载所有支持自动挂载的设备
自动挂载设备:定义在了/etc/fstab文件中,且挂载选项中有“自动挂载”功能
-B:绑定(挂载)目录到另一个目录上
注意:查看内核追踪到的已挂载的所有设备:cat /proc/mounts
-o options:(挂载文件系统的选项)
async:异步模式(建议)
sync:同步模式(数据可靠性高,性能差)
atime/noatime:是/否 更新访问时间戳(包含目录和文件)
diratime/nodiratime:是/否 更新访问时间戳(针对目录)
auto/noauto:是/否 支持自动挂载
exec/noexec:是/否 支持将文件系统上的应用程序运行为进程
dev/nodev:是/否 支持在此文件系统上使用设备文件
suid/nosuid:是/否
remount:重新挂载
ro:只读 rw:读写
user/nouser:是否允许普通用户挂载此设备
acl:启用此文件系统上的acl功能(访问控制列表)
注意:上述选项可同时多个使用,彼此使用逗号分隔。
默认挂载选项:-o defaults
Use default options: rw, suid, dev, exec, auto, nouser, async, and relatime
卸载:umount
#umount DEVICE
#umount MOUNT_POINT
查看正在访问指定文件系统的进程:
#fuser -v MOUNT_POINT
终止所有正在访问指定文件系统的进程(直接将对方踢出系统)#慎用!
# fuser -km MOUNT_POINT
挂载交换分区:
启用:swapon
swapon [option]... [device]
-a:激活所有的交换分区
-p 优先级:多个交换分区,指定优先级
禁用:swapoff
内存空间使用状态:
free [option]
-m:以MB为单位
-g:以GB为单位
[root@centos6 ~]# free -m
shared buffers cached
共享内存空间 缓冲 缓存
Mem:
(物理内存)
-/+ buffers/cache: 176 676
Swap: 0 0 0
[root@centos6 ~]#
文件系统空间占用等信息查看工具:
df:disk free
[root@centos6 ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 18446076 3871976 13630436 23% /
tmpfs 436848 72 436776 1% /dev/shm
[root@centos6 ~]# df -h (-h :human_readable 人类易读)
Filesystem Size Used Avail Use% Mounted on
文件系统 大小 已用 可用 挂载点
/dev/sda1 18G 3.7G 13G 23% /
tmpfs 427M 72K 427M 1% /dev/shm
查看某目录总体空间占用状态:
du:
du [option]...DIR
-h :human_readable
-s:包含子目录的总体大小
[root@centos6 ~]# du -sh /etc
40M /etc
文件挂载的配置文件:/etc/fstab
每行定义一个要挂载的文件系统:
[root@centos6 ~]# cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Mon Nov 4 03:59:51 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
#
要挂载的设备或伪文件系统 挂载点 文件系统类型 挂载选项 转储频率 自检次序
UUID=161d2b58-bfe0-4b10-b0b8-68c3252d82fb / ext4 defaults 1 1
UUID=4bac55c7-eddc-44d1-adcb-e58f7d1bcd6b
tmpfs
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
要挂载的设备或伪文件系统:
设备文件、LABEL(LABEL=””)、UUID(UUID=””)、伪文件系统名称(proc,sysfs)
挂载选项:
defaults,acl
转储频率:(基本为0)
0:不做备份转储
1:每天转储
2:每隔一天转储
自检次序:
0:不自检
1:首先自检:一般只有rootfs才用1. .。。。。。9
文件系统上的其他概念:
链接文件:
硬链接:指向同一个inode的多个不同路径,增加引用计数
软链接:指向另一个文件的路径,其大小为路径字符串长度,不增加或者减少目标文件inode的引用计数
#ln [-sv] 源文件 链接文件
-s:创建软链接
-v:显示过程
文件管理操作对文件的影响
文件删除:
文件复制
文件移动
例:
- 创建一个20G的文件系统,块大小为2048,文件系统ext4,卷标为TEST,要求此分区开机后自动挂载至/testing目录,且默认有acl挂载选项
提示:(1) 创建20G分区
(2)格式化
mke2fs -t ext4 -b 2048 -L ‘TEST’ /dev/sda7
(3) 编辑/etc/fstab 文件
LABEL=’TEST’ /testing ext4 defaults,acl 0 0
(4) mount 挂载测试
- 创建一个5G的文件系统,卷标HUGE,要求此分区开机自动挂载至/mogdata目录,文件系统类型为ext3
- 写一个脚本,完成如下功能:
- 列出当前系统识别的所有磁盘设备
[root@centos6 ~]# fdisk -l /dev/[sh]d[a-z]|grep "^Disk /dev/[sh]d[a-z]"
Disk /dev/sda: 21.5 GB, 21474836480 bytes
- 如果磁盘数量为1,则显示其空间使用信息,否则显示最后一个磁盘上的空间使用信息