/home /opt /tmp /usr /var 在另一個硬碟的單個分區上 Debian 8
我有一個生產伺服器,我想將 /home、/opt、/tmp、/user、/var 移動到為此專門創建的 ~300GB 分區。
沒有找到關於如何執行此操作的直接解釋,除了我可以將上面指定的每個文件夾放在單獨的分區上,但我不想這樣做。原因:
- 我不知道這些文件夾最終可能會使用多少空間,所以一個驅動器可以很好地完成所有這些。
- 我認為這對我來說要簡單得多。我不想在同一個驅動器上有大量的分區。
- 我將安裝一個伺服器應用程序,它將執行大量 I/O 和 MySQL 伺服器,我不希望它減慢系統硬碟驅動器或乾擾它。
- 智能分區
有什麼方法可以實現我想要的,所以所有文件夾都可以像文件夾在同一個硬碟上一樣工作?
PS這些是迄今為止我發現的最相關的連結:
謝謝!
更新:
都裝好了!
UUID=rootUUID / ext4 errors=remount-ro 0 1
UUID=swapUUID none swap sw 0 0
/dev/sr0 /media/cdrom0 udf,iso9660 user,noauto 0 0
UUID=otherDriveUUID /mnt/sdb2 ext4 預設值 0 1
/mnt/ sdb2/tmp /tmp 無預設值,綁定 0 2
/mnt/sdb2/local /usr/local 無預設值,綁定 0 2
/mnt/sdb2/home /home 無預設值,綁定 0 2
/mnt/sdb2/opt /opt 無預設值,綁定 0 2
/mnt/sdb2/var /var 無預設值,綁定 0 2
您正在尋找的是綁定安裝。有關詳細資訊,請參見http://man7.org/linux/man-pages/man8/mount.8.html。
這是將 /home、/opt、/tmp、/usr 和 /var 移動到單個單獨分區的分步指南。
免責聲明
對於因遵循本指南而造成的任何數據損壞或失去,我概不負責。與往常一樣,確保在繼續之前備份所有重要數據。
第1步
從您最喜歡的 Live CD 啟動。範例:https ://www.debian.org/CD/live/
切換到根外殼。這通常可以通過
sudo su -
第2步
掛載您的主分區和輔助分區。我們假設它們是
/dev/sda1
並且/dev/sdb1
出於本指南的目的。mkdir /mnt/sd{a,b}1 mount /dev/sda1 /mnt/sda1 mount /dev/sdb1 /mnt/sdb1
第 3 步
將現有文件夾/數據從主分區移動到輔助分區。這可能需要幾分鐘,具體取決於文件夾的大小和驅動器的速度。
mv /mnt/sda1/{home,opt,tmp,usr,var} /mnt/sdb1/
第4步
在主分區上創建空文件夾,為我們提供掛載點。
mkdir /mnt/sda1/{home,opt,tmp,usr,var} /mnt/sda1/mnt/sdb1
第 6 步
編輯您的 fstab 以自動掛載輔助分區並綁定掛載相應的文件夾。此步驟很大程度上取決於您目前的配置,可能無法直接複製/粘貼。
使用您最喜歡的編輯
/mnt/sda1/etc/fstab
器進行編輯。您可以在http://man7.org/linux/man-pages/man5/fstab.5.html找到有關 fstab 的詳細資訊
首先我們需要掛載二級分區,然後才能綁定掛載到它。該分區可能已經在您的 fstab 中。如果是這樣,請相應地編輯/刪除配置。在這裡,我們假設它是一個帶有預設選項的 ext4 分區。
/dev/sdb1 /mnt/sdb1 ext4 defaults 0 2
接下來,配置綁定掛載。
/mnt/sdb1/home /home none defaults,bind 0 0 /mnt/sdb1/opt /opt none defaults,bind 0 0 /mnt/sdb1/tmp /tmp none defaults,bind 0 0 /mnt/sdb1/usr /usr none defaults,bind 0 0 /mnt/sdb1/var /var none defaults,bind 0 0
將更改保存到 fstab。
第 7 步
重啟