添加新的磁盘扩容

任务一:将新的磁盘挂载到/mnt上(/mnt没有数据)


1.通过fdisk -l(如果是ubuntu系统只需要加上sudo即可)发现新的磁盘名为 /dev/sdb:

200G的新盘

2.在根目录创建/mnt文件夹,方便使用,然后:

mount /dev/sdb /mnt

【报错】
mount: /dev/sdb is write-protected, mounting read-only
mount: unknown filesystem type '(null)'

【解决办法】
用如下语句格式化新盘为 xfs格式:

mkfs.xfs -f /dev/sdb

此后用mount /dev/sdb /mnt挂载
再用df -Th 可以看到新的文件系统:

新盘已经挂载上

  1. 系统启动自动挂载
    先用blkid /dev/sdb查看新盘的UUID:
    UUID

然后再修改文件vim /etc/fstab 增加:
echo 'UUID=a96b0805-bc45-498a-a0c8-ba44238ea9a6 /mnt xfs defaults 1 2' >> /etc/fstab

UUID=a96b0805-bc45-498a-a0c8-ba44238ea9a6 /mnt xfs defaults 1 2


/etc/fstab

任务二:将新的磁盘挂载到/var/lib/clickhouse上(该目录已有数据)


任务背景是给clickhouse扩容。新增了一块200G的硬盘。用fdisk -l可以看到。

  1. 安装lvm工具:
    yum install -y lvm2

2.创建物理卷:
pvcreate /dev/sdb

[root@ch100 clickhouse]# pvcreate /dev/sdb
  Physical volume "/dev/sdb" successfully created.

3.创建卷组,名字为VolGroup
vgcreate VolGroup /dev/sdb

[root@ch100 clickhouse]# vgcreate VolGroup /dev/sdb
  Volume group "VolGroup" successfully created

4.创建逻辑卷,名字为LogVol01
lvcreate -l 100%VG -n LogVol01 VolGroup

[root@ch100 clickhouse]# lvcreate -l 100%VG -n LogVol01 VolGroup
  Logical volume "LogVol01" created.

此时通过fdisk -l可以看到多了一个卷:

Disk /dev/mapper/VolGroup-LogVol01: 214.7 GB, 214744170496 bytes, 419422208 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

5.格式化卷:/dev/VolGroup/LogVol01
mkfs.xfs -f -n ftype=1 -i size=512 -l size=128m,lazy-count=1 -d agcount=16 /dev/VolGroup/LogVol01

[root@ch101 clickhouse]# mkfs.xfs -f -n ftype=1 -i size=512 -l size=128m,lazy-count=1 -d agcount=16 /dev/VolGroup/LogVol01
meta-data=/dev/VolGroup/LogVol01 isize=512    agcount=16, agsize=3276736 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=52427776, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=32768, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

6.将新卷挂载到/mnt
mount -t xfs /dev/VolGroup/LogVol01 /mnt

[root@ch100 clickhouse]# df -h
/dev/mapper/VolGroup-LogVol01  200G   33M  200G   1% /mnt

7.将 /var/lib/clickhouse内容复制到/mnt

[root@ch100 clickhouse]# cp -r ./* /mnt

8.解除挂载/mnt
umount /mnt
此时/mnt下已经没有刚刚拷贝的文件了:

[root@ch100 clickhouse]# ll /mnt/
total 0

9.删除源文件
注意使用rm 的时候,确认目录位置,不要删错了

[root@ch100 clickhouse]# rm -rf *

10.写入挂载表/etc/fstab ,然后 mount
echo "/dev/mapper/VolGroup-LogVol01 /var/lib/clickhouse xfs defaults 0 0">/etc/fstab
mount /var/lib/clickhouse

可以看到成功挂载:

[root@ch100 clickhouse]# df -h
...
/dev/mapper/VolGroup-LogVol01  200G  493M  200G   1% /var/lib/clickhouse

任务三:mysql还原时,空间不够,现在动态增加一块磁盘

    1. lsblk可见有一个10G的硬盘sdb未分区


      image.png
  • 2.fdisk 添加分区:
    依次n->p->回车->回车:因为只有10G空间,就分一个区就行了


    image.png

    然后键入t修改分区类型为LVM(代号8e)


    image.png
  • 3.然后创建物理卷
    pvcreate /dev/sdb1
    这里因为之前我把这个盘格式化为ext3格式,所以这里问我是不是要擦除这种格式,选择y:

    image.png

    1. vgs命令查看当前的卷组,如果没有就要创建,我这里已经有centos这个卷了,所以只需要扩展即可。


      image.png

扩展当前卷组:
vgextend centos /dev/sdb1
这时候报了一个错
【报错】
Couldn't create temporary archive name.
google之说是根分区100%满了,所以我得删点东西腾出点空间,然后就成功了

image.png

    1. 扩展逻辑卷
      可以用lsblk查看当前的卷组(centos)和逻辑卷(root)的名字:


      image.png

然后用命令:
lvextend -l +100%FREE /dev/mapper/centos-root将组centos剩余的所有空间扩展到root这个卷中:

可以看到增加了10G

    1. 重新调整文件系统的大小。
      通过df -h可以知道原来的分区是xfs文件系统:
      image.png

      现在将其重新读取:
      xfs_growfs /dev/mapper/centos-root
      image.png

这下通过df -h就能看到增加了空间了。
整个过程完全不需要拷贝文件等。

你可能感兴趣的:(添加新的磁盘扩容)