NixOS: Gelöschte configuration.nix aus früheren Generationen retten

NixOS: Gelöschte configuration.nix aus früheren Generationen retten

In diesem Leitfaden erfährst du, wie du eine versehentlich gelöschte configuration.nix wiederfinden kannst, ohne ein vollständiges Systembackup einzuspielen. Die Anleitung richtet sich an Nutzer mit NixOS-Erfahrung.

Voraussetzungen

  • Ein lauffähiges NixOS-System.
  • Root-Rechte über den Befehl sudo.
  • Ein geöffnetes Terminal.

Schritt 1: Konfigurationsdateien im Store suchen

Mithilfe einer Suche nach entsprechenden Verzeichnissen kann nach verbliebenen Konfigurationsdateien gesucht werden:

ls -d /nix/store/*-source/configuration.nix

Als Ausgabe erhältst du im Erfolgsfall eine Liste von Pfaden:

/nix/store/a1b2c3d4e5f6...-source/configuration.nix
/nix/store/f7g8h9i0j1k2...-source/configuration.nix

Erscheint mindestens eine Zeile, ist die Konfiguration noch auf dem Datenträger vorhanden.

Schritt 2: Flake-Metadaten prüfen (Alternative)

Alternativ lässt sich bei der Nutzung von Flakes der Metadaten-Befehl verwenden, um Konfigurationspfade aufzuspüren:

nix flake metadata

Schritt 3: Konfiguration nach /etc/nixos zurückkopieren

Nun kopieren wir die gefundene Datei zurück nach /etc/nixos/configuration.nix.

Warnung: Achte darauf, den Zielpfad exakt anzugeben, um keine anderen Systemdateien in /etc zu überschreiben.
sudo cp /nix/store/QUELL_PFAD-source/configuration.nix /etc/nixos/configuration.nix

Ersetze /nix/store/QUELL_PFAD-source/configuration.nix mit dem zuvor ermittelten Pfad.

Schritt 4: Schreibrechte für die wiederhergestellte Datei setzen

Nach dem Kopieren müssen die Berechtigungen angepasst werden, damit du die Konfiguration bearbeiten kannst.

sudo chmod 644 /etc/nixos/configuration.nix

Schritt 5: Vorsorge für die Zukunft

Für einfache Fälle existiert die Option system.copySystemConfiguration, um die Konfiguration vorzuhalten. Als empfohlene Praxis gilt zudem die Versionsverwaltung mit Git.

Funktionsprüfung

Prüfe mit folgendem Befehl, ob die Datei existiert und Text enthält:

head -n 5 /etc/nixos/configuration.nix

Wenn etwas schiefgeht

ls: Zugriff auf ‚/nix/store/*-source/configuration.nix‘ nicht möglich: Datei oder Verzeichnis nicht gefunden
Ursache: Es sind keine entsprechenden Store-Pfade vorhanden.
Lösung: Falls du ein Backup besitzt, spiele die Datei daraus ein.

Siehe auch  OpnSense mit Dirvish sichern - einfach erklärt

Permission denied beim Bearbeiten der Datei
Ursache: Fehlende Schreibrechte nach dem Kopiervorgang.
Lösung: Führe sudo chmod 644 /etc/nixos/configuration.nix aus.

Rückgängig machen

Möchtest du den Kopiervorgang rückgängig machen, kannst du die wiederhergestellte Datei unter /etc/nixos/configuration.nix wieder löschen.

Fazit

Die Konfiguration ist wiederhergestellt. Als Best Practice empfiehlt sich ergänzend die Versionsverwaltung der Konfiguration mit Git.

Quellen: Forum: NixOS – Forum, discourse.nixos.org, de.wikipedia.org, gnulinux.ch

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen