Backgroud

  • 公司买的国科云的服务器,服务器自带50G存储空间,然后又挂载了4TB的硬盘,现在需要对这4TB的空间进行分区格式化,然后加入到我们现有的逻辑卷中,我们才能使用这4TB的空间。
  • 有两种方式:一种是扩展原有磁盘的大小,另一种是直接挂载到原磁盘的某个目录下。

查看硬盘挂载情况

  • sdb为挂载的硬盘
[root@Cloud01 ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   50G  0 disk
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   49G  0 part
  ├─centos-root 253:0    0   41G  0 lvm  /
  └─centos-swap 253:1    0    8G  0 lvm  [SWAP]
sdb               8:16   0  3.9T  0 disk

一、磁盘扩展

我们扩展原有磁盘目录的大小。

1 对/dev/sdb 进行分区——parted

注意:2T以下的用fdisk ,超过2T的硬盘要使用parted分区,因为传统的fdisk命令无法支持gpt分区方式,GPT的分区表很好了解决了传统MBR无法逾越2TB的限制(MBRGPT:两种基本分区方式)

1.1 进去parted分区命令
[root@Cloud01 ~]# parted /dev/sdb
GNU Parted 3.1
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted)
1.2 将磁盘格式变成gpt的格式
(parted) mklabel gpt
1.3 查看磁盘上原有的分区
(parted) p
Model: QEMU QEMU HARDDISK (scsi)
Disk /dev/sdb: 4295GB
Sector size (logical/physical): 512B/512B
Partition Table: loop
Disk Flags:

Number  Start  End     Size    File system  Flags
 1      0.00B  4295GB  4295GB  ext3
