Eseguo sudo apt-get install git-all
in Ubuntu 16.04 e alla fine vedi quanto segue
Setting up runit (2.1.2-3ubuntu1) ...
start: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: Connection refused
dpkg: error processing package runit (--configure):
subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of git-daemon-run:
git-daemon-run depends on runit; however:
Package runit is not configured yet.
dpkg: error processing package git-daemon-run (--configure):
dependency problems - leaving unconfigured
No apport report written because the error message indicates its a followup error from a previous failure.
Errors were encountered while processing:
runit
git-daemon-run
E: Sub-process /usr/bin/dpkg returned an error code (1)
Ricevo l'errore anche dopo aver riavviato il mio sistema. Blocca davvero tutto il mio sistema.
Eseguo killall update-notifier
. Eseguo sudo apt-get install git-all
ma
ricevo lo stesso messaggio di errore. Eseguo pgrep -a apt
ma non ottieni nulla come output. Eseguo pgrep -a update
ma non ottieni nulla come output.
Qui una segnalazione di bug sul caso.
- In Grub, scegli Opzioni avanzate> Ubuntu (Upstart) kernel Linux 4.22 . Fare lo stesso solo nel terminale senza systemd provoca lo stesso errore.
Perché questo errore è qui con runit?
Risposta accettata:
Gerrit Pape, che mantiene sia xyr runit che i pacchetti daemontools di Bernstein per Debian, è uno dei pochi sviluppatori che ha preso davvero a cuore l'idea della "neutralità del sistema init" (che era molto sbandierata dopo il sistema Debian hoo-hah) e si è sforzato di supportare l'esecuzione di questi sotto van Smoorenburg init
, upstart e systemd.
Lo script del manutentore post-installazione per runit lo troverai decompresso sul tuo sistema dal pacchetto da qualche parte come /var/lib/dpkg/info/runit.postinst
. Come puoi vedere, prova a rilevare la presenza di upstart e ad avviare runsvdir
upstart se è presente upstart. Fa lo stesso con systemd e runit.service
.
Sfortunatamente, su Ubuntu 14 e versioni successive entrambi systemd e upstart sono installati. E quindi lo script di manutenzione post-installazione per il pacchetto sta cercando di eseguire il lavoro upstart con start
di upstart comando. Ovviamente, upstart non è (per impostazione predefinita) il gestore dei servizi a livello di sistema in Ubuntu 15 e versioni successive, e start
di upstart il comando non funziona.
Quella che segue è un'idea approssimativa di come correggere lo script per ovviare a questo problema:
… if test -r /usr/share/debconf/confmodule; then . /usr/share/debconf/confmodule db_purge fi if test -d /run/systemd/system ; then systemctl start runit.service elif test -x /sbin/start ; then /sbin/start runsvdir fi
Questo non è l'ideale, ma è un inizio. runit.prerm
e runit.postrm
richiedono anche alcuni aggiustamenti.
Ulteriori letture
- Jonathan de Boyne Pollard (2015).
/etc/inittab
appartiene al passato. . Risposte frequenti. - Jonathan de Boyne Pollard (04-11-2014). esegui . mailing list debian-vote.
- Nikolay Hristov (21-10-2014). runit:impossibile installare runit dopo una nuova installazione di jessie beta2 . Bug Debian #766187.
- Andreas Beckmann (03-11-2014). daemontools-run:installazione non riuscita senza /etc/inittab . Bug Debian #767933.
runit.postinst
. runit sorgente . Launchpad di Ubuntu.- https://unix.stackexchange.com/a/196252/5132