FreeBSD的错误Enter full pathname of shell or RETURN for /bin/sh

这是我亲身体验的错误, 发生这个错误前我曾非法关机(直接断电源, 惭愧...)
错误界面:

Trying to mount root from ufs:/dev/ad0s1a
/erc/rc.conf : 16 : Syntax error : Unterminated quoted string
Enter full path name of shell or RETURN for /bin/sh:
#

首先我没有去细看错误信息, 当我看到:

Enter full path name of shell or RETURN for /bin/sh:

的时候, 我的第一反应是 path坏鸟, 然后我就动手去改PATH, 可是万恶的bsd一直提示: readonly, 崩溃...

遂baidu, 无果(全都是复制别人的, 还复制错, 甚至我在俩论坛发现一样的帖子, 一样的回答, 不一样的语言, 简体和繁体)
再google, 亦无果;
于是骂娘之余, reboot然后瞅着那个界面半天, 突然发现:

Trying to mount root from ufs:/dev/ad0s1a

又发现

Unterminated quoted string

啊啊啊, 好办

shell>mount /dev/ad0s1a
shell>/usr/bin/vi /etc/rc.conf

使用vi一定要全路径, ee应该也是可以的吧, 我没实验
找到了那个多了一个引号的行(freebsd好差的容错): 注释, 保存(可写的哦!), 退出 reboot

熟悉的login:再读出现, 好激动...

总结(案例, 不一定适合您):
首页我怀疑过是因为非法断电的问题, 因为在出事前我有过这样的操作(再度惭愧), 如果是这样可以使用fsck来搞定
然后又想起来: 我改过rc.conf, 那么问题就是把rc.conf里导致sys error的地方改回去就ok了, 当然最重要的是解决只读的问题

标签: freebsd

已有 2 条评论

  1. 果然是技术流

    1. 过奖,我可不是
      不过,遇到问题
      解决它
      你就又进步了

添加新评论