1.4 将原有的分区删掉
(parted) rm 1
1.5 设置单位为TB (可选:MB,GB,TB)
(parted) unit TB
1.6 创建分区
(parted) mkpart primary 0 4.29
1.7 查看分区
(parted) p
1.8 退出(分区会自动保存)
(parted) q
1.9 格式化已经分好的区
[root@Cloud01 ~]# mkfs.ext4 /dev/sdb1
1.10 查看分区
[root@Cloud01 ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   50G  0 disk
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   49G  0 part
  ├─centos-root 253:0    0   41G  0 lvm  /
  └─centos-swap 253:1    0    8G  0 lvm  [SWAP]
sdb               8:16   0  3.9T  0 disk
└─sdb1            8:17   0  3.9T  0 part

2 把新的分区添加到已有的LVM组,实现扩容

2.1 进入lvm管理

先安装lvm工具:yum install lvm2 -y

[root@Cloud01 ~]# lvm
2.2 初始化刚才的分区
lvm> pvcreate /dev/sdb1
WARNING: ext4 signature detected on /dev/sdb1 at offset 1080. Wipe it? [y/n]:                                                                                  y
  Wiping ext4 signature on /dev/sdb1.
  Physical volume "/dev/sdb1" successfully created.
2.3 查看卷和卷组
  • 如果什么都不显示说明没有卷组,需要先创建卷组:vgcreate centos /dev/vdb1 注意:这里要记下VG Name,这里为centos
lvm> vgdisplay
  --- Volume group ---
  VG Name               centos
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               <49.00 GiB
  PE Size               4.00 MiB
  Total PE              12543
  Alloc PE / Size       12542 / 48.99 GiB
  Free  PE / Size       1 / 4.00 MiB
  VG UUID               DW27Vv-y1GY-pFVB-0BBz-TSlT-AXnY-n70wtL
2.4 初始化刚才的分区
lvm> vgextend centos /dev/sdb1
  Volume group "centos" successfully extended
2.5 查看卷和卷组

注意:这里要记下Free PE / Size,这里为1024000 / <3.91 TiB

lvm> vgdisplay
  --- Volume group ---
  VG Name               centos
  System ID
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  4
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               3.95 TiB
  PE Size               4.00 MiB
  Total PE              1036542
  Alloc PE / Size       12542 / 48.99 GiB
  Free  PE / Size       1024000 / <3.91 TiB
  VG UUID               DW27Vv-y1GY-pFVB-0BBz-TSlT-AXnY-n70wtL
2.6 扩展已有卷的容量

注意:后边的目录参数/dev/mapper/centos-root可以通过df命令查看,就是你要扩展的目录

lvm> lvextend -l +1024000 /dev/mapper/centos-root
  Size of logical volume centos/root changed from 41.00 GiB (10496 extents) t                                                                                 o <3.95 TiB (1034496 extents).
  Logical volume centos/root successfully resized.
2.7 查看卷容量
lvm> pvdisplay
  --- Volume group ---
  VG Name               centos
  System ID
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  5
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               3.95 TiB
  PE Size               4.00 MiB
  Total PE              1036542
  Alloc PE / Size       1036542 / 3.95 TiB
  Free  PE / Size       0 / 0
  VG UUID               DW27Vv-y1GY-pFVB-0BBz-TSlT-AXnY-n70wtL
2.8 退出lvm管理
lvm> quit
  Exiting.
[root@Cloud01 ~]#

3 文件系统扩容

以上只是卷扩容了,还要对文件系统实现真正扩容

3.1 查看原来的磁盘空间
[root@Cloud03 ~]# df -h
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   41G 1011M   40G   3% /
devtmpfs                  63G     0   63G   0% /dev
tmpfs                     63G     0   63G   0% /dev/shm
tmpfs                     63G  8.8M   63G   1% /run
tmpfs                     63G     0   63G   0% /sys/fs/cgroup
/dev/sda1               1014M  145M  870M  15% /boot
tmpfs                     13G     0   13G   0% /run/user/0
3.2 Centos7使用XFS
[root@Cloud01 ~]# xfs_growfs /dev/mapper/centos-root
3.3 Centos6使用resize2fs
[root@Cloud01 ~]# resize2fs /dev/mapper/centos-root
3.4 查看新的磁盘空间
[root@Cloud03 ~]# df -h
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root  4.0T  1.1G  4.0T   1% /
devtmpfs                  63G     0   63G   0% /dev
tmpfs                     63G     0   63G   0% /dev/shm
tmpfs                     63G  8.8M   63G   1% /run
tmpfs                     63G     0   63G   0% /sys/fs/cgroup
/dev/sda1               1014M  145M  870M  15% /boot
tmpfs                     13G     0   13G   0% /run/user/0

二、磁盘挂载

我们把新加的硬盘挂载到原磁盘的某个目录下。
下面是在另一台服务器上操作的。

  • 查看磁盘情况
  • centos系统盘 centos 磁盘大小_逻辑卷

  • 下载磁盘管理工具
yum install lvm2 -y
  • 磁盘分区
parted /dev/vdb
(parted) mklabel gpt
(parted) unit TB
(parted) mkpart primary 0% 100%

centos系统盘 centos 磁盘大小_centos系统盘_02

  • 输入q退出会自动保存
  • 格式化分区
mkfs.ext4 /dev/vdb1

centos系统盘 centos 磁盘大小_lvm_03

  • 创建物理卷
pvcreate /dev/vdb1

centos系统盘 centos 磁盘大小_逻辑卷_04

  • 查看物理卷
pvdisplay

centos系统盘 centos 磁盘大小_centos_05

  • 创建卷组,用于管理PV以及LV
vgcreate centos /dev/vdb1

centos系统盘 centos 磁盘大小_centos系统盘_06

  • 查看卷组
vgdisplay

centos系统盘 centos 磁盘大小_parted_07

  • 创建逻辑卷
lvcreate -L 2047.9G -n influx centos

centos系统盘 centos 磁盘大小_parted_08

  • 查看逻辑卷
lvdisplay

centos系统盘 centos 磁盘大小_逻辑卷_09

  • 格式化逻辑卷
mkfs.ext4 /dev/centos/influx

centos系统盘 centos 磁盘大小_centos系统盘_10

  • 挂载目录
  • 这种方式重启后失效,永久挂载请执行下一步的操作。
mkdir /data/
mount /dev/centos/influx /data/
  • 设置磁盘开机自动挂载

/etc/fstab 文件最后加入一行。建议使用UUID

centos系统盘 centos 磁盘大小_parted_11

UUID="5229dd6f-c299-4f92-9c6a-2899b03b3a94"   /data/	ext4    defaults        1 1

centos系统盘 centos 磁盘大小_parted_12