挂载就是把设备文件名和已经建立的空目录链接起来的过程,就叫做挂载。

1、mount命令介绍

(1)mount命令说明

Linux系统中所有存储设备都必须挂载才能使用,包括硬盘。

  • 命令名称:mount
  • 命令所在路径:/bin/mount
  • 执行权限:所有用户

mount命令的使用示例:

# 查询系统中已经挂我的设备,-l会显示卷标名称
[root@localhost ~]# mount [-l]

(2)mount命令格式

[root@localhost ~]# mount [-t 文件系统] [-L卷标名] [-o特殊选项] 设备文件名 挂载点

# 注意:在Linux系统中\ 的意思表示换行符, 代表上边两行是一行内容。

选项:
-t文件系统:加入文件系统类型来指定挂载的类型,可以ext3、ext4、iso9660等文件系统。(不写也没事,Linux系统默认光盘U盘都能自动识别)。
-L卷标名:挂载指定卷标的分区,而不是安装设备文件名挂载。(现在基本上用不到了,可以不关注。)
-o特殊选项:可以指定挂载的额外选项,比如读写权限、同步异步等,如果不指定则默认值生效。

举例:

[root@localhost ~]# mount -t iso9660 /dev/sr0 /mnt/cdrom/

2、mount命令示例

直接输入mount 命令,就是查询系统中已经存在的挂载设备。

[root@localhost ~]# mount
/dev/sda3 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw) # 其中只有
# /dev/sda3 on / type ext4 (rw)-->/dev/sda3挂载到根目录下,文件系统是ext4,权限是读写。
# /dev/sda1 on /boot type ext4 (rw) 有用,其他都是干扰项. # 还要注意,swap分区是不需要挂载点的,是给系统内核直接访问的分区,mount命令是查看不到的。

3、mount -a命令说明

# 依据配置文件/etc/fstab的内容,自动挂载
[root@localhost ~]# mount -a

-aaauto,自动的意思。

Linux系统的硬盘是开机自动挂载的。但是光盘和U盘这类移动存储设备,是不推荐开机自动挂载的。

如果光盘和U盘这类移动存储设备设置了开机自动挂载,开机时一旦你忘记放光盘或者U盘,系统就会无条件的寻找这个分区,如果找不到的话,就会系统启动错误。这样的错误其实修复起来并不难,但是一定要在本机上进行操作。

Linux系统自动挂载就是依照/etc/fstab文件进行自动挂载的。这个文件是一个非常脆软的文件,一旦这个文件写错,系统会启动报错。

执行查看/etc/fstab文件命令:[root@localhost ~]# vim /etc/fstab

如下图所示:

mount -a命令可以看作是扫描一下/etc/fstab文件,看看里边的内容有没有写错,如果写错会报错。

Red Hat 6以后的Linux系统中,/etc/fstab文件的容错性明显的增强了。Red Hat 5以前出现一个字母的拼写错误都是不行的,Red Hat 6以后除了关键位置的信息不能有错误,其他的出现错误也不会报错,所以有时候用mount -a命令扫描,不一定会出现错误,,所以不能盲目信任mount -a命令的结果。这个记住就好。(后边会说如果该文件有错误怎么修复)

4、-o特殊选项说明

我们先查看一下前面说的/etc/fstab文件,Linux系统的自动挂载配置文件。

上图中红框内就是分区挂载的默认权限。下面详细说明一下挂载的权限:

  • atime/noatime:更新访问时间或不更新访问时间。访问分区文件时,是否更新文件的访问时间,默认为更新。
  • async/sync:异步/同步,默认为异步。
  • auto/noauto :自动/手动,mount -a命令执行时,是否会自动安装/etc/fstab文件内容挂载,默认为自动。
  • exec/noexec:执行或不执行,设定是否允许在文件系统中执行可执行文件,默认是exec允许。
  • rw/ro:读写/只读,文件系统挂载时,是否具有读写权限,默认是rw
  • suid/nosuid:具有或不具有SUID权限,设定文件系统是否具有SUIDSGID的权限,默认是具有。
  • user/nouser:允许或不允许普通用户挂载,设定文件系统是否允许普通用户挂载,默认是不允许,只有root可以挂载分区。
  • defaults:定义默认值,相当于rwsuiddevexecautonouserasync 这七个选项。
  • remount:重新挂载已经挂载的文件系统,一般用于指定修改特殊权限。
  • usrquota:写入代表文件系统支持用户磁盘配额,默认不支持。
  • grpquota:写入代表文件系统支持组磁盘配额,默认不支持。

