我有一台在 EXSi 5.1 服务器上运行的 Centos 6.2 x86_64 虚拟机。
它目前占用 320GB 的空间,空间太大了,需要缩小到大约 80GB。我需要做的是减少分区的大小并减少 VMDK 文件的大小。
以下是分区布局
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00 ext4 9.9G 360M 9.0G 4% /
tmpfs tmpfs 3.9G 0 3.9G 0% /dev/shm
/dev/mapper/VolGroup00-LogVol05 ext4 30G 1.6G 27G 6% /binlogs
/dev/sda1 ext4 97M 32M 61M 34% /boot
/dev/mapper/VolGroup00-LogVol02 ext4 9.9G 912M 8.5G 10% /home
/dev/mapper/VolGroup00-LogVol06 ext4 30G 180M 28G 1% /radius
/dev/mapper/VolGroup00-LogVol07 ext4 186G 272M 177G 1% /u02
/dev/mapper/VolGroup00-LogVol04 ext4 30G 3.0G 26G 11% /usr
/dev/mapper/VolGroup00-LogVol03 ext4 20G 414M 19G 3% /var
如果有人能告诉我减少分区所需的命令,我将不胜感激。
答案1
您不需要 vgreduce。您只有一个 VG。看起来您最关心的是 /u02,因为这是最大的分区,并且使用不到 1G
要减少 LV,通常需要先卸载它。这意味着,如果您想减少 / 文件系统,则需要在救援模式或单用户模式下进行。否则,过程相同
无论如何,这就是你要做的
首先要提醒的是,您需要比减少 LV 更多地减少 FS。因此,如果您想释放 10G 的 LV 空间,请将 FS 减少 11G。有道理吗?让我们以此为例
第二点需要注意的是,当减少文件系统时,最好进行备份。当扩展文件系统时,备份不是那么重要(但仍然很重要)。但减少文件系统总是好的。
umount the filesystem
use command: e2fsck -f /dev/[path to LV]
use command: resize2pfs -p /dev/[path to LV] 175G (11G smaller)
use command: lvreduce -L -10G /dev/[path to LV] (10G smaller)
mount filesystem.
当你运行 vgdisplay 时,你应该看到现在有 10G 被释放
(我对此记忆犹新,因为我一两天前刚刚在这里写过一篇博客:http://geekswing.com/geek/reducing-filesystem-fs-size-and-lvm-size-in-linux/)