本篇主要讲述:

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 组名