¿Cuál es un buen diseño/esquema de partición para un sistema *nix de arranque múltiple?

¿Cuál es un buen diseño/esquema de partición para un sistema *nix de arranque múltiple?

Estoy planeando instalar Debian en mi servidor. Me gustaría diseñar el esquema de partición de tal manera que pueda instalar uno o más distributivos *nix en él. Entonces, al leer muchos artículos, creo que este esquema podría ser bueno para la idea inicial de arranque múltiple:

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

Pero ahora estoy un poco confundido: cuáles deberían ser las etiquetas para estas particiones (únicas o no) y cuáles deberían ser los puntos de montaje como (/home (OS1) montado en /home así como en /home (OS2) ...)?

Respuesta1

Crear un grupo de volúmenes para cada distribución anula el propósito de LVM. Cree un grupo de volúmenes y use lvcreate para crear particiones para sus distribuciones. Para evitar confusiones, utilice el nombre del sistema operativo como etiqueta para los volúmenes lógicos.

P.ej:

lvcreate -L 2G -n gentoo-root
lvcreate -L 8G -n gentoo-usr
lvcreate -L 2G -n raíz-debian
lvcreate -L 8G -n debian-usr

Utilice una partición "real" para /boot que se comparta entre todas las distribuciones y manejela manualmente y una partición "real" para el intercambio. Utilice un /tmp lógico para todas las distribuciones, o utilice ramfs con un tamaño de aproximadamente 200 MB para eso. /home probablemente también debería ser compartido por todas las distribuciones. Aparte de eso, creo que /usr y /var podrían ser una partición separada para cada uno, pero no /var/log. Si tiene algunas estructuras de archivos de propósito especial con muchos archivos pequeños, también puede ser útil crear particiones separadas para ellas. Sin embargo, en la mayoría de los casos no es necesario preocuparse tanto por esto. Especialmente cuando lo único que quieres hacer es probar algunas distribuciones. A menudo es mucho más conveniente crear una partición raíz para cada distribución y terminar con ella. Realmente depende del usuario cuánta complejidad está dispuesto a gestionar.

Resumen:

volúmenes lógicos separados por distribución

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

lv comunes

/hogar
/tmp (opcional, esto puede ser parte de /)
/usr/doc (guardar espacio)
/usr/man (puede ser una mala idea para distribuciones diferentes)
/var/log (use syslog-ng para crear carpetas de distribución)

propósito especial (muchos archivos pequeños)

/usr/portage (gentoo "paquetes")

Respuesta2

Según tengo entendido sobre LVM, siempre que los volúmenes lógicos estén en grupos de volúmenes separados, los nombres no tienen que ser únicos (porque el nombre de VG se antepone al nombre de LV). Tiendo a etiquetar mis volúmenes lógicos con el nombre de la carpeta que espero montar, o una descripción concisa de lo que contendrá el LV si habrá varios directorios allí (es decir, raíz de un LV que contiene archivos /).

No estoy seguro de lo que quisiste decir con "what should be the mounting points looking as". ¿Te refieres a tus soportes fstab? Esos serían algo así como;

/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

Donde VG1 cambia entre los sistemas operativos mencionados anteriormente y VG0 permanece constante como /data.

¿Tampoco estoy seguro de por qué necesitas un LV completamente separado /var/log?

Respuesta3

Con respecto a la respuesta anterior de Ярослав Рахматуллин: si comparte un único archivo de intercambio entre varios sistemas operativos, tenga en cuenta el hecho de que la hibernación se realiza en el archivo de intercambio, por lo que iniciar un sistema operativo diferente al hibernado destruiría la sesión hibernada.

información relacionada