Linux调整LVM逻辑卷的大小:
问题描述:维护一台旧的服务器系统,因原先的程序软件部署到/ root目录了,导致磁盘空间不足。
解决方案:通过缩小 /home 卷组的大小,增加到 / root目录。
按顺序执行:
1、缩小home分区大小:
fuser -m -v -i -k /home (杀掉所有进程)
umount /home (减小文件系统不支持在线回缩,所以先要卸载文件系统)
resize2fs /dev/mapper/vg_localhost-lv_home 50G (调整空间大小到50G)
提示:Please run 'e2fsck -f /dev/mapper/vg_localhost-lv_home' first.
(请运行e2fsck 检测文件系统)
e2fsck -f /dev/mapper/vg_localhost-lv_home (检测文件系统)
resize2fs /dev/mapper/vg_localhost-lv_home 50G (重新执行一遍,调整空间大小到50G)
lvreduce -L 20G /dev/mapper/vg_localhost-lv_home (回缩文件系统到20G)
mount -t ext4 /dev/mapper/vg_localhost-lv_home /home (挂载文件系统到/home分区)
2、增加到root分区:
lvextend -L +19G /dev/mapper/vg_localhost-lv_root (给文件系统增加19G的空间)
resize2fs /dev/mapper/vg_localhost-lv_root (激活修改的配置)
Linux挂载新硬盘到/home
首先你需要进入恢复模式
本例以用livecd引导进入恢复模式为例 ,假设 原有的硬盘/目录是/dev/sda1
1 挂载/ 到恢复模式下的系统中
mkdir /mnt/system
mount /dev/sda1 /mnt/system
2 分出一个分区 ,容量随需 ,假设新分区是 /dev/sdb1 文件系统是ext3
3 先将新分区mount到/mnt/newhome 下
mkdir /mnt/newhome
mount /dev/sdb1 /mnt/newhome
4 转移数据
cp -pr /mnt/system/home/* /mnt/newhome
(-p 保留所有的权限和创建时间, -r 按目录结构递归)
5 修改fstab 以让新分区在启动时正确mount到/home
nano -w /mnt/system/etc/fstab
添加
/dev/sdb1 /home ext3 defaults,noatime 0 0
这一行 ,保存退出
6 清除残余文件
rm -rf /mnt/system/home/*
7 重启