Linux总结--用户和组
作者:互联网
2019-07-12 17:53:04
用户和组关系
在Linux系统中,用户组分为主组和附属组两种。一个用户有且只有一个主组,可以有多个附属组;一个组可以作为多个用户的主组,可以作为多个用户的附属组;个人认为,附属组存在的意义在于使一个用户除了拥有主组的权限外,还可以拥有其他所在的附属组的权限。
新建或修改用户时使用 -g 指定用户主组,不指定时,会默认创建一个与用户同名的主组,在/etc/passwd主显示的组ID是用户的主组ID。
新建或修改用户时使用 -G 指定用户附属组,在/etc/group中显示的用户是该组作为附属组时组内的成员
组文件:/etc/group
用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group文件的更新
文件结构:组名:密码占位符:组ID:(该组作为用户附属组时的)组成员 如:demogroup:x:1001:Jonh,Sara
[root@hadoop1 ~]# cat /etc/group
demogroup:x:1001:Jonh,Sara
Jonh:x:1004:
Sara:x:1005:
用户文件:/etc/passwd
文件结构:用户名:密码占位符:用户ID:主组ID:注释:主目录:解释器shell 如:demo:x:1002:1001::/data/demo:/bin/bash
[root@hadoop1 demo]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin
saslauth:x:499:76:Saslauthd user:/var/empty/saslauth:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
demo:x:1002:1001::/data/demo:/bin/bash
ng:x:1003:1001::/data/ng:/bin/bash
Jonh:x:1004:1004::/data/jonh:/bin/bash
Sara:x:1005:1005::/data/sara:/bin/bash
密码管理文件:/etc/shadow 如:zk:!!:18479:0:99999:7:::
#用户名:密码:上次改口令时间:最小改口令间隔:最大改口令间隔:口令到期前几天预警:口令到期后几天禁用:口令到期日期
zk:!!:18479:0:99999:7:::
组管理
新增组:groupadd [options] GROUP
-g, --gid GID use GID for the new group 指定组id新增
[root@hadoop1 ~]# groupadd -g 1001 demogrp
[root@hadoop1 ~]# cat /etc/group |grep demogrp
demogrp:x:1001:
修改组:groupmod [options] GROUP
-g, --gid GID change the group ID to GID 修改组id
[root@hadoop1 ~]# groupmod -g 1002 demogrp
[root@hadoop1 ~]# cat /etc/group |grep demogrp
demogrp:x:1002:
-n, --new-name NEW_GROUP change the name to NEW_GROUP 修改组名
[root@hadoop1 ~]# groupmod -n demogroup demogrp
[root@hadoop1 ~]# cat /etc/group |grep demo
demogroup:x:1002:
删除组:groupdel [options] GROUP
[root@hadoop1 ~]# groupdel demogroup
[root@hadoop1 ~]# cat /etc/group |grep demogroup
用户管理
新增用户:useradd [options] LOGIN
新增用户当不指定时,默认用户ID为1000以后递增(centos7),自动创建同名的主组,/home下创建同名主目录,解释器shell为/bin/bash
-u, --uid UID 指定用户id
-g, --gid GROUP 指定用户主组
-G, --groups GROUPS 指定用户附属组
-d, --home HOME_DIR 指定用户主目录
[root@hadoop1 /]# useradd -u 1002 -g demogroup -G demogroup -d /data/demo demo
[root@hadoop1 /]# cat /etc/passwd |grep demo
demo:x:1002:1001::/data/demo:/bin/bash
设置用户密码:passwd LOGIN 或 echo 'PASSWD' | passwd --stdin LOGIN
[root@hadoop1 etc]# echo 'demo#1' | passwd --stdin demo
Changing password for user demo.
passwd: all authentication tokens updated successfully.
#修改用户密码
[root@hadoop1 etc]# echo 'demo:demo#1' | chpasswd
修改用户:usermod [options] LOGIN
-l, --login NEW_LOGIN 修改用户名
-u, --uid UID 修改用户id
[root@hadoop1 /]# usermod -l newdemo demo
[root@hadoop1 /]# cat /etc/passwd |grep demo
newdemo:x:1002:1001::/data/demo:/bin/bash
删除用户:userdel [options] LOGIN
删除用户不指定时,默认不删除用户主目录
-r, --remove 同时删除用户主目录和邮件池
[root@hadoop1 /]# userdel demo
[root@hadoop1 /]# ls /data
demo newdemo
[root@hadoop1 /]# userdel -r newdemo
[root@hadoop1 /]# ls /data
demo
[root@hadoop1 /]#
切换用户:su [OPTION]... [-] [USER [ARG]...]
-, -l, --login 同时切换用户及工作环境(HOME, SHELL, USER, LOGNAME and PATH)
[root@hadoop1 etc]# su demo
[demo@hadoop1 etc]$ exit
exit
[root@hadoop1 etc]# su - demo
[demo@hadoop1 ~]$
sudo权限
sudo权限是指可以让普通用户具有部分或全部的超级管理员权限
visudo指令修改/etc/sudoers文件,在wheel行下添加需要赋权的用户,设置为免密执行sudo指令
[root@hadoop1 etc]# visudo
## Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL
demo ALL=(ALL) NOPASSWD: ALL
标签:sbin,--,demo,Linux,用户,etc,hadoop1,root 来源: https://www.cnblogs.com/is-raining/p/11177634.html