在 /home 和 /var 之間交換分區
我有一個 2TB(Raid,2x2TB)的伺服器,以及這個分區架構
/ => /dev/md2 - 20GB /home => /dev/md3 - 1.8TB
這是一個 ISPConfig 伺服器,所以我們在 /var 中需要很多空間,而 /home 中幾乎不需要任何空間,所以我認為最好的方法是將 /home 放入 /dev/md2 並將 /var 放入 /dev/md3
我的 fstab 是這樣的:
# <file system> <mount point> <type> <options> <dump> <pass> /dev/md2 / ext4 errors=remount-ro 0 1 /dev/md3 /home ext4 defaults 1 2 /dev/sda4 swap swap defaults 0 0 /dev/sdb4 swap swap defaults 0 0
最好的方法是什麼?我認為將 /home 內容移動到 /homeold,從 fstab 中刪除,umount 現在從 /homeold 複製到 /home,然後更改 /var 名稱(我沒有足夠的空間進行複制),掛載新 /var 並移動內容, 它是否正確?
另外,我需要停止所有伺服器服務以避免錯誤(mysql、apache、mongodb、named 等),有什麼快速的方法嗎?或者也許我應該在救援模式下重新啟動來做到這一點?
也許另一種方式是 / 和 /home 之間的完全改變,我的意思是,將 / 放入 /md3 和 /home 放入 md2,這是否只能通過編輯 fstab 並重新啟動?
非常感謝你,
我認為在這種情況下你最好的朋友會
rsync
。創建目錄/home/var
。將其與現有/var
目錄同步。
rsync -avh /var/ /home/var/ --delete
人rsync初始同步完成後,對
/home
分區執行相同操作。之後,您的停機時間很少。停止所有服務,再次執行 rsync。檢查是否沒有文件開始在 var 和 home 中使用。
lsof | grep '/var'
和同樣的/home
。這裡有機會使用一些庫/var/lib
。但這可以忽略。現在您有 2 個選項。選項 1. 掛載
/dev/md3
到 /media/ 然後符號連結/media/var
到/var
選項 2. 將
/home
內容移至/home_new
(/home/var 除外)。然後將所有內容從/home/var
/home/ 移至 /home/,然後重新掛載/dev/md3
到/var
,重命名/home_new
為/home
. 在 中進行更改fstab
。重新啟動伺服器以查看是否一切正常。我更喜歡選項 2。我還建議您將LVM添加到
/dev/md3
. 希望你明白。類似的問題: