Pacnew- und Pacsave-Dateien

Aus wiki.archlinux.de

Dieser Artikel oder Artikelabschnitt ist noch nicht vollständig!


Einleitung

Während der Installation oder dem Entfernen von Paketen wird Pacman eventuell über Dateien informieren (üblicherweise Konfigurationsdateien in /etc), die mit der Endung .pacnew installiert werden, oder mit der Endung .pacsave gesichert werden.

Eine .pacnew-Datei kann während einer System-Aktualisierung (pacman -Syu, pacman -Su, oder pacman -U) erstellt werden, um zu verhindern, dass eine bereits existierende, vom Nutzer veränderte Datei überschrieben wird. Wenn dies geschieht, gibt Pacman eine Nachricht ähnlich der folgenden aus:

Warnung: /etc/pam.d/usermod installiert als /etc/pam.d/usermod.pacnew

Eine .pacsave-Datei kann während des Entfernen eines Paketes (nach pacman -R), oder während einer System-Aktualisierung angelegt werden (wenn das ältere Paket zunächst entfernt werden muss). Wenn Pacman aus seiner Datenbank erfährt, dass eine bestimmte Datei einem Paket gehört, dass aktualisiert werden soll, wird eine .pacsave-Datei angelegt. Wenn dies geschieht, gibt Pacman eine Nachricht ähnlich der folgenden aus:

Warnung: /etc/pam.d/usermod gespeichert als /etc/pam.d/usermod.pacsave

Diese Dateien erfordern einen manuellen Eingriff des Nutzers und sollten idealerweise nach jeder Aktualisierung oder Lösch-Aktion bearbeitet werden. Wenn sie unbehandelt bleiben, kann dies zu Konfigurationsfehlern führen, oder die Software funktioniert vielleicht überhaupt nicht mehr.

Paket-Sicherungsdateien

Das PKGBUILD eines Paketes legt fest, welche Dateien beibehalten oder gesichert werden sollen, wenn das Paket aktualisiert oder entfernt wird. So enthält z.B. das PKGBUILD für pulseaudio die folgende Zeile:

 backup=('etc/pulse/client.conf' 'etc/pulse/daemon.conf' 'etc/pulse/default.pa')

Typen von *.pac*-Dateien

*.pacnew

Für jede Sicherungsdatei innerhalb eines zu aktualisierenden Paketes vergleicht Pacman drei MD5-Summen, die aus dem Inhalt der Datei erstellt werden: Eine Summe für die Version, die ursprünglich von dem Paket installiert wurde, eine für die Version, die sich derzeit innerhalb des Dateisystems befindet, und eine weitere für die zu installierende Version. Wenn die derzeit bestehende Version verändert wurde und somit von der ursprünglich installierten abweicht, kann Pacman diese Änderungen nicht in die zu installierende Version übernehmen. Statt die veränderte Version zu überschreiben, legt Pacman nun eine neue Fassung mit der Endung .pacnew an.