本文环境:centos7
参考:鸟哥的Linux私房菜-基础篇 第四版
注意:一开始使用的fdisk,发现fdisk只能识别2T,超过2T就不能用了!!!本文需要扩容5T,所以采用的gdisk。fdisk和gdisk用法大同小异,gdisk换成fdisk即可
首先查看硬盘空间使用率
df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 9.0T 6.8T 2.3T 76% /
devtmpfs 16G 0 16G 0% /dev
tmpfs 16G 0 16G 0% /dev/shm
tmpfs 16G 1.6G 15G 10% /run
tmpfs 16G 0 16G 0% /sys/fs/cgroup
/dev/vda1 1014M 166M 849M 17% /boot
tmpfs 3.2G 12K 3.2G 1% /run/user/42
tmpfs 3.2G 0 3.2G 0% /run/user/0
本文主要是给/dev/mapper/centos-root添加磁盘空间
查看磁盘大小和挂载情况
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 252:0 0 40G 0 disk
├─vda1 252:1 0 1G 0 part /boot
└─vda2 252:2 0 9G 0 part
├─centos-root 253:0 0 9T 0 lvm /
└─centos-swap 253:1 0 1G 0 lvm [SWAP]
vdb 252:16 0 1000G 0 disk
└─vdb1 252:17 0 1000G 0 part
└─centos-root 253:0 0 9T 0 lvm /
vdc 252:32 0 1000G 0 disk
└─vdc1 252:33 0 1000G 0 part
└─centos-root 253:0 0 9T 0 lvm /
vdd 252:48 0 1000G 0 disk
└─vdd1 252:49 0 1000G 0 part
└─centos-root 253:0 0 9T 0 lvm /
vde 252:64 0 4.9T 0 disk
└─vde1 252:65 0 2T 0 part
└─centos-root 253:0 0 9T 0 lvm /
vdf 252:80 0 4.9T 0 disk
├─vdf1 252:81 0 2T 0 part
│ └─centos-root 253:0 0 9T 0 lvm /
└─vdf2 252:82 0 2T 0 part
└─centos-root 253:0 0 9T 0 lvm /
给vdf创建一个分区
[root@study ~]# gdisk /dev/vdf <==仔细看,不要加上数字喔!
GPT fdisk (gdisk) version 0.8.6
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT. <==找到了 GPT 的分区表!
Command (? for help): <==这里可以让你输入指令动作,可以按问号 (?) 来查看可用指令
Command (? for help): ?
b back up GPT data to a file
c change a partition's name
d delete a partition # 删除一个分区
i show detailed information on a partition
l list known partition types
n add a new partition # 增加一个分区
o create a new empty GUID partition table (GPT)
p print the partition table # 印出分区表 (常用)
q quit without saving changes # 不储存分区就直接离开 gdisk
r recovery and transformation options (experts only)
s sort partitions
t change a partition's type code
v verify disk
w write table to disk and exit # 储存分区操作后离开 gdisk
x extra functionality (experts only)
? print this menu
[root@study ~]# gdisk /dev/vdf
Command (? for help): p
Number Start (sector) End (sector) Size Code Name
1 2048 4294967294 2.0 TiB 8300 Linux filesystem
2 4294967296 8589934591 2.0 TiB 8300 Linux filesystem
# 找出最后一个 sector 的号码是很重要的!
Command (? for help): ? # 查一下增加分区的指令为何
Command (? for help): n # 开始新增的行为
Partition number (3-128, default 4): 3 # 预设就是 3 号,所以也能 enter 即可!
First sector (34-10485759966, default = 8589934592) or {+-}size{KMGTP}: # enter
Last sector (8589934592-10485759966, default = 10485759966) or {+-}size{KMGTP}: +0.9T # 决不要 enter
# 我们不需要自己去计算扇区号码,透过 +容量 的这个方式,
# 就可以让 gdisk 主动去帮你算出最接近你需要的容量的扇区号码!
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): # 使用默认值即可,直接 enter 下去!
# 这里在让你选择未来这个分区槽预计使用的文件系统!预设都是 Linux 文件系统的 8300
Command (? for help): p
Number Start (sector) End (sector) Size Code Name
1 2048 4294967294 2.0 TiB 8300 Linux filesystem
2 4294967296 8589934591 2.0 TiB 8300 Linux filesystem
3 8589934592 10485759966 904.0 GiB 8300 Linux filesystem
Command (? for help): w # 保存退出
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/vdf.
Warning: The kernel is still using the old partition table.
The new table will be used at the next reboot.
The operation has completed successfully.
# gdisk 会先警告你可能的问题,我们确定分区是对的,这时才按下 y !不过怎么还有警告?
# 这是因为这颗磁盘目前正在使用当中,因此系统无法立即加载新的分区表~
[root@study ~]# cat /proc/partitions
major minor #blocks name
252 0 41943040 vda
252 1 1048576 vda1
252 2 9436160 vda2
252 16 1048576000 vdb
252 17 1048574976 vdb1
252 32 1048576000 vdc
252 33 1048574976 vdc1
252 48 1048576000 vdd
252 49 1048574976 vdd1
252 64 5242880000 vde
252 65 2147482623 vde1
253 0 9596538880 dm-0
253 1 1048576 dm-1
252 80 5242880000 vdf
252 81 2147482623 vdf1
252 82 2147483648 vdf2
# 可以发现,并没有 vdf3,因为核心还没有更新!
[root@study ~]# partprobe -s # 建议加上 -s 比较清晰
/dev/vda: msdos partitions 1 2
/dev/vdb: msdos partitions 1
/dev/vdc: msdos partitions 1
/dev/vdd: msdos partitions 1
/dev/vde: msdos partitions 1
/dev/vdf: gpt partitions 1 2 3
以上代码块引用《鸟哥的Linux私房菜-基础篇 第四版》部分内容
若仍没有vdf3的情况,则尝试reboot
重启或者kpartx -l /dev/vdf
来解决。
格式化分区
mkfs -t xfs /dev/vdf3
或者 mkfs.xfs /dev/vdf3
vdf3为上一步创建分区后得到的
将分区初始化为物理卷
pvcreate /dev/vdf3
查询物理卷得到group为centos
vgscan
扩展物理卷
vgextend centos /dev/vdf3
该处的centos是由上一步查询出来的
扩展逻辑卷空间
1.添加指定容量的空间
lvextend -L +10G /dev/mapper/centos-root
2.添加所有剩余的空间
lvextend /dev/mapper/centos-root -l+100%FREE
使生效
xfs_growfs /dev/mapper/centos-root
如果出现"is not a mounted XFS filesystem"异常,尝试使用resize2fs
代替xfs_growfs
验证
df -h