Ho un file project.init
nella directory debian (insieme a rules
, control
, ecc), e ho dh_installinit
nel mio file rules
(nella regola binary-arch
).package.init non è sempre installato
Al termine di dpkg-buildpackage
, lo script di inizializzazione è stato copiato su debian/project/etc/init.d/project
e sono stati creati vari script di pre/post.
Tuttavia, quando installo il .deb (con dpkg -i
), lo script init.d non viene installato, quindi è necessario che manchi una parte di questo processo. Lo "New Maintainer's Guide" è piuttosto scarso sui dettagli di init.d (in pratica dice di non usarli, perché sono troppo avanzati).
L'output dettagliato del comando dh_installinit è:
dh_installinit
install -p -m755 debian/project.init debian/project/etc/init.d/project
echo "# Automatically added by dh_installinit">> debian/project.postinst.debhelper
sed "s/#SCRIPT#/project/;s/#INITPARMS#/defaults/;s/#ERROR_HANDLER#/exit \$?/" /usr/share/debhelper/autoscripts/postinst-init >> debian/project.postinst.debhelper
echo '# End automatically added section' >> debian/project.postinst.debhelper
echo "# Automatically added by dh_installinit">> debian/project.prerm.debhelper
sed "s/#SCRIPT#/project/;s/#INITPARMS#/defaults/;s/#ERROR_HANDLER#/exit \$?/" /usr/share/debhelper/autoscripts/prerm-init >> debian/project.prerm.debhelper
echo '# End automatically added section' >> debian/project.prerm.debhelper
echo "# Automatically added by dh_installinit">> debian/project.postrm.debhelper
sed "s/#SCRIPT#/project/;s/#INITPARMS#/defaults/;s/#ERROR_HANDLER#/exit \$?/" /usr/share/debhelper/autoscripts/postrm-init >> debian/project.postrm.debhelper
echo '# End automatically added section' >> debian/project.postrm.debhelper
Che cosa esattamente cosa si intende per "non avere installato"? Non esiste nel deb, non è installato in /etc/init.d o non vengono creati collegamenti start/stop? –
Non so come testare se si trova nel .deb o meno. Non appare in /etc/init.d (e quindi ovviamente i collegamenti start/stop non vengono creati). –
Avevo un problema molto simile, in cui uno script upstart era incluso nel pacchetto (lo si poteva vedere anche se elencato con dpkg -c), ma non si installava. Alla fine ho provato a cambiare la versione compat (usando 7 e l'ho cambiata in 8) e poi l'ho installata bene. –