当我在 grub 中选择恢复模式选项时,出现一个闪烁的屏幕,并显示以下消息:
/lib/recovery-mode/recovery-menu: line 120: /lib/recovery-mode/options/whiptail:: No such file or directory
有什么线索吗?
我目前尝试过的方法:加载实时 USB,chroot 到根分区并运行dpkg --reconfigure -a
一些 apt 命令。没有成功。
我的主目录与根目录位于同一分区,即 lvm 分区。如果可以在不影响 /home 的情况下重新安装,我会这样做。
答案1
我在升级时确实遇到了同样的问题。@Raffa 的评论确实很有帮助。不过,我不得不做出一些小改动。
运行实时发行版后,我打开了 shell 并执行了以下步骤:
sudo fdisk -l
sudo mount /dev/(your partition id) /mnt/
sudo mount --bind /proc/ /mnt/proc/
sudo mount --bind /sys/ /mnt/sys/
sudo mount --bind /dev/ /mnt/dev/
sudo cp /etc/resolv.conf /mnt/etc/resolv.conf
sudo chroot /mnt/
然后我继续这样:
sudo mv /etc/ld.so.preload /etc/ld.so.preload.old
sudo dpkg --configure -a
sudo apt update
sudo apt --fix-broken install
sudo apt upgrade
我希望这会有所帮助!
答案2
当我尝试从 Ubuntu 20.04 更新到 22.04 时,我遇到了同样的问题。
我使用了 Francesco Alagna 上面提供的步骤,但是,当我运行“sudo dpkg --configure -a”时,我收到以下错误消息:
sudo: symbol lookup error /usr/local/lib/AppProtection/libAppProtection.so: undefined symbol _dl_sym
我必须做一个额外的步骤,我在这里找到了:https://ubuntuforums.org/showthread.php?t=2469692&p=14092862#post14092862
您可以从“Ubuntu Live cd/usb”启动并删除文件 /usr/local/lib/AppProtection/libAppProtection.so*,然后删除或注释文件 /etc/ld.so.preload 中的行“/usr/local/lib/AppProtection/libAppProtection.so”,然后重新启动并再次登录。如果您仍然看到有关 /usr/local/lib/AppProtection/libAppProtection.so 的错误,只需以 root 身份执行 ldconfig。
引用
然后,在那一步之后,我继续执行 Francesco Alagna 上面提供的步骤。谢谢你拯救了我的系统!Matt