Saltar al contenido

Instale el escritorio Ubuntu 18.04 con RAID 1 y LVM en una máquina con UEFI BIOS

Solución:

Con la ayuda de Cómo instalar el servidor Ubuntu con UEFI y RAID1 + LVM, la configuración de RAID en Ubuntu 18.04 y la compatibilidad con RAID en el instalador de escritorio de Ubuntu 18.04? y ¿Cómo deshacerme del “escaneo de sistemas de archivos btrfs” al inicio? Me las arreglé para armar un CÓMO funcional usando solo comandos de Linux.

En breve

  1. Descargue el instalador del servidor alternativo.
  2. Instale con particionamiento manual, EFI + RAID y LVM en la partición RAID.
  3. Clone la partición EFI de la partición instalada a la otra unidad.
  4. Instale la segunda partición EFI en la cadena de arranque UEFI.
  5. Para evitar una larga espera durante el arranque en caso de que una unidad se rompa, extraiga el btrfs secuencias de comandos de arranque.

En detalle

1. Descarga el instalador

  • Descargue el instalador del servidor alternativo de http://cdimage.ubuntu.com/ubuntu/releases/bionic/release/
  • Cree un CD o USB de arranque y arranque la nueva máquina desde él.
  • Seleccione Install Ubuntu Server.

2. Instalar con particionamiento manual

  • Durante la instalación, en el Partition disks paso, seleccione Manual.
  • Si los discos contienen particiones, elimínelas.
    • Si hay volúmenes lógicos presentes en sus unidades, seleccione Configure the Logical Volume Manager.
      • Escoger Delete logical volume hasta que se hayan eliminado todos los volúmenes.
      • Escoger Delete volume group hasta que se hayan eliminado todos los grupos de volumen.
    • Si hay algún dispositivo RAID presente, seleccione Configure software RAID.
      • Escoger Delete MD device hasta que se hayan eliminado todos los dispositivos MD.
    • Elimine todas las particiones de las unidades físicas eligiéndolas y seleccionando Delete the partition.
  • Crea particiones físicas
    • En cada unidad, cree una partición de 512 MB (he visto que otros usan 128 MB) al comienzo del disco, use como: EFI System Partition.
    • En cada unidad, cree una segunda partición con un tamaño ‘máximo’, use como: Physical Volume for RAID.
  • Configurar RAID
    • Seleccione Configure software RAID.
    • Seleccione Create MD device, escribe RAID1, 2 discos activos, 0 discos de repuesto y seleccione el /dev/sda2 y /dev/sdb2 dispositivos.
  • Configurar LVM
    • Seleccione Configure the Logical Volume Manager.
    • Crear grupo de volumen vg sobre el /dev/md0 dispositivo.
    • Cree volúmenes lógicos, p. Ej.
      • swap a 16G
      • root a 35G
      • tmp a 10G
      • var en 5G
      • home a 200G
  • Configurar cómo usar las particiones lógicas
    • Para el swap partición, seleccione Use as: swap.
    • Para las otras particiones, seleccione Use as: ext4 con los puntos de montaje adecuados (/, /tmp, /var, /home, respectivamente).
  • Seleccione Finish partitioning and write changes to disk.
  • Deje que el programa de instalación finalice y se reinicie.

Si está reinstalando en una unidad que anteriormente tenía una configuración RAID, el paso de creación RAID anterior puede fallar y nunca obtendrá una md dispositivo. En ese caso, es posible que tenga que crear una memoria USB Ubuntu Live, iniciar en ella, ejecutar gparted para borrar todas sus tablas de particiones, antes de reiniciar este COMO.

3. Inspeccione el sistema

  • Compruebe qué partición EFI se ha montado. Más probable /dev/sda1.

    montaje | bota grep

  • Verifique el estado de RAID. Lo más probable es que se esté sincronizando.

    cat / proc / mdstat

4. Clonar partición EFI

El arranque EFI cargado debería haberse instalado en /dev/sda1. Como esa partición no se refleja a través del sistema RAID, debemos clonarla.

sudo dd if=/dev/sda1 of=/dev/sdb1

5. Inserte la segunda unidad en la cadena de arranque.

Es posible que este paso no sea necesario, ya que si alguna de las unidades muere, el sistema debería iniciarse desde las particiones EFI (idénticas). Sin embargo, parece prudente asegurarse de que podamos arrancar desde cualquier disco.

  • Correr efibootmgr -v y observe el nombre de archivo para el ubuntu entrada de arranque. En mi instalación fue EFIubuntushimx64.efi.
  • Correr sudo efibootmgr -c -d /dev/sdb -p 1 -L "ubuntu2" -l EFIubuntushimx64.efi. Dependiendo de su caparazón, es posible que deba escapar de las barras diagonales inversas.
  • Verificar con efibootmgr -v que tiene el mismo nombre de archivo para el ubuntu y ubuntu2 elementos de arranque y que son los dos primeros en el orden de arranque.
  • ¡Ahora el sistema debería arrancar incluso si alguna de las unidades falla!

7. Espere

Si desea intentar quitar o deshabilitar físicamente cualquier unidad para probar su instalación, primero debe esperar hasta que finalice la sincronización RAID. Supervise el progreso con cat /proc/mdstat Sin embargo, puede realizar el paso 8 a continuación mientras espera.

8. Eliminar BTRFS

Si falla una unidad (después de que se complete la sincronización), el sistema aún se iniciará. Sin embargo, la secuencia de arranque pasará mucho tiempo buscando sistemas de archivos btrfs. Para eliminar esa espera innecesaria, ejecute

sudo apt-get purge btrfs-progs

Esto debería eliminar btrfs-progs, btrfs-tools y ubuntu-server. El último paquete es solo un metapaquete, por lo que si no se enumeran más paquetes para su eliminación, debería estar bien.

