前言
当你看到这篇文章的时候,你的系统可能已经无法登录,或者正在处于登录状态但是不能执行任何常规的命令,误操作删除了/bin,/sbin目录对于Linux系统来说,并不算什么大问题,用镜像启动,进入救援模式,然后将镜像系统中的/bin,/sbin目录cp到你的系统,然后就可以正常启动了,操作原理就是这样,我用centos7来做演示,其他版本的Linux操作系统也是这个原理,可能操作有些许差异。我当前的环境是kvm虚拟机,vmware虚拟机和物理机,可以作为参考。
实例
挂载镜像,重启系统
配置镜像启动
挂载和当前操作系统版本相同的镜像
重启系统
进入救援模式
按图操作就好,注意英文提示
ok,到这里,选完1,按回车,就正式进入了救援模式,在这里,你就可以开始修复系统,恢复被删除的/bin和/sbin目录了。
拷贝镜像系统中的/bin和/sbin目录到原系统
这里,执行chroot 命令失败是因为你的系统中没有/bin目录,也就找不到bash,这是正常的,毕竟/bin目录被你删除了,要是命令能执行可就出问题了。
/sbin目录同样使用cp命令复制过去。
重启系统
不出意外的话,你就可以正常进系统然后登录了。
总结
到这里,误删/bin和/sbin目录就恢复成功了,误删一些其他系统文件可以使用类似的方法去恢复。