Erreur «Impossible de se connecter à Upstart» lors de l'installation de git-all

21

J'utilise 15.04.

Je travaille donc avec git et j'ai installé la version standard. J'ai configuré les clés ssh et j'ai pu cloner l'un de mes référentiels dans le bon dossier. Tout fonctionnait très bien et j'ai alors décidé que c'était une bonne idée d'installer plus de paquets. J'ai couru sudo apt-get install git-all. Je regarde les codes d'erreur qui doivent maintenant faire face à l'arrivée.

start: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: Connection refused
No apport report written because the error message indicates its a followup error from a previous failure.
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
Errors were encountered while processing:
 runit
 git-daemon-run
E: Sub-process /usr/bin/dpkg returned an error code (1)

C'est ce qui se produit lorsque je mets même à jour / mets à niveau mon système. À ce stade, tout ce que je cherche à faire est de pouvoir installer des logiciels et mettre à jour mes logiciels actuels. Existe-t-il un moyen de potentiellement inverser ce problème ou au moins de le corriger?

Edit: Heureusement, ce problème n'a été résolu qu'un jour ou deux après son apparition. La réponse acceptée a parfaitement fonctionné et a pris soin de mon problème

Electronicks
la source

Réponses:

13

Vous devrez supprimer de force runit. La course sudo dpkg -r runitdevrait fonctionner. Vous devrez peut-être utiliser l'une des --force-*options.

saiarcot895
la source
4
git-daemon-rundépendait runitdonc je l'ai retiré, puis retiré runit. Maintenant test pour voir si git fonctionne toujours. Cela a cependant résolu mon problème actuel!
Electronicks
git-daemon-runest probablement pour exécuter un serveur GIt (comme pour avoir des git://liens vers votre ordinateur pour un accès à distance). Je n'ai pas runitinstallé et je peux utiliser git.
saiarcot895
J'ai dû faire un sudo apt-get remove --purge git-daemon-runaprès tout cela pour arrêter toutes les erreurs de «dépendance non satisfaite».
JasoonS
22

Cela se produit à cause de ce bogue https://bugs.launchpad.net/ubuntu/+source/runit/+bug/1448164

Vous devez supprimer runitet git-daemon-run. Cela devrait résoudre le problème.

sudo apt-get purge runit git-daemon-run

N'oubliez pas de visiter le rapport de bug et de cliquer sur Oui, ce bug me concerne .

git-all sans erreur

Il semble que vous puissiez avoir git-allavec le support du démon sans échouer sur cette erreur. git-allrecommande soit git-daemon-runou git-daemon-sysvinitpackage. aptchoisissait git-daemon-runcomme premier choix. Mais si vous mentionnez explicitement le paquet que vous voulez (ie git-daemon-sysvinit), aptn'essayez pas d'installer git-daemon-run.

Tout ce que vous devez faire c'est

sudo apt-get install git-all git-daemon-sysvinit

J'espère que ça t'as aidé.

Anwar
la source
Vous avez raison, merci pour le lien de bug .
Billal Begueradj
2
J'ai obtenu le lien de bogue de cette réponse et le lien vers cette réponse du commentaire de Zanna sous la question. Merci à eux. @BillalBEGUERADJ
Anwar
5

Essayer:

sudo apt update 
sudo apt --purge remove git 
sudo apt install git

au lieu.

Scott Deagan
la source
2

Essayez de désinstaller git-all, d'installer git-daemon-sysvinit, puis de réinstaller git-all. Si vous regardez les propriétés du package dans Synaptic, vous constaterez que git-alldépend soit git-daemon-run ou git-daemon-sysvinit . git-daemon-runest celui qui est installé par défaut pour une raison quelconque, même s'il est cassé dans Ubuntu 15.04 et plus. (Voir https://bugs.launchpad.net/ubuntu/+source/runit/+bug/1448164 ) Mais si vous installez d' git-daemon-sysvinitabord manuellement, git-allla dépendance sera satisfaite par un package qui fonctionne réellement. Vous pouvez ensuite installer git-all, et tout devrait bien se passer.

Stephen G Tuggy
la source
1
J'aurais dû préciser que j'utilisais un poste de travail et que je n'essayais pas de configurer un serveur git à l'époque. Mais pour tous ceux qui rencontrent cela, c'est une bonne info ^
Electronicks
1

Vous utilisez probablement Ubuntu sous un hôte virtuel. Si tel est le cas, vous devrez modifier initctl pour retourner true en utilisant les étapes suivantes. Tout d'abord, vous devez indiquer à dpkg que vous allez modifier l'installation du package upstart en utilisant:

sudo dpkg-divert --local --rename --add /sbin/initctl

Ensuite, vous devez créer un initctl factice comme lien vers true:

ln -s /bin/true /sbin/initctl
Rohan Khude
la source
Je n'utilisais pas d'hôte virtuel mais merci quand même
Electronicks