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.nixAls Ausgabe erhältst du im Erfolgsfall eine Liste von Pfaden:
/nix/store/a1b2c3d4e5f6...-source/configuration.nix
/nix/store/f7g8h9i0j1k2...-source/configuration.nixErscheint 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 metadataSchritt 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.nixErsetze /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.nixSchritt 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.nixWenn 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.
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