9. Instale la versión de escritorio

Correr sudo apt install ubuntu-desktop para instalar la versión de escritorio. Después de eso, la sincronización probablemente se haya realizado y su sistema esté configurado y debería sobrevivir a una falla de disco.

10. Actualice la partición EFI después de la actualización grub-efi-amd64

Cuando el paquete grub-efi-amd64 se actualiza, los archivos de la partición EFI (montados en /boot/efi) podría cambiar. En ese caso, la actualización debe clonarse manualmente en la partición espejo. Afortunadamente, debería recibir una advertencia del administrador de actualizaciones que grub-efi-amd64 está a punto de actualizarse, por lo que no tiene que comprobarlo después de cada actualización.

10.1 Descubra la fuente de clonación, de forma rápida

Si no ha reiniciado después de la actualización, use

mount | grep boot

para saber qué partición EFI está montada. Esa partición, típicamente /dev/sdb1, debe utilizarse como fuente de clonación.

10.2 Averiguar la fuente del clon, forma paranoica

Cree puntos de montaje y monte ambas particiones:

sudo mkdir /tmp/sda1 /tmp/sdb1
sudo mount /dev/sda1 /tmp/sda1
sudo mount /dev/sdb1 /tmp/sdb1

Encuentre la marca de tiempo del archivo más nuevo en cada árbol

sudo find /tmp/sda1 -type f -printf '%T+ %pn' | sort | tail -n 1 > /tmp/newest.sda1
sudo find /tmp/sdb1 -type f -printf '%T+ %pn' | sort | tail -n 1 > /tmp/newest.sdb1

Comparar marcas de tiempo

cat /tmp/newest.sd* | sort | tail -n 1 | perl -ne 'm,/tmp/(sd[ab]1)/, && print "/dev/$1 is newest.n"'

Debería imprimir /dev/sdb1 is newest (lo más probable) o /dev/sda1 is newest. Esa partición debe usarse como fuente de clonación.

Desmonte las particiones antes de la clonación para evitar la inconsistencia de la partición / caché.

sudo umount /tmp/sda1 /tmp/sdb1

10.3 Clonar

Si /dev/sdb1 fue la fuente del clon:

sudo dd if=/dev/sdb1 of=/dev/sda1

Si /dev/sda1 fue la fuente del clon:

sudo dd if=/dev/sda1 of=/dev/sdb1

¡Hecho!

11. Problemas de la máquina virtual

Si primero desea probar esto en una máquina virtual, hay algunas advertencias: aparentemente, la NVRAM que contiene la información de UEFI se recuerda entre reinicios, pero no entre ciclos de apagado y reinicio. En ese caso, puede terminar en la consola UEFI Shell. Los siguientes comandos deberían iniciarlo en su máquina desde /dev/sda1 (usar FS1: por /dev/sdb1):

FS0:
EFIubuntugrubx64.efi

La primera solución en la respuesta principal de arranque UEFI en virtualbox: Ubuntu 12.04 también podría ser útil.

RAID-1 + XFS + UEFI

Pude llegar aproximadamente al 99% del camino con la respuesta de @Niclas Börlin, ¡gracias!

También obtuve ayuda de las siguientes respuestas:

  • Ubuntu 17.04 no arrancará en el sistema UEFI con la partición del sistema XFS
  • Cómo instalar el servidor Ubuntu con UEFI y RAID1 + LVM

Estas son las formas en que arruiné las cosas

  1. Tener el BIOS en modo “Auto”, lo que permitió que la llave USB se iniciara NO en modo UEFI. Esto provocó que Grub no se instalara correctamente. Cambié el modo a solo UEFI, reinicié y eliminé todos los volúmenes lógicos, grupos de incursión y particiones y comencé de nuevo. Además intenté reinstalar grub en las particiones EFI, lo que solo empeoró las cosas.
  2. Tener el /boot la partición esté en XFS. El grub2 que viene con Ubuntu 18.04LTS aparentemente no maneja esto. Aunque eso no está documentado en ninguna parte. Creé un EXT-4 separado /boot dividir. Tenga en cuenta que esto todavía está en el volumen RAID-1 LVM, ¡y no en particiones separadas como las de EFI! Muchas respuestas anteriores dicen que esto no es posible, pero parece serlo ahora. Terminé obteniendo grub pero obteniendo errores desconocidos del sistema de archivos (por ejemplo, cómo solucionar “error: sistema de archivos desconocido. Grub rescue>) que me dio la pista XFS en /boot como un no-go.
  3. En algún lugar en el medio de eso terminé con grub instalado pero un indicador de grub en blanco, sin menú de grub. (por ejemplo, https://help.ubuntu.com/community/Grub2/Troubleshooting#Specific_Troubleshooting). Esto se debió a /boot no ser accesible.

Que funciono para mi

Comience con la respuesta de @Niclas Börlin y cambie algunas cosas menores.

Tabla de particiones

Prefiero uno grande / partición, por lo que esto refleja esa elección. El principal cambio es un EXT4 /boot partición en lugar de una XFS.

sda/
          GPT     1M (auto-added)
   sda1 - EFI - 512M
   sda2 - MD0 - 3.5G

sdb/
          GPT     1M (auto-added)
   sdb1 - EFI - 512M
   sdb2 - MD0 - 3.5G

md0/
   vg/
     boot - 1G   - EXT4 /boot
     swap - 16G  - SWAP 
     root - rest - XFS  /

Después de la instalación completa, pude dd los contenidos de sda1 para sdb2 como se detalla en la otra respuesta. También pude agregar la segunda unidad a la cadena de arranque usando efibootmgr como fue detallado.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *