现在的位置: 首页 > 综合 > 正文

bash: useradd: command not found如何解决

2013年05月26日 ⁄ 综合 ⁄ 共 1382字 ⁄ 字号 评论关闭

    最近开始学习linux的指令操作,在我使用‘useradd’的指令时遇到了问题。我想添加一个名为user1的用户名指令应该为‘useradd user1’,但是他却出现了“bash: useradd: command not found”提示,最后我在网查查资料终于找到了原因。

首先我不是root登陆的用户,而是普通用户登陆的,然后用‘su root’命令切换到root下,所以问题就出在这里。

‘su root’只改变root权限不改变环境变量,而‘su -root ’指令就可以。‘su -root’可以取得ROOT用户的权限和环境。

现在进行更正:

bash-3.2$ su -
口令:
[root@xudonglee ~]# pwd
/root
[root@xudonglee ~]#

下面是这种情况下,root的环境变量:

/usr/lib/qt-

3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin

:/usr/sbin:/usr/bin:/root/bin

 

而下面的是,我再次模拟使用“su”时,root的环境变量

/usr/kerberos/sbin:/usr/lib/qt-3.3/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin

 

   大家现在应该很清楚了,这两个命名虽然都转换到了root用户,但是他们的效果是不一样的,所以以后最好直接使用“su -”命令。虽然使用“su”命令省事,但是如果需要用到环境变量的地方,我们又要重新进行更改。

    最近开始学习linux的指令操作,在我使用‘useradd’的指令时遇到了问题。我想添加一个名为user1的用户名指令应该为‘useradd user1’,但是他却出现了“bash: useradd: command not found”提示,最后我在网查查资料终于找到了原因。

首先我不是root登陆的用户,而是普通用户登陆的,然后用‘su root’命令切换到root下,所以问题就出在这里。

‘su root’只改变root权限不改变环境变量,而‘su -root ’指令就可以。‘su -root’可以取得ROOT用户的权限和环境。

现在进行更正:

bash-3.2$ su -
口令:
[root@xudonglee ~]# pwd
/root
[root@xudonglee ~]#

下面是这种情况下,root的环境变量:

/usr/lib/qt-

3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin

:/usr/sbin:/usr/bin:/root/bin

 

而下面的是,我再次模拟使用“su”时,root的环境变量

/usr/kerberos/sbin:/usr/lib/qt-3.3/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin

 

   大家现在应该很清楚了,这两个命名虽然都转换到了root用户,但是他们的效果是不一样的,所以以后最好直接使用“su -”命令。虽然使用“su”命令省事,但是如果需要用到环境变量的地方,我们又要重新进行更改。

抱歉!评论已关闭.