我错误地从系统中删除了一个库。不记得实际的包名称。大量内容被删除。现在所有应用程序都无法运行,我的应用程序窗口什么也不显示。
有没有办法找到用突触删除的最后几个项目?
我发现,如果我运行 <sudo apt reinstall (app)>,程序就会运行,设置也会完好无损。我重新安装了 Firefox、zim 和其他几个程序,所有原始设置和配置都完好无损。
然后我关闭了电脑,发现重新启动时会出现 ubuntu 启动画面,然后我收到用户提示,但没有任何效果。所以基本上看起来所有应用程序都出现了故障,直到我重新安装它们。
从备份重新安装我的 /etc 可以解决这些问题吗?
我有昨天的 /Home 备份以及一个月前的 /etc 和 /boot 备份。
更多问题...
- 我有什么选择?
- 我目前正在使用 livingvd。我不知道如何从 livingvd 修复系统。可以从 livingvd 进行修复吗?
- 从我所说的内容中,大家能清楚知道到底是哪里出了问题吗?
答案1
如果您删除了系统文件,以至于无法再以任何方式登录,但又不记得自己做了什么,那么除了重新安装之外没有别的选择。
选项 1:重新安装到位。不过,可以通过重新安装而不重新格式化来修复现有安装。为此,请加载硬盘上相同版本的 Ubuntu 实时安装程序。在安装程序中选择“其他”。现在指示硬盘上的系统分区应该是根分区,重要的是,表明分区应该不是被格式化。
此类安装将覆盖当前系统文件,但会保留现有系统配置和用户主目录。重新安装后,系统将基本像以前一样运行,但您需要重新安装默认安装中未附带的应用程序。(但手动安装的第三方应用程序仍会存在)。
选项 2:重新安装。如果您觉得这太难,请使用实时会话更新用户数据的备份,执行默认的新安装,然后恢复数据和配置。
答案2
问题 1)有没有办法找到用突触删除的最后几个项目?
synaptic
是一个前端apt
这又是dpkg
...因此,您可以通过检查日志文件了解以前的安装,删除和其他软件包操作/var/log/dpkg.log
,并且您应该能够过滤该日志文件以查找在特定日期删除的软件包,例如2023-04-01
使用以下命令:
awk -F' |:' '$1=="2023-04-01" && $5=="remove" { if ( !seen[$6]++ ) print $6 }' /var/log/dpkg.log
并使用例如以下命令自动安装它们:
awk -F' |:' '$1=="2023-04-01" && $5=="remove" { if ( !seen[$6]++ ) print $6 }' /var/log/dpkg.log | xargs sudo apt install
问题 2)从备份重新安装我的 /etc 可以解决这些问题吗?
/etc
保存系统配置文件,恢复它不会修复丢失的库、二进制文件或软件包...此外,有选择地恢复某些系统目录可能会损坏您的系统,例如由于版本不匹配,特别是在修改/更新系统安装的软件包之后,或者由于错误的权限/所有权,具体取决于您备份和恢复它们的方式。
我有什么选择?我目前正在使用 livesvd。我不知道如何从 livesvd 修复系统。可以从 livesvd 进行修复吗?
是的你可以chroot
从实时系统到磁盘上已安装的系统如果原始系统正在运行,则以几乎相同的方式修复它。
从我所说的内容中,大家能清楚知道到底是哪里出了问题吗?
除了您告诉我们您认为这可能是由于您删除了一个库而导致的,而且只有您才有权访问系统进行调查之外……不,这并不明显。