我的 lv_root 驱动器已满 - 我相信它有 50GB。安装 CentOS 时我找不到扩展它的选项。
我已经安装了第二个驱动器,并且我的/var/www
驱动器安装得很好。
如何/dev/mapper/vg_mycentos-lv_root
在不导致服务器崩溃的情况下增加分区大小?我无法再进行任何备份,因为我没有其他磁盘可以备份(我住在一个非常贫穷的国家)。
我在 Super User 上搜索了很多次这个问题,每个设置似乎都不一样。我真的想确保我不会让服务器崩溃并最终删除我不应该删除的东西。
以下是df的结果:
[root@mycentos ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/vg_mycentos-lv_root 51606140 51589756 0 100% /
tmpfs 1943564 68 1943496 1% /dev/shm
/dev/sda1 495844 125974 344270 27% /boot
/dev/mapper/vg_mycentos-lv_home 905319440 80408528 778923280 10% /home
/dev/sdb1 961432232 221911100 690683124 25% /var/www
答案1
你可以这样做(假设你没有任何未使用的空间)的一种方法是缩小/home
并将其分配给/
缩小逻辑卷比扩大逻辑卷更难(因为文件系统),所以您需要先备份。您可以使用以下命令为 lvm“释放” 100GB 的空间:
lvreduce --resizefs --size -100G /dev/mapper/vg_mycentos-lv_home
如果可行,您可以按如下方式扩展根 lvm:
lvextend -L+100G /dev/mapper/vg_mycentos-lv_root
要将 LV 扩展 100GB,那么:
resize4fs /dev/mapper/vg_mycentos-lv_root
扩大文件系统。这可以在线完成。请注意,某些操作系统使用 resize2fs 来调整 ext4 分区的大小,因此您可能需要改用它。这一切都假设您使用的是 EXT4 卷 - 这是一个合理但不保证的假设。
如果您需要使用/dev/sdb
-您将需要:
- 复制
/var/www
到(例如)/home/var/www
- 卸载
/var/www
- 分配
/dev/sdb1
给 lvm(类似于pvcreate /dev/sdb1
) - 将资源分配给卷组(
vgextend vg_mycentos /dev/sdb1
) - 使用
lvextend
和resize2fs
如上所述来扩大根分区。 - 移动
/home/var/www
到/var/www
(现在位于 LVM 根分区)
如果您确实愿意,您可以创建另一个分区/var/www
并使用 fstab 挂载该分区,而不必执行步骤 6。