我正在尝试手动升级 Vagrant VM 盒(WordPress 开发环境)变压变流,使用ubuntu/trusty64) 从 14.04 (我认为是 14.04.5 LTS...) 升级到 16.04.2 LTS。这是我第二次尝试,我事先拍了一张快照。
我使用了do-release-upgrade
而不是 Debian 方法,并且在过程中没有发现任何明显的错误/问题。完成后它会重新启动并挂起,直到它到达以下状态:
[...]
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
random: nonblocking pool is initialized
VM 显然没有 grub,所以我下载了 Ubuntu Live CD ISO 映像,配置 VirtualBox 从该映像启动,然后运行启动修复。(第一次尝试的 pastebin 输出)
我尝试过的最新选项:
然后我就可以访问 Grub 并启动到恢复模式。(顺便说一下,grub 为我提供了两组选项,版本 4.4 和更早的 v3.13,我使用的是最新版本)。
我尝试更新 grub 并执行dpkg --configure -a
,虽然我怀疑两者都没有问题并且这些都没有什么区别,但它仍然挂在同一个地方。
我现在该做什么/寻找什么?
另外,如果我要恢复 14.04 快照并再次升级,我该怎么做预先这可能会阻止这种情况发生?
软件版本:
Vagrant 1.9.2
VirtualBox 5.1.10
Mac OS X 10.11.6 (El Capitan)
VirtualBox 设置:
Linux Ubuntu (64 位)
2 MB RAM,芯片组 ICH9
启用 I/O APIC - 开启
启用 EFI - 开启
硬件时钟采用 UTC 时间 - 开启
4 CPU
启用 PAE/NX - 关闭
加速:
半虚拟化接口:旧版
启用嵌套分页 - 开启
存储:
SATA 控制器类型 AHCI
2 个端口(1 个用于 HDD,1 个用于光盘)
答案1
console
我通过从 GRUB 配置中删除以下行(加载 Linux 内核)中的第二行来解决了这个问题:
linux /boot/vmlinuz-4.4.0-64-generic root=UUID=52c57bc3-f866-48d7-8cea-3e5fa835e51d ro console=tty1 console=ttyS0
(如果您知道的话,请随意评论哪些控制台组合是允许的以及原因 - 例如,我知道您不允许将它们组合在一起ttyS0
,ttyS1
因为它们是同一类型。)
初始临时修复:
- 在 Grub 菜单中,确保默认的“Ubuntu”条目突出显示
- 按下
e
编辑 - 使用箭头键编辑行
- 按 Ctrl-X保存并启动(这是一个 Emacs 编辑器)
永恒的:
- 编辑
/etc/default/grub
(GRUB_CMDLINE_LINUX_DEFAULT=
行) - 运行
sudo update-grub
以重新生成/boot/grub/grub.cfg
GRUB 实际读取的文件 - 重启
您可能遇到过我遇到的情况,即/etc/default
配置与 相比不同步(即过时)/boot/grub/grub.cfg
,因此编辑前者会在后者中产生新的错误。每次您有一台正常工作的机器时定期拍摄快照将节省您的时间。
我遇到的其他问题:
- 需要重新安装 MySQL 包(mysql-client 和 mysql-server),因为 16.04 使用了较新的版本。