增加硬盘的大致步骤:

1) 虚拟机添加硬盘(如果在真实服务器环境下,应该是插入几块新磁盘,然后通过ctrl+R进入RAID设置面板,把这几块新磁盘设置RAID,然后初始化,这样OS才可以检测到新磁盘的存在)
2) 分区: fdisk /dev/sdc
3) 格式化: mkfs -t ext4 /dev/sdc1
4) 挂载: 先创建一个目录 /home/newdisk_sdc,然后执行挂载指令 mount /dev/sdc1 /home/ newdisk_sdc
5) 设置可以自动挂载(永久挂载)
6) 如果想要解除挂载关系,就执行umount /dev/sdc1或umount /home/newdisk_sdc

一、 添加新硬盘

原来服务器master中的硬盘挂载情况如下所示:(发现sdc硬盘没有挂载点,也就是系统并没有利用这个sdc,这个sdc的大小为4.6TB)

centos 7 磁盘UUID centos7硬盘_linux

cd /dev,查看dev目录,可以看到各个磁盘的设备信息,这里可以看到,这些文件的类型属性为b,也就是block,是块设备文件。

centos 7 磁盘UUID centos7硬盘_文件系统_02

二、 分区

马上要用fdisk指令来操作这块磁盘(分区),先 man fdisk看看这个指令是干什么的:

centos 7 磁盘UUID centos7硬盘_重启_03

输入fdisk /dev/sdc,对硬盘sdc进行分区

centos 7 磁盘UUID centos7硬盘_文件系统_04

输入m

centos 7 磁盘UUID centos7硬盘_linux_05

输入n,之后直接按回车(这里我也不懂是在干什么,后面会揭晓)

centos 7 磁盘UUID centos7硬盘_大数据_06

然后输入w,退出

centos 7 磁盘UUID centos7硬盘_大数据_07

再次执行lsblk -f指令,看到sdc磁盘已经有了一个新的分区sdc1

centos 7 磁盘UUID centos7硬盘_文件系统_08

再执行lsblk,看到sdc1分区的大小正好为4.6T

centos 7 磁盘UUID centos7硬盘_文件系统_09

现在的新分区sdc1没有uuid,也没有挂载点,是因为没有格式化。
好比买了一套房子,现在是毛坯房,还没有装修(格式化),所以还没发住人(存储数据)

三、 格式化

下面开始格式化:

先man mkfs,看看mkfs指令的含义,如此看来,应该是将这个磁盘分区进行操作,构造一个OS可以使用的 文件系统,也就是俗称的格式化:

centos 7 磁盘UUID centos7硬盘_重启_10

执行mkfs -t ext4 /dev/sdc1

centos 7 磁盘UUID centos7硬盘_大数据_11

格式化完毕,这里可以看到非常熟悉的两个名词:inode和superblock,这些都是UNIX文件系统中的基本概念,用来管控一个磁盘每个分区的空间使用,看来CentOS7的文件系统也应该是继承了传统UNIX的文件系统风格(当然windows的文件系统不同于UNIX,并不使用inode和superblock这些概念)

centos 7 磁盘UUID centos7硬盘_大数据_12

lsblk -f,可以看到sdc1分区已经有了FSTYPE为ext4,也有了自己的UUID,但是还没有挂载点,因为我们还没有挂载

centos 7 磁盘UUID centos7硬盘_linux_13

四、 挂载

下面开始挂载

创建目录/home/newdisk_sdc

centos 7 磁盘UUID centos7硬盘_centos 7 磁盘UUID_14

执行挂载指令:

mount /dev/sdc1 /home/ newdisk_sdc

centos 7 磁盘UUID centos7硬盘_文件系统_15

这时再执行lsblk -f,可以看到sdc1分区已经有了挂载点

centos 7 磁盘UUID centos7硬盘_大数据_16

进入newdisk_sdc,然后ls,发现里面多出来一个文件:

centos 7 磁盘UUID centos7硬盘_重启_17

至此,硬盘分区、格式化、挂载就已经完毕。

五、 设置永久挂载

但是这样做,如果之后重启系统,这个挂载设置就会失效,也就是设备sdc和挂载点newdisk_sdc的挂载关系就会消失,也就是只是临时挂载,所以还需要进一步设置,实现永久挂载,这样就可以让系统重启后,挂载关系仍然不变。

vim /etc/fstab

centos 7 磁盘UUID centos7硬盘_centos 7 磁盘UUID_18

加入一行内容,让我们的sdc1和newdisk_sdc的对应关系体现出来:(末尾的两个数字现在还不知道是干什么的,暂时就写0 0 )

centos 7 磁盘UUID centos7硬盘_linux_19

保存并退出。

mount -a,也就是设置自动挂载

centos 7 磁盘UUID centos7硬盘_linux_20

至此,永久挂载设置成功。
若想验证是否成功,可以reboot重启,然后再lsblk -f查看sdc1的挂载点是否存在。(这里就不reboot了,因为hadoop集群正在运行,我怕reboot会让hadoop集群出错)

六、 解除挂载

本来正常挂载

centos 7 磁盘UUID centos7硬盘_大数据_21

执行umount指令后,发现挂载解除

centos 7 磁盘UUID centos7硬盘_大数据_22