我不小心将根文件系统目录/bin
和链接到了/sbin
和/usr/bin
,/usr/sbin
而不是/mnt/bin
和/mnt/sbin
。
ln -sv /bin /usr/bin
ln -sv /sbin /usr/sbin
然后我想恢复它,所以我在互联网上发现我可以unlink
这样做,所以我这样做了:
unlink /bin
unlink /sbin
我不知道 unlink 是做什么的,现在我看到它完全删除了我/bin
的/sbin
。现在没有命令起作用
ls -l
zsh: command not found: sudo
_user_host:1: command not found: who
有没有办法恢复并修复它?如果我运行 Live CD 并安装我的分区并重新创建目录/bin/
/sbin
并恢复符号链接/usr/bin
,/usr/sbin
这会修复它吗?
答案1
我设法修复它。我的磁盘上有一个 GPARTED 分区,是我不久前创建的,以便能够快速管理我的分区,这次它很有用。我启动到我的 gparted,它提供了一个终端,我安装了我的根分区并复制了从 到 的所有内容/usr/bin/
,/usr/sbin/
并修复/usr/lib
了/
所有问题。导致我的问题的原因是我正在运行一些需要环境变量 $LFS 的 bash 脚本,但该变量未设置,因为我没有source
包含此环境的文件。这导致在我的根文件系统上进行操作,因此我没有符号链接我的文件系统,而是/mnt/lfs/bin
符号链接/bin
到/bin/usr/bin
.惨痛的教训:D