自己通过root创建了一个新用户,然而当我使用这个新用户时发现,/home/my中的空间只有几十M,完全不能满足我的使用,所以通过下面的方法扩展根下的空间。
1、切换root用户
2、#fdisk -l //通过这个命令,查看到我仅有几十M空间
3、#fdisk /dev/sda/ //开始添加新分区
4、列出命令列表
5、添加分区(可查看命令中n表示添加一个new partition)
输入n,提示后输入p,用于创建分区编号,新建的linux虚拟机一般会有两个sda分别是sda1和sda2,所以这里应该在输入p后,输入3,表示分配新的区sda3。输入3后回车,发现提示:
First cylinder(N-M, default N): //在这里就使用default,所以直接回车就好。回车过后会看到下面提示:
Using default value N
Last cylinder, +cylinders or +size{K,M,G} (N-M, default M): //这里也使用default,所以按下回车,然后会看到信息
Using default value M
Command (m for help): w //w 保存所有并退出,在保存后会有下面信息
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy. //这里的警告没关系
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)
Syncing disks.
6、默认分配的linux逻辑卷组管理不是LVM以及id更改为8e(8e表示LVM,就算你不改也没关系,具体详细原因去查文档),所以需要将新分配的sda3更改为同sda2相同的LVM
我们的新建分区/dev/sda3,却不是LVM的。所以,接下来使用fdisk将其改成LVM的。
#fdisk /dev/sda
Command (m for help): m
Command (m for help): t //改变分区系统id
Partition number (1-4): 3 //指定分区号
Hex code (type L to list codes): 8e //指定要改成的id号,8e代表LVM。
Command (m for help): w
#reboot //重启系统,使操作应用
7、fdisk -l 查看分区,会发现多出来了sda3,并且也是变成了我们想要的LVM
8、扩充新分区
#pvcreate /dev/sda3 //pvcreate指令用于将物理硬盘分区初始化为物理卷,以便被LVM使用。要创建物理卷必须首先对硬盘进行分区,并且将硬盘分区的类型设置为“8e”后,才能使用pvcreat 指令将分区初始化为物理卷。
Physical volume "/dev/sda3" successfully created
#vgextend VolGroup00 /dev/sda3 //(其中是当前需要扩充的lvm组名,可以通过df -h查看,例如我的是: /dev/mapper/VolGroup00-LogVol00) vgextend指令用于动态的扩展卷组, 它通过向卷组中添加物理卷来增加卷组的容量。
#vgdisplay //用于显示LNM卷组的元数据信息。
--- Volume group ---
VG Name vg_zxw
System ID
Format lvm2
......
Alloc PE / Size 4994 / 27.88 GB
Free PE / Size 4994 / 21.88GB
VG UUID sqBgTs-iA8x-tCXZ-KYxK-SyWS-TfXQ-uBsLaR
(主要查看Free PE / Size 4994 / 21.88GB,说明我们最多可以有21.88GB的扩充空间。我用了20GB)
# lvextend -L+20G /dev/VolGroup00/LogVol00 /dev/sda3
Logical volume LogVol00 successfully resized
#e2fsck -a /dev/VolGroup00/LogVol00 //使用e2fsck指令检查文件系统错误。也可用“fsck -t ext2 -V /dev/sda3/检查ext2文件系统。 (做fsck,检查文件系统)
#resize2fs /dev/VolGroup00/LogVol00 //resize2fs指令被用来增大或者收缩未加载的“ext2/ext3”文件系统的大小。
#df -h //查看一下你的系统磁盘空间"/"目录变成了27GB