1)查看当前用户

[root@moban ~]#whoami
root

2)添加用户

[root@moban ~]#useradd xpleaf


[root@moban ~]#adduser xpleaf

3)为用户创建密码

 [root@moban ~]# passwd xpleaf
Changingpassword for user xpleaf.
New password: 
Retype newpassword: 
passwd: allauthentication tokens updated successfully.

如果passwd后不接用户,则默认是为当前用户创建或修改密码。但这样的方法是比较麻烦的,因为每一次都要询问和输入两次密码,即需要交互命令,显然不能用来批量修改用户密码,如果需要批量修改用户密码,使用下面的方法:

[root@moban ~]#echo 123456|passwd --stdin xpleaf
Changingpassword for user oldboy.
passwd: allauthentication tokens updated successfully.

使用这种方法就可以避免了交互的情况,但使用该方法也是有缺点的,当使用history命令时,修改的密码便暴露了:

[root@moban ~]#history
  388 echo 123456|passwd --stdin xpleaf

为此,在使用此方法修改密码后,我们需要清除该历史记录:

[root@moban ~]#history -d 388     #清除行号为388的历史输入命令
[root@moban ~]#history –c            #清除所有的历史输入命令

4)切换用户

【1】root->普通用户:

[root@moban ~]#whoami
root
[root@moban ~]#su - xpleaf 
[oldboy@moban~]$ whoami
xpleaf

可以看到,从root用户切换到普通用户不需要输入用户密码。

【2】普通用户->root:

[oldboy@moban~]$ su - root
Password:

【3】普通用户->普通用户:

[oldboy@moban~]$ su - test
Password:

可以看到,从普通用户到root用户或普通用户之间的切换都是需要密码的。

【4】su与su –的区别

普通su:

[root@moban ~]#whoami
root
[root@moban ~]#su xpleaf
[xpleaf@moban root]$

虽然切换到了xpleaf用户,但观察可发现[xpleaf@moban root]$中后面还有root,即说明此时的环境变量还是root用户下的环境变量。这种情况下,有可能会出现各种问题。

su-:

[xpleaf@moban root]$ exit
exit
[root@moban ~]#su - xpleaf
[xpleaf@moban~]$

此时环境变量已经改变为xpleaf下的环境变量,这是生产标准中的使用方法。