day8-用户与组(1)

2019-08-05  本文已影响0人  恩楠

Linux下的用户有什么用,或者说我们为什么要创建用户?


用户存在哪儿?

[root@node2~]# head -1 /etc/passwd
root:x:0:0:root:/root:/bin/bash

/etc/passwd以:为分隔符,共可分为7列。

第一列 第二列 第三列 第四列 第五列 第六列 第七列
root x 0 0 root /root /bin/bash
用户名 密码占位符 用户UID 组GID 注释信息 用户家目录 用户登陆shell
用户UID 系统中约定的含义
0 超级管理员,最高权限,有着极强的破坏能力
1~200 系统用户,用来运行系统自带的进程,默认已创建
201~999 系统用户,用来运行用户安装的程序,所以此类用户无需登陆系统
1000+ 普通用户,正常可以登陆系统的用户,权限比较小,能执行的任务有限

在CentOS7系统之前,UID1-499用于系统用户,而500+则用于普通用户。


用户相关命令

useradd:用于新增用户
useradd常用选项及说明

选项 解释
-u 指定用户的UID
-g 指定用户的默认组,只能有一个
-G 指定用户的附加组,逗号隔开可以添加多个
-d 指定要创建的用户的家目录
-s 指定要创建用户的bash shell
-c 指定要创建用户的注释信息
-M 给创建的用户不创建家目录
-r 创建系统账户,默认无家目录
# 用groupadd添加相关的用户组
[root@node2~]# groupadd students
[root@node2~]# groupadd sa
[root@node2~]# useradd ennan -u 5001 -g students -G sa -c "20190805" -s /bin/bash

# 用id命令和查看/etc/passwd文件来确认用户是否创建成功
[root@node2~]# id ennan
uid=5001(ennan) gid=6669(students) groups=6669(students),6670(sa)
[root@node2~]# grep "ennan" /etc/passwd
ennan:x:5001:6669:20190805:/home/ennan:/bin/bash
# 使用-r可创建系统用户,默认不创建家目录
[root@node2~]# useradd mysql -r -s /sbin/nologin
[root@node2~]# id mysql
uid=995(mysql) gid=995(mysql) groups=995(mysql)
[root@node2~]# grep "mysql" /etc/passwd
mysql:x:995:995::/home/mysql:/sbin/nologin

usermod:用于更改用户信息
usermod常用选项及说明

选项 解释
-a 更改用户组的时候,保存原有组不变,直接追加
-m 保持原有的家目录配置
-l 指定要修改的用户的登录名
-u 指定用户的UID
-g 指定用户的默认组,只能有一个
-G 指定用户的附加组,逗号隔开可以添加多个
-d 指定要创建的用户的家目录
-s 指定要创建用户的bash shell
-c 指定要创建用户的注释信息
# 查看用户ennan的信息
[root@node2~]# id ennan
uid=5001(ennan) gid=6669(students) groups=6669(students),6670(sa)
# 添加用户组dba
[root@node2~]# groupadd dba
[root@node2~]# usermod ennan -u 9999 -aG dba
# 若不加-a选项,附属组不会保留原先设置的组,会直接变更为dba
[root@node2~]# id ennan
uid=9999(ennan) gid=6669(students) groups=6669(students),6670(sa),6671(dba)
[root@node2~]# usermod ennan -md /tmp/ennan -l wu
# 更改用户家目录时应加上-m选项,否者,原来的家目录配置不会生效
[root@node2~]# id wu
uid=9999(wu) gid=6669(students) groups=6669(students),6670(sa),6671(dba)
# 更改用户家目录加了-m选项
[root@node2~]# su - wu
Last login: Mon Aug  5 15:43:49 CST 2019 on pts/1
[wu@node2 ~]$ 
[wu@node2 ~]$ 
# 更改用户家目录,没加-m选项
[root@node2~]# su - wu
Last login: Mon Aug  5 15:45:28 CST 2019 on pts/1
su: warning: cannot change directory to /tmp/liu: No such file or directory
-bash-4.2$ 
-bash-4.2$ 

userdel:用于删除用户
userdel常用选项及说明

选项 解释
-r 删除用户的同时删除他的家目录
[root@node2~]# userdel user1
[root@node2~]# userdel -r user1

用户数据可能会放置于家目录内,-r选项删除用户时,会删除其家目录,慎用!!!


用户相关其他命令

who:目前登录系统的用户信息。

[root@node2~]# who
root     tty1         2019-08-05 08:26
root     pts/0        2019-08-05 08:27 (192.168.16.44)

whoami:当前登陆系统的用户是

[root@node2~]# whoami
root

w:用于显示已经登陆系统的用户列表,并显示用户正在执行的指令。

[root@node2~]# w
 16:31:29 up  7:20,  3 users,  load average: 0.00, 0.01, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     tty1                      08:26    8:04m  0.05s  0.05s -bash
root     pts/0    192.168.16.44    08:27    3:01m  0.92s  0.92s -bash
root     pts/1    192.168.16.44    14:42    1.00s  0.90s  0.03s w

16:31:29 当前系统时间
up 7:20当前系统运行的时长
3 users有多少用户登陆了系统
load average: 0.00, 0.01, 0.05当前系统负载状态。
0.00:1分钟内平均负载
0.01:5分钟内平均负载
0.05:15分钟内平均负载
JCPU指的是与该tty终端连接的所由进程占用的时间,不包括过去的后台作业时间
PCPU指的是当前进程(即w项中显示的)所占用的时间。

上一篇 下一篇

猜你喜欢

热点阅读