LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1200|回复: 9

因为误修改了shell,root进不去了,请帮忙啊?[已解决]

[复制链接]
发表于 2005-4-27 10:20:15 | 显示全部楼层 |阅读模式
我是freebsd5.3 release。

因为还不是太熟悉FREEBSD的ee,修改passwd文件的时候,把shell改错了。然后系统重启之后就root没办法login了,但是有login和password提示符。
怎么修复啊?
我试着插入第二张光盘,一开始有大概7个选项吧,选4进入单用户之后,就是sysinstall的那个界面,怎么没有字符界面啊?我按alt+f2等也没有。所以没有办法修改。
然后,还是第二张光盘,选6进入命令行,可是我发现竟然极少数的命令,没有vi,没有passwd,所以感觉无处下手啊。郁闷。
实在没有办法了,我就用FC3的resuce进入命令行吧,fdisk -l显示:/dev/hda1。然后我就mount /dev/hda1 /mnt/x,结果告诉我:无效的参数,我又试着mount /dev/hda1 /mnt/x -t ufs也都显示失败,说:没有该设备。又是不行。

因为对freebsd不是很熟悉,所以在这里请教各位几个问题:
1、freebsd5.3的分区格式是什么啊(我通过fdisk看好像ID是a5),文件系统默认的是什么啊,另外,都支持什么文件系统啊(在不编译内核的情况下)?
2、如何通过freebsd5.3的四张光盘(bootonly,disc1,disc2,mini-install),进入命令行提示符啊?就像linux的rescue或单用户模式一样,有比较完整的shell环境,较多的可用命令?我前面的方法都没有成功进入。
3、就是如何恢复我的系统,呵呵?
4、package和ports(程序源代码)的包都可以tgz结尾吧,我如何判断是package和ports呢?
谢谢各位大侠。
 楼主| 发表于 2005-4-27 18:38:10 | 显示全部楼层
我查阅了一些资料,有些问题我来回答吧。
freebsd5.3的分区跟linux有很大的不同,就是,需要一个单独的分区,而且是主分区,不能是逻辑分区。另外,在这个分区里面,我们可以划分很多的slice,来mount各个目录,比如/和/tmp等。

package的结尾一般是tgz,在安装cdrom里面是tbz结尾的。但是,ports都是以tar.gz结尾的,通过这种方法应该可以很好的判断二者吧。

其他的问题,麻烦大家指教!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-28 08:49:30 | 显示全部楼层

郁闷,还是有问题啊

直接用系统启动,进入单用户模式,重新 mount -arw,然后就修改/etc/passwd和/etc/master.passwd的root的shell环境为/bin/sh,结果问题还是跟以前一样?为什么啊?
难道shell环境不是在这两个文件里面配置的吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-28 10:08:02 | 显示全部楼层
我发现修改/etc/passwd和/etc/master.passwd没有生效啊?为什么呢?
我是mount -arw的,可写的啊。
另外,我试图chsh,结果告诉我:entry inconsistent ,pw_copy:invalid argument.

大家帮忙啊!我现在系统都进不去啊?
回复 支持 反对

使用道具 举报

发表于 2005-4-28 10:47:07 | 显示全部楼层
不知道 这个 命令可不可以 ,你试试看
chsh
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-28 10:48:37 | 显示全部楼层
我试过了chsh,chpass等等,结果发现只有pw命令,有效的修改了我的shell。
郁闷啊,好几天的问题终于解决了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-28 10:57:34 | 显示全部楼层
但是又出现一个新的问题:因为一开始我不管使用chsh或者chpass都不能修改shell,我就干脆从cdrom里面拷了一个passwd和master.passwd来覆盖我系统里面的文件,这样就只有root用户,而没有我建立的一个用户cupid,至少里面没有这个entry了吧?不是吗?

可是奇怪的事情,发生了,我使用cupid仍然可以成功登陆!
chsh cupid竟然能显示cupid用户的信息,rmuser cupid也显示了cupid条目和主目录,但是最后删除的时候才告诉我失败,因为:user cupid does not exist。

我狂郁闷啊?为什么cupid可以登陆,明明passwd和master.passwd没有这个条目了啊?

大家帮帮忙啊!
回复 支持 反对

使用道具 举报

发表于 2005-4-28 12:38:57 | 显示全部楼层
%pwd_mkdb /etc/master.passwd
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-28 13:45:22 | 显示全部楼层
多谢斑竹啊,我查了很多资料,终于搞定。准备到这里写一下解决方法。

没想到您竟然也贴出解决方法了,后悔没早些过来看帖子哦。

谢谢!
回复 支持 反对

使用道具 举报

发表于 2005-5-1 01:40:42 | 显示全部楼层
非常好。我的问题也解决了。哈哈,谢谢。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表