Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
admin_grundlagen:systemsicherung [2023/11/23 10:35] natureshadow2 Hinweis zum Live-Boot im LH |
admin_grundlagen:systemsicherung [2025/02/06 17:12] (aktuell) ingo_wichmann |
||
---|---|---|---|
Zeile 8: | Zeile 8: | ||
===== Vorbereitung Zielsystem ===== | ===== Vorbereitung Zielsystem ===== | ||
+ | ==== Platz schaffen ==== | ||
evtl. Platz schaffen wie in [[Plattenplatz]], [[Partitionierung]] und [[lvm]] beschrieben | evtl. Platz schaffen wie in [[Plattenplatz]], [[Partitionierung]] und [[lvm]] beschrieben | ||
mkdir -p /mnt/backup/dateien | mkdir -p /mnt/backup/dateien | ||
- | === Ubuntu === | + | ==== SSH Zugriff als root ==== |
- | Zielverzeichnis ''/mnt/backup'' muss dem Ubuntu-Nutzer gehören: | + | Root Passwort setzen, sofern nicht bekannt/verfügbar: |
+ | passwd root | ||
+ | |||
+ | <file txt /etc/ssh/sshd_config.d/root.conf> | ||
+ | PermitRootLogin yes | ||
+ | </file> | ||
+ | |||
+ | systemctl restart ssh.service | ||
+ | |||
+ | ++++ Alternativ: sudo und ssh-Schlüssel | | ||
+ | Zielverzeichnis ''/mnt/backup'' muss dem Nutzer gehören: | ||
chown nutzerXX /mnt/backup | chown nutzerXX /mnt/backup | ||
- | === Debian (ab 8) === | + | * [[sudo]] einrichten, falls noch nicht passiert |
- | Entweder | + | |
- | * [[sudo]] einrichten und wie unter Ubuntu beschrieben vorgehen. | + | |
* einen [[ssh]]-Schlüssel beim Benutzer root hinterlegen | * einen [[ssh]]-Schlüssel beim Benutzer root hinterlegen | ||
- | oder | + | ++++ |
- | * root das Anmelden mit Passwort erlauben (( | + | |
- | <file txt /etc/ssh/sshd_config> | + | |
- | PermitRootLogin yes | + | |
- | </file> | + | |
- | )) | + | |
===== Sicherung ===== | ===== Sicherung ===== | ||
Diese Schritte werden auf dem zu sichernden System ausgeführt. | Diese Schritte werden auf dem zu sichernden System ausgeführt. | ||
Zeile 43: | Zeile 47: | ||
Mehr zur Vorgehensweise siehe [[Partitionierung]]. )) | Mehr zur Vorgehensweise siehe [[Partitionierung]]. )) | ||
- | |||
- | Ubuntu: | ||
- | scp sicherung.parted nutzer@server:/mnt/backup | ||
- | |||
- | andere Distributionen (bei denen root ein Passwort hat): | ||
- | scp sicherung.parted root@server:/mnt/backup | ||
- | |||
==== Sicherung LVM Informationen ==== | ==== Sicherung LVM Informationen ==== | ||
Zeile 91: | Zeile 88: | ||
==== Einstellungs-Dateien auf Zielsystem kopieren ==== | ==== Einstellungs-Dateien auf Zielsystem kopieren ==== | ||
- | Ubuntu: | ||
- | scp sicherung.* nutzer@server:/mnt/backup | ||
- | andere Distributionen (bei denen root ein Passwort hat): | ||
scp sicherung.* root@server:/mnt/backup | scp sicherung.* root@server:/mnt/backup | ||
Zeile 115: | Zeile 109: | ||
Auf Quell- und Zielsystem muss rsync installiert sein. Alternativ kann man auch [[#tar_ueber_ssh|tar über ssh]] verwenden. | Auf Quell- und Zielsystem muss rsync installiert sein. Alternativ kann man auch [[#tar_ueber_ssh|tar über ssh]] verwenden. | ||
- | == Debian (ab 8) == | + | ++++ Ubuntu ohne SSH root-Passwort | |
- | Wie oben unter "[[#debian_ab_8|Vorbereitung Zielsystem]]" beschrieben kann man entweder so vorgehen | + | |
- | * wie bei [[#andere_distributionen_bei_denen_root_ein_passwort_hat|anderen Distributionen, bei denen root ein Passwort hat]] | + | |
- | oder | + | |
- | * wie bei Ubuntu | + | |
- | + | ||
- | == Ubuntu == | + | |
Unter **Ubuntu** gibt es defaultmäßig kein root Passwort. | Unter **Ubuntu** gibt es defaultmäßig kein root Passwort. | ||
Wenn ein **Ubuntu** System das **ZIEL** ist, muss man zunächst dem User, mit dem man sich auf dem Ziel einloggen will, einen Eintrag machen, der ''rsync'' via ''sudo'' ohne Passwort erlaubt: | Wenn ein **Ubuntu** System das **ZIEL** ist, muss man zunächst dem User, mit dem man sich auf dem Ziel einloggen will, einen Eintrag machen, der ''rsync'' via ''sudo'' ohne Passwort erlaubt: | ||
Zeile 141: | Zeile 129: | ||
Und dann lautet der Befehl zum Backup: | Und dann lautet der Befehl zum Backup: | ||
rsync -aSH --xattrs --acls --numeric-ids --del --rsync-path="sudo rsync" /mnt/system/ user@zielsystem:/mnt/backup/dateien | rsync -aSH --xattrs --acls --numeric-ids --del --rsync-path="sudo rsync" /mnt/system/ user@zielsystem:/mnt/backup/dateien | ||
+ | ++++ | ||
- | == SuSE / BTRFS == | + | ++++ SuSE / BTRFS | |
Btrfs snapshot subvolumes können nicht sinnvoll mit rsync oder tar gesichert und wieder hergestellt werden, da die Deduplizierung von Btrfs dabei nicht mehr genutzt wird und die Dateien mehrfach im Backup landen würden. | Btrfs snapshot subvolumes können nicht sinnvoll mit rsync oder tar gesichert und wieder hergestellt werden, da die Deduplizierung von Btrfs dabei nicht mehr genutzt wird und die Dateien mehrfach im Backup landen würden. | ||
+ | ++++ | ||
- | == andere Distributionen (bei denen root ein Passwort hat) == | ||
rsync -aSH --acls --xattrs --numeric-ids --del /mnt/system/ root@server:/mnt/backup/dateien | rsync -aSH --acls --xattrs --numeric-ids --del /mnt/system/ root@server:/mnt/backup/dateien | ||
(( mehr zu [[rsync]], u.a. wie man hier ''rsync'' auch ohne root-Rechte benutzen kann )) (( mehr zu [[ssh]] )) (( wenn man ein Art Fortschrittsbalken haben will: ''progress'' installieren und ''progress -wm'' ausführen während rsync läuft. )) | (( mehr zu [[rsync]], u.a. wie man hier ''rsync'' auch ohne root-Rechte benutzen kann )) (( mehr zu [[ssh]] )) (( wenn man ein Art Fortschrittsbalken haben will: ''progress'' installieren und ''progress -wm'' ausführen während rsync läuft. )) | ||
Zeile 240: | Zeile 229: | ||
====== Wiederherstellung des Systems ====== | ====== Wiederherstellung des Systems ====== | ||
- | Rettungssystem ( z.B. sysrcd, knoppix ) booten (im LH-Netz: PXE-Boot und ''debian11live'' eingeben) | + | Rettungssystem booten (im Linuxhotel-Netz: PXE-Boot und ''debian11live'' eingeben) |
===== Schritte im Rettungs-System ===== | ===== Schritte im Rettungs-System ===== | ||
Zeile 251: | Zeile 240: | ||
Typ der Partitionstabelle (''gpt'' oder ''msdos'') beachten. )) | Typ der Partitionstabelle (''gpt'' oder ''msdos'') beachten. )) | ||
==== Wiederherstellung LVM ==== | ==== Wiederherstellung LVM ==== | ||
- | In Knoppix muss dazu zuerst lvm2 gestartet werden: | ||
- | service lvm2 start | ||
=== mit vgcfgrestore === | === mit vgcfgrestore === | ||
IDs der Physical Volumes herausfinden: | IDs der Physical Volumes herausfinden: | ||
Zeile 290: | Zeile 277: | ||
==== Mounten der Zielpartitionen ==== | ==== Mounten der Zielpartitionen ==== | ||
- | In ''/mnt/backup/dateien/etc/fstab'' aufgeführte Mountpoints mit ''mkdir -p'' anlegen und Dateisysteme mit ''mount'' einhängen: (( evtl. mount-optionen ( z.B. acl ) beachten )) | + | In ''/mnt/backup/dateien/etc/fstab'' aufgeführte Mountpoints mit ''mkdir'' anlegen und Dateisysteme mit ''mount'' einhängen: (( evtl. mount-optionen ( z.B. acl ) beachten )) |
((''/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 root-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 root-Device ''/dev/mapper/xxx'' oder ähnlich)) | ||
- | mkdir -p /tmp/system | + | mkdir /tmp/system |
mount /dev/sdaX /tmp/system | mount /dev/sdaX /tmp/system | ||
- | mkdir -p /tmp/system/boot | + | mkdir /tmp/system/boot |
mount /dev/sdaY /tmp/system/boot | mount /dev/sdaY /tmp/system/boot | ||
und/oder | und/oder | ||
- | mkdir -p /tmp/system/boot/efi | + | mkdir /tmp/system/boot/efi |
mount /dev/sdaZ /tmp/system/boot/efi | mount /dev/sdaZ /tmp/system/boot/efi | ||
und möglicherweise weitere: | und möglicherweise weitere: | ||
- | mkdir -p /tmp/system/… | + | mkdir /tmp/system/… |
mount … | mount … | ||
Zeile 358: | Zeile 345: | ||
=== grub-efi bzw. efivars wiederherstellen === | === grub-efi bzw. efivars wiederherstellen === | ||
- | Debian: | + | Debian / Ubuntu: |
- | grub-install dummy | + | grub-install |
SuSE (ab 15.4): | SuSE (ab 15.4): | ||
Zeile 370: | Zeile 357: | ||
efibootmgr -v | efibootmgr -v | ||
- | -> da wird wahrscheinlich nur noch der PXE-Eintrag sein, sonst alle alten Einträge löschen: | + | -> alle alten Einträge löschen: |
efibootmgr -B -b 000f | efibootmgr -B -b 000f | ||
(( ''000f'' ist hier nur ein Beispiel für einen veralteten Eintrag )) | (( ''000f'' ist hier nur ein Beispiel für einen veralteten Eintrag )) | ||
Zeile 376: | Zeile 363: | ||
EFI ESP Partition merken | EFI ESP Partition merken | ||
grub2-probe -t device /boot/efi/EFI/ | grub2-probe -t device /boot/efi/EFI/ | ||
- | | + | |
- | EFI-Eintrag anlegen (-p = ordinale Nummer der ESP Partition) | + | EFI-Eintrag anlegen |
- | efibootmgr -c -L "CentOS Linux" -l /EFI/centos/shimx64.efi -p 1 | + | efi_label='Name der Distribution' # z.B. ''CentOS Linux'' oder ''Rocky Linux'' |
- | bzw. | + | distro='DISTRIBUTION' # ''centos'' oder ''rocky'' |
- | efibootmgr -c -L "Rocky Linux" -l /EFI/rocky/shimx64.efi -p 1 | + | boot_device='/dev/sda' # ''/dev/sda'' oder ''/dev/nvme0n1'' |
+ | esp_partition_id=2 | ||
+ | efibootmgr --create --disk "$boot_device" --part "$esp_partition_id" --label "$efi_label" --loader "/EFI/$distro/shimx64.efi" | ||
grub-config neu erzeugen | grub-config neu erzeugen | ||
grub2-mkconfig -o /boot/grub2/grub.cfg | grub2-mkconfig -o /boot/grub2/grub.cfg | ||
+ | |||
Ab RHEL/CentOS/Rocky 8 werden zusätzlich Einträge für BLS (''/boot/loader/entries/'') benötigt, da grub.cfg keinen direkten Eintrag für Kernel und initrd enthält: | Ab RHEL/CentOS/Rocky 8 werden zusätzlich Einträge für BLS (''/boot/loader/entries/'') benötigt, da grub.cfg keinen direkten Eintrag für Kernel und initrd enthält: | ||
Zeile 473: | Zeile 463: | ||
===== Anpassungen bei geänderter Hardware oder geänderten Partitionen ===== | ===== Anpassungen bei geänderter Hardware oder geänderten Partitionen ===== | ||
+ | ==== Ubuntu (22.04 LTS) ==== | ||
+ | * TODO: Nach Backup/Restore ist snap kaputt | ||
+ | |||
+ | |||
==== Rebuild Red Hat / Rocky / Alma 8 ==== | ==== Rebuild Red Hat / Rocky / Alma 8 ==== | ||
**[[Rebuild Red Hat 8|komplettes Rebuild Bootmanager UEFI+Rocky/Alma/Red Hat 8]]** | **[[Rebuild Red Hat 8|komplettes Rebuild Bootmanager UEFI+Rocky/Alma/Red Hat 8]]** |