我怎样才能恢复 /etc 中丢失的文件?

我怎样才能恢复 /etc 中丢失的文件?

我无意中删除了 /etc/ 文件夹。现在无法进行任何管理,因为/etc/passwd/etc/shadow都丢失了。

有没有什么办法可以在 Ubuntu 中恢复它?

答案1

以下是我将会采取的方法。

如果你想尝试手动恢复,请启动 ubuntu live CD 并更新所有内容

sudo apt-get update && sudo apt-get -y dist-upgrade

然后你将你的 ubuntu 分区挂载在/mnt

sudo -i
mount /dev/sdxy /mnt

您可以将 /etc 复制到/mnt/etc

cp -Raf /etc /mnt

然后您需要手动编辑/mnt/etc/passwd/mnt/etc/group/mnt/etc/sudoers

格式应该足够容易从现有条目中理解,但如果不理解,请询问。确保您的用户属于管理员组。

将您的用户添加到这些文件中^^

然后 chroot

sudo chroot /mnt

并设置您的用户密码

passwd your_user

您还需要更新/mnt/etc/fstab,定义您的根分区和交换。您可以使用 Live CD 作为大多数条目的模板。

重新启动并希望它能起作用。

如果没有,请启动实时 CD 并将数据备份到闪存驱动程序或备用分区,然后重新安装。

祝你好运

答案2

从备份中恢复,或重新安装。如果重新安装,请使用手动分区,不要选中格式化框,您的个人数据应保持完整。较新的版本还提供了重新安装/替换现有安装的选项,而无需格式化。这比手动分区更容易使用。

答案3

从 ext4 恢复文件并不容易 :-/

您可以从 Live CD 开始,然后将其中的所有文件复制到 /etc 目录中。但我担心这行不通。

全新安装应该会在更短的时间内为您带来更好的结果,但所有内容都会丢失。必须事先备份个人数据!

答案4

你可以使用以下命令获取所有已安装软件包的列表

dpkg --get-selections

你可以使用以下命令重新安装软件包

sudo apt-get --reinstall install packagenames

使用这两个命令,可以构建一个重新安装所有已安装软件包的命令。这可能会有所帮助。但是,我现在没有时间为您创建此命令。如果有人有时间 - 请编辑此帖子。

相关内容