Linux基础--用户管理

目录

查看用户

[使用命令: id](#使用命令: id)

创建用户

[使用命令: useradd](#使用命令: useradd)

​编辑

为用户设置密码

[使用命令: passwd](#使用命令: passwd)

​编辑

删除用户

[使用命令: userdel](#使用命令: userdel)

创建用户组

[使用命令: groupadd](#使用命令: groupadd)

删除用户组

[使用命令: groupdel](#使用命令: groupdel)

用户设置

[使用命令: usermod](#使用命令: usermod)

将用户从组中去除

[使用命令: gpasswd](#使用命令: gpasswd)

用户信息文件

[文件位置: /etc/passwd](#文件位置: /etc/passwd)

用户组信息文件

[文件位置: /etc/group](#文件位置: /etc/group)

其他

系统用户与普通用户的区分

统计不同用户的数量

[使用命令: awk](#使用命令: awk)

对文件内容进行排序

[使用命令: sort](#使用命令: sort)


查看用户

使用命令: id

查看用户tom是否存在

用户存在会显示对应信息,用户不存在会报错

创建用户

使用命令: useradd

创建用户jack

如果用户jack存在,则会报错

可以使用"&&"和"||"来进行创建,避免报错

为用户设置密码

使用命令: passwd

为jack用户设置密码

使用--stdin来为tom进行密码的设置

此方法虽然方便,但是会将密码明文显示在终端,可以使用cat来读取密码文件来增强安全性

删除用户

使用命令: userdel

删除用户jack

使用userdel直接对用户进行删除时,用户的家目录文件和邮件目录文件不会被删除,需要进行手动删除,否则会影响下次用户的添加,

选项: -r

删除用户tom以及tom用户家目录和邮件目录文件

使用此选项可以将用户在删除的时候将其家目录和邮件目录一并删除

创建用户组

使用命令: groupadd

创建用户组hr

删除用户组

使用命令: groupdel

用户设置

使用命令: usermod

更改用户tom登录的shell,使其无法进行登录

更改用户登录shell为/sbin/login后,用户将无法进行登录

将用户tom追加一个附加组hr

将用户从组中去除

使用命令: gpasswd

将tom用户从hr组中除去

用户信息文件

文件位置: /etc/passwd

文件内的内容以":"分隔;

第一列: 用户名

第二列: 密码占位符

第三列: 用户ID

第四列: 组ID

第五列: 用户描述信息

第六列: 用户家目录

第七列: 用户登录shell

用户组信息文件

文件位置: /etc/group

文件内容仍然是以":"进行分隔:

第一列: 组名字

第二列: 占位符

第三列: 组ID

第四列: 组其他成员(不以此组为主族的用户)

其他

系统用户与普通用户的区分

系统用户UID都是小于1000,普通用户UID大于1000,其中root用户UID为0

统计不同用户的数量
使用命令: awk

统计系统用户的数量

bash 复制代码
cat /etc/passwd | awk -F":" 'BEGIN{i=0;print "统计用户数量"}{if ($3<1000){i++}}END{print"系统用户数量为:"i}'
对文件内容进行排序
使用命令: sort

对文件/etc/passwd以用户ID从大到小的顺序进行排序

bash 复制代码
cat /etc/passwd | sort -t":" -k3nr 

对文件/etc/passwd进行排序,以GID为标准进行从小到大排序,当GID一样时,根据UID从大到小进行排序

bash 复制代码
cat /etc/passwd | sort -t":" -k4n -k3nr 
相关推荐
chlk1231 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑1 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件1 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
碳基沙盒1 天前
OpenClaw 多 Agent 配置实战指南
运维
深紫色的三北六号2 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash2 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI2 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行3 天前
Linux和window共享文件夹
linux
木心月转码ing3 天前
WSL+Cpp开发环境配置
linux
蝎子莱莱爱打怪4 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes