如何重新连接到 Ubuntu Server 的“do-release-upgrade”过程?

Ale*_*ach 106 ubuntu upgrade

我在 Ubuntu Server 的do-release-upgrade过程中不小心按下了 Ctrl+C 。我掉到一个 shell 来比较 /etc/ 中的 .conf 文件。当我按下 Ctrl-C 时,它询问我是否想尝试重新连接到升级过程,但它没有这样做。

所以我退出了,现在有一个挂起的 dpkg 进程持有 apt 锁。这是一个没有 GUI 前端的虚拟化服务器......

是否可以恢复升级过程,或者我是否必须终止 dpkg 进程并重新启动?

Ale*_*x R 155

我通常通过 VPN 进行版本升级,所以我试过几次。每当它更新我的 openvpn 包时,我就会失去连接,所以我之后会重新连接。

do-release-upgrade在端口 1022 上启动备份 SSH 会话和备份屏幕会话。如果您没有安装屏幕,这将不可用。

您可以通过运行来获取屏幕会话:

sudo screen -list
There is a screen on:
    2953.ubuntu-release-upgrade-screen-window   (09/13/2012 04:48:02 AM)    (Detached)
1 Socket in /var/run/screen/S-root.
Run Code Online (Sandbox Code Playgroud)

然后重新连接:

sudo screen -d -r root/2953.ubuntu-release-upgrade-screen-window
Run Code Online (Sandbox Code Playgroud)

使用之前列出的屏幕后 root/

你应该回到失去连接的地方。

  • 我没有安装 screen...而且我无法使用 apt-get 安装 screen(文件已锁定) (3认同)
  • 这非常有帮助。如果您只是添加简短的提及“do-release-upgrade”确实会自动启动屏幕会话,这可能是一个更好的答案(您让我重新阅读了该问题一秒钟,以查找任何有关通过“启动升级过程”的提及)屏幕`) (2认同)
  • 我很惊讶这个问题不断得到 +1,它太老了 (2认同)
  • @AlexR 这仍然是相关的,今天刚刚救了我!Stack* 网站的神奇之处! (2认同)

小智 38

我在升级到 quantal 时遇到了同样的问题。对我来说不幸的是,就像原来的海报一样,屏幕也因为 ctrl+c 被杀死了。

杀死 dpkg 并使用“--configure -a”重新启动它解决了问题。

谢谢

  • @vlad 如果你知道如何继续这个过程,这本身就是一个很好的答案。我想这需要连接到 dpkg 输入和输出所在的一些 `/dev/pty`,这样你就可以继续回答 dpkg 的交互式问题。不过,这听起来很重要,所以我肯定会给我的 +1 以指导如何去做。 (2认同)