GNU/Linux >> LINUX-Kenntnisse >  >> Linux

CYA – System-Schnappschuss- und Wiederherstellungsprogramm für Linux

CYA , steht für C über Y unser A ssets ist ein kostenloses Open-Source-System-Snapshot- und Wiederherstellungsprogramm für alle Unix-ähnlichen Betriebssysteme, die BASH-Shell verwenden. Cya ist portabel und unterstützt viele gängige Dateisysteme wie EXT2/3/4, XFS, UFS, GPFS, reiserFS, JFS, BtrFS und ZFS usw. Bitte beachten Sie, dass Cya die eigentlichen Benutzerdaten nicht sichert . Es sichert und stellt nur das Betriebssystem selbst wieder her. Cya ist eigentlich ein Dienstprogramm zur Systemwiederherstellung . Standardmäßig werden alle wichtigen Verzeichnisse wie /bin/, /lib/, /usr/, /var/ und mehrere andere gesichert. Sie können jedoch Ihre eigenen Verzeichnisse und Dateipfade definieren, die in die Sicherung aufgenommen werden sollen, sodass Cya diese ebenfalls aufnimmt. Außerdem ist es möglich, einige Verzeichnisse/Dateien zu definieren, die von der Sicherung übersprungen werden sollen. Sie können beispielsweise /var/logs/ überspringen, wenn Sie keine Dateien protokollieren. Cya verwendet tatsächlich Rsync Backup-Methode unter der Haube. Cya ist jedoch etwas einfacher als Rsync, wenn es darum geht, fortlaufende Backups zu erstellen.

Beim Wiederherstellen Ihres Betriebssystems wird Cya das Betriebssystem mithilfe Ihres zuvor erstellten Sicherungsprofils zurücksetzen. Sie können entweder das gesamte System oder nur bestimmte Verzeichnisse wiederherstellen. Auch ohne komplettes Rollback können Sie über Ihr Terminal oder Ihren Dateimanager problemlos auf die Backup-Dateien zugreifen. Eine weitere bemerkenswerte Funktion ist, dass wir ein benutzerdefiniertes Wiederherstellungsskript generieren können, um das Mounten Ihrer Systempartition(en) zu automatisieren, wenn Sie von einer Live-CD, einem USB- oder einem Netzwerk-Image wiederherstellen. Kurz gesagt, CYA kann Ihnen helfen, Ihr System auf den vorherigen Zustand zurückzusetzen, wenn Sie am Ende mit einem kaputten System enden, das durch Software-Updates, Konfigurationsänderungen und Eindringlinge/Hacks usw. verursacht wurde.

Installieren Sie CYA

Die Installation von CYA ist trivial. Alles, was Sie tun müssen, ist, die Cya-Binärdatei herunterzuladen und in Ihren Systempfad einzufügen.

$ git clone https://github.com/cleverwise/cya.git

Dadurch wird die neueste cya-Version in einem Verzeichnis namens cya in Ihrem aktuellen Arbeitsverzeichnis geklont.

Kopieren Sie als Nächstes die Cya-Binärdatei in Ihren Pfad oder wo immer Sie möchten.

$ sudo cp cya/cya /usr/local/bin/

So einfach ist das. CYA wurde installiert! Lassen Sie uns jetzt fortfahren und Snapshots erstellen.

Snapshots erstellen

Erstellen Sie vor dem Erstellen von Snapshots/Sicherungen ein Wiederherstellungsskript mit Befehl:

$ cya script
☀ Cover Your Ass(ets) v2.2 ☀

ACTION ⯮ Generating Recovery Script

Generating Linux recovery script ... 
Checking sudo permissions...
Complete

IMPORTANT: This script will ONLY mount / and /home. Thus if you are storing data on another mount point open the recovery.sh script and add the additional mount point command where necessary. This is also a best guess and should be tested before an emergency to verify it works as desired.


‣ Disclaimer: CYA offers zero guarantees as improper usage can cause undesired results
‣ Notice: Proper usage can correct unauthorized changes to system from attacks

Der obige Befehl erstellt ein Verzeichnis namens "/home/cya/" und speichern Sie die Datei recovery.sh darin.

$ ls /home/cya/
cya cya.conf LAST_RUN points recovery.sh

Speichern Sie die resultierende recovery.sh Datei auf Ihrem USB-Laufwerk, die wir später beim Wiederherstellen von Sicherungen verwenden werden. Dieses Skript hilft Ihnen, eine Chroot-Umgebung einzurichten und Laufwerke zu mounten, wenn Sie Ihr System zurücksetzen.

Lassen Sie uns jetzt Snapshots erstellen.

Führen Sie zum Erstellen einer fortlaufenden Standardsicherung Folgendes aus:

$ cya save

Der obige Befehl behält drei Sicherungen vor dem Überschreiben.

Beispielausgabe:

☀ Cover Your Ass(ets) v2.2 ☀

ACTION ⯮ Standard Backup

