nep*_*eph 7 upgrade apt dpkg hard-drive recovery-mode
严重搞砸了从 14.10->15.04->15.10 的升级。我一直在恢复模式下乱搞,并且确信我设法删除并重新安装了所有损坏的包/依赖项,但现在我遇到了这个奇怪的问题。Aptitude 不会运行,它说我需要用 dpkg 做一些事情。dpkg 会做一些事情,但总是挂断电话
Error getting authority: Error initializing authority: Could not connect: No such file or directory (g-io-error-quark, 1)
Error getting authority: Error initializing authority: Could not connect: No such file or directory (g-io-error-quark, 1)
[ OK ] Started Braille Device Support.
Run Code Online (Sandbox Code Playgroud)
这个盲文悬挂一直困扰着我一段时间,但我终于陷入了僵局。带有错误的第一部分似乎是一个与硬盘驱动器有关的模糊错误,经过一些日志挖掘后,我似乎可以指向此 HD 上的 Windows 分区,这很好。这似乎是一个死胡同,我在网上找不到任何其他内容。
我真的不想备份、重新格式化和重新安装。有人有线索吗?
小智 9
我刚刚遇到了类似的情况,升级失败,随后在恢复模式下搞砸了,其中某个包的子集(即 apport)挂起dpkg --configure -a相同的Started Braille Device Support.消息。让我度过难关的黑客是:
apt-get命令,请按Ctrl+C停止。如果这不起作用(就像对我一样),请按Ctrl+ Z,然后运行kill -9 %1几次以将其永久关闭。然后运行rm /var/lib/dpkg/lock,因为你谋杀了通常这样做的进程。screen(为了得到多个提示)。dpkg --configure -a并等待进程挂起。killall systemctldpkg --configure -a命令。dpkg已移至下一个包并以相同方式挂起,或已完成。dpkg再次挂起,请转到步骤 5。dpkg --configure -a最终完成,则继续围绕碴在恢复模式下,可能会运行apt-get upgrade,直到系统似乎在rebootable状态。至于为什么这样做(至少对我而言),我的调试过程如下:
apt-get upgrade挂了。运行Ctrl+Z和kill -9 %1上面的东西以返回提示。dpkg --configure -a,并观察它挂起并显示与 相同的Started Braille Device Support.消息apt-get upgrade。但是,这次Ctrl+C可以返回提示。brltty.apt-get remove brltty,也许它会让问题消失。dpkg --configure -a并注意到它仍然挂起,但这次,没有关于Started Braille Device Support. 好的。strace dpkg --configure -a,并观察该进程卡在wait4(...)对子进程的调用上。/var/lib/dpkg/info/apport.postinst(或类似的东西,IIRC)。less上面的文件,并看到它正在尝试重新启动引导服务。假设因为我们处于恢复模式并且 init 系统还没有运行完成,那会很尴尬。pstree,看到dpkg --reconfigure -a确实 fork 到一个bash东西,然后 fork 到perl,最后systemctl,它确实重新启动了引导服务,可能会感到困惑。postinst脚本中没有set -e,所以也许我们可以终止其中的挂起命令,这样 shell 脚本完成并dpkg继续。killall systemctl,切换回来,并看到dpkg确实继续前进。伟大的。不过,它再次卡在同一个地方,在不同的包装上。killall systemctl再次运行直到dpkg退出。apt-get dist-upgrade再次运行,看到它说一切都是最新的。奇迹般地,系统恢复了,到目前为止没有任何问题。
所以,这不是完全减少(为什么 systemctl 在恢复模式下挂起?),也不太可能普遍适用,但是这个 hack 和发现它的过程可能会帮助像我一样通过网络搜索到达此页面的人。
| 归档时间: |
|
| 查看次数: |
14281 次 |
| 最近记录: |