1)查看当前用户
1
2
|
[root@moban ~]#whoami
root
|
2)添加用户
1
|
[root@moban ~]#useradd xpleaf
|
或
1
|
[root@moban ~]#adduser xpleaf
|
3)为用户创建密码
1
2
3
4
5
|
[root@moban ~]# passwd xpleaf
Changingpassword
for
user xpleaf.
New password:
Retype newpassword:
passwd: allauthentication tokens updated successfully.
|
如果passwd后不接用户,则默认是为当前用户创建或修改密码。但这样的方法是比较麻烦的,因为每一次都要询问和输入两次密码,即需要交互命令,显然不能用来批量修改用户密码,如果需要批量修改用户密码,使用下面的方法:
1
2
3
|
[root@moban ~]#echo
123456
|passwd --stdin xpleaf
Changingpassword
for
user oldboy.
passwd: allauthentication tokens updated successfully.
|
使用这种方法就可以避免了交互的情况,但使用该方法也是有缺点的,当使用history命令时,修改的密码便暴露了:
1
2
|
[root@moban ~]#history
388
echo
123456
|passwd --stdin xpleaf
|
为此,在使用此方法修改密码后,我们需要清除该历史记录:
1
2
|
[root@moban ~]#history -d
388
#清除行号为
388
的历史输入命令
[root@moban ~]#history –c #清除所有的历史输入命令
|
4)切换用户
【1】root->普通用户:
1
2
3
4
5
|
[root@moban ~]#whoami
root
[root@moban ~]#su - xpleaf
[oldboy@moban~]$ whoami
xpleaf
|
可以看到,从root用户切换到普通用户不需要输入用户密码。
【2】普通用户->root:
1
2
|
[oldboy@moban~]$ su - root
Password:
|
【3】普通用户->普通用户:
1
2
|
[oldboy@moban~]$ su - test
Password:
|
可以看到,从普通用户到root用户或普通用户之间的切换都是需要密码的。
【4】su与su –的区别
普通su:
1
2
3
4
|
[root@moban ~]#whoami
root
[root@moban ~]#su xpleaf
[xpleaf@moban root]$
|
虽然切换到了xpleaf用户,但观察可发现[xpleaf@moban root]$中后面还有root,即说明此时的环境变量还是root用户下的环境变量。这种情况下,有可能会出现各种问题。
su-:
1
2
3
4
|
[xpleaf@moban root]$ exit
exit
[root@moban ~]#su - xpleaf
[xpleaf@moban~]$
|
此时环境变量已经改变为xpleaf下的环境变量,这是生产标准中的使用方法。
本文转自 xpleaf 51CTO博客,原文链接:http://blog.51cto.com/xpleaf/1657689,如需转载请自行联系原作者