Checking sudo permissions...
[sudo] password for sk: 
We need to create /home/cya/points/1 ... done
Backing up /bin/ ... complete
Backing up /boot/ ... complete
Backing up /etc/ ... complete
.
.
.
Backing up /lib/ ... complete
Backing up /lib64/ ... complete
Backing up /opt/ ... complete
Backing up /root/ ... complete
Backing up /sbin/ ... complete
Backing up /snap/ ... complete
Backing up /usr/ ... complete
Backing up /initrd.img ... complete
Backing up /initrd.img.old ... complete
Backing up /vmlinuz ... complete
Backing up /vmlinuz.old ... complete
Write out date file ... complete
Update rotation file ... complete

‣ Disclaimer: CYA offers zero guarantees as improper usage can cause undesired results
‣ Notice: Proper usage can correct unauthorized changes to system from attacks

Sie können den Inhalt des neu erstellten Schnappschusses unter /home/cya/points/ anzeigen Ort.

$ ls /home/cya/points/1/
bin cya-date initrd.img lib opt sbin usr vmlinuz
boot etc initrd.img.old lib64 root snap var vmlinuz.old

Um eine Sicherung mit einem benutzerdefinierten Namen zu erstellen, der nicht überschrieben wird, führen Sie Folgendes aus:

$ cya keep name BACKUP_NAME

Ersetzen Sie BACKUP_NAME mit Ihrem eigenen Namen.

Um eine Sicherung mit einem benutzerdefinierten Namen zu erstellen, der überschrieben wird, gehen Sie wie folgt vor:

$ cya keep name BACKUP_NAME overwrite

Um eine Sicherung zu erstellen und zu archivieren, führen Sie Folgendes aus:

$ cya keep name BACKUP_NAME archive

Dieser Befehl speichert die Backups in /home/cya/archives Ort.

Standardmäßig speichert CYA seine Konfiguration unter /home/cya/ Verzeichnis und die Snapshots mit einem benutzerdefinierten Namen werden in /home/cya/points/BACKUP_NAME gespeichert Lage. Wir können diese Einstellungen ändern, indem wir die CYA-Konfigurationsdatei bearbeiten, die unter /home/cya/cya.conf gespeichert ist .

Wie ich bereits sagte, CYA sichert standardmäßig keine Benutzerdaten . Es werden nur die wichtigen Systemdateien gesichert. Sie können jedoch Ihre eigenen Verzeichnisse oder Dateien zusammen mit Systemdateien einschließen. Angenommen, Sie möchten das Verzeichnis mit dem Namen /home/sk/Downloads hinzufügen Verzeichnis im Backup, bearbeiten Sie /home/cya/cya.conf Datei:

$ vi /home/cya/cya.conf

Definieren Sie Ihren Verzeichnisdatenpfad, den Sie in die Sicherung aufnehmen möchten, wie unten beschrieben.

MYDATA_mybackup="/home/sk/Downloads/ /mnt/backup/sk/"

Bitte beachten Sie, dass sowohl Quell- als auch Zielverzeichnisse mit einem abschließenden Schrägstrich enden sollten. Gemäß der obigen Konfiguration kopiert CYA den gesamten Inhalt von /home/sk/Downloads/ Verzeichnis und speichern Sie sie unter /mnt/backup/sk/ (vorausgesetzt, Sie haben dieses bereits erstellt) Verzeichnis. Hier meinBackup ist der Profilname. Drücken Sie ESC und geben Sie :wq ein um die Datei zu speichern und zu schließen.

Lassen Sie uns nun den Inhalt des Verzeichnisses /home/sk/Downloads/ sichern. Dazu müssen Sie den Profilnamen (d. h. mybackup in meinem Fall) mit cya mydata eingeben Befehl wie unten:

$ cya mydata mybackup

Ebenso können Sie mehrere Benutzerdaten mit unterschiedlichen Profilnamen einschließen. Alle Profilnamen müssen eindeutig sein.

Verzeichnisse ausschließen

Manchmal möchten Sie vielleicht nicht alle Systemdateien sichern. Möglicherweise möchten Sie einige unwichtige wie Protokolldateien ausschließen. Wenn Sie beispielsweise /var/tmp/ nicht einschließen möchten und /var/logs/ Verzeichnisse, fügen Sie Folgendes in /home/cya/cya.conf hinzu Datei.

EXCLUDE_/var/=”tmp/ logs/”

Ebenso können Sie nacheinander alle Verzeichnisse angeben, die Sie von der Sicherung ausschließen möchten. Wenn Sie fertig sind, speichern und schließen Sie die Datei.

Bestimmte Dateien zum Backup hinzufügen

Anstatt eine Sicherung des gesamten Verzeichnisses zu erstellen, können Sie bestimmte Dateien aus einem Verzeichnis einschließen. Fügen Sie dazu den Pfad Ihrer Dateien nacheinander in /home/cya/cya.conf ein Datei.

BACKUP_FILES="/home/sk/Downloads/ostechnix.txt"

Stellen Sie Ihr System wieder her

Denken Sie daran, dass wir bereits ein Wiederherstellungsskript mit dem Namen recovery.sh erstellen und auf einem USB-Stick gespeichert? Wir werden es jetzt brauchen, um unser kaputtes System wiederherzustellen.

