Linux常用命令--用户管理
摘要
-
文本介绍linux中用户的维护及其相关命令
-
本文基于
CentOS8(x86_64)
一.配置文件说明
-
1./etc/passwd :用户信息文件
vipw
:编辑/etc/passwd文件
pwck
:检查/etc/passwd内容是否有效,比如宿主目录是否存在等等
1 | root:x:0:0:root:/root:/bin/bash |
-
2./etc/shadow :密码文件
1 | root:!!:18755:0:99999:7::: |
-
3./etc/group :用户组文件
vigr
:编辑/etc/group文件
grpck
:检查/etc/group内容是否有效
1 | root:x:0: |
-
4./etc/gshadow :组密码文件
1 | root::: |
-
5./etc/skel/* :新用户环境变量文件
-
6./etc/login.defs :使用useradd默认创建用户时的缺省配置,比如UID范围,GID范围,密码有效期,密码长度限制,是否自动创建Home目录,密码加密方式等等
-
7./etc/default/useradd :使用useradd默认创建用户时的缺省配置,比如Home目录位置,默认shell,默认使用的新用户环境变量文件位置(/etc/skel),等等
二.添加、删除用户
-
1.通过
useradd
命令创建用户,并使用passwd
设置用户密码
1 | # root创建用户 |
-
2.通过编辑配置文件创建
- 1)分别在/etc/passwd、/etc/group和/etc/shadow中增加一行记录
密码设置:echo 123456 | sha512sum
- 2)创建宿主目录
- 3)拷贝默认的配置文件到宿主目录:
cp -rf /etc/skel/* dir
- 4)设置用户初始密码
- 1)分别在/etc/passwd、/etc/group和/etc/shadow中增加一行记录
-
3.删除用户
1 | userdel -r 用户名 |
-
4.修改用户
1 | # 将用户添加到附加组中 |
三.添加、删除组
-
1.创建组
1 | groupadd 组名 |
-
2.删除组
1 | groupdel 组名 |
-
3.修改组名称
1 | groupmod -n newname oldname |
-
4.设置组密码
1 | 设置密码:gpasswd 组名 |
-
5.其它组命令
1 | # 将用户加入组 |
四.用户管理命令
1 | whoami :显示当前用户名称 |
五.用户禁用与恢复
-
禁用:锁定用户,不能登录
1 | usermod -L 用户名 :/etc/shadow中对应的密码前面增加一个`!` |
-
恢复:解锁
1 | usermod -U 用户名 |
六.sudo
-
配置文件/etc/sudoers
1 | 格式: A B = (C) D E |
-
visudo
:编辑/etc/sudoers -
sudo command
:执行命令,需要输入当前用户密码 -
sudo -l
:查看当前用户可以使用sudo执行哪些命令
七.批量添加用户,适用于少量添加,大量可以编写个脚步
1 | 1.编辑一个用户信息文件,比如user.info,格式与/etc/passwd相同 |
八.查看当前登录的用户
1 | # 列出当前session |