记录一次更新vim导致的sudo误删及恢复
这几天在配数据中心的域名ssl和nginx,vim看nginx.conf总是错位,寻思是不是版本太旧了,然而数据中心的虚拟环境是CentOS7,依赖早就不更新了,去网上找了篇文章尝试更新。
行吧,那我就
sudo yum remove vim vim-filesystem vim-common vim-enhanced vim-minimal
然后
1 | sudo rm -rf /usr/bin/vim |
嗯,不存在不用管。等等!我sudo呢???
查了半天发现yum卸载vim-minimal的时候会一起卸载sudo!
其实到这也许也不难恢复,只要su root然后重新安装sudo配置不就行了,但是,屋漏偏逢连夜雨,内部文档上记录的root密码是错的(实际上是当前用户密码),没root了!
如果是能接触到的物理机倒是能单用户,但是。。。数据中心的做不到了。
想了半天,跟朋友想起来机器上是装了docker的,这下有救了。
通过docker启动一个新容器,映射/etc/shadow进去,直接改密码
1 | docker run -it --rm --name rescue \ |
通过openssl passwd -1 “newpassword”重新生成hash并修改shadow文件,这下有root密码了,直接安装sudo恢复。
呼,还好有docker。
原理就是docker是以root权限运行的,当前用户还在docker组,所以能间接修改文件。
- 标题: 记录一次更新vim导致的sudo误删及恢复
- 作者: IShirai_KurokoI
- 创建于 : 2024-05-17 13:18:00
- 更新于 : 2024-05-17 13:26:29
- 链接: https://ishiraikurokoi.top/2024-05-17-yum-remove-vim-minimal/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论