Booten Sie Ihr System mit jedem bootfähigen Live-CD/DVD- oder USB-Laufwerk. Der Entwickler von CYA empfiehlt, eine Live-Boot-Umgebung mit derselben Hauptversion wie Ihre installierte Umgebung zu verwenden! Wenn Sie beispielsweise ein Ubuntu 18.04-System verwenden, verwenden Sie Ubuntu 18.04-Live-Medien.

Sobald Sie sich im Live-System befinden, mounten Sie das USB-Laufwerk, das das Skript recovery.sh enthält. Nachdem Sie das/die Laufwerk(e) gemountet haben, wird die Datei / Ihres Systems und /home wird in /mnt/cya gemountet Verzeichnis. Dies wird durch die recovery.sh ganz einfach und automatisch erledigt Skript für Linux-Benutzer.

Starten Sie dann den Wiederherstellungsprozess mit dem Befehl:

$ sudo /mnt/cya/home/cya/cya restore

Folgen Sie einfach den Anweisungen auf dem Bildschirm. Sobald die Wiederherstellung abgeschlossen ist, entfernen Sie das Live-Medium und unmounten Sie die Laufwerke und starten Sie schließlich Ihr System neu.

Was ist, wenn Sie kein Wiederherstellungsskript haben oder verloren haben? Kein Problem, wir können unser kaputtes System trotzdem wiederherstellen.

Starten Sie das Live-Medium. Erstellen Sie in der Live-Sitzung ein Verzeichnis, um das/die Laufwerk(e) zu mounten.

$ sudo mkdir -p /mnt/cya

Montieren Sie dann Ihr / und /home (falls auf einer anderen Partition) in das Verzeichnis /mnt/cya Verzeichnis.

$ sudo mount /dev/sda1 /mnt/cya
$ sudo mount /dev/sda3 /mnt/cya/home

Ersetzen Sie /dev/sda1 und /dev/sda3 durch Ihre richtigen Partitionen (verwenden Sie fdisk -l Befehl, um Ihre Partitionen zu finden).

Starten Sie schließlich den Wiederherstellungsprozess mit dem Befehl:

$ sudo /mnt/cya/home/cya/cya restore

Unmounten Sie nach Abschluss der Wiederherstellung alle gemounteten Partitionen, entfernen Sie die Installationsmedien und starten Sie Ihr System neu.

In diesem Stadium erhalten Sie möglicherweise ein funktionierendes System. Ich habe einige wichtige Bibliotheken auf dem Ubuntu 18.04 LTS-Server gelöscht. Ich habe es mithilfe des CYA-Dienstprogramms erfolgreich in den Arbeitszustand zurückversetzt.

Empfohlene Lektüre:

  • Systemback – Wiederherstellen des vorherigen Zustands von Ubuntu Desktop und Server
  • Ein Paket in Ubuntu downgraden
  • Ein Paket in Arch Linux downgraden
  • So führen Sie ein Downgrade aller Pakete auf ein bestimmtes Datum in Arch Linux durch
  • So stellen Sie defektes Arch-Linux in den vorherigen Betriebszustand zurück
  • So setzen Sie Ubuntu auf die Werkseinstellungen zurück

CYA-Sicherung planen

Es wird immer empfohlen, crontab zu verwenden, um den CYA-Snapshot-Prozess in regelmäßigen Abständen zu planen. Sie können einen Cron-Job mit root einrichten oder einen Benutzer einrichten, der kein sudo-Passwort eingeben muss.

Der Beispieleintrag unten wird cya jeden Montag um 2:05 Uhr ausführen, wobei die Ausgabe in /dev/null abgelegt wird.

5 2 * * 1 /home/USER/bin/cya save >/dev/null 2>&1

Schlussfolgerung

Im Gegensatz zu Systemback und anderen Dienstprogrammen zur Systemwiederherstellung ist Cya kein verteilungsspezifisches Wiederherstellungsprogramm. Es unterstützt viele Linux-Betriebssysteme, die BASH verwenden. Es ist eine der Must-Have-Anwendungen in Ihrem Arsenal. Gleich installieren und Snapshots erstellen. Sie werden es nicht bereuen, wenn Sie versehentlich Ihr Linux-System zum Absturz gebracht haben.


Linux
  1. So sichern und wiederherstellen Sie Anwendungseinstellungen mit Mackup auf einem neu installierten Linux-System

  2. Schulung und Zertifizierung für Linux-Systemadministratoren

  3. 8 Tipps für eine zuverlässige Linux-Systemautomatisierung

  4. Hitman The Complete First Season für Linux und Mac jetzt verfügbar

  5. Ubuntu – Einfache System- und Dateisicherung/-wiederherstellung für Linux?

Beheben Sie, dass Grub für Windows- und Linux-Dual-Boot-Systeme nicht angezeigt wird

Unix- und Linux-Geschichte

Fail2ban unter Linux:Ein Internetsicherheits- und Utility-Tool für die Serververwaltung

Cron-Jobs für Linux einrichten und die 10 besten Online-Tools für Cron-Jobs

Wie man Cron-Jobs für ein Linux-System über PHP ausführt und auflistet

Die 15 besten ökonometrischen und statistischen Software für Linux-Systeme