在文件资源管理加载上,Linux 系统与 Windows 系统是有区别的。具体表现在:Windows 启动会自动加载主板上连接的所有磁盘,也就是说,无论你的主板上插有多少块硬盘,Windows 开机都是会把这些磁盘的所有分区都加载的,可以直接使用。而 Linux 不同的是,默认除了系统所在的分区,其它分区都需要通过 mount
手动挂载,如果我们有经常使用一些目录并且这些目录是在其他分区,那么就意味着每次开启都要去手动挂载一次,可以说是比较麻烦了,那么本文就着重为大家介绍如何可以避免这个麻烦即我们也让 Linux 系统在启动时自动挂载分区。
在 Linux 系统中,当我们想要对数据盘进行扩容时,如果新增了一块磁盘,新增之后进行挂载,如果我们不设置它为自动挂载,那么重启系统之后就会发现找不到对应的磁盘了,也就意味着存储在那块盘上的数据我们也无法使用。其实每次开机手动挂载也不是不行,只是很不方便。下面就为大家介绍开机后自动挂载磁盘的方法。
在正式开始之前,先说说怎么在 Linux 中看当前磁盘的挂载情况,这里会介绍一个新的命令 df
,这个命令的作用就是 report file system disk space usage 即输出文件系统磁盘空间使用情况,是一个很基础的命令,平时也用的比较多,我们看一下执行这条命令的的输出:
选项解释:
-T:打印文件系统类型
-h:以人类可读的方式打印出空间大小
命令和选项都很好理解,可以看到,这个命令的输出有 7 列,分别代表的意思解释如下:
Filesystem:文件系统对应的设备文件的路径名即硬盘上的分区
Type:文件系统的类型
Size:文件系统的总大小
Used:文件分区的使用大小
Avail:文件分区的可用大小
Use%:文件分区使用的百分比
Mounted on:文件系统的挂载点
**注意:**第 4 列和第 5 列之和不等于第 3 列是因为默认的每个分区都预留了少量空间供 root 使用。即使遇到空间已满的情况,root 仍能登录和拥有解决问题所需的工作空间。
说了这么多,现在回归正题,来说说自动挂载具体是如何实现的吧!
修改配置文件实现自动挂载
使用 vim
打开 fstab 文件,可以看到如下:
$ vim /etc/fstab
注释的部分可以先不用管,正文部分只有一行,总共是 6 列。还是老样子,我们先介绍这 6 列的含义,明白它们的含义之后,会更好的让我们理解自动挂载的实现。
第一列:设备名或者卷标
第二列:挂载点,也就是挂载的目录
第三列:所要挂载设备的文件系统或者文件系统类型
第四列:挂载选项,通常使用 defaults 就可以
第五列:是否使用 dump 备份,置 0 为不备份,置 1、2为备份,但 2 的备份重要性比 1 小
第六列:是否设置开机的时候使用 fsck 检验所挂载的磁盘,置 0 不检验,置 1、2 为检验,但置 2 的盘比置 1 的盘晚检验
现在已经知晓了每列的意义,假如说现在我的根下有一个 data 目录,我想把它挂载到 /dev/vdb 这块磁盘上,那么我只需要执行 mount
就可以,具体如下:
# mount /dev/vdb /data
注意:mount 操作只能 root 执行
$ df -Th
Filesystem Type Size Used Avail Use% Mounted on
devtmpfs devtmpfs 398M 0 398M 0% /dev
tmpfs tmpfs 411M 24K 411M 1% /dev/shm
tmpfs tmpfs 411M 428K 411M 1% /run
tmpfs tmpfs 411M 0 411M 0% /sys/fs/cgroup
/dev/vda1 ext4 9.8G 6.1G 3.3G 65% /
tmpfs tmpfs 83M 0 83M 0% /run/user/0
/dev/vdb ext4 9.8G 37M 9.3G 1% /data
执行完挂载命令,顺便看一下磁盘挂载情况,通过最后一行可以看到已经达到了我们的目的,但是这个只是临时挂载,重启之后就没了,我们想要永久挂载那么就需要把它写到配置文件里,具体怎么写呢?刚才我们已经介绍了每列的意义,而现在我们只需要根据每列含义写出对应的数据到配置文件里就可以,如下:
看到这里,是不是觉得很简单呢。修改完配置文件之后我们在执行一下” mount -a “:
# mount -a ==> 挂载fstab中提到的所有文件系统
这条命令执行成功就代表配置文件中写的内容没有问题,而且在下次重启之后也会达到自动挂载的效果。关于挂载其实也很好理解,与 Windows 操作系统不同的是,在 Linux 系统中,除了根文件系统之外的其他我呢见要想能够被访问,都必须要被挂载,也就是将磁盘跟某个目录进行关联,这个关联的操作专业一点就叫做挂载,目录就称为挂载点;相反,如果解除关联就称为卸载。最后,这里在补充几点注意事项:
-
单一文件系统不可以被重复挂载到不用的目录 -
单一目录不可以重复挂载至多个文件系统 -
在挂载之前,需要确保挂载点为空,也就是要是一个空目录才执行挂载,如果目录本来有数据,则可能会导致数据被覆盖,导致数据丢失。