
Instalé Debian 10 en un disco duro interno y funcionó bien con el arranque seguro UEFI.
Cuando instalé un segundo Debian en un USB externo, solo arranca desde ese USB.
Cuando desconecto el USB de la computadora portátil para iniciar en el SSD, aparece un error
Edición mínima de líneas tipo bash.
Deshabilitar el arranque seguro no ayudó.
Disk /dev/sda: 238,5 GiB, 256060514304 bytes, 500118192 sectors
Disk model
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier:
Device Start End Sectors Size Type
/dev/sda1 2048 1050623 1048576 512M EFI System
/dev/sda2 1050624 1550335 499712 244M Linux filesystem
/dev/sda3 1550336 500117503 498567168 237,8G Linux filesystem
Disk /dev/sdb: 57,3 GiB, 61505273856 bytes, 120127488 sectors
Disk model: Ultra USB 3.0
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier:
Device Start End Sectors Size Type
/dev/sdb1 2048 1050623 1048576 512M EFI System
/dev/sdb2 1050624 1550335 499712 244M Linux filesystem
/dev/sdb3 1550336 120125439 118575104 56,6G Linux filesystem
Disk /dev/mapper/sdc3_crypt: 56,5 GiB, 60693676032 bytes, 118542336 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/mapper/usb--vg-root: 48,7 GiB, 52240056320 bytes, 102031360 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/mapper/usb--vg-swap_1: 7,9 GiB, 8451522560 bytes, 16506880 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
salida lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root intern-vg -wi-a----- 229,80g
swap_1 intern-vg -wi-a----- <7,87g
root usb-vg -wi-ao---- 48,65g
swap_1 usb-vg -wi-ao---- 7,87g
Respuesta1
Debe tener en cuenta que en el momento de escribir este artículo, Debian 10 todavía está en testing
estado, por lo que puede haber asperezas aquí y allá.
Supongo que el instalador de Debian no tenía idea de que la segunda instalación iba a realizarse en una unidad extraíble y sobrescribió la copia de GRUB de la primera instalación en su partición del sistema EFI (ESP) con una configurada para arrancar desde el dispositivo USB.
Para solucionarlo, tendría que hacer dos cosas, en cualquier orden:
1.) Debe asegurarse de que la instalación basada en USB pueda iniciarse por sí sola, es decir, la unidad USB debe incluir una partición FAT32 que contenga una copia del gestor de arranque en \EFI\boot\bootx64.efi
. Eso es lo que hace que un USB extraíble sea de arranque en el sentido UEFI.
2.) Para arreglar el gestor de arranque de la instalación en el disco duro interno, puede iniciar en la instalación basada en USB, luego montar la(s) partición(es) de la instalación basada en disco duro interno y hacer chroot en esa instalación.
Su fdisk -l
resultado indica que probablemente también se esté utilizando LVM.
Según su fdisk -l
resultado, este debería ser el comienzo de los comandos necesarios. Tenga en cuenta que todo esto debe ejecutarse como root, así que primero use su -
e ingrese la contraseña de root, o sudo -i
ingrese su propia contraseña para convertirse en root.
# mkdir /mnt/hddsystem
# cryptsetup luksOpen /dev/sda3 sda3_crypt
<the above command will ask you the encryption passphrase of the HDD installation.
If successful, then /dev/mapper/sda3_crypt should now exist>
# vgscan
<this detects the LVM volume group within the encrypted container of the HDD installation>
# lvs
<this displays all the detected LVM logical volumes and their names>
# vgchange -ay intern-vg
# mount /dev/mapper/intern--vg-root /mnt/hddsystem
<if successful, directories like /mnt/hddsystem/dev, /mnt/hddsystem/proc, /mnt/hddsystem/sys
should be visible and empty at this point. Other directories should be visible under /mnt/hddsystem too.>
# mount /dev/sda2 /mnt/hddsystem/boot
# mount /dev/sda1 /mnt/hddsystem/boot/efi
En este punto, también podría ser fácil arreglar el arranque del sistema USB, simplemente copiando la versión de GRUB que busca medios USB para arrancar realmente en el USB, antes de sobrescribirlo en el HDD.
# mkdir /mnt/usb-esp
# mount /dev/sdb1 /mnt/usb-esp
# mkdir -p /mnt/usb-esp/EFI/boot
# cp -r /mnt/hddsystem/boot/efi/EFI/debian /mnt/usb-esp/EFI/
# cp /mnt/usb-esp/EFI/debian/grubx64.efi /mnt/usb-esp/EFI/boot/
# cp /mnt/hddsystem/boot/efi/EFI/debian/shimx64.efi /mnt/usb-esp/EFI/boot/bootx64.efi
# umount /mnt/usb-esp
Volver a arreglar la instalación del disco duro...
# mount -o bind /dev /mnt/hddsystem/dev
# mount -o bind /proc /mnt/hddsystem/proc
# mount -o bind /sys /mnt/hddsystem/sys
<these commands are preparations for the following chroot command, mounting all the necessary real and virtual filesystems so that the inactive HDD-based installation can be used like an active, running system.>
# chroot /mnt/hddsystem /bin/bash
<this command transitions us to the HDD-based environment; from this point onwards, for this shell session only, /mnt/hddsystem is /.>
# grub-install /dev/sda1
# update-grub
<these two commands to fix the bootloader are what all the preparations above were for.>