您的位置:首页 > 运维架构 > Shell

FreeBSD修改csh为bash后root无法登录解决办法

2014-09-21 21:45 218 查看
FreeBSD下为了判断一个进程是否存在,执行了chsh -s /bin/bash命令,不巧的是刚好断线,于是再次链接时没办法su root进去管理权限了。可悲的事情,只好请机房来帮忙操作。

代码如下 复制代码

chsh -s /bin/bash

查看/etc/passwd内容时发现

root:*:0:0:Charlie &:/root:/bin/bash

这一句被改了

原来是

root:*:0:0:Charlie &:/root:/bin/csh

利用cat命令查看/etc/passwd

代码如下 复制代码

kiccleaf# cat /etc/passwd

# $FreeBSD: src/etc/master.passwd,v 1.40.22.2.2.1 2012/03/03 06:15:13 kensmith Exp $

#

root:*:0:0:Charlie &:/root:/bin/bash

原来的内容是:

kiccleaf#(www.111cn.net) cat /etc/passwd

# $FreeBSD: src/etc/master.passwd,v 1.40.22.2.2.1 2012/03/03 06:15:13 kensmith Exp $

#

root:*:0:0:Charlie &:/root:/bin/csh

结果FreeBSD的/bin/目录下并没有bash这个命令存在,于是登录时错误提示:

login:/bin/bash:No such file or directory

把root的shell改成了bash,而导致进不去系统了,可以通过以下几种方式解决:

系统启动时,选择“4”,进入“单用户”模式,输入“boot -s”进入单用户的提示符“#”,依次键入如下命令:

代码如下 复制代码

fsck -p

mount -u /

mount -a -t ufs

swapon -a

chsh -s /bin/csh

然后就重启系统吧,这样就可以重新登录root管理帐号了。

from:http://www.111cn.net/sys/freebsd/66711.htm
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