Werden geänderte Dateien beim Upgrade überschrieben?

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
FAjka
Beiträge: 30
Registriert: 13.07.2015 17:00:57

Werden geänderte Dateien beim Upgrade überschrieben?

Beitrag von FAjka » 15.10.2015 09:32:14

Moin,

ich habe Icinga2 über das debmon-Repository installiert und gleich beim ersten Mausklick einen Bug in einem der Scripte gefunden, dessen Beseitigung vermutlich demnächst in das Repository eingepflegt wird.

Meine Frage: Kann ich den Patch bereits jetzt händisch in meine lokale Installation einbauen? Oder konterkariere ich damit eine zukünftige automatische Aktualisierung der Datei über die Paketverwaltung?

Gruß,
J.

Benutzeravatar
hikaru
Moderator
Beiträge: 13588
Registriert: 09.04.2008 12:48:59

Re: Werden geänderte Dateien beim Upgrade überschrieben?

Beitrag von hikaru » 15.10.2015 10:11:53

Sofern das Script Teil des Pakets ist (und nicht etwa vom User oder automatisch beim ersten Programmstart erzeugt wird) wird es beim nächsten Paketupdate überschrieben werden.

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Werden geänderte Dateien beim Upgrade überschrieben?

Beitrag von smutbert » 15.10.2015 11:11:54

Normale Dateien werden bei einem Update überschrieben.

Es gibt aber auch Dateien die als Konfigurationsdateien ausgewiesen sind und bei denen überprüft dpkg ob die Konfigurationsdatei auf dem System geändert wurde und ob sich die im Paket enthaltene Konfigurationsdatei gegenüber der vorher installierten Version geändert hat.
Hat sich nichts geändert, muss nichts gemacht werden. Wurde nur die Konfigurationsdatei auf dem System verändert oder hat sich nur die im Paket enthaltene Konfigurationsdatei geändert, dann wird diese geänderte Konfigurationsdatei behalten bzw. übernommen.
Wurde dagegen die Konfigurationsdatei auf dem System geändert und es gibt zusätzlich eine neue Version der Konfigurationsdatei im Paket, dann fragt dpkg nach was geschehen soll.

Eine Liste der Konfigurationsdateien eines Pakets steht in /var/lib/dpkg/info/<Paketname>.conffiles und sie werden auch mit

Code: Alles auswählen

$ dpkg --status <Paketname>
ausgegeben.

Antworten