安装git-all时出现“无法连接到Upstart”错误


21

我正在使用15.04。

因此,我正在使用git并安装了标准版本。我设置了ssh密钥,并且能够将我的存储库之一克隆到正确的文件夹中。一切都很好,然后我决定安装更多软件包是一个好主意。我跑了sudo apt-get install git-all。我正在查看现在必须处理新贵的错误代码。

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)

这就是我什至更新/升级系统时发生的情况。此时,我要做的就是能够安装软件并更新我当前的软件。有什么方法可以潜在地扭转这个问题,或者至少可以纠正它?

编辑:幸运的是,此问题仅在发生后的一两天内得到解决。公认的答案非常有效,并解决了我的问题

Answers:


13

您需要强行删除runit。跑步sudo dpkg -r runit应该可以。您可能需要使用其中一个--force-*选项。


4
git-daemon-run取决于,runit因此我将其删除,然后删除了runit。现在测试以查看git是否仍然有效。但这确实解决了我当前的问题!
Electronicks

git-daemon-run可能是用于运行GIt服务器(例如git://与计算机链接以进行远程访问)。我尚未runit安装,可以使用git。
saiarcot895 2015年

我必须尽sudo apt-get remove --purge git-daemon-run一切努力阻止所有“未满足的依赖关系”错误。
JasoonS

22

发生是因为这个错误https://bugs.launchpad.net/ubuntu/+source/runit/+bug/1448164

您需要删除runitgit-daemon-run。那应该解决问题。

sudo apt-get purge runit git-daemon-run

别忘了访问错误报告并单击“ 是,此错误会影响我”

git-all 没有错误

似乎可以git-all通过守护程序支持而不会出现此错误。git-all推荐git-daemon-rungit-daemon-sysvinit打包。aptgit-daemon-run选为首选。但是,如果您明确提到想要的软件包(即git-daemon-sysvinit),apt则不要尝试安装git-daemon-run

您需要做的就是

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

希望能有所帮助。


您说得对,谢谢您的错误链接。
Billal Begueradj

2
我从该答案中获得了错误链接,并从问题下方的Zanna评论中获得了指向该答案的链接。多亏了他们。@BillalBEGUERADJ
Anwar


2

尝试卸载git-all,安装git-daemon-sysvinit,然后git-all重新安装。如果你看一下在新立得软件包的属性,你会发现,git-all取决于两种 git-daemon-run git-daemon-sysvinitgit-daemon-run是由于某种原因默认安装的程序,即使它在Ubuntu 15.04及更高版本中已损坏。(请参阅https://bugs.launchpad.net/ubuntu/+source/runit/+bug/1448164)但是,如果您git-daemon-sysvinit首先手动安装,那么git-all实际可用的软件包将满足的依赖关系。然后git-all,您可以安装,一切都会正常。


1
我应该澄清一下,我当时使用的是工作站,而不是当时尝试配置git服务器。但是对于碰到这个问题的人来说,这是个好信息^
Electronicks

1

您可能正在虚拟主机下使用Ubuntu。如果是这样,您将需要使用以下步骤修改initctl以返回true。首先,您需要告诉dpkg,您将使用以下方法更改upstart软件包的安装:

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

然后,您需要创建一个虚拟initctl作为指向true的链接:

ln -s /bin/true /sbin/initctl

我没有使用虚拟主机,但还是谢谢您
Electronicks
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.