【linux】循序渐进学运维-基础篇-mount
文章目录
- 1. mount 命令的讲解
- 1)作用: 用来挂载文件系统的命令
- 2)基本格式为:
- 3)常见的文件系统类型有:
- 4)查看当前系统都支持哪些操作系统
- 5)挂载选项详解
- 6)与mount相关的文件
- 7)与mount相关的参数
- 2. mount使用举例
- 1. 允许可执行权限和不可执行权限
- 2.sync && async 同步写入和异步写入
- 3.acl的使用
- 4. 使用UUID进行挂载
- 总结
大家好,我是高胜寒,本文是Linux运维-循序渐进学运维-基础篇的第48篇原创文章。
今天我们来聊聊mount的使用
1. mount 命令的讲解
mount
1)作用: 用来挂载文件系统的命令
2)基本格式为:
挂载选项 -t 文件系统类型 -o 选项1,选项2…
示例:
mount -t ext4 -o acl /dev/sdb1 /mnt/
例句暂时看不懂也没关系,一会我们细细道来.
3)常见的文件系统类型有:
- ext4
- NFS
- CIFS
- XFS
- ext2
- ext3
等等
目前centos7的系统为XFS
4)查看当前系统都支持哪些操作系统
关于上文的 -t参数,我们很多时候是不写的,但是-t参数指定文件系统类型这件事却很重要。我们可以通过查看filesystems配置文件,来查看当前系统都支持哪些文件系统
上述示例里第二个参数 -o
5)挂载选项详解
-o后面指定的是挂载选项,挂载选项有很多
选项 | 含义 |
---|---|
rw | 读写 |
ro | 只读 |
suid | 支持suid |
dev | 支持设备文件 |
nodev | 不支持设备文件 |
noexec | 不允许执行二进制文件 |
exec | 允许执行二进制文件 |
auto | mount -a 开机自动挂载 |
noauto | mount -a 开机不自动挂载 |
async | 异步写入 |
sync | 同步同入 |
noatime | 不更新访问时间atime |
usrquota | 支持用户级磁盘配额功能 |
grpquota | 支持组级磁盘配额功能 |
acl | 支持acl功能 (访问控制列表) |
remount | 在线重新挂载 |
所以在这个示例中mount -t ext4 -o acl /dev/sdb1 /mnt/, -o后面的acl表示的就是支持访问控制列表。
到这里,相信这条示例命令你也看懂了,但看懂了只是开始,接下来,我们详细聊下关于mount的前世今生。
6)与mount相关的文件
- /etc/fstab (设置自动挂载的文件)
- /etc/mtab
- /proc/mounts
7)与mount相关的参数
参数 | 含义 |
---|---|
-r | 只读 |
-w | 读写 默认 |
-F | 这个命令通常和 -a 一起使用,它会为每一个 mount 的动作产生一个行程负责执行 |
-v | 显示较讯息,通常和 -f 用来除错。 |
-L | 将含有特定标签的硬盘分割挂上。 |
-U | 将档案分割序号为 的档案系统挂下。-L 和 -U 必须在/proc/partition 这种档案存在时才有意义。 |
-t | 指定档案系统的型态,通常不必指定。mount 会自动选择正确的型态。 |
-a | 将 /etc/fstab 中定义的所有档案系统挂上,此操作可实现开机自动挂载的要求。而当写入/etc/fstab文件后,挂载操作也可以只指定挂载源或挂载点 |
2. mount使用举例
1. 允许可执行权限和不可执行权限
exec/noexec
[root@gaosh-1 ~]# ll /dev/sdb* 目前有一块sdb1的盘
brw-rw----. 1 root disk 8, 16 6月 25 17:01 /dev/sdb
brw-rw----. 1 root disk 8, 17 6月 25 17:31 /dev/sdb1
[root@gaosh-1 ~]#
创建两个目录,一个用于挂载可执行权限目录,一个用于挂载不可执行权限目录
挂载并测试:
[root@gaosh-1 ~]# mount /dev/sdb1 /mnt/gexec 挂载到可执行二进制目录gexec
[root@gaosh-1 ~]# cp -rf /bin/date /mnt/gexec #拷贝一个二进制文件过来测试
[root@gaosh-1 ~]# /mnt/gexec/date #执行命令发现可以执行成功
2020年 06月 25日 星期四 21:13:51 CST
[root@gaosh-1 ~]#
上述的例子证明了,挂载后可以执行二进制目录,但是没有证明如果加了参数noexec,就不能执行二进制, 我们来试试
[root@gaosh-1 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 20G 3.8G 15G 21% /
tmpfs 1.8G 228K 1.8G 1% /dev/shm
/dev/sda1 190M 40M 141M 22% /boot
/dev/sdb1 4.9G 11M 4.6G 1% /mnt/gexec
[root@gaosh-1 ~]# umount /mnt/gexec/ 先卸载掉重新挂载到另外一个目录 nexec
[root@gaosh-1 ~]#
接下来我们使用不支持可执行权限的挂载方法,noexec,并测试
[root@gaosh-1 ~]# mount -o noexec /dev/sdb1 /mnt/nexec/ #此处使用-o noexec参数
测试:
可以看到,同样是拷贝过去二进制文件,但是执行的时候却提示权限不够。
2.sync && async 同步写入和异步写入
[root@gaosh-1 ~]# mkdir /mnt/test1
[root@gaosh-1 ~]# mount /dev/sdb1 /mnt/test1/
[root@gaosh-1 ~]# mount
/dev/sdb1 on /mnt/test1 type ext4 (rw)
不加参数,默认是异步写入,可以看到,rw权限
[root@gaosh-1 test1]# time cp -rf /etc/ /mnt/test1 #查看写入时间real 0m0.112s
user 0m0.000s
sys 0m0.111s
如果加了 -o sync参数我们来看一下:
[root@gaosh-1 ~]# umount /mnt/test1/ #卸载掉test1
[root@gaosh-1 ~]# mkdir /mnt/test2 # 创建test2目录
[root@gaosh-1 ~]# mount -o sync /dev/sdb1 /mnt/test2 使用sync同步写入挂载/dev/sdb1 on /mnt/test2 type ext4 (rw,sync) #可以看到rw,后面多了个同步写入
[root@gaosh-1 ~]# time cp -rf /etc/ /mnt/test2 查看写入时间real 0m5.267s
user 0m0.004s
sys 0m1.322s
可以明显看到同步时间较长一些:因为同步的时候client获取响应需要等待刷盘时间。但并不是所有情况下异步都比同步快。
所以这里胜寒表示: 时间快慢仅在此实验有效。
3.acl的使用
设置自动挂载
vim /etc/fstab
查看一下,目前没有挂载:
执行mount -a自动挂载
[root@gaosh-1 ~]# mount/dev/sdb1 on /mnt/test1 type ext4 (rw,acl)
4. 使用UUID进行挂载
查看uuid
[root@gaosh-1 ~]# blkid /dev/sdb1
/dev/sdb1: UUID="37c948a1-d0b9-49ff-923c-f3eac30eb0f3" TYPE="ext4"
vim /etc/fstab
保存退出:然后使用 mount -a
总结
虽然mount的参数比较多,但不是每个参数都需要掌握,学会使用 /etc/fstab, 设置自动挂载。
我是高胜寒,一个在教培行业不忘初心的人,欢迎点赞收藏,我们下篇文章再见!
【linux】循序渐进学运维-基础篇-mount相关推荐
- 【linux】循序渐进学运维-基础篇-修复文件系统实战
文章目录 前言: 实验环境 解决方案 1) 系统出现只读的情况的解决方案 2) 系统文件受损,可以使用fsck命令 a. 创建一个1G的分区 b. 对分区进行格式化 c. 破坏文件系统并重新挂载 d. ...
- 【linux】循序渐进学运维-基础篇-磁盘阵列
文章目录 一. RAID的概念 二. RAID的类型 1. RAID的实现方式: 2. 软raid 5 的实现方式 1) 新增加一块硬盘并创建5个分区 2. 创建RAID 3. 格式化挂载 4. 再次 ...
- fdisk 分区_【linux】循序渐进学运维-基础篇-分区命令fdisk
大家好,我是高胜寒,本文是Linux运维-循序渐进学运维-基础篇的第47篇文章. 本文我们来讨论一下fdisk命令的使用,使用fdisk可以做分区管理. 1. 命令概述: fdisk 作用: 磁盘分区 ...
- 【linux】循序渐进学运维-基础篇-文件的软硬链接
文章目录 前言 软硬链接的介绍 1. 硬链接 2. 软连接 案例实战 1) 硬链接原文件删除不会影响链接文件的正常使用 2) 硬链接不能跨分区进行创建 3) 创建软连接,测试删除原文件后,软连接是否还 ...
- 【linux】循序渐进学运维-基础篇-linux运维级别
本文是循序渐进学运维-基础篇系列的第43篇文章 文章目录 Linux的运行级别 运行级别的启动原理 1. 在目录/etc/rc.d/init.d下有许多服务器脚本程序,一般称为服务(service) ...
- 【linux】循序渐进学运维-基础篇-netstat命令详解
大家好,我是高胜寒,本文是Linux运维-循序渐进学运维-基础篇的第62篇文章 文章目录 前言 一. netstat命令详解 作用 1. 常用参数 2. 命令使用 1) 参数作用详解 2) 网络连接状 ...
- 【linux】循序渐进学运维-基础篇-配置静态IP详解
大家好,我是高胜寒,本文是Linux运维-循序渐进学运维-基础篇的第61篇文章 文章目录 前言 查看网卡物理连接是否正常的命令 1. mii-tool 2. ifconfig 1) 启动关闭指定网卡 ...
- 【linux】循序渐进学运维-基础篇-操作系统初始化
大家好,我是高胜寒,本文是Linux运维-循序渐进学运维-基础篇的第60篇文章 文章目录 前言 安装Linux后的初始化操作 1. 关闭selinux功能 2. 精简开机启动项 a) 开启自启动服务 ...
- 【linux】循序渐进学运维-基础篇-Linux系统启动原理
大家好,我是高胜寒,本文是Linux运维-循序渐进学运维-基础篇的第59篇文章 文章目录 前言 centos 6的启动过程 1. 加载BIOS硬件信息 a) 通电自检 b) MBR引导 2. grub ...
最新文章
- 敏捷开发和测试中重现缺陷和验证缺陷的解决方案(2)
- 《企业云桌面实施》-小技巧-04-VMWare Workstation-虚拟机强行关机开机
- 面对 iPad,Surface 的键盘是必杀技
- 关于对FLASH开发,starling、starling feathers、starling MVC框架的理解
- 七个你没用过的炫酷开发工具推荐
- 以史为鉴 | 为什么要将「知识图谱」追溯到1956年?
- C++工作笔记-C++代码实现接口的概念
- 安装配置Collabnet_Subversion
- python爬虫爬取图片代码_python爬虫实战 爬取天极图片
- python字符串补空格输出_python实现指定字符串补全空格、前面填充0的方法
- crontab 每天凌晨12点定时器_双十一预售:李佳琦薇娅凌晨12:00点,观看次数双双破亿...
- 【红昭愿】MMD动作镜头下载
- SSM框架讲解(史上最详细的文章)
- IT创业光技术好,谋略定位不好,你很可能会死得很惨,丢钱、丢客户、丢成果、丢商机、丢思路
- 部署高校房屋管理系统可以实现哪些目标?
- 前几天挂掉一个读者的滴滴二面矩阵题目
- 网站域名到期无法续费后还能买回来吗?
- 统计学习方法——第1章(个人笔记)
- C语言年历显示主菜单怎么做,c语言程序的设计年历显示.doc
- 算法竞赛宝典 分治算法 聪明的质检员
热门文章
- python字典增加方法_python增加字典项的方法
- Storm Trident 详细介绍
- uniapp的表单验证
- 微信小程序 JS中遍历后台获取的data数据并赋值
- 英文歌曲:a place nearby(不远的地方)
- 29.请编写一个函数fun,它的功能是:将ss所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)。
- IMS/SIP - GCF IMS相关认证测试如何通过看case procedure来得知哪些field/IE必须带?
- Laravel 教程 - Web 开发实战入门 ( Laravel 5.5 )购买链接
- Java官方教程(七-3)Using Objects 使用对象(2021.4.10)
- 写给自己,人生路远,勿忘初心