對於多重開機 *nix 系統來說,什麼是好的分區設計/方案?

對於多重開機 *nix 系統來說,什麼是好的分區設計/方案?

我打算在我的伺服器上安裝 Debian。我想以這樣一種方式設計分區方案,以便我可以在其上安裝一個或多個其他 *nix 發行版。因此,閱讀了很多文章,我認為這個方案對於多重啟動的最初想法來說可能是一個很好的方案:

/grub
/swap
/LVM VG1 (for OS1) ->
            /boot (LV1)
            /     (LV2)
            /tmp  (LV3)
            /var   ...
            /var/log
            /home
/LVM VG2 (for OS2) ->
            /boot
            /
            /tmp
            /var
            /var/log
            /home
... (other distros)
/LVM VG0 (for data) ->
            /data (LV1)

但我現在有點困惑:這些分割區的標籤應該是什麼(是否唯一)以及安裝點應該是什麼(/home(OS1)安裝到/home以及/home(OS2)) ...)?

答案1

為每個發行版建立卷宗組違背了 LVM 的目的。建立一個磁碟區組並使用 lvcreate 為您的發行版建立分割區。為了避免混淆,請使用作業系統名稱作為邏輯磁碟區的標籤。

例如:

lvcreate -L 2G -n gentoo-root
lvcreate -L 8G -n gentoo-usr
lvcreate -L 2G -n debian-root
lvcreate -L 8G -n debian-usr

使用一個“真實”分區用於 /boot,該分區在所有發行版之間共享並手動處理它,並使用一個“真實”分區用於交換。對所有發行版使用一個邏輯 /tmp,或使用大小約為 200mb 的 ramfs。 /home 可能也應該由所有發行版共享。除此之外,我認為 /usr 和 /var 可以是每個單獨的分區,但 /var/log 不是。如果您有一些包含許多小檔案的特殊用途的檔案結構,那麼為這些檔案建立單獨的分割區可能也很有用。但在大多數情況下,確實沒有必要對此過度擔心。特別是當您只想嘗試一些發行版時。為每個發行版創建一個根分區並使用它通常要方便得多。這實際上取決於用戶願意管理多少複雜性。

概括:

每個發行版都有單獨的邏輯卷

/~2GB
/usr ~ 4-12gb
/var ~ 1-7gb

普通lvs

/家
/tmp(可選,這可以是 / 的一部分)
/usr/doc(節省空間)
/usr/man (對於不同的發行版來說可能是個壞主意)
/var/log(使用 syslog-ng 建立發行版資料夾)

特殊用途(許多小文件)

/usr/portage(gentoo“packges”)

答案2

根據我對 LVM 的理解,只要邏輯磁碟區位於單獨的磁碟區群組中,名稱就不必是唯一的(因為 VG 名稱位於 LV 名稱前面)。我傾向於用我希望安裝的資料夾的名稱來標記我的邏輯卷,或者如果其中有多個目錄(即包含 LV 的 LV 的 root /),則對 LV 將包含的內容進行簡要描述。

我不確定你的意思是什麼"what should be the mounting points looking as"。你的意思是說你的fstab掛載了嗎?那些會像這樣;

/dev/VG1/root    /       <fstype>     defaults    0      0    (and so on, fstab junk)
/dev/VG1/usr     /usr    <fstype>     defaults    0      0

... other system-specific LV's ...

/dev/VG0/data    /data    <fstype>     <options>     fstab-junk

其中 VG1 在上述作業系統之間變化,而 VG0 保持不變/data

我也不知道為什麼你需要一個單獨的 LV /var/log

答案3

關於 Ярослав Рахматуллин 上面的回答:如果您在多個作業系統之間共享單一交換文件,請注意休眠是在交換文件中完成的這一事實 - 因此啟動與休眠作業系統不同的作業系統會破壞休眠會話。

相關內容