昨天我照常
apt-get update
apt-get upgrade
一切都很顺利,直到它撞上
Setting up grub-pc (2.02-2ubuntu8.12) ...
导致它没有响应。我最终终止了该进程,并尝试使用
dpkg --configure -a
但同样的事情发生了。如果我没有记错的话,以前的升级grub-pc
会在终端上弹出一个基于文本的 GUI,让你在继续该过程之前选择一些参数。我怀疑它挂起的原因是它在等我选择一些东西,但我没有办法这样做,因为菜单从来没有出现过。有人知道是什么原因造成的吗?我现在害怕重启我的电脑。我的电脑正在运行Ubuntu 18.04.2 LTS
。
答案1
不幸的是,我没有找出问题的原因,但我确实设法有效地解决了问题。如果您处于apt
卡住的阶段,我发现终止该进程的唯一方法是终止终端会话。这会留下我手动删除的陈旧锁定文件。我几乎可以肯定有更聪明的方法来解决这个问题,但我尝试的其他方法都没有用。您可以试试运气,dpkg --configure -a
但就我而言,我必须终止该进程,因为它以同样的方式挂起apt
。以防万一,我运行ps -aux | grep dpkg
并终止了每个相关进程。
无奈之下,我冒险重启了电脑,但电脑也卡在了最后一步,我点击了esc
重启启动画面才发现问题。最后我按住电源按钮进行硬重置。不过电脑启动正常,dpkg --configure -a
重启后重新运行也正常,让我完成了配置grub-pc
。
从那时起,我就一直运行apt-get upgrade
。apt-get dist-upgrade
重启机器后一切顺利,现在一切似乎都很好。
答案2
可能您会收到一个弹出窗口,要求您按“OK”进行确认。使用 TAB 键进行导航,直到“OK”突出显示,然后继续。
如果它真的挂了,那么
sudo dpkg --configure -a --ignore-depends=grub
似乎有助于绕过阻止。
答案3
刚刚遇到了同样的症状 - 卡在 grub-pc 配置上。有少量 dpkg 进程似乎卡住了。我通过关闭父终端终止了桌面上的软件更新会话,但没有终止 dpkg 进程。
我检查了系统日志输出,发现 USB 设备似乎每 30 秒报告一次某种通信错误:
Nov 29 14:14:09 z800 kernel: [80618.076836] xhci_hcd 0000:28:00.0: WARN Cannot submit Set TR Deq Ptr
Nov 29 14:14:09 z800 kernel: [80618.076840] xhci_hcd 0000:28:00.0: A Set TR Deq Ptr command is pending.
Nov 29 14:14:09 z800 kernel: [80618.158336] usb 10-2.3: reset SuperSpeed Gen 1 USB device number 3 using xhci_hcd
这是一个大容量存储设备:
usb-storage 10-2.3:1.0: USB Mass Storage device detected
我从之前的 grub 问题中回想起 grub 配置本身与磁盘设备有关。此时插入到我的系统中的几个设备之一是 SD 卡读卡器,目前没有插入卡。
我移除并重新插入了 6 个 USB 设备中的 5 个(无线鼠标除外),并注意到卡住的 dpkg 进程不再存在。我认为此时安装已经完成。从 dpkg 日志中可以看到:
2020-11-29 14:08:00 status half-configured grub-pc:amd64 2.04-1ubuntu26.7
2020-11-29 14:27:58 status installed grub-pc:amd64 2.04-1ubuntu26.7
现在,当我运行软件更新时,它报告系统已更新。
所以我的推测结论是,至少对于某些这样的设备,grub-pc 配置无法处理空的 SD 卡读卡器并卡住。
答案4
我拔掉了所有不必要的 USB 设备,它马上就启动了