VM 40GB虚拟硬盘增加10GB
开启虚拟机并登录后,使用命令df -h查看当磁盘状态
可看到当前还是原本的容量,并未扩容,解决方法:
方法一
shell>echo 1 > /sys/block/扩展的磁盘/device/rescan
扩展的磁盘,如 sda sdb sdc 等
echo 1 > /sys/block/sda/device/rescan
方法二
找到scsi磁盘编号,进行rescan
shell>ls /sys/class/scsi_disk/
2:0:0:0
shell>echo 1 > /sys/class/scsi_disk/2\:0\:0\:0/device/rescan
原本40B
扩容后为50G
如果没有提前对存储设备的scsi总线进行扫描,分区时会提示没有空间
对新增的磁盘空间进行分区
fdisk /dev/sda 操作/dev/sda的分区表
p查看已分区数量(我看到有两个 /dev/sda1 /dev/sda2)
n新增加一个分区
p分区类型我们选择为主分区
3分区号选3(因为1,2已经用过了,见上)
回车 默认(起始扇区)
回车 默认(结束扇区)
p 查看已分区数量 刚刚新增了一个/dev/sda3 类型为Linux
t修改分区类型
3选分区3
8e修改为LVM(8e就是LVM)
p
w写分区表
q完成,退出fdisk命令
强制重载分区表,避免重启系统
prartprobe
prartprobe是请求操作系统重新读取分区表,把分区表的变化信息通知到操作系统内核。
使用partprobe重载分区也只能是对不同的硬盘才能及时生效。对于同一块硬盘,修改过分区信息后则不生效。
解决方法:
partx -a /dev/sda3 /dev/sda
将新添加的分区添加到已有的组实现扩容
pvs或pvdisplay
pvcreate /dev/sda3 #初始化刚刚的分区
pvs或pvdisplay
vgs或vgdisplay
vgextend centos /dev/sda3 #将初始化过的分区加入到虚拟卷组名
vgs或vgdisplay
lvs
df -h 查看需要扩展的文件系统名,扩展根目录则是/dev/mapper/centos-root
lvextend -L +10G /dev/mapper/centos-root 扩容已有的卷组容量
lvs 到这里,只是卷的扩容
df -h
----------------------------排错--------------------------
扩容已有的卷组容量,有可能不能全扩展满,比如空闲空间是30G,不能全扩展+30G
--------------------------------------------------
pvs或pvdisplay检查卷组,卷组已经扩容
resize2fs /dev/mapper/centos-root 还需要将文件系统扩容,此处有可能报错
如果是ext4文件类型则正常,如果是xfs则出错。
解决办法是,首先查看文件系统的格式
cat /etc/fstab | grep centos-root
这里可以看到,文件系统是xfs,所以需要xfs的命令来扩展磁盘空间
xfs_growfs /dev/mapper/centos-root
df -h 到此磁盘扩容成功