日期:2014-05-16  浏览次数:20763 次

linux 系统登录后显示-sh-2.05b#,而不是root#。
求教个问题,系统登录后显示-sh-2.05b#,而不是root#。ehco $LOGNAME显示root,who显示的也是root。
       我的想法是系统只有一个用户root,没有user用户。登陆系统后,系统认为是进入了单用户模式,显示-sh-2.05b#,
我想把这条打印信息改成root#。
      我的想法是“-sh-2.05#”是一条shell打印输出的字符串,应该在bash这个包里面。可是我没有在这个包里面搜到类似打印的信息。
      这个该怎么改??
 求教个问题,系统登录后显示-sh-2.05b#,而不是root#。ehco $LOGNAME显示root,who显示的也是root。
    /etc/passwd没有user,/home目录是空的。
       我的想法是系统只有一个用户root,没有user用户。登陆系统后,系统认为是进入了单用户模式,显示-sh-2.05b#,
我想把这条打印信息改成root#。
      我的想法是“-sh-2.05#”是一条shell打印输出的字符串,应该在bash这个包里面。可是我没有在这个包里面搜到类似打印的信息。
      这个该怎么改??

------解决方案--------------------
极有可能是用户的默认$HOME目录不存在导致。看看/etc/passwd文件里root的默认目录是什么,如果没有,自己建个目录再重新登录试试。
------解决方案--------------------
只有一个root就进单用户模式?
grep root /etc/passwd
看一下是不是这样:
root:x:0:0:root:/root:/bin/bash

还是这样:
root:x:0:0:root:/root:/bin/sh

如果PS1被写进.bashrc,只有/bin/bash才会读.bashrc。