linux系统误删/bin文件后怎么恢复?详解看这!

在尝试安装ffmpeg时误删了~/bin文件,导致无法正常登录SSH。通过重启服务器,查找相同版本的Ubuntu(14.04.5),制作U盘启动盘并恢复/bin文件至原系统中,成功解决此问题。详细步骤包括:分析路径区别、确定内核版本、制作U盘启动、虚拟机中获取/bin文件并解压至服务器。
番外篇

当我打出sudo rm -rf /bin命令的时候,我内心其实丝毫没慌。话说当时,我正在~目录下,由于需要安装ffmpeg,按照官方教程我在~下新建了/bin文件。等我输入完密码,/bin文件被删除,突然发现ls命令没用了,此时我已经意识到似乎发生了可怕的事。手贱的我,继续输入exit退出了ssh。接着我尝试再次远程连接,发现再也登入不上去了 (没关闭ssh的情况就比较好解决了) !紧接着我就去找了leader,他过来一看:????你怎么把/bin文件给删除了?????,此时leader的内心:

原地开除!!

解答篇

接上文,啥也不多说了,赶紧恢复吧。

捶胸分析

  1. 首先~路径和/路径的区别
  • ~代表:/home/user/
  • /代表:就是系统根目录了
  1. 恢复/bin的方法简单来说就是需要找到和原先系统一模一样的/bin,然后想办法弄回去。
  • 第一步:先重启服务器,引导系统先查看服务器使用的linux内核(为啥?因为后面我们找到对应服务器版本才能重新拿到/bin文件),内核版本如下:
    linux内核.png

知道linux内核就可以找到4.4.0-31对应的ubuntu版本是14.04.5(另外,你应该知道自己是desktop还是server版本)

  • 第二步:制作U盘启动盘(ubuntu14.04),去服务器用U盘启动,此时不要安装系统,而是点击试用进入。在进入试用之前,希望你可以先做第一步

  • 第三步:进去文件系统看服务器硬盘挂载在哪里。如下:
    硬盘.png

这时候你一般可以看到原来服务器挂载在哪里了,一般情况下长这样:/media/xxxx,你就可以发现原来的/bin文件在哪里找不到了。

  • 第四步:找个虚拟机安装和你原来服务器一模一样的系统,安装系统后,把虚拟机的/bin文件压缩后放到另外一个u盘(你需要两个U盘,一个启动盘一个放新的/bin文件)

  • 第五步:放着新bin文件的U盘插入服务器(确保U盘可以被系统识别),这时候你还在U盘启动盘那个试用版本ubuntu里,进入命令行:

sudo cp /media/usb/bin.tar  /media/xxx

然后cd去服务器的硬盘里,解压tar -xvf bin.tar

这边原理就是要把U盘的新的bin文件放到原来的服务器里

大功告成!!!!

如果我的回答解决了你的问题,请点个赞谢谢!有问题可以留言,我会尽快回复!

参考文献:

  1. https://blog.youkuaiyun.com/u012905667/article/details/47054801
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值