Linux

/home /opt /tmp /usr /var 在另一個硬碟的單個分區上 Debian 8

  • November 22, 2015

我有一個生產伺服器,我想將 /home、/opt、/tmp、/user、/var 移動到為此專門創建的 ~300GB 分區。

沒有找到關於如何執行此操作的直接解釋,除了我可以將上面指定的每個文件夾放在單獨的分區上,但我不想這樣做。原因:

  1. 我不知道這些文件夾最終可能會使用多少空間,所以一個驅動器可以很好地完成所有這些。
  2. 我認為這對我來說要簡單得多。我不想在同一個驅動器上有大量的分區。
  3. 我將安裝一個伺服器應用程序,它將執行大量 I/O 和 MySQL 伺服器,我不希望它減慢系統硬碟驅動器或乾擾它。
  4. 智能分區

有什麼方法可以實現我想要的,所以所有文件夾都可以像文件夾在同一個硬碟上一樣工作?

PS這些是迄今為止我發現的最相關的連結:

Link1_Linux和Unix

Link2_Ubuntu 文件

Link3_Linux新手管理員

謝謝!

更新:

都裝好了!

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 步

重啟

引用自:https://serverfault.com/questions/737333