4.Linux管理用户和组

一.管理用户

用户:1.登陆操作系统   2.不同用户具备不同权限
组:方便管理用户

唯一标识: UID  GID
普通用户的UID:1000以上
管理员UID为0

组: 基本组(私有组)     附加组(从属组)
一个用户至少属于一个组

1.添加用户

用户基本信息存放在 /etc/passwd 文件
[root@A ~]# head -1 /etc/passwd
root:x:0:0:root:/root:/bin/bash
用户名:密码占位符:UID:基本组GID:用户描述信息:家目录(宿主目录):解释器

• 使用 useradd 命令
– useradd [选项]... 用户名

• 常用命令选项
– -u 用户id、-d 家目录路径、-s 登录解释器、-G 附加组


eg:

[root@A ~]# useradd nsd02
[root@A ~]# id nsd02             #查看用户基本信息

[root@A ~]# useradd nsd03
[root@A ~]# id nsd03

[root@A ~]# useradd -u 1500 nsd04
[root@A ~]# id nsd04

[root@A ~]# useradd -d /opt/nsd06  nsd06
[root@A ~]# ls /opt/

[root@A ~]# useradd -s /sbin/nologin nsd07

[root@A ~]# grep nsd07 /etc/passwd
用户名:密码占位符:UID:基本组GID:用户描述信息:家目录(宿主目录):解释器

[root@A ~]# useradd -s /sbin/nologin nsd08
[root@A ~]# grep nsd08 /etc/passwd

[root@A ~]# groupadd tedu           #创建组
[root@A ~]# useradd -G tedu nsd09   #指定用户的附加组
[root@A ~]# id nsd09
 

2.设置登录密码

用户密码信息存放在 /etc/shadow 文件
[root@A ~]# grep nsd02 /etc/shadow
nsd02:$6$9Ce00zrL$Wre3tD8GflkNQiGbdfrAU/rSBUkYZ8DtXLbgxNfLsj68H.ukSpTMWSGb7ZIA02R9T97wpJt/TqLZK.VNZaLfr.:18233:0:99999:7:::

用户名:密码加密字符串:上一次修改密码的时间
上一次修改密码的时间:自1970-1-1 ~ 2019-12-3 经历的天数

①• 使用 passwd 命令
– passwd [用户名]

[root@A ~]# passwd nsd02
更改用户 nsd02 的密码 。
新的 密码:                                  #输入新的密码
无效的密码: 密码少于 8 个字符
重新输入新的 密码:                      #重新输入新的密码
passwd:所有的身份验证令牌已经成功更新。

[root@A ~]# su - nsd02    #在命令行,临时切换用户身份
[nsd02@A ~]$ passwd 
更改用户 nsd02 的密码 。
为 nsd02 更改 STRESS 密码。
(当前)UNIX 密码:                  #输入旧密码
新的 密码:                                #输入新的密码
重新输入新的 密码:                   #重新输入新的密码
passwd:所有的身份验证令牌已经成功更新。
[nsd02@A ~]$ exit
登出
[root@A ~]# 

②非交互式设置命令

[root@A ~]# echo '密码'   |   passwd --stdin 用户名

3.修改用户属性

• 常用命令选项
– -u 用户id、-d 家目录路径、-s 登录解释器、-G 附加组(重置附加组)

usermod  -d   可以修改家目录,但不会创建家目录,需要修改家目录

同一个用户的附加组会默认覆盖上一个附加组

不能删除用户的基本组,可以删除用户的附加组

eg:

[root@A ~]# useradd nsd10
[root@A ~]# id nsd10

[root@A ~]# grep nsd10 /etc/passwd
[root@A ~]# usermod -u 1600 -s /sbin/nologin nsd10
[root@A ~]# grep nsd10 /etc/passwd

[root@A ~]# grep nsd10 /etc/passwd
[root@A ~]# usermod -d /opt/haxi nsd10
[root@A ~]# grep nsd10 /etc/passwd
[root@A ~]# ls /opt/


[root@A ~]# id nsd10

[root@A ~]# usermod -G tedu nsd10
[root@A ~]# id nsd10

[root@A ~]# groupadd tarena             #创建组tarena
[root@A ~]# usermod -G tarena nsd10
[root@A ~]# id nsd10

查看用户id信息

id   用户名

4.删除用户

删除用户
• 使用 userdel 命令
– userdel  用户名
   [-r]:连同家目录一并删除
   
eg:

[root@A ~]# userdel -r nsd02
[root@A ~]# id nsd02
id: nsd02: no such user
[root@A ~]# ls /home/
 

二.管理组

1.添加组
组基本信息存放在 /etc/group 文件
[root@A ~]# grep stugrp /etc/group
stugrp:x:1509:
组名:组的密码占位符:组GID:组成员列表

• 使用 groupadd 命令
– groupadd [-g 组ID] 组名

[root@A ~]# groupadd stugrp             #创建组
[root@A ~]# grep stugrp /etc/group      #查看组信息
stugrp:x:1509:
[root@A ~]# useradd kaka
[root@A ~]# useradd jack
[root@A ~]# useradd natasha

2.管理组

组成员信息存放在 /etc/gshadow 文件
• 使用 gpasswd 命令
– gpasswd -a 用户名 组名
– gpasswd -d 用户名 组名

[root@A ~]# gpasswd -a kaka stugrp    #将用户kaka添加到stugrp组
[root@A ~]# grep stugrp /etc/group

[root@A ~]# gpasswd -a jack stugrp
[root@A ~]# grep stugrp /etc/group

[root@A ~]# id kaka
[root@A ~]# id jack

[root@A ~]# gpasswd -a kaka tedu
[root@A ~]# id kaka

[root@A ~]# gpasswd -d kaka stugrp   #将用户kaka从stugrp组删除
[root@A ~]# id kaka
[root@A ~]# grep stugrp /etc/group

[root@A ~]# gpasswd -a natasha stugrp
[root@A ~]# grep stugrp /etc/group

3.删除组

删除组,不能删除用户的基本组
• 使用 groupdel 命令
– groupdel 组名

[root@A ~]# groupdel stugrp
[root@A ~]# grep stugrp /etc/group
 

案例1:配置用户和组账号
• 新建用户 alex,其用户ID为3456,密码是flectrag          
[root@A ~]# useradd -u 3456 alex
[root@A ~]# echo flectrag | passwd --stdin  alex
• 一个名为 adminuser 的组    
[root@A ~]# groupadd adminuser 
• 一个名为 natasha 的用户,其属于 adminuser 组,这个组是该用户的从属组
[root@A ~]# gpasswd -a natasha adminuser
[root@A ~]# grep adminuser /etc/group
• 一个名为 harry 的用户,其属于 adminuser 组,这个组是该用户的从属组
[root@A ~]# useradd -G adminuser harry
• 一个名为 sarah的用户,禁止用户登陆操作系统,并且不是 adminuser 组的成员
[root@A ~]# useradd -s /sbin/nologin sarah
[root@A ~]# grep sarah /etc/passwd
• natasha 、harry、sarah 的密码都要设置为 flectrag
[root@A ~]# echo flectrag | passwd --stdin  natasha
[root@A ~]# echo flectrag | passwd --stdin  harry
[root@A ~]# echo flectrag | passwd --stdin  sarah

发布了37 篇原创文章 · 获赞 48 · 访问量 1691

猜你喜欢

转载自blog.csdn.net/tian1345/article/details/103398702