欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

linux用户管理

程序员文章站 2022-07-14 19:59:25
...

Linux管理用户和组

系统用户: 1.安全提升 2.不同的身份拥有不同的权限 3.登录操作系统
组:方便管理用户

唯一标识: UID GID
管理员root的UID为0

组: 基本组 附加组(从属组)
一个用户至少属于一个组
用户基本信息存放在 /etc/passwd 文件

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

用户名:密码占位符:UID:基本组GID:用户描述信息:家目录:解释器程序

  • useradd

    ​ – useradd [选项]… 用户名
    ​ -u 指定用户id

​ -d 指定家目录路径

​ -s 指定登录解释器( /sbin/nologin禁止登陆)

​ -G 指定附加组

[[email protected] ~]# useradd tom
[[email protected] ~]# id tom       #id查看用户是否存在
uid=1001(tom) gid=1001(tom) groups=1001(tom)
[[email protected] ~]# id lisi
id: lisi: no such user
[[email protected] ~]# useradd nsd01
[[email protected] ~]# id nsd01
[[email protected] ~]# useradd -u 1300 nsd02        #指定UID创建用户
[[email protected] ~]# id nsd02
uid=1300(nsd02) gid=1300(nsd02) groups=1300(nsd02)
[[email protected] ~]# useradd -d /opt/haxi   haxi  #指定家目录
[[email protected] ~]# id haxi

-s 登录解释器 /sbin/nologin:禁止用户登录系统

[[email protected] ~]# useradd -s /sbin/nologin nsd05
[[email protected] ~]# id nsd05
uid=1401(nsd05) gid=1401(nsd05) 组=1401(nsd05)
[[email protected] ~]# grep nsd05 /etc/passwd

-G 附加组

[[email protected] ~]# groupadd tedu
[[email protected] ~]# useradd -G tedu nsd06
[[email protected] ~]# id nsd06

[[email protected] ~]# useradd -G tedu nsd07
[[email protected] ~]# id nsd07

[[email protected] ~]# useradd -G tedu nsd08
[[email protected] ~]# id nsd08

###################################################

设置登录密码

  • passwd

    – passwd [用户名]

    [[email protected] ~]# passwd nsd01              #以下为中文提示
    更改用户 nsd01 的密码 。
    新的 密码:
    无效的密码: 密码少于 8 个字符
    重新输入新的 密码:
    passwd:所有的身份验证令牌已经成功更新。
    [[email protected] ~]# su - nsd01              #临时命令行切换身份
    [[email protected] ~]$ passwd                   
    更改用户 nsd01 的密码 。
    为 nsd01 更改 STRESS 密码。
    (当前)UNIX 密码:
    新的 密码:
    重新输入新的 密码:
    passwd:所有的身份验证令牌已经成功更新。
    [[email protected] ~]$ exit                   #退出当前控制台
    

非交互式设置密码

  • echo ‘密码’ | passwd --stdin 用户名
[[email protected] ~]# echo 123 | passwd --stdin nsd01
[[email protected] ~]# echo redhat | passwd --stdin nsd02
[[email protected] ~]# echo 123456 | passwd --stdin tom
[[email protected] ~]# echo tarena | passwd --stdin nsd03

用户密码信息存放在 /etc/shadow 文件

nsd07:66S.i3F30.$J6Tp02BHAy61wyUECn94Nz8BR8x7pr.BhAVdsoEDLr2PzJA4Qv2vMCuwb/lZUZtf6NrbmJ8SM/sdJaX9eu6eG0:18111:0:99999:7:::

用户名:密码加密后的字符串:上一次修改密码的时间
自1970-1-1到上一次修改密码的时间,经历的天数

修改用户属性

• 使用 usermod 命令
usermod [选项]… 用户名
-u 用户id

​ -d 家目录路径

​ -s 登录解释器

​ -G 附加组

[[email protected] ~]# useradd nsd08
[[email protected] ~]# id nsd08

[[email protected] ~]# grep nsd08  /etc/passwd

[[email protected] ~]# usermod -u 1500 -d /opt/test -G tedu -s   /sbin/nologin  nsd08

[[email protected] ~]# id nsd08
[[email protected] ~]# grep nsd08  /etc/passwd

删除用户

• 使用 userdel 命令
userdel 用户名

​ -r 递归删除,连同用户的家目录一并删除

[[email protected] ~]# ls /home/
[[email protected] ~]# userdel -r nsd01
[[email protected] ~]# id nsd01
[[email protected] ~]# ls /home/

[[email protected] ~]# userdel nsd02
[[email protected] ~]# id nsd02
[[email protected] ~]# ls /home/

管理组

​ 组基本信息存放在 /etc/group 文件

[[email protected] ~]# grep dz /etc/group
dz:x:1601:

​ 组名:组的密码占位符:GID:组成员列表

创建组
  • groupadd [-g 组ID] 组名
[[email protected] ~]# groupadd tarena
[[email protected] ~]# grep tarena /etc/group

[[email protected] ~]# useradd nsd12
[[email protected] ~]# useradd kaka
[[email protected] ~]# useradd dc
[[email protected] ~]# useradd kenji
添加/删除 组员
  • 使用 gpasswd 命令
    – gpasswd -a 用户名 组名 #添加用户到组中
    – gpasswd -d 用户名 组名 #将用户从组中删除
[[email protected] ~]# gpasswd -a dc tarena
[[email protected] ~]# id dc
[[email protected] ~]# grep tarena /etc/group

[[email protected] ~]# gpasswd -a kenji tarena
[[email protected] ~]# grep tarena /etc/group

[[email protected] ~]# gpasswd -d dc tarena
[[email protected] ~]# grep tarena /etc/group

[[email protected] ~]# gpasswd -a kaka tarena
[[email protected] ~]# grep tarena /etc/group
删除组
  • groupdel 组名
    用户的基本不能删除

组的密码信息存放在 /etc/gshadow 文件

相关标签: 用户管理