Centos7解决zsh卸载后导致无法登陆的问题

前文

网上一堆文吹嘘oh-my-zsh多么多么炫酷多么多么好用,一不小心就陷进去想试试,现在想想,都是浮云,只能在本地机子或者自己的服务器上尝试,生产环境根本不可能给权限安装这种华而不实的东西,如果是银行等保密性要求更高的,只给你看黑白界面,到时候习惯了oh-my-zsh后,回到一无所有的情况下,就措手不及了。

现在的问题就是,直接用yum remove zsh,卸载了,然后退出后,就死活登录不上了,关键我用的还是root账户,所以就直接GG了。据说卸载zsh要用官方提供的sh脚本去执行才行。

问题起因

yum remove zsh卸载的不够彻底,/etc/passwd里的root账户使用的还是zsh,但是zsh已经卸载了,根本找不到,所以就一直登陆不进去,即使密码是正确的。

一度想重装算了,但是还是不甘心,网上也找不到对应的解决方法,有人遇到了但是root账号还能登陆,有人没有完全退出root账号,这时候还能修改。

梳理一下搜索获得的一些片段,发现其实解决方法很简单,只需要能在不用账号密码登陆的前提下,修改 /etc/passwd 的内容就行。

这时候就想到了centos7忘记密码的解决方案,参考之前的一篇文章

解决步骤

1. 物理重启服务器,开机引导时e进入编辑模式

在这里插入图片描述

2. 移动向下光标,找到linux16开头行

PS:在64位IBM Power Series是 linux 这一行尾;在x86-64 BIOS引导的系统中是 linux16 这一行尾;在UEFI引导的系统中是linuxefi这一行尾 (反正找关键词是哪个就改哪一行)
在这里插入图片描述

3. 找到当前行ro开头的,修改

ro crashkernel=auto 改成 rw init=/sysroot/bin/sh
在这里插入图片描述
在这里插入图片描述

4. 按ctrl+x执行,进入单用户模式界面

在这里插入图片描述

5. 输入chroot /sysroot 获取权限

6. 进入etc目录,cd /etc

7. 修改passwd文件,vi passwd

把zsh修改成bash
在这里插入图片描述
在这里插入图片描述

8. 用 " touch /.autorelabel " 更新SELinux信息;

9. 两次exit,退出chroot

10. 输入reboot重启

问题解决

over, enjoy!

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值