mount - mount a filesystem
mount [option]... [-t fstype] [-o option] 设备 挂载点
挂载点要求:
1、事先存在;
2、使用空闲目录;
不跟选项时,显示已挂载的设备
常用的挂载选项[option]:
-t fstype:指定文件系统类型
-r: readonly, 只读挂载
-w: read and write, 读写挂载
-L LABEL:以卷标方式指定设备, mount -L MYDATA 挂载点
-U UUID: 以UUID的方式指定设备,mount UUID='uuid' 挂载点, mount -U uuid 挂载点
-a: 自动挂载所有(/etc/fstab文件中定义的)的支持自动挂载设备,对于交换设备是不行的
-n: 挂载时,不更新/etc/mtab文件
-o option:
async:异步I/O,数据写操作先于内存完成,而后再根据某种策略同步至持久设备中
sync: 同步I/O,
atime/noatime: 文件和目录被访问时是更新最近一次的访问时间戳
auto/noauto:设备是否支持mount的-a选项自动挂载
diratime/nodiratime: 目录被访问时是更新最近一次的访问时间戳
dev/nodev: 是否支持在此设备上使用设备;
exec/noexec: 是否允许执行此设备上的二进制程序文件
suid/nosuid: 是否支持在此设备的文件上使用suid
remount: 重新挂载,通常用于不卸载的情况下重新指定挂载选项
ro: 只读
rw: 读写
user/nouser: 是否允许普通挂载此文件设备
acl: 在此设备是支持使用facl,默认不支持;
例如:以指定挂载后支持acl为例:
方法1:
mount -o acl DEVICE MOUNT_POINT
方法2:
tune2fs -o acl DEVICE
tune2fs -o ‘^acl’ DEVICE
为设备设定默认挂载选项
mount DEVICE MOUNT_POINT
查看所有已经挂载的设备:
# mount
# cat /proc/mounts
# cat /etc/mtab 追踪当前系统已经挂载的设备
卸载:挂载点没有被进程访问时方可以卸载 ;
卸载:umount DEVICE
umount MOUNT_POINT
查看哪些进程正在访问挂载的设备:
fuser -v 挂载点
中止正在此挂载点的进程:
fuser -km 挂载点
df: disk free
-h: human-readable
-i: 显示inode的使用信息而非默认的磁盘空间使用信息
du: disk usage
du - estimate file space usage
-s:
-s, --summarize
display only a total for each argument
-h:
-h, --human-readable
print sizes in human readable format (e.g., 1K 234M 2G)
获取UUID的两种方式:
[root@linux_basic ~]#tune2fs -l /dev/vg_lvm/lv1 | grep "^Filesystem UUID" | cut -d: -f2 | tr -d ' '
655ed2ec-3a50-47ef-b0e5-d9e83eb88a3d
[root@linux_basic ~]#blkid /dev/vg_lvm/lv1 | cut -d' ' -f2 | tr -d UUID=\"\"
655ed2ec-3a50-47ef-b0e5-d9e83eb88a3d
练习:创建一个20G的分区,块大小为2048,预留百分比为3,卷标为MYDATA,要求挂载
后支持acl,使用UUID的方式挂载至/mydata目录;
使用重新挂载的功能,让其不支持dev功能;
#mke2fs -b 2048 -m 3 -L MYDATA 挂载设备
#tune2fs -o acl 挂载设备
#mount -U
#mount -o remount,nodev /mydata
交换分区:
mkswap
free: 查看内存及交换分区的使用信息
真正使用的:used - buffers - cached
启用某交换分区设备
swapon [DEVICE]
-a: all, 启用所有交换分区
-p #: 指定此交换设备的优先级
禁用某交换分区设备
swapoff [DEVICE]
-a: 禁用所有
自动挂载的设备的配置文件:/etc/fstab
6字段:
挂载的设备:可以是以下值
设备文件
LABEL
UUID
挂载点:
文件系统类型
挂载选项:
挂载选项可以有多个,彼此间使用逗号分隔;
转储频率:
0:从不转储
1: 每天转储
2: 每隔一天
自检次序:
0:不自检,额外创建的文件系统都无须自动自检
1:首先自检,通常只有根文件系统需要首先自检
2:次级自检,不同的设备可以使用同一个自检次序
3
...
练习:写一个脚本,完成如下功能
1、列出当前系统上的所有磁盘设备;
2、让用户选择一个磁盘设备,并在选择后显示指定设备上的所有分区信息;
3、询问用户是否擦除此磁盘上的所有现存分区后重新添加三个分区;
y或yes: 继续
n或no: 中止脚本
其它字符则提醒用户重新输入合法的字符
4、在用户选择是后执行相应的分区操作
创建三个分区
主分区1:512M,ext4
主分区2: 512M,swap
主分区3:2G,ext4
5、将创建的分区按如上说明分别格式为相应的文件系统;
6、将主分区1挂载至/mnt/boot目录,主分区3挂载至/mnt/sysroot目录;
扩展:在上述第3个步骤开始之后,先查看此设备上是否有分区被挂载,如果有,则先卸载之;
# fdisk -l | awk '/^Disk \/dev\/[sh]d[a-z]/{print $2}' | tr -d ':'
/dev/sda
/dev/sdb