好程序员云计算学习路线教程大纲课件:Mount挂载详解:
====================================================================================
常用挂载选项详解
挂载设备文件、卷标、UUID
ISO文件创建及挂载
挂载选项 -t 文件系统类型 -o 选项1,选项2...
示例:
mount -t ext4 -o acl /dev/sdb1 /mnt/disk1
文件系统类型:vfat,ext4,xfs,nfs,cifs,iso9660,loop
例1:exec/noexec
[root@tianyun ~]# mount /dev/vg01/lv01 /mnt/lv01
[root@tianyun ~]# mount -o noexec /dev/vg01/lv02 /mnt/lv02
[root@tianyun ~]# cp -rf /bin/date /mnt/lv01
[root@tianyun ~]# cp -rf /bin/date /mnt/lv02
[root@tianyun ~]# /mnt/lv01/date
Fri Jan 10 10:40:21 CST 2019
[root@tianyun ~]# /mnt/lv02/date
-bash: /mnt/lv02/date: Permission denied
[root@tianyun ~]# mount
/dev/mapper/vg01-lv01 on /mnt/lv01 type ext4 (rw)
/dev/mapper/vg01-lv02 on /mnt/lv02 type ext4 (rw,noexec)
没有指定任何选项,则为默认选项 man mount
defaults
Use default options: rw, suid, dev, exec, auto, nouser, and async.
常见的挂载选项
rw 读写
ro 只读
suid 支持suid
dev 支持设备文件
nodev 不支持设备文件
noexec 不允许执行二进制文件
exec 允许执行二进制文件
auto mount -a 开机自动挂载
noauto mount -a 开机不自动挂载
async 异步写入
sync 同步同入
usrquota 支持用户级磁盘配额功能
grpquota 支持组级磁盘配额功能
acl 支持facl功能
remount 在线重新挂载
pri 指定优先级
====================================================================================
Relatime 驱动器访问优化
POSIX 标准要求操作系统维护记录每个文件最后一次被访问的文件系统元数据。这个时间戳被称为atime,
维护它需要一个重复的对存储的写入操作。这些写入操作让存储是设备及其连接保持忙碌和通电状态。因
为很少应用程序会使用 atim e 数据,所以这个存储设备活动是在浪费电力。特别是即使没有从存储中读取
该文件也会发生写入存储的事件,但是从缓冲中写入。有时,Linux 内核还支持 mount 的 noatime选项,并
不在使用此选项挂载的文件系统中写入 atime。但是只是关闭这个特性是有问题的,因为有些应用程序会依
赖 atime 数据,并在此数据不可用时失败。
红帽企业版 Linux 6 使用的内核之后此另一个可替换选项 -relatime。Relatime 维护 atime数据,但不是
每次访问该文件时都更改。启用这个选项,则只在上次更新 atime(mtime)后修改该文件时,或者最后一次
访问该文件是在相当长一段时间前(默认为一天)时才会将 atime 数据写入磁盘。
默认情况下,所有现在挂载的文件系统都启用 relatime。要在整个系统中限制这个特性,请使用 boot 参
数 default_relatime=0。如果默认在某个系统中启用 relatime,您可以通过使用选项 norelatime
挂载某个系统来限制它在某个具体文件系统中的使用。最后,要使系统更新文件的 atime 数据的默认周期
有所不同,请使用 relatime_interval= 引导参数,以秒为单位指定周期。默认值为 86400。
注:RHEL6开始relatime,atime延迟修改,必须满足其中一个条件:
1. 自上次atime修改后,已达到86400秒;
2. 发生写操作时;
====================================================================================
例2:async,sync
[root@tianyun ~]# mount /dev/vg01/lv01 /mnt/lv01
[root@tianyun ~]# mount -o sync /dev/vg01/lv02 /mnt/lv02
[root@tianyun ~]# mount
/dev/mapper/vg01-lv01 on /mnt/lv01 type ext4 (rw)
/dev/mapper/vg01-lv02 on /mnt/lv02 type ext4 (rw,sync)
[root@tianyun ~]# time cp -rf /etc /mnt/lv01
[root@tianyun ~]# time cp -rf /etc /mnt/lv02
挂载时可以使用(针对基本分区)
设备名 /dev/sda3
卷标 LABEL=yang
UUID UUID="353a34b8-9233-465c-b7cf-92c8d308c05b"
UDEV 可以给设备建立一个别名
例3:使用卷标挂载
[root@localhost ~]# tune2fs -l /dev/vda1 |less
Filesystem volume name: <none>
[root@tianyun ~]# tune2fs -L yang /dev/sda3 //设置卷标LABEL
tune2fs 1.39 (29-May-2006)
[root@tianyun ~]# vim /etc/fstab
LABEL=yang /mnt/disk1 ext4 defaults 0 0
例4:使用UUID挂载
[root@tianyun ~]# blkid /dev/sda5
/dev/sda5: UUID="353a34b8-9233-465c-b7cf-92c8d308c05b" SEC_TYPE="ext2" TYPE="ext3"
[root@tianyun ~]# vim /etc/fstab
UUID="353a34b8-9233-465c-b7cf-92c8d308c05b" /mnt/disk1 ext4 defaults 0 0
UUID="cf0d4159-f8ea-4fc4-93a3-cb249ad95ed0" /mnt/lv1 xfs defaults 0 0 不备份 不检测
1、<file system>这里用来指定你要挂载的文件系统的设备名称或块信息,也可以是远程的文件系统
2、<mount point>。挂载点,也就是自己找一个或创建一个dir(目录)
3、<type>。这里用来指定文件系统的类型。
4、<options>。这里用来填写设置选项,各个选项用逗号隔开。由于选项非常多,而这里篇幅有限,所以不再作详细介绍,如需了解,请用 命令 man mount 来查看。
默认设置defaults
5 <dump>。此处为1的话,表示要将整个<fie sysytem>里的内容备份;为0的话,表示不备份。现在很少用到dump这个工具,在这里一般选0。
6、<pass>。这里用来指定如何使用fsck来检查硬盘。如果这里填0,则不检查;挂载点为 / 的(即根分区),必须在这里填写1,其他的都不能填写1。如果有分区填写大于1的话,则在检查完根分区后,接着按填写的数字从小到大依次检查下去。同数字 的同时检查。比如第一和第二个分区填写2,第三和第四个分区填写3,则系统在检查完根分区后,接着同时检查第一和第二个分区,然后再同时检查第三和第四个 分区。
挂载ISO文件
1. 将光盘制作成iso
[root@tianyun ~]# dd if=/dev/cdrom of=/centos7u3.iso
[root@tianyun ~]# dd </dev/cdrom >/centos7u3.iso
2. 将文件制作成iso,例如将/etc制作成etc.iso
[root@tianyun ~]# genisoimage -o /tmp/etc.iso -r /etc
[root@tianyun ~]# file /tmp/etc.iso
/var/etc.iso: ISO 9660 CD-ROM filesystem data 'CDROM '
3. 使用iso,挂载
[root@tianyun ~]# mount -t iso9660 -o loop /tmp/etc.iso /mnt/iso/