当终端命令删除所有内容并导致黑屏时如何恢复 Fedora

当终端命令删除所有内容并导致黑屏时如何恢复 Fedora

我使用的是 fedora 28 和 cinnamon 桌面环境。它还具有 gnome 桌面环境。

我运行了一个命令,sudo dnf remove gnome*删除了终端中的所有内容,因为默认是 gnome-terminal。

现在我可以看到一个空白的灰色屏幕,因为我启用了自动登录。我在系统上只有用户帐户。

如何在不丢失数据的情况下恢复已删除的软件包并恢复系统?

答案1

“空灰色屏幕”可能是没有运行桌面环境的空 X11 服务器的默认背景。

Ctrl+ Alt+F1切换到基于文本的登录提示。登录,输入cd /var/log进入/var/log目录,然后输入less dnf.log。如果它不允许您读取该文件,请改用sudo less dnf.log

希望该日志文件的末尾会列出您错误删除的所有包的名称。记下所有这些包:该列表可能包括一些未命名为“gnome*”的包,因为它们可能已被删除,因为它们依赖于一个或多个“gnome*”包。

sudo dnf install <package name> <package name> <package name...>使用诸如重新安装已删除的软件包之类的命令。重新安装所有错误删除的软件包后,使用 重新启动系统sudo shutdown -r now。重新启动后,如果您设法重新安装删除的所有软件包,则系统应该与错误发生之前一样。

除非您将数据文件存储在不应该存储的地方,否则删除任何软件包应始终将用户文件和配置文件保留在原处。重新安装相同的软件包应自动使用任何现有的配置文件(如果有)。

答案2

dnf具有事务历史记录和回滚例程以恢复和/或撤消操作。

发出sudo dnf history以获取交易列表,找到破坏系统的交易,然后发出sudo dnf history undo <BorkingTransactionNumber>sudo dnf history rollback <BorkingTransactionNumber - 1>发出<BorkingTransactionNumber>破坏系统的交易编号。

man dnf有关历史功能和其他选项的更多信息,请参阅 参考资料。

相关内容