[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Konfigurationsfiles mit dpkg wiederherstellen



Andreas Pakulat <apaku@gmx.de> wrote:

> On 16.11.05 17:36:56, Frank Küster wrote:
>> Ich kann über den alten Apachen nichts sagen - aber wenn ein Programm
>> beim upgrade (und das reinstallieren der gleichen Version sollte genauso
>> behandelt werden) Konfigurationsdateien verändert, dann hat es einen
>> schweren Bug. 
[...]
>> In der Praxis kann das bei upgrades ein bisschen anders sein: wenn
>> z.B. die neue Version ohne eine bestimmte Änderung nicht laufen würde,
>> wird der Upgrade diese vielleicht erzwingen müssen. 
>
> Ich denke nicht, dann gehoert ein Eintrag in die NEWS.Debian und
> ausserdem ein dicker Kommentar vor die Aenderung, so dass man auch beim
> Konfig-Diff dies direkt sieht.

Wenn das Paket aber ohne die Änderung nicht installierbar ist (weil
sonst eine Initialisierung im postinst fehlschlägt), halte ich einen
Eintrag in NEWS.Debian für suboptimal.  Wir haben in den tetex-Paketen
diesen Fall, und für den Upgrade woody->sarge haben wir eine Änderung,
die sicher keine lokalen Konfigurationen betrifft, mit brute force
eingeführt (natürlich nicht in einem conffile, sondern einer
maintainer-script-managed Konfigurationsdatei).

Für den Upgrade sarge->etch stellt sich das Problem wieder, diesmal will
ich es anders machen:  Ich verändere keine Konfigurationsdateien,
sondern teste nur vor dem Initialisieren, ob die Konfiguration
funktionieren *kann*.  Wenn nicht, dann scheitert das postinst mit einer
verständlichen Fehlermeldung (anstatt der kryptischen teTex-internen
Meldung wenn man die Initialisierung einfach versucht).

>> > Das wuerde zutreffen, wenn ein derartiger Eintrag von apt an dpkg
>> > uebergeben wuerde (/etc/apt.conf[.d])?
>> >
>> > man apt-get sagt zu --reinstall nur
>> >
>> > --reinstall
>> >     Re-Install packages that are already installed and at the newest
>> >     version. Configuration Item: APT::Get::ReInstall.
>> >
>> > --reinstall wuerde also ein fehlendes Teil erneut installieren, da
>> > sich's nicht mehr am System befindet. So zumindest denk' ich mir das.
>> 
>> Das stimmt schon, aber es betrifft nur normale Dateien - gelöschte
>> Konfigurationsdateien dürfen nicht wiederhergestellt werden, es sei denn
>> eben mit der dpkg-Option --force-confmiss.
>
> Das setzt vorraus das der Maintainer auch alle Konfigurationsdateien als
> solche markiert hat.

Nein, wenn er sie mit Maintainer-Skripten behandelt, muss er sich eben
drum kümmern dass das Verhalten trotzdem Policy-konform ist.

Gruß, Frank
-- 
Frank Küster
Inst. f. Biochemie der Univ. Zürich
Debian Developer



Reply to: