在 Ubuntu 16.04 中,我错误地运行了sudo rm -rf /usr/share
。我知道这有多愚蠢(我想删除/usr/share/somefolder
已以 root 身份安装的 ,但分心了)。大约 5 秒钟后,我中断了它。我已经看到一些奇怪的事情:在 Firefox 中,某些文本未显示在 askubuntu.SE 上,当我打开终端时,我得到了/etc/zsh/zshrc:111: compinit: function definition file not found
,自动完成返回错误,等等。
我的问题是:我现在该怎么办?
编辑我安装debsums
并按照这个答案到Ubuntu 有健全性检查吗?。使用命令sudo debsums -cs
,我可以看到很多东西都坏了。但是,除了重新安装之外,我无法修复它(请参阅我更详细的答案)。
答案1
好吧,从 USB 驱动器启动 Linux 并尝试使用extundelete
工具将已删除的文件从未挂载的分区恢复到已挂载的分区。
$ extundelete /dev/sdaX --restore-all
或者
$ extundelete /dev/sdaX --restore-directory /path/to/dir
有关 extundelete 检查的更多信息:http://extundelete.sourceforge.net/
答案2
我最终做的是重新安装 Ubuntu 而不格式化分区,这样我的所有文档和一些程序都保留了下来。
- 备份数据
- 在实时 USB 上启动(实际上我使用的是 Linux Mint 18.3)
- 在目标提示中,选择“其他选择”(或类似选项),然后选择有故障的 Ubuntu 的分区
- 选择 / 作为挂载点(我不知道是否需要)
- 完成安装
这样,我现在就有了一个干净的安装,其中包含我以前的所有文档、设置等。