Wie installiere ich Debian Linux auf ssd vom Live-System mit uefi boot?

1665
Gregory Wolf

Ich habe ein USB-Laufwerk mit Overclockix (Debian-basiert), von dem ich mein System gebootet habe. Ich versuche, einen Weg zu finden, um es auf dem angeschlossenen SATA-SSD-Laufwerk zu installieren. Ich habe folgendes versucht:

Ich habe mit fdisk die folgenden Partitionen auf der SSD erstellt:

/dev/sda1 /boot ext2 (bootable)  /dev/sda2 / ext4 /dev/sda3 /var ext4 /dev/sda4 /home ext4 /dev/sda5 none swap partprobe /dev/sda 

Ich lief mkfs. auf jeder partition und mkswap auf sda5.

Dann habe ich die Partitionen montiert:

mount /dev/sda2 /mnt mkdir /mnt/boot /mnt/var /mnt/home mount /dev/sda1 /mnt/boot mount /dev/sda3 /mnt/var mount /dev/sda4 /mnt/home 

Dann habe ich die Dateien vom USB kopiert:

rsync -avp --exclude /proc --exclude /boot --exclude /home --exclude /var --exclude /sys --exclude /dev --exclude /run / /mnt rsync -avp /var /mnt/var rsync -avp /boot /mnt/boot  rsync -avp /home /mnt/home 

Dann binde ich gemountetes proc, sys, run und dev:

mkdir /mnt/proc /mnt/run /mnt/sys /mnt/dev mount --bind /proc /mnt/proc mount --bind /sys /mnt/sys mount --bind /dev /mnt/dev mount --bind /run /mnt/run 

Dann habe ich zu / mnt chrootiert:

chroot /mnt /bin/bash 

Ich habe eine neue Fstab erstellt:

blkid >> /etc/fstab vi /etc/fstab UUID=<UUID> <mpoint> <type> defaults(or sw) 0 2 

Dann habe ich grub-install / boot / dev / sda ausgeführt und keine Fehler zurückgegeben.

Ich verließ die Chroot, entfernte die Partitionen, entfernte den USB und startete neu.

Ich dachte, dass dies ein nahezu identisches Dateisystem schaffen würde, das sich auf dem USB-Gerät befindet und mit grub bootet. Ich konnte jedoch nicht von der Festplatte booten. Ich denke, es hat etwas mit UEFI zu tun, aber ich kann nicht ganz herausfinden, was noch zu tun ist.

Jede Hilfe wird geschätzt, danke.

1
UEFI startet von einer Datei auf der EFI-Systempartition. Sie haben das nicht erstellt (oder die relevanten Dateien darauf nicht kopiert). Hennes vor 7 Jahren 0
Ist ext2 ein geeigneter Partitionstyp für efi? Gregory Wolf vor 7 Jahren 0
Begann, das in einem Kommentar zu beantworten, aber es passte nicht. Stattdessen als Antwort gepostet. Hennes vor 7 Jahren 0

2 Antworten auf die Frage

1
Hennes

mit UEFI booten

Lassen Sie mich dies ein wenig erweitern, damit der Rest der Antwort einen Sinn ergibt:

Auf alten IBM-kompatiblen PCs wird die Firmware beim Start geladen. Dies ist in der Regel eine BIOS-Firmware und sucht nach einem MBR-Datensatz auf haarddisk, liest das, führt Bootsektor, Bootloader der ersten Stufe usw. aus. Dies ist das Gleiche beim Booten von Windows oder Linux. Sie bekommen nur verschiedene Bootloader. Oder sogar mehrere Bootloader, z. B. wenn Sie Fenster von grub ketten.

Das BIOS ist ein Basissystem von etwa 1985 und fehlt bei modernen PCs etwas. Wir haben es nur für die Rückwärtskompatibilität verwendet.

Es wurde seitdem von EFI ersetzt. EFI ist gut definiert und viel fähiger. Es wird kein Bootssektor verwendet. Stattdessen wird auf eine partitionierte GPT- Festplatte zugegriffen, die EFI-Systempartition gesucht und Dateien von dieser gelesen. Normalerweise gehört dazu so etwas boot.efi. * 1

Zum Starten muss eine EFI-Systempartition vorhanden sein. Es muss in einem Format vorliegen, das von Ihrer EFI-Implementierung verstanden wird. Es gibt ein Dateisystem, das EFI verstehen muss, und eines ist zu 100% mit FAT32 kompatibel. * 2

In Ihrem Setup können Sie mehrere Partitionen erstellen, von denen keine die EFI-Systempartition ist. Ich denke, Sie folgen einer alten Anleitung für das Booten von BIOS, Coreboot oder CSM.

Soviel zum Hintergrund und warum es nicht funktionierte, lässt die Hauptfrage jedoch unbeantwortet.

Wie installiere ich Debian Linux auf ssd vom Live-System mit UEFI-Start

Von wiki.debian.org/UEFI :
"Debian installiert grub-efi für seinen EFI-Bootloader".

Dies ist eine .efi-Datei, die auf Ihrer EFI-Systempartition installiert werden muss. Was du nicht hast Starten Sie erneut, partitionieren Sie die Festplatte mit einer zusätzlichen Partition mit dem richtigen Typ (Bezeichner C12A7328-F81F-11D2-BA4B-00A0C93EC93B). formatieren Sie es FAT32. Informieren Sie sich über grub-efi und stellen Sie sicher, dass Ihr Kernel bei UEFI aktiviert ist. Dann zur richtigen Zeit ein Thema ausgeben apt-get install --reinstall grub-efi-amd64oder mit rumspielen efibootmgr.



* 1 : Hinweis: Grub2 ist EFI-kompatibel.

* 2 : Eine bekannte Ausnahme: Apple EFI verwendet auch HFS. Bei Bedarf versteht es auch das normale Format.

1
GAD3R

Formatieren Sie die sda2Startpartition in Fat32, diese wird als ESP-Partition verwendet

Partitionen einhängen und ersetzen mount /dev/sda1 /mnt/bootdurch:

mount /dev/sda1 /mnt/boot/efi 

Lauf:

for i in /sys /proc /dev; do mount --bind $i /mnt$i; done 

Holen Sie sich das Internet zum Laufen und wechseln Sie dann root:

cp /etc/resolv.conf /mnt/etc/ chroot /mnt /bin/bash 

Installiere grub:

apt-get install --reinstall grub-efi update-grub exit for i in /sys /proc /dev; do umount /mnt$i; done 

Heben Sie die Bereitstellung von Partitionen auf und starten Sie den Computer neu