我们在使用 CentOS7 时,一般最好把数据都存放在额外挂载的磁盘上,优点就是防止系统磁盘爆满,以及防止数据丢失。
目前使用的 Linux 操作系统,也绝大部分与 CentOS7 的操作命令一样,包括一些国产 Linux 系统。
因此本篇博客以 CentOS7 为例,通过 vm 虚拟机,介绍如何通过命令操作,挂载一块新的磁盘。
一、查看新添加的磁盘
在 vm 虚拟机没有添加磁盘之前,运行命令 lsblk
查看当前 CentOS7 下面的磁盘情况
可以发现目前只有 sda 这一块磁盘,下面有 2 个分区:sda1 和 sda2
然后关闭 vm 虚拟机,通过 vm 界面操作,给 vm 虚拟机添加一块磁盘。(注意:如果不关机的话,新添加的磁盘检测不到)
我添加了一块 100G 的磁盘,启动 vm 虚拟机,再次运行命令 lsblk
查看当前 CentOS7 下面的磁盘情况
可以发现,已经识别出了新添加的 100G 磁盘 sdb,此时还没有进行分区
二、为新添加的磁盘分区和格式化
运行命令 fdisk -l
查看磁盘的完整文件路径
我们发现磁盘 sda 的路径是 /dev/sda,其下面有 2 个分区:/dev/sda1 和 /dev/sda2
磁盘 sdb 的路径是 /dev/sdb,容量为 107.4G,是我们新添加的磁盘,其下面没有任何分区。
运行命令 fdisk /dev/sdb
开始对我们新添加的磁盘进行区分操作
你可以输入 m 查看可以菜单命令
可以发现输入 n 表示添加一个新的分区,于是我们输入 n
提示我们是创建主分区,还是扩展分区。绝大多数情况下,我们不会对磁盘创建多个分区,因此就不需要扩展分区,输入 p
然后两次回车,将整个磁盘创建为一个主分区,这样可以提高磁盘的利用率
然后可以输入 p 表示查看已经创建好的分区,可以看到只有一个分区 /dev/sdb1
最后输入 wq 保存并完成分区的操作
然后输入 lsblk
命令,查看当前的磁盘分区
可以发现磁盘 sdb 已经拥有了一个 sdb1 的分区,表明已经完成了分区
三、格式化和挂载磁盘
首先运行命令 cat /etc/fstab
查看当前系统启动时,自动挂载的磁盘列表
可以发现系统使用的磁盘格式化方式,采用的是 xfs 格式,因此我们也采用 xfs 格式化磁盘
运行命令 mkfs.xfs /dev/sdb1
将新添加的磁盘分区 sdb1 格式化为 xfs 格式
运行命令 df -h
查看当前系统已经挂载的磁盘分区,可以发现目前没有挂载我们新添加的 sdb1 分区
我们在系统的根目录下创建一个文件夹 /data ,然后把 sdb1 分区挂载在 /data 目录上。
运行命令 mkdir /data
在 CentOS7 的根目录下创建 data 目录
运行命令 mount /dev/sdb1 /data
将 sdb1 分区挂载到 data 目录
需要注意 2 点:
- 挂载分区需要编写完整的分区路径,如 /dev/sdb1
- 挂载的是分区,不是磁盘,所以不要写成 /dev/sdb
最后运行 df -h
命令查看当前系统挂载的磁盘分区,就能够看到 /dev/sdb1 了
为了能够使 CentOS7 重启后,自动挂载 /dev/sdb1 ,因此需要在 /etc/fstab 文件中增加 /dev/sdb1 的挂载信息:
# 之间使用 空格 或者 tab 进行隔开即可 | |
/dev/sdb1 /data xfs defaults 0 0 |
可以使用 vim 编辑器进行编辑保存,最后的效果如下图所示: