grc*_*osa 3 virtual-machine fiware
我使用FI-WARE云创建了一个带有12GB磁盘的Centos x64 VM实例.我可以访问它没有问题,我已经开始安装软件.但是,默认创建的分区/ dev/vda1只有5GB,我已经填充了它.我想知道如何扩展分区以使用完整的磁盘.
谢谢,
小智 5
我会说你有两种方法.第一个是安全的,第二个是有风险的.所以,让我们从安全的开始:你可以使用fdisk/dev/vda(或parted/dev/vda)来创建一个新的分区.由于分区将在创建和装载"/"的同一虚拟磁盘中创建,因此在使用新分区之前必须重新启动VM.
重新启动VM时,您将能够格式化新分区:
mkfs -t ext4 /dev/vda2
Run Code Online (Sandbox Code Playgroud)
并在任何地方安装新分区:
mount /dev/vda2 /mnt
Run Code Online (Sandbox Code Playgroud)
为了使这种安装持久化,您可以在/ etc/fstab中添加一个新行:
/dev/vda2 /mnt ext4 defaults 1 1
Run Code Online (Sandbox Code Playgroud)
第二种方法是扩展/ dev/vda1分区.这是有风险的,如果您犯了任何错误,您的VM可能无法再次启动(单独),使用此风险需要您自担风险.无论如何它在这里 -
使用fdisk(parted将拒绝这样做)你可以改变分区 -
# fdisk /dev/vda
Run Code Online (Sandbox Code Playgroud)
删除dos分区标志并将单位更改为"扇区":
Command (m for help): c
DOS Compatibility flag is not set
Command (m for help): u
Changing display/entry units to sectors
Run Code Online (Sandbox Code Playgroud)
我们来看看分区表:
Command (m for help): p
Disk /dev/vda: 10.7 GB, 10737418240 bytes
181 heads, 40 sectors/track, 2896 cylinders, total 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000c897f
Device Boot Start End Blocks Id System
/dev/vda1 * 2048 10485759 5241856 83 Linux
Run Code Online (Sandbox Code Playgroud)
删除第一个分区
Command (m for help): d
Selected partition 1
Run Code Online (Sandbox Code Playgroud)
并使用整个磁盘再次创建它:
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First sector (2048-20971519, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519):
Using default value 20971519
Run Code Online (Sandbox Code Playgroud)
接下来,您应该将引导标志设置为第一个分区:
Command (m for help): a
Partition number (1-4): 1
Run Code Online (Sandbox Code Playgroud)
您使用'w'命令退出fdisk写入更改并重新启动VM.
重新启动后,您应该调整文件系统的大小:
# resize2fs /dev/vda1
Run Code Online (Sandbox Code Playgroud)