Was ist ein gutes Partitionierungsdesign/-schema für ein Multi-Boot-*nix-System?

Was ist ein gutes Partitionierungsdesign/-schema für ein Multi-Boot-*nix-System?

Ich plane, Debian auf meinem Server zu installieren. Ich möchte das Partitionierungsschema so gestalten, dass ich eine oder mehrere andere *nix-Distributionen darauf installieren kann. Nachdem ich viele Artikel gelesen habe, denke ich, dass dieses Schema für die ursprüngliche Idee des Multi-Boots gut geeignet sein könnte:

/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)

Jetzt bin ich jedoch ein wenig verwirrt: Welche Bezeichnungen sollten für diese Partitionen gelten (eindeutig oder nicht) und wie sollten die Einhängepunkte aussehen (/home (OS1) sowohl in /home als auch in /home (OS2) eingehängt...)?

Antwort1

Das Erstellen einer Volume-Gruppe für jede Distribution macht den Zweck von LVM zunichte. Erstellen Sie eine Volume-Gruppe und verwenden Sie lvcreate, um Partitionen für Ihre Distributionen zu erstellen. Um Verwirrung zu vermeiden, verwenden Sie den Betriebssystemnamen als Bezeichnung für die logischen Volumes.

Z.B:

lvcreate -L 2G -n Gentoo-Root
lvcreate -L 8G -n gentoo-usr
lvcreate -L 2G -n Debian-Root
lvcreate -L 8G -n debian-usr

Verwenden Sie eine „echte“ Partition für /boot, die von allen Distributionen gemeinsam genutzt wird, und handhaben Sie sie manuell, und eine „echte“ Partition für Swap. Verwenden Sie ein logisches /tmp für alle Distributionen oder verwenden Sie dafür Ramfs mit einer Größe von etwa 200 MB. /home sollte wahrscheinlich auch von allen Distributionen gemeinsam genutzt werden. Abgesehen davon denke ich, dass /usr und /var jeweils eine separate Partition sein könnten, aber nicht /var/log. Wenn Sie spezielle Dateistrukturen mit vielen kleinen Dateien haben, kann es auch nützlich sein, separate Partitionen für diese zu erstellen. In den meisten Fällen ist es jedoch wirklich nicht notwendig, sich darüber so viele Gedanken zu machen. Besonders, wenn Sie nur einige Distributionen ausprobieren möchten. Es ist oft viel bequemer, für jede Distribution eine Root-Partition zu erstellen und damit fertig zu sein. Es liegt wirklich am Benutzer, wie viel Komplexität er bereit ist zu bewältigen.

Zusammenfassung:

separate logische Volumes pro Distribution

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

gemeinsame LVS

/heim
/tmp (optional, dies kann Teil von / sein)
/usr/doc (Platz sparen)
/usr/man (kann bei unterschiedlichen Distributionen eine schlechte Idee sein)
/var/log (verwenden Sie syslog-ng, um Distro-Ordner zu erstellen)

spezieller Zweck (viele kleine Dateien)

/usr/portage (Gentoo „Pakete“)

Antwort2

Soweit ich LVM verstehe, müssen die Namen nicht eindeutig sein, sofern die logischen Volumes in separaten Volumegruppen liegen (da der VG-Name dem LV-Namen vorangestellt wird). Ich neige dazu, meine logischen Volumes mit dem Namen des Ordners zu beschriften, den ich mounten möchte, oder mit einer knappen Beschreibung dessen, was das LV enthalten wird, wenn sich mehrere Verzeichnisse darin befinden (z. B. root für ein LV, das enthält /).

Ich bin nicht sicher, was Sie mit gemeint haben "what should be the mounting points looking as". Meinen Sie Ihre fstab-Mounts? Die würden ungefähr so ​​aussehen:

/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

Wobei VG1 zwischen Ihren oben angegebenen Betriebssystemen wechselt und VG0 konstant bleibt /data.

Ich bin mir auch nicht sicher, warum Sie dafür ein komplett separates LV benötigen /var/log?

Antwort3

In Bezug auf die obige Antwort von Jaroslaw Raschmatullin: Wenn Sie eine einzelne Auslagerungsdatei zwischen mehreren Betriebssystemen gemeinsam nutzen, beachten Sie die Tatsache, dass der Ruhezustand in der Auslagerungsdatei erfolgt. Das Booten eines anderen Betriebssystems als des im Ruhezustand befindlichen würde daher die Sitzung im Ruhezustand zerstören.

verwandte Informationen