回家后,我刚刚重新组装了我的 Ubuntu 12.04 LTS 台式电脑,并将其连接到我父母的无线互联网连接。连接似乎很不稳定(一半时间都断开连接,可能是我安装的无线网卡存在持续问题),并且由于不断中断,它很难下载更新。最终,它成功下载了更新的软件包并开始安装。我起身让它继续工作。
当我回来时,我发现它仍然无法保持与无线网络的连接(这并不奇怪),但随后我注意到更新管理器似乎已停止安装。我打开“详细信息”窗格查看它最后在做什么:
我的猜测是,安装脚本flashplugin-installer
无法完成下载,直到我稳定了互联网连接。我通过以太网将我的 Ubuntu 笔记本电脑连接到我的台式机,并使用本指南,当我现在从我的桌面输入这段文字时,您可以看到连接问题已成功解决。
但是,即使建立了稳定的连接,更新管理器似乎也“卡”在当前位置,无法继续前进。它并没有完全冻结,但除了打开/关闭“详细信息”窗格外,我无法做任何事情,因为“取消”按钮是灰色的。
我知道如果在安装过程中停止更新,可能会导致大问题,但我不知道该如何处理这种情况。我确信如果我能找到重新启动更新管理器的方法,它应该可以正常完成,但问题是应该如何处理。我如何才能安全地完成更新安装?
答案1
理想情况下,您应该跳过配置flashplugin-installer
,并在连接稳定时重新配置。
您可以终止下载进程并继续进行而不配置包,大多数情况下是wget
,或者有时是curl
,但在这里似乎是通过下载debconf
。
要中止交易,你可以 kill dpkg
,
sudo killall dpkg
然后取下锁,
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock
然后当你有稳定的连接时,执行,
sudo apt-get -f install
sudo dpkg --configure -a
答案2
这是我所做的。
首先我找到了卡住的进程(在我的例子中是编号 19123):
> pstree -p
├─gksu(7266)─┬─precise(9756)
│ ├─precise(9757)─┬dpkg(24158)─update-notifier(19121)─package-data-do(19123)
│ │ └{precise}(9759)
然后我帮忙提交了错误报告: https://bugs.launchpad.net/ubuntu/+source/flashplugin-nonfree/+bug/1243090。通过运行“sudo gdb”,然后运行“attach 19123”和“bt”来创建回溯。回溯可帮助志愿者确定哪里出了问题。
最后我使用“sudo kill 19123”并收到错误消息“无法安装‘update-notifier-common’”“子进程安装的安装后脚本返回错误退出状态 143”。
其余安装工作顺利完成。
答案3
我建议从 Adobe 网站手动更新 Flash。您可以取消选中 Flash 更新选项,然后尝试再次更新。
您可以通过执行以下操作来重新开始更新:
打开终端并运行sudo apt-get update && sudo apt-get upgrade
。它将下载必要的软件包并继续更新。
sudo apt-get -f install
如果有任何损坏的包装就应该修复。
答案4
我在升级过程中也遇到过类似的冻结。在我的情况下,冻结的是 dropbox-nautilus,而不是 flash,但两种情况下的解决方案可能类似。在终端中,我执行了 ps -a 来找出正在运行的进程,发现 dropbox-nautilus 在列表中。它的进程 ID 是 325,所以我执行了 sudo kill 325。这杀死了 dropbox-nautilus 进程,然后升级恢复。弹出错误消息,指出 dropbox-nautilus 配置不正确,升级后可能无法使用,但我可以稍后再担心。至少现在升级正在进行中。