Linux虚拟机根目录磁盘扩容方式
作者:TracyDemo
VMware虚拟机扩展磁盘空间并进行逻辑卷管理的步骤,包括关闭虚拟机、扩展磁盘大小、启动虚拟机、查看磁盘使用情况、创建磁盘分区、初始化为物理卷、加入逻辑卷组、扩展卷组容量、查看根目录文件系统、扩容根目录文件系统以及验证扩容后的磁盘容量
一、VMWare虚拟机扩展磁盘空间
在vmware软件中,选择对应的虚拟机,点击“硬盘”。【需要先关机再操作】
扩展
更改磁盘大小,点击“扩展”,然后一路“确定”。扩展到45G
二、启动虚拟机并扩展磁盘空间
查看磁盘使用情况
df -Th
查看磁盘挂载空间的大小
[root@node1 ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 40G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 19G 0 part ├─centos-root 253:0 0 17G 0 lvm / └─centos-swap 253:1 0 2G 0 lvm sr0 11:0 1 1024M 0 rom
查看磁盘列表
fdisk -l
创建磁盘分区
[root@node1 ~]# fdisk /dev/sda 欢迎使用 fdisk (util-linux 2.23.2)。 更改将停留在内存中,直到您决定将更改写入磁盘。 使用写入命令前请三思。 命令(输入 m 获取帮助):m 命令操作 a toggle a bootable flag b edit bsd disklabel c toggle the dos compatibility flag d delete a partition g create a new empty GPT partition table G create an IRIX (SGI) partition table l list known partition types m print this menu n add a new partition o create a new empty DOS partition table p print the partition table q quit without saving changes s create a new empty Sun disklabel t change a partition's system id u change display/entry units v verify the partition table w write table to disk and exit x extra functionality (experts only) 命令(输入 m 获取帮助):n #添加一个新的分区 Partition type: p primary (2 primary, 0 extended, 2 free) e extended Select (default p): p #选择主分区 分区号 (3,4,默认 3): #默认是3,直接回车 起始 扇区 (41943040-94371839,默认为 41943040): 将使用默认值 41943040 #默认值,回车 Last 扇区, +扇区 or +size{K,M,G} (41943040-94371839,默认为 94371839): 将使用默认值 94371839 分区 3 已设置为 Linux 类型,大小设为 25 GiB 命令(输入 m 获取帮助):w #将分区表写入磁盘 The partition table has been altered! Calling ioctl() to re-read partition table. WARNING: Re-reading the partition table failed with error 16: 设备或资源忙. The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8) 正在同步磁盘。
再次查看磁盘列表,发现多了一个/dev/sda3
[root@node1 ~]# fdisk -l 磁盘 /dev/sda:48.3 GB, 48318382080 字节,94371840 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x000bedb2 设备 Boot Start End Blocks Id System /dev/sda1 * 2048 2099199 1048576 83 Linux /dev/sda2 2099200 41943039 19921920 8e Linux LVM /dev/sda3 41943040 94371839 26214400 83 Linux 磁盘 /dev/mapper/centos-root:18.2 GB, 18249416704 字节,35643392 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘 /dev/mapper/centos-swap:2147 MB, 2147483648 字节,4194304 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节
重启虚拟机
reboot
查看逻辑卷的组名
lvs
[root@node1 ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- <17.00g swap centos -wi-a----- 2.00g
将磁盘分区初始化为物理卷,以便被LVM使用
[root@node1 ~]# pvcreate /dev/sda3 Physical volume "/dev/sda3" successfully created.
将分区加入到centos的逻辑卷组中
[root@node1 ~]# vgextend centos /dev/sda3 Volume group "centos" successfully extended #如果报“Couldn't create temporary archive name.”,需要先清理一下磁盘空间。 #可以考虑执行以下命令删除掉日志文件,也可以删除其他无用文件。若扩展成功,请忽略。 cd /var/log rm -rf *
查看逻辑卷组
[root@node1 ~]# 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 1 Max PV 0 Cur PV 2 Act PV 2 VG Size 43.99 GiB PE Size 4.00 MiB Total PE 11262 Alloc PE / Size 4863 / <19.00 GiB Free PE / Size 6399 / <25.00 GiB #空闲分区 VG UUID azeALc-V80j-SKnr-8XmO-EtME-lyMk-kDDFUN
空闲空间(G)=Free PE * PE Size / 1024 查看需要扩展的文件系统名 /dev/mapper/centos-root
df -h
文件系统 类型 容量 已用 可用 已用% 挂载点 devtmpfs devtmpfs 6.3G 0 6.3G 0% /dev tmpfs tmpfs 6.3G 0 6.3G 0% /dev/shm tmpfs tmpfs 6.3G 20M 6.3G 1% /run tmpfs tmpfs 6.3G 0 6.3G 0% /sys/fs/cgroup /dev/mapper/centos-root xfs 17G 14G 3.1G 83% / /dev/sda1 xfs 1014M 150M 865M 15% /boot
扩展卷组的容量
[root@node1 ~]# lvextend -L +20G /dev/mapper/centos-root Size of logical volume centos/root changed from <17.00 GiB (4351 extents) to <37.00 GiB (9471 extents). Logical volume centos/root successfully resized.
查看卷组
[root@node1 ~]# pvdisplay --- Physical volume --- PV Name /dev/sda2 VG Name centos PV Size <19.00 GiB / not usable 3.00 MiB Allocatable yes (but full) PE Size 4.00 MiB Total PE 4863 Free PE 0 Allocated PE 4863 PV UUID ScGDBi-j9pc-m5dL-dc1z-EFW3-9zeF-aFWRAo --- Physical volume --- PV Name /dev/sda3 VG Name centos PV Size 25.00 GiB / not usable 4.00 MiB Allocatable yes PE Size 4.00 MiB Total PE 6399 Free PE 1279 Allocated PE 5120 PV UUID L9sFQd-WWck-lcCZ-x4Af-CG9l-e6BT-BLduCC
查看根目录的文件系统格式是否为xfs
[root@node1 ~]# cat /etc/fstab | grep centos-root /dev/mapper/centos-root / xfs defaults 0 0
根目录文件系统扩容
[root@node1 ~]# xfs_growfs /dev/mapper/centos-root meta-data=/dev/mapper/centos-root isize=512 agcount=4, agsize=1113856 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=0 spinodes=0 data = bsize=4096 blocks=4455424, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 4455424 to 9698304
查看磁盘容量
[root@node1 ~]# df -Th 文件系统 类型 容量 已用 可用 已用% 挂载点 devtmpfs devtmpfs 6.3G 0 6.3G 0% /dev tmpfs tmpfs 6.3G 0 6.3G 0% /dev/shm tmpfs tmpfs 6.3G 20M 6.3G 1% /run tmpfs tmpfs 6.3G 0 6.3G 0% /sys/fs/cgroup /dev/mapper/centos-root xfs 37G 14G 24G 38% / /dev/sda1 xfs 1014M 150M 865M 15% /boot
从17G扩容到37G
查看挂载磁盘的大小,空间大小lsblk
[root@node1 ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 45G 0 disk ├─sda1 8:1 0 1G 0 part /boot ├─sda2 8:2 0 19G 0 part │ ├─centos-root 253:0 0 37G 0 lvm / │ └─centos-swap 253:1 0 2G 0 lvm └─sda3 8:3 0 25G 0 part └─centos-root 253:0 0 37G 0 lvm / sr0 11:0 1 1024M 0 rom
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。