说明:

  • defaults权限代表最上边7种权限中,有一个是默认值。这个默认值一般不需要进行修改,默认选项就很好。
  • 比如exec/noexec选项,如果选择noexec,那整个分区中的文件都不能执行,如果是根目录定义成noexec,那整个系统都无法启动,即使想修改也不行,因为mount命令都执行不了了。

5、exec/noexec选项说明

请看下面示例:

# 1、查看系统中已经挂载的文件系统,注意有虚拟文件系统
# 命令结果是代表:/dev/sda3分区挂载到/目录,文件系统是ext4,权限是读写
[root@localhost] # mount
/dev/sda3 on/type ext4(rw)proc on/proc type proc(rw)
sysfs on/sys type sysfs(rw)
devpts on/dev/pts type devpts(rw,gid=5,mode=620)
tmpfs on/dev/shm type tmpfs(rw)
/dev/sdal on/boot type ext4(rw)
none on/proc/sys/fs/binfmt_misc type binfmt_misc(rw)
sunrpe on/var/lib/nfs/rpe_pipefs type rpc_pipefs(rw) # 2、修改特殊权限
#我们查看到/boot分区已经被挂载,而且采用的defaults 选项,那么我们重新挂载分区,并采用 noexec
[root@localhost ~]# mount -o remount,noexec /boot(临时生效) # 然后用mount命令查询一下分区,boot分区多了noexec权限
# /dev/sdal on /boot type ext4 (rw,noexec) # 权限禁止执行文件执行,看看会出现什么情况(注意不要用根分区做试验,#不然系统命令也不能执行了)。
# 执行一个shell脚本
[root@localhost boot]# ./hello.sh
-bash:./hello.sh:权限不够 # 再修改回来权限,就可以执行了。
[root@localhost ~]# mount -o remount,exec /boot

这个练习也要记住remount的作用和使用方法。

