Acasă
» LINUX
»
Cum să faceți o copie de rezervă a bootloader-ului Linux pe o unitate USB
Cum să faceți o copie de rezervă a bootloader-ului Linux pe o unitate USB
Salvați setările GRUB și fișierele de boot pe USB; pe sistemele UEFI, salvați și fișierele EFI și o listă de intrări de firmware. Acestea sunt referințe de recuperare, nu o imagine completă a discului. Dacă lipsește codul de pornire, utilizați mediul de salvare Linux pentru a reinstala GRUB pentru configurația de boot reală.
Ce acoperă o copie de rezervă GRUB
Distribuțiile generează în mod obișnuit meniul din /etc/default/grubși /etc/grub.d/, cu fișiere suport sub /boot/grubsau /boot/grub2. Documentele Debian grub.cfgașa cum sunt generate, așadar restaurați setările și regenerați-le. BIOS GRUB poate utiliza MBR plus sectoare încorporate; UEFI utilizează fișiere pe o partiție de sistem FAT EFI (ESP) și intrări de boot în variabilele de firmware.
Faceți o copie de rezervă a GRUB pe o unitate USB
1. Montați USB-ul și identificați modul de bootare
Conectați o unitate USB, deschideți-o în managerul de fișiere și notați locația de montare. Apoi, listați discurile și verificați cum a fost pornit sistemul curent:
lsblk -o NAME,SIZE,FSTYPE,LABEL,UUID,MOUNTPOINTS
findmnt /
if [ -d /sys/firmware/efi ]; then echo UEFI; else echo BIOS; fi
Un volum USB montat este destinația pentru fișierele de rezervă.
Folosește dimensiunea, sistemul de fișiere, eticheta și punctul de montare pentru a distinge USB-ul de discurile interne. Nume precum /dev/sdase pot schimba, iar partiția root nu este întotdeauna discul țintă al bootloader-ului BIOS.
Folosește detaliile dispozitivului pentru a localiza ESP-ul și unitatea amovibilă.
Pe sistemele UEFI, identificați partiția de sistem EFI (ESP) în rezultat. Adesea este FAT32, cu un punct de montare precum /boot/efi, /efi, sau /boot. De obicei, conține un EFIdirector.
2. Arhivați setările GRUB și fișierele suport
Înlocuiți exemplul de cale USB cu punctul de montare găsit. Păstrați ghilimelele în jurul căilor care conțin spații.
USB="/media/$USER/USB_LABEL"
BACKUP="$USB/grub-backup"
sudo mkdir -p "$BACKUP"
paths=(etc/default/grub etc/grub.d)
for p in etc/default/grub.d boot/grub boot/grub2; do
[ ! -e "/$p" ] || paths+=("$p")
done
sudo tar -C / -czf "$BACKUP/grub-files.tar.gz" "${paths[@]}"
Salvează împreună setările GRUB, scripturile de meniu și fișierele de boot existente.
Arhiva păstrează permisiunile Linux chiar și pe sistemele de fișiere USB care nu le permit. Include directoarele GRUB opționale găsite în această instalare.
3. Pe UEFI, salvați fișierele EFI și intrările de firmware
Setați ESPla punctul de montare identificat; acest exemplu folosește /boot/efi. Arhiva include fișierele altor furnizori dacă aceștia partajează EFIdirectorul.
ESP="/boot/efi"
sudo tar -C "$ESP" -czf "$BACKUP/esp-files.tar.gz" EFI
sudo efibootmgr -v | sudo tee "$BACKUP/uefi-boot-entries.txt" >/dev/null
Un ESP partajat poate conține fișiere de boot pentru mai multe sisteme de operare.Păstrați lista de intrări de firmware lângă fișierele de boot salvate.
efibootmgr -vafișează detalii despre intrarea la bootare, nu fiecare setare de firmware. Omiteți aceste comenzi pe sistemele care utilizează doar BIOS.
4. Verificați copia de rezervă și scoateți unitatea
tar -tzf "$BACKUP/grub-files.tar.gz" | head
[ ! -f "$BACKUP/esp-files.tar.gz" ] || tar -tzf "$BACKUP/esp-files.tar.gz" | head
ls -lh "$BACKUP"
sync
Verificați dacă numele și dimensiunile arhivelor sunt plauzibile, apoi scoateți USB-ul înainte de a-l deconecta. Păstrați copia de rezervă separat de un USB de instalare live, care ar putea fi șters în timpul creării suportului de boot.
Folosește copia de rezervă după o eroare de pornire
5. Porniți o sesiune live în modul de boot al sistemului instalat
Pornește un stick USB Linux live sau de salvare în același mod UEFI sau BIOS legacy, dacă este posibil. Identifică /bootdin nou root-ul, orice partiție separată și ESP-ul; numele dispozitivelor pot diferi.
O sesiune live oferă instrumente pentru inspectarea și repararea instalației.
Montați sistemul instalat într-o locație temporară, cum ar fi /mnt/target, cu partiții de boot separate montate pe căile corespunzătoare. Urmați instrucțiunile distribuției dvs. pentru partiția exactă și comenzile chroot.
Montați partițiile instalate înainte de a rula comenzi de reparare într-un chroot.
6. Restaurați setările selectiv, apoi reparați GRUB
După montarea partiției rădăcină instalate și a oricărei /bootpartiții separate, restaurați arhiva numai dacă provine din această instalare și versiune:
sudo tar -xzf "/path/to/grub-backup/grub-files.tar.gz" -C /mnt/target
Înlocuiți calea exemplu cu locația reală a USB-ului. Nu extrageți arhiva EFI printr-un ESP partajat; utilizați pașii de reinstalare ai distribuției pentru a recrea fișierele de boot și intrarea de firmware. Boot-ul securizat poate necesita pachete shim și GRUB semnate.
În chroot, regenerați meniul folosind comanda și calea de ieșire a distribuției dvs. Debian și Ubuntu folosesc în mod obișnuit update-grub; alții documentează grub-mkconfigsau grub2-mkconfig. Dacă lipsește codul de pornire, reinstalați GRUB pentru discul BIOS sau partiția UEFI corectă. Verificați ținta înainte de grub-install.
Regenerați meniul din instalarea reparată după restaurarea setărilor.
De ce nu se restaurează doar primii 512 octeți?
O copie pe un singur sector nu include imaginea încorporată a BIOS GRUB sau partiția de boot BIOS atunci când este utilizată. Primul sector conține, de asemenea, date din tabela de partiții, așadar restaurarea unei copii vechi poate deteriora un disc modificat. Fișierele UEFI și intrările de firmware sunt separate. Folosiți această arhivă ca informații de recuperare; păstrați o imagine testată a întregului disc pentru o revenire completă la versiunea inițială.