Fornire un file di configurazione personalizzato per un altro pacchetto


8

Usiamo Ubuntu al lavoro e dovrò apportare le stesse modifiche di configurazione a molti sistemi, quindi li sto confezionando. Una delle modifiche alla configurazione che devo fare è impostare lightdm su autologin. Per me per impacchettare questa modifica sembra che dovrò ostruire il /etc/lightdm/lightdm.conf esistente e sostituirlo con il mio lightdm.conf personalizzato. Questa sembra una cattiva idea.

Come posso farlo in un modo che non causerà rotture ed è in linea con il modo in cui il resto della comunità sta lavorando?

Risposte:


9

Questo viene spesso creato creando un pacchetto che utilizza dpkg-divertnei suoi script di manutenzione per spostare il vecchio file di configurazione:

  • Nel tuo preinst, allontana il file.

    dpkg-divert --add --package $your_package_name --rename \
        --divert /path/to/file.disabled \
        /path/to/file
    
  • Nel tuo postrm, devia indietro il file.

    dpkg-divert --remove --package $your_package_name --rename \
        /path/to/file
    

Vedi: http://www.debian.org/doc/debian-policy/ap-pkg-diversions.html

Una soluzione che aiuta ad astrarre dpkg-divertè il config-package-devpacchetto creato e gestito dal progetto Debathena del MIT. Hanno un tutorial completo .


Dagli esempi sulla pagina collegata sembra che l' --divertopzione dovrebbe essere fornita sia nei file preinst che postrm.
nmgeek,

Sembra che ci sia una documentazione più recente in wiki.debian.org/ConfigPackages , che raccomanda di installare il file su / etc / site / e di usare i collegamenti simbolici piuttosto che installarli direttamente in / etc /. Raccomanda inoltre di utilizzare postinst anziché preinst e prerm anziché postrm.
Ulf Adams,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.