『学了就忘』Linux基础命令 — 37、Linux中挂载操作的相关命令的更多相关文章

  1. 『学了就忘』Linux基础命令 — 38、Linux中光盘的挂载

    目录 步骤一:创建一个空目录 步骤二:找到光盘的设备文件名称 步骤三:挂载光盘 步骤四:访问关盘中的数据 步骤五:卸载挂载点 问题:挂载点为什么要使用空目录 提示:关于Linux系统中光盘的挂载,我们 ...

  2. 『学了就忘』Linux基础 — 6、VMware虚拟机安装Linux系统(超详细)

    目录 1.打开VMware虚拟机软件 2.选择Linux系统的ISO安装镜像 3.开启虚拟机安装系统 (1)进入Linux系统安装界面 (2)硬件检测 (3)检测光盘 (4)欢迎界面 (5)选择语言 ...

  3. 『学了就忘』Linux基础 — 10、VMware虚拟机中克隆的使用

    目录 1.什么是克隆 2.克隆的两种类型 (1)完整克隆 (2)链接克隆 3.克隆操作 步骤一:克隆虚拟机 步骤二:进行克隆导向 3.快照与克隆的区别 4.镜像的管理 快照和克隆是VMware中两个非 ...

  4. 『学了就忘』Linux基础 — 11、通过setup工具配置Linux系统IP地址

    目录 1.setup命令介绍 2.使用setup命令配置IP (1)执行setup命令 (2)进入图形化配置界面 (3)选择配置IP还是DNS (4)选择要配置的网卡 (5)进入IP地址配置页面 (6 ...

  5. 『学了就忘』Linux基础 — 15、了解Linux系统的目录结构

    目录 1.一级目录说明 (1)一级目录列表 (2)/bin/和/sbin/目录说明 (3)/boot/目录说明 (4)/lib/和/lib64/目录说明 (5)/lost+found/目录说明 (6) ...

  6. 『学了就忘』Linux基础 — 16、Linux系统与Windows系统的不同

    目录 1.Linux严格区分大小写 2.Linux一切皆文件 3.Linux不靠扩展名区分文件类型 4.Linux中所有的存储设备都必须在挂载之后才能使用 5.Windows下的程序不能直接在Linu ...

  7. 『学了就忘』Linux基础 — 17、远程服务器关机及重启时的注意事项

    目录 1.为什么远程服务器不能关机 2.远程服务器重启时需要注意两点 3.不要在服务器访问高峰运行高负载命令 4.远程配置防火墙时不要把自己踢出服务器 5.指定合理的密码规范并定期更新 6.合理分配权 ...

  8. 『学了就忘』Linux基础命令 — 18、Linux命令的基本格式

    目录 1.命令提示符说明 2.命令的基本格式 (1)举例ls命令 (2)说明ls -l命令的 输出内容 1.命令提示符说明 [root@localhost ~] # []:这是提示符的分隔符号,没有特 ...

  9. 『学了就忘』Linux基础命令 — 20、文件操作的相关命令

    目录 1.touch 命令 2.stat命令 3.cat命令 4.more命令 5.less命令 6.head命令 7.tail命令 1.touch 命令 touch命令用于创建空文件或修改文件时间, ...

随机推荐

  1. MySQL&ES连接池

    数据库的连接池建议放在类似settings.py的配置模块中,因为基本都是配置项,方便统一管理. 1) 连接池类#settings.py import os from DBUtils.PooledDB ...

  2. 深入浅出WPF-11.Template(模板)02

    模板 DataTemplate和ControlTemplate的关系 通过上面的内容,控件只是一个数据和行为的载体,是一个抽象的概念,至于它长什么样子,或者它的数据是怎么展示的,都是由模板生成的.决定 ...

  3. kubectl 的插件管理工具krew

    k8s的命令行工具kubectl 对于玩k8s 的人来说是必备工具.kubectl插件机制在Kubernetes 1.14宣布稳定,进入GA状态.kubectl的插件机制就是希望允许开发者以独立的二进 ...

  4. Incorrect datetime value: 时间添加失败原因

    在进行单元测试中通过 new Date() 方式添加时间时,报了 Data truncation: Incorrect datetime value:这样的错误(我数据库表的时间类型是 datetim ...

  5. 屏幕截图小工具的制作过程问题记录 python PIL pynput pyautogui pyscreeze

    最近想做一个脚本小工具,方便写一些操作说明文档,它的功能很简单,就是把脚本打开之后,鼠标进行操作点击时,会在点击后进行截图,并在图上标记出点击的位置,有点类似于录屏软件的图片版,这样的话,如果要想用文 ...

  6. 基于python的pixiv爬虫

    基于python的pixiv爬虫 1.目标 在和朋友吹逼过程中,聊到qq群机器人,突发奇想动手做一个p站每日推荐色图的色图机,遂学习爬虫. 目标: 批量下载首页推荐色图. 由于对qq机器人不熟,先利用 ...

  7. 记一次 .NET 某电商定向爬虫 内存碎片化分析

    一:背景 1. 讲故事 上个月有位朋友wx找到我,说他的程序存在内存泄漏问题,寻求如何解决? 如下图所示: 从截图中可以看出,这位朋友对 windbg 的操作还是有些熟悉的,可能缺乏一定的实操经验,所 ...

  8. javascriptRemke之原型的重要性

    前言:JavaScript的原型对象一直是新人学习js的一大重大阻碍,但是原型的知识往往又是面试中常常会被深挖的一个点,为什么会这样呢?本文带你揭秘JavaScript原型的重要性,了解重要性之后再进 ...

  9. Java(31)泛型和可变参数

    作者:季沐测试笔记 原文地址:https://www.cnblogs.com/testero/p/15228443.html 博客主页:https://www.cnblogs.com/testero ...

  10. CAM对象样式表

    CAM对象样式表 121 160 UF_machining_task_type UF_mach_order_task_subtype 112 UF_machining_null_grp_type 无 ...