root用户和普通用户登录系统后界面的区别:
root用户:
Last login: Tue Oct 24 16:47:39 2017 from 192.168.1.68
[root@caimeidev2 ~]#
普通用户:
Last login: Tue Oct 24 16:47:39 2017 from 192.168.1.68
[cmuser@caimeidev2 ~]$
注意"#"
和"$"
作用:
添加用户
常用选项:
-u UID
-d 宿主目录
-g 起始组(只能有一个)
-G 附加组(可以有多个)
-s 登陆shell
-M 不要自动建立用户的登入目录
参数:
用户名
示例:
1. 添加一个叫zhangsan的用户,useradd zhangsan
2. 创建用户lisi并指定其UID为1100,useradd -u 1100 lisi
3. 创建用户wangwu并指定其宿主目录为/opt/wangwu,useradd -d /opt/wangwu wangwu
4. 创建用户zhaoliu,但是强制其不创建宿主目录,useradd -M zhaoliu
5. 创建用户chenqi,并指定其所属组和附加组,useradd -g 1100 -G 1100,1004 chenqi
6. 创建一个不需要登录的用户caoba,useradd -s /sbin/nologin caoba
作用:
修改用户信息
说明:
usermod命令的使用方式和useradd命令一直,这里不再赘述。
作用:
删除用户
常用选项:
-r 连同用户的宿主目录一起删除
参数:
用户名
示例:
1. 删除用户caoba,连同其家目录一起删除,userdel -r caoba
作用:
修改用户密码
常用选项:
–stdin 非交互式修改用户密码:
格式:
passwd 用户名
echo “密码” | passwd –stdin 用户名
示例:
1. 修改用户zhangsan的密码,passwd zhangsan
2. 通过非交互式方式修改用户zhangsan的密码,echo “123456” | passwd –stdin zhangsan
作用:
修改用户密码
示例:
[root@caimeidev2 ~]# echo username:password | chpasswd
作用:
新建一个用户组
常用选项:
-g 指定组ID
参数:
用户组名
示例:
1. 创建一个组名叫alex的用户组,groudadd alex
2. 创建一个组名叫jack的用户组,并且指定组ID为1200,groupadd -g 1200 jack
作用:
修改用户组信息
说明:
groupmod命令和groupadd命令用法一直,这里不再赘述。
2.3.3 groupdel命令
作用:
删除用户组
常用选项:
无
参数:
用户组名
示例:
1. 删除用户组jack,groupdel jack
作用:
查看用户简单信息
常用选项:
无
参数:
id 用户名
示例:
1. 查看root用户的信息,id root
作用:
显示已登录系统的用户列表,并显示用户正在执行的命令和程序
常用选项:
无
参数:
无
作用:
显示目前登录系统的用户信息
常用选项:
无
参数:
无
作用:
显示目前登录系统的用户信息
常用选项:
无
参数:
无
w、who、whoami三个命令比较有趣的是命令越长信息越少。
[root@caimeidev2 ~]# w
12:04:02 up 3:33, 1 user, load average: 0.00, 0.04, 0.01
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 192.168.1.68 11:09 0.00s 0.01s 0.00s w
[root@caimeidev2 ~]# who
root pts/0 2017-10-26 11:09 (192.168.1.68)
[root@caimeidev2 ~]# whoami
root
作用:
显示目前登录系统的用户信息
常用选项:
无
参数:
无
作用:
可以用来从一个用户切换到另外一个用户。需要注意的是root用户切换到普通用户时,不需要密码,而普通用户切换到root用户或普通用户时,需要密码。
常用选项:
- 使 shell环境 成为切换用户的 shell
参数:
用户名
示例:
1. 比较su和su -的区别
上图中第一次用su切换用户zhangsan和后面一次用su - 切换的界面展现形式是不一样的,第一次虽然切换用户,但是shell环境还是root的,而第二次则用户和shell环境都切换成zhangsan的了。
总结:
su命令和su - 命令最大的本质区别就是:前者只是切换了身份,但Shell环境仍然是原来用户的Shell;而后者用户和Shell环境一起切换成新用户的了。只有切换了Shell环境才不会出现PATH环境变量错误。