目录
一、何为挂载
我们平常在Windows系统中使用U盘,一般就直接将U盘插入到电脑上直接使用,但是并不知道Windows为我们做了哪些事情,使得我们能够使用这个U盘,接下来我们研究一下Linux系统添加硬件设备的工作原理和流程。
我们知道在Linux中想要使用一块新的硬盘存储设备主要有三个步骤,1.分区,2.格式化,3.挂载。分区和格式化不知道的同学可以移步至我的下一篇博客。那么我们这里所讲的挂载到底是什么呢,相当于入住酒店时,在酒店前台登记的作用,你跟酒店是消费者和商家的关系,酒店将你的信息登记下来,你就可以入住,商家就可以赚你的钱,而如果你不登记信息,根据相关规定是不能入住的,在Linux中一切皆文件,加的硬盘是外来的,要转换成文件,这个过程就是挂载。下面我来画一个草图来简单理解一下:
我们可以看到Linux和新的硬盘存储设备都有自己的目录层次,虽然在Linux的图形化界面可以查看到硬件设备,但是命令行方式查看不到,所以需要将两者关联起来,这个就是挂载的过程,如下图所示,这样就可以在命令行模式下访问到新的硬盘存储设备了。
二、实现命令
1.mount命令
mount命令用于加载文件系统到指定的加载点。此命令的最常用于挂载cdrom,使我们可以访问cdrom中的数据,因为你将光盘插入cdrom中,Linux并不会自动挂载,必须使用Linux mount命令来手动完成挂载
语法格式:mount [参数]
常用参数:
-t | 指定挂载类型 |
-l | 显示已加载的文件系统列表 |
-h | 显示帮助信息并退出 |
-V | 显示程序版本 |
-n | 加载没有写入文件“/etc/mtab”中的文件系统 |
-r | 将文件系统加载为只读模式 |
-a | 加载文件“/etc/fstab”中描述的所有文件系统 |
示例1普通挂载:
将设备/dev/sr0挂载在/mnt目录下,(挂载点最好是新建的空目录,/mnt也可以理解为mount的缩写,一般都用来挂载),只需要在mount命令后填写设备和挂载点就行,系统会自动判断要挂载文件的类型
可以看到挂载成功
虽然mount后可以立即使用文件系统了,但是系统重启后挂载就会失效,也就是说我们每次开机后都要手动重新挂载一下,这显然是麻烦的,在Linux系统中所有操作如果想要永久生效,那就是写到配置文件中,想要让硬盘设备和目录永久自动关联,我们要将挂载信息按照格式“设备文件 挂载目录 格式类型 权限选项 是否备份 是否自检”写入到/etc/fstab文件中,配置好之后就好啦。
表:挂载格式各字段表示的意义(可以通过man手册查看)
字段 | 意义 |
设备文件 | 一般为设备的路径+设备名称,也可以写唯一识别码 |
挂载目录 | 指定要挂载的目录,需要在挂载前创建好 |
格式类型 | 指定文件系统的格式(Ext3、Ext4、XFS、SWAP等) |
权限选项 | 若设置为default,默认为rw、suid、dev、exec等 |
是否备份 | 若为1则开机后使用dump进行磁盘备份,为0则不备份 |
是否自检 | 若为1则开启后自动进行磁盘自检,为0则不自检 |
示例2永久挂载:
将/dev/sr0在开机后自动挂载到/mnt目录上,并保持默认权限且无需开机自检,需要在/etc/fstab文件中写入下面的信息,这样在系统重启后也会成功挂载
[root@localhost ~]# vim /etc/fstab
当然在生产环境中我们不会去重启服务器,可以通过命令mount -a 查看是否报错,-a表示加载文件“/etc/fstab”中描述的所有文件系统
如果不知道文件类型,可以通过df -T查看,光盘的文件类型默认是iso9660
2.umount命令
umount是“unmount”的缩写,译为“不挂在。所以它的”的作用是卸载已安装的文件系统、目录或文件
语法格式:
umount [挂载点/设备文件]
示例1卸载/dev/sr0 :
当然如果是写入/etc/fstab文件中了,用umount命令取消挂载,重启后还是挂载的,要想永久卸载也是要改配置文件
硬盘的挂载操作类似,注意文件类型是XFS就行,XFS是centos7的默认文件类型