Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung Nächste Überarbeitung Beide Seiten, nächste Überarbeitung | ||
admin_grundlagen:systemsicherung [2019/09/26 13:20] ingo_wichmann |
admin_grundlagen:systemsicherung [2020/09/18 12:41] stefan_miethke [UEFI] |
||
---|---|---|---|
Zeile 27: | Zeile 27: | ||
===== Sicherung ===== | ===== Sicherung ===== | ||
Diese Schritte werden auf dem zu sichernden System ausgeführt. | Diese Schritte werden auf dem zu sichernden System ausgeführt. | ||
+ | |||
+ | ==== Sicherung der UEFI-Einstellungen ==== | ||
+ | Bei UEFI-Systemen ist es manchmal hilfreich die EFI Variablen zu sichern: | ||
+ | efibootmgr -v > sicherung.efivars | ||
==== Sicherung der Partitionierung ==== | ==== Sicherung der Partitionierung ==== | ||
Zeile 73: | Zeile 77: | ||
-> alle persistenten, lokalen Dateisysteme müssen gesichert werden, mit Ausnahme von loop-Devices | -> alle persistenten, lokalen Dateisysteme müssen gesichert werden, mit Ausnahme von loop-Devices | ||
- | == ext3 / ext4 == | + | == ext2 / ext3 / ext4 == |
tune2fs -l /dev/sdaX > sicherung.ext.sdaX | tune2fs -l /dev/sdaX > sicherung.ext.sdaX | ||
((''/dev/sdaX'' ist hier nur ein Beispiel für ein Speichergerät ( Partition, LVM, ...). Liegt das Dateisystem auf einem Logical Volume, dann heißt das Device ''/dev/mapper/xxx'' oder ähnlich)) | ((''/dev/sdaX'' ist hier nur ein Beispiel für ein Speichergerät ( Partition, LVM, ...). Liegt das Dateisystem auf einem Logical Volume, dann heißt das Device ''/dev/mapper/xxx'' oder ähnlich)) | ||
Zeile 108: | Zeile 112: | ||
=== mit rsync über ssh Dateien kopieren === | === mit rsync über ssh Dateien kopieren === | ||
+ | Auf Quell- und Zielsystem muss rsync installiert sein. Alternativ kann man auch [[#tar_ueber_ssh|tar über ssh]] verwenden. | ||
== Debian (ab 8) == | == Debian (ab 8) == | ||
Zeile 235: | Zeile 240: | ||
Partitionierung anhand der Informationen aus der gesicherten Datei ''sicherung.parted'' und/oder gemäß ''etc/fstab'' aus dem Backup wie in [[Partitionierung]] beschrieben anlegen | Partitionierung anhand der Informationen aus der gesicherten Datei ''sicherung.parted'' und/oder gemäß ''etc/fstab'' aus dem Backup wie in [[Partitionierung]] beschrieben anlegen | ||
+ | Bitte Typ der Partitionstabelle (''gpt'' oder ''msdos'') beachten. | ||
==== Wiederherstellung LVM ==== | ==== Wiederherstellung LVM ==== | ||
Partitionierung anhand der Informationen aus der gesicherten Datei ''sicherung.pvdisplay'', ''sicherung.vgdisplay'', ''sicherung.lvdisplay'' und/oder gemäß ''etc/fstab'' aus dem Backup wie in [[lvm]] beschrieben anlegen (( | Partitionierung anhand der Informationen aus der gesicherten Datei ''sicherung.pvdisplay'', ''sicherung.vgdisplay'', ''sicherung.lvdisplay'' und/oder gemäß ''etc/fstab'' aus dem Backup wie in [[lvm]] beschrieben anlegen (( | ||
Zeile 262: | Zeile 268: | ||
oder | oder | ||
mkfs.vfat -i xxxxxxxx /dev/sdaX | mkfs.vfat -i xxxxxxxx /dev/sdaX | ||
- | ((Eine UUID die von ''blkid'' im Format ''%%UUID="066B-5CE0"%%'' ausgegeben wurde muss ''mkfs.vfat'' mit ''066B-5CE0'' (also ohne Minus) übergeben werden)) | + | ((Eine UUID die von ''blkid'' im Format ''%%UUID="066B-5CE0"%%'' ausgegeben wurde muss ''mkfs.vfat'' mit ''066B5CE0'' (also ohne Minus) übergeben werden)) |
... | ... | ||
Zeile 307: | Zeile 313: | ||
touch /tmp/system/.autorelabel | touch /tmp/system/.autorelabel | ||
- | ===== Bootloader wiederherstellen ===== | + | ===== Bootfähig machen ===== |
==== chroot vorbereiten ==== | ==== chroot vorbereiten ==== | ||
mount --rbind /dev /tmp/system/dev | mount --rbind /dev /tmp/system/dev | ||
Zeile 321: | Zeile 327: | ||
)) | )) | ||
- | bei UEFI-Systemen: | + | ==== UEFI ==== |
+ | (nur bei UEFI-Systemen) | ||
+ | |||
+ | === efivars schreibbar machen === | ||
mount -o rw,remount /tmp/system/sys/firmware/efi/efivars | mount -o rw,remount /tmp/system/sys/firmware/efi/efivars | ||
oder (falls ''/tmp/system/sys/firmware/efi/efivars'' kein mountpoint ist) | oder (falls ''/tmp/system/sys/firmware/efi/efivars'' kein mountpoint ist) | ||
mount -t efivarfs efivarfs /tmp/system/sys/firmware/efi/efivars | mount -t efivarfs efivarfs /tmp/system/sys/firmware/efi/efivars | ||
- | ==== Schritte im chroot Zielsystem ==== | + | === Schritte im chroot Zielsystem === |
chroot /tmp/system /bin/bash | chroot /tmp/system /bin/bash | ||
- | Bootloader wiederherstellen: entweder grub2 oder grub | + | === EFI Variablen schreiben === |
+ | Die folgenden Shell-Variablen gemäß Ausgabe von | ||
+ | ls /boot/efi/EFI/ | ||
+ | und der Datei ''sicherung.efivars'' setzen: | ||
+ | |||
+ | efi_label='Name der Distribution' | ||
+ | distro='DISTRIBUTION' | ||
+ | boot_device='/dev/sda' | ||
+ | esp_partition_id=2 | ||
+ | efibootmgr --create --disk "$boot_device" --part "$esp_partition_id" --label 'UEFI OS' --loader '\EFI\BOOT\BOOTX64.EFI' | ||
+ | efibootmgr --create --disk "$boot_device" --part "$esp_partition_id" --label "$efi_label" --loader '\EFI\$distro\SHIMX64.EFI' | ||
+ | |||
+ | === Grub2 konfigurieren === | ||
+ | |||
+ | In CentOS 8 BLSCFG abschalten: | ||
+ | <file txt /etc/default/grub> | ||
+ | … | ||
+ | GRUB_ENABLE_BLSCFG=false | ||
+ | … | ||
+ | </file> | ||
+ | TODO: Lösung mit BLSCFG finden | ||
+ | |||
+ | == CentOS == | ||
+ | grub2-mkconfig -o /boot/efi/EFI/$distro/grub.cfg | ||
+ | |||
+ | == Debian, Ubuntu == | ||
+ | dpkg-reconfigure grub-efi-amd64 | ||
+ | oder | ||
+ | update-grub2 | ||
+ | |||
+ | === EFI Variablen prüfen === | ||
+ | efibootmgr -v | ||
+ | |||
+ | * Partition unique GUID: muss zur ESP Partition passen | ||
+ | * The path of the EFI image to boot must use \ (backslash) instead of / (forward slash) as path separator. | ||
+ | |||
+ | ==== BIOS: Bootloader in mbr schreiben ==== | ||
+ | (nur bei BIOS-Systemen) | ||
+ | |||
+ | === Schritte im chroot Zielsystem === | ||
+ | chroot /tmp/system /bin/bash | ||
=== grub2 wiederherstellen === | === grub2 wiederherstellen === | ||
- | == Debian 6.0, Ubuntu 16.04 == | + | == Debian (ab 6.0), Ubuntu (ab 16.04) == |
grub-install /dev/sda | grub-install /dev/sda | ||
update-grub2 | update-grub2 | ||
Zeile 380: | Zeile 429: | ||
//If you are using gdisk, set the partition type to ‘0xEF02’. With partitioning programs that require setting the GUID directly, it should be ‘21686148-6449-6e6f-744e656564454649’. //)) | //If you are using gdisk, set the partition type to ‘0xEF02’. With partitioning programs that require setting the GUID directly, it should be ‘21686148-6449-6e6f-744e656564454649’. //)) | ||
+ | ==== /boot auf separater Partition ==== | ||
+ | Bei Debian mit UEFI anpassen: ''/boot/efi/EFI/debian/grub.cfg'' | ||
==== Bootloader grub ==== | ==== Bootloader grub ==== | ||
''/boot/grub/menu.lst'' : | ''/boot/grub/menu.lst'' : | ||
Zeile 416: | Zeile 467: | ||
==== Kernel-Module und initrd ==== | ==== Kernel-Module und initrd ==== | ||
Je nach Änderung muß eine neue [[admin_grundlagen:initrd|initrd]] erzeugt werden und/oder die bei Booten geladenen Module müssen überarbeitet werden | Je nach Änderung muß eine neue [[admin_grundlagen:initrd|initrd]] erzeugt werden und/oder die bei Booten geladenen Module müssen überarbeitet werden | ||
+ | |||
+ | === dracut (CentOS 8) === | ||
+ | in der chroot-Umgebung | ||
+ | dracut --hostonly --persistent-policy 'by-uuid' --force /boot/initramfs-4.18.0-80.11.2.el8_0.x86_64.img 4.18.0-80.11.2.el8_0.x86_64 | ||
=== dracut (CentOS 7 / openSuSE 42.1) === | === dracut (CentOS 7 / openSuSE 42.1) === |