简而言之,我不小心输入了 sudo rm /*,现在我的系统无法启动,因为 / 中有一些内容被删除了

简而言之,我不小心输入了 sudo rm /*,现在我的系统无法启动,因为 / 中有一些内容被删除了

我是个初学者,犯了一个小错误,现在我无法进入系统,当我尝试进入恢复外壳时,它显示“内核崩溃 - 未同步尝试杀死 init?”,我在网上找不到任何关于如何解决我的错误的答案。我很绝望......

答案1

您可以保存您的个人文件(到另一个驱动器),如果您有足够的驱动器空间,请保存整个文件树/home并保留所有权和权限。

  • 简单的例子,从另一个系统启动,例如 USB 驱动器中的实时系统,将损坏的安装系统的分区挂载到挂载点并备份到 tarball,

    cd /mountpoint
    sudo tar -cvf /path/home-backup.tar home
    
  • 也许可以制作一个压缩的 tarball(速度较慢,但​​需要的驱动器空间较少),

    cd /mountpoint
    sudo tar -cvJf /path/home-backup.tar.xz home
    

然后,您可以重新安装并从 [压缩] tarball 中恢复您的设置和个人文件。

您可以通过以下方式恢复

  • 将目录更改为/

    cd /
    
  • 运行以下命令从 tarball 中提取所有内容,

    sudo tar -xvf /path/home-backup.tar
    

    或者

    sudo tar -xvf /path/home-backup.tar.xz
    

答案2

哦,我很抱歉地说,听听这个,比尝试修复一些你不知道从哪里开始的东西要好得多,你可以使用

可启动的 USB 棒来恢复你的文件然后重新安装大多是没有必要的,除非你安装了整个系统在 /

如果你还没有创建分区,下次也可以创建

/
/boot
/var
/home

这样就可以重新安装并在安装过程中仅更改特定分区

或者使用系统恢复映像从引导加载程序执行相同操作

可能需要重新安装并保留备份

而不是使用

rm -rf * postfix.txt # accidental space between

将删除所有文件

引号中使用的文件名被视为单个文件,这将避免像您所做的那样的错误

rm -rf '* postfix.txt'   

另一方面,不会删除名称*\ postfix.txt不存在的bc 文件

最好使用find命令

find . -name "* foldername/" -type d -exec rm -rf {} \;

or 

find . -name "/foldername/ *" -type d | xargs -0 rm -r

这里,

-name = name of file

  -type = f for file , d for directory

  -exec = to execute commands followed {contains the output from search} \;slash is for closing 


   | = (pipe operator) used to join two commands like joining a pipe

   xargs = is used to execute commands

相关内容