Linux管理用户和组

时间:2020-05-17
本文章向大家介绍Linux管理用户和组,主要包括Linux管理用户和组使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

本篇主要讲述:

1 用户、用户组基本概念
2 用户管理以及操作
3 组管理以及操作

1、用户、用户组基本概念

1.1 基本概念
用户账户的作用:登陆操作系统、访问控制(不同的用户具备不同的权限)
组帐号:方便对用户的管理
唯一标识: UID  GID
管理员的UID:0
普通用户UID:RHEL7从1000开始
组的分类: 附加组(从属组、公共组)      基本组(私有组)

2、用户管理及操作

2.1 添加用户
用户基本信息存放在 /etc/passwd 文件
[root@server0 ~]# head -1 /etc/passwd
root:x:0:0:root:/root:/bin/bash
用户名:密码占位符:UID:GID:用户的描述信息:家目录:解释器程序
使用 useradd 命令
useradd [选项]... 用户名
useradd +用户名
• 常用命令选项
-u  指定用户ID  从1000开始(普通用户)
-d  指定用户家目录
-s  和/sbin/nologin 使用禁止某个用户登录
useradd -s /sbin/nologin nsd08
-g  指定组
groupadd study
useradd -g study nsd 10
结果:
uid=1204(nsd10) gid=1204(study) 组=1204(study)
-G  附加组
useradd -G study nsd11
结果:
uid=1205(nsd11) gid=1205(nsd11) 组=1205(nsd11),1204(study)
– -u 用户id、-d 家目录路径、-s 登录Shell
– -g 基本组、-G 附加组
[root@server0 ~]# useradd nsd01
[root@server0 ~]# id nsd01             #查看用户基本信息
uid=1001(nsd01) gid=1001(nsd01) 组=1001(nsd01)
[root@server0 ~]# grep 'nsd01' /etc/passwd
[root@server0 ~]# useradd -u 1200 nsd02
[root@server0 ~]# grep 'nsd02' /etc/passwd
[root@server0 ~]# id nsd02
[root@server0 ~]# useradd -d /opt/abc nsd07 #指定家目录
[root@server0 ~]# grep 'nsd07' /etc/passwd
 
[root@server0 ~]# useradd -s /sbin/nologin nsd09   #/sbin/nologin:阻止用户登陆系统
[root@server0 ~]# grep 'nsd09' /etc/passwd
[root@server0 ~]# groupadd study
[root@server0 ~]# useradd -g study  nsd10   #指定基本组
[root@server0 ~]# id nsd10
[root@server0 ~]# useradd -G study nsd11   #指定附加组
[root@server0 ~]# id nsd11
小知识:
管道操作:将前面命令的输出结果,传输给后面命令,作为后面命令的参数
显示/etc/passwd/文件8-12行内容?
[root@server0 ~]# head -12 /etc/passwd | tail -5
[root@server0 ~]# cat -n /etc/passwd | head -12 | tail -5
[root@server0 ~]# ifconfig | head -2
[root@server0 ~]# ifconfig | less
[root@server0 ~]# echo 1+1 | bc
[root@server0 ~]# echo 3*2 | bc
2.2 使用 passwd 命令
交互式设置密码
[root@server0 ~]# passwd  nsd01
非交互式设置密码
[root@server0 ~]# echo 123 | passwd --stdin nsd01
[root@server0 ~]# echo redhat | passwd --stdin nsd02
用户密码信息存放在 /etc/shadow 文件
2.3 使用 usermod 命令
usermod [选项]... 用户名
• 常用命令选项
– -u 用户id、-d 家目录路径、-s 登录Shell
– -g 基本组、
– -G 附加组
[root@server0 ~]# useradd nsd12
[root@server0 ~]# grep 'nsd12' /etc/passwd
[root@server0 ~]# usermod -u 1600 -d /opt/test  -G study -s /sbin/nologin nsd12
#改变用户的ID,家目录,附加组以及是否能登录
[root@server0 ~]# grep 'nsd12' /etc/passwd
[root@server0 ~]# id nsd12
2.4 删除用户
使用 userdel 命令
userdel  [-r]   用户名
[root@server0 ~]# userdel   nsd01
[root@server0 ~]# id  nsd01
[root@server0 ~]# userdel  -r  nsd02  #递归删除
[root@server0 ~]# id  nsd02

3、组管理及操作

3.1 添加组
组基本信息存放在 /etc/group 文件
[root@server0 ~]# grep 'stugrp' /etc/group
stugrp:x:1605:
组名:组的密码占位符:GID:组成员列表
• 使用 groupadd 命令
groupadd [-g 组ID]  组名
• 使用 gpasswd 命令           #管理组成员
gpasswd -a 用户名 组名     #添加成员到哪个组
gpasswd -d 用户名 组名     #从哪个组中删除成员
[root@server0 ~]# grep 'stugrp' /etc/group
[root@server0 ~]# gpasswd -a natasha stugrp
[root@server0 ~]# grep 'stugrp' /etc/group
[root@server0 ~]# gpasswd -a kenji stugrp
[root@server0 ~]# grep 'stugrp' /etc/group
[root@server0 ~]# gpasswd -d kenji stugrp
[root@server0 ~]# grep 'stugrp' /etc/group
3.2 使用groupmod命令 #修改组属性
groupmod -g 1100 组名 #修改gid号
3.3 删除组
• 使用 groupdel 命令
groupdel 组名
 

原文地址:https://www.cnblogs.com/cp-linux/p/12880077.html