是否可以(安全地)将 /home 中的存储空间重新分配给根文件系统?
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_yavin-lv_root 50G 35G 13G 74% /
tmpfs 24G 0 24G 0% /dev/shm
/dev/sda1 485M 64M 396M 14% /boot
/dev/mapper/vg_yavin-lv_home 478G 235M 453G 1% /home
答案1
最简单的方法是什么?缩小 /home 分区并扩展 /。这就是我必须做的(RHEL 6.4 将此作为默认设置)。大多数说明位于此处:http://www.tcpdump.com/kb/os/linux/lvm-resizing-guide/all-pages.html
概述如下:
卸载:umount /home
调整大小:lvresize -L -400GB /dev/mapper/vg_yavin-lv_home
申请:resize2fs -p /dev/mapper/vg_yavin-lv_home
然后对 root 再次执行此操作:
lvresize -L +400GB /dev/mapper/vg_yavin-lv_root
resize2fs -p /dev/mapper/vg_yavin-lv_root
然后最后重新安装它:mount /home
-或者,如果由于某种原因这不起作用,mount /dev/mapper/vg_yavin-lv_home /home
之后,fsck
为了安全起见,在两个上运行。你可以在挂载处于活动状态时执行此操作,尽管我强烈建议尽可能结束所有正在运行的进程。另外,不用说,我高度建议您做好备份,因为任何事情都可能发生。
答案2
您可以在同一步骤中通过包含来调整文件系统大小-r
。
umount /home
lvreduce -rL -100G /dev/mapper/vg_yavin-lv_home
lvextend -rL +10G /dev/mapper/vg_yavin-lv_root
我还建议你现在至少为你的日志目录(/var/log 和 /var/log/audit)创建额外的文件系统。恶意服务可能会开始在你的整个文件系统中乱窜。你需要隔离你的日志,这样就不会影响操作。(你真的不想让 root 占满空间……)
lvcreate -n log -L8G vg_yavin
mkfs.ext3 -L log /dev/mapper/vg_yavin-lv_log
然后,创建您的/etc/fstab
条目和mount -a
。
另外,留下几个未分配的空间,这样你就可以在紧急情况下增加一些东西而不必卸载其他东西。