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 重啟
