Linux 用户和用户组

本文介绍了Linux系统中用户和用户组的基本概念,包括/etc/passwd文件的解析、用户权限管理、用户与用户组的分类等内容,并详细讲解了useradd、userdel、usermod等常用命令的使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

1.从 /etc/passwd说起

在liunx系统中操作系统中的用户名和密码都存在了/etc/passwd中,这个文件内容如下:

 

他们的意思依次如下:

login name:登录用名(wang

passwd:密码 (x)

UID:用户身份编号 (1000)

GID:登录默认所在组编号 (1000)

GECOS:用户全名或注释

home directory:用户主目录 (/home/wang)

shell:用户默认使用shell (/bin/bash)

 

2.Linux具有多用户,多任务的特性

Linux系统中多个用户可以同时登入同一个系统执行各自不同作任务,而且各自不受影响;不同用户具有不同的权限,每个用户是在权限允许的范围内完成不同的任务,linux正是通过这种权限的划分与管理,实现了多用户多任务的运行机制。

3. 用户和用户组

用户:如果想要执行系统中的任务,就必须要有一个账户来登录系统,这个账户就是用户。

   Linux用户:Username/UID

  管理员:

root, 0

普通用户:1-65535

系统用户:

1-499, 1-999(CentOS7)

对守护进程获取资源进行权限分配

登录用户:500+, 1000+(CentOS7)

交互式登录

用户组:

用户组就是具有相同特征的用户的集合。一个组可以包含多个用户,每个用户也可以属于不同的组。

Linux组:Groupname/GID

  管理员组:root, 0

系统组:

1-499, 1-999(CENTOS7)

普通组:

500+, 1000+(CENTOS7)

 

4.用户组的分类:

用户的主要组(primary group) :创建用户是会随用户创建一个与用户同名的组,这个组就是基本组;

用户必须属于一个且只有一个主组

组名同用户名,且仅包含一个用户,私有组

用户的附加组(supplementary group) :用户加入的基本组以外的组,称为用户的附加组;

一个用户可以属于零个或多个辅助组

 

 

 

5.useradd 命令:添加用户

Linux 中使用 useradd 命令添加一个用户。例如添加一个mike用户

 

 

 

/etc/passwd 的最后一行,有刚刚添加的用户,并且系统自动设置了用户的一些属性,比如UID,GID,HOME DIR等。我们也可以手动指定新增用户的信息:

useradd -u UID:指定 UID,这个 UID 必须是大于等于500,并没有其他用户占用的 UID

useradd -g GID/GROUPNAME:指定默认组,可以是 GID 或者 GROUPNAME,同样也必须真实存在

useradd -G GROUPS:指定额外组

useradd -c COMMENT:指定用户的注释信息

useradd -d PATH:指定用户的家目录

useradd -s SHELL:指定用户的默认 shell,最好是在 /etc/shells 中存在的路径

useradd -s /sbin/nologin:该用户不能登录,我们可以看到系统用户的 shell 字段也是 /sbin/nologin

echo $SHELL :查看当前用户的 shell 类型

useradd -M USERNAME:创建用户但不创建家目录

useradd -mk USERNAME:创建用户的同时创建家目录,并复制 /etc/skel 中的内容到家目录中。◦如果用户没有家目录,那么不能切换到该用户

 

6.userdel 命令:删除用户

userdel USERNAME:删除用户

userdel -r USERNAME:删除用户的同时删除用户家目录

 

7.id 命令:显示账号属性信息

id -g USERNAME:显示默认组ID

◦d -G USERNAME:显示附加组ID

id -u USERNAME:显示UID

id -n -g/-G/-U:显示默认组/附加组/用户的名称

8.finger 命令:检索用户信息,比使用 id 命令更加友好

 

9.usermod 命令:修改用户信息

基本用法和 useradd 相似,这里列出需要注意的点

usermod -G GROUPS USERNAME:改变用户的附加组,会完全替换原有的附加组

usermod -G -a GROUPS USERNAME:在原有附加组的基础上追加附加组

usermod -d PATH USERNAME:修改家目录。修改后原先家目录中的文件不能访问了,因为在当前的家目录中并不存在这些文件。

usermod -l NEWNAME USERNAME:改变用户名

usermod -e USERNAME:指定该用户的过期时间

usermod -L USERNAME:锁定用户

usermod -U USERNAME:解锁用户

 

 10.快捷命令

chsh SHELL USERNAME:改变默认 shell

chfn USERNAME:修改注释信息,用来增加用户的详细信息,如公司,地址等。可以由 finger 查看相应的改变。

 

11.passwd

passwd --stdio:标准输入读取密码passwd -l:锁定用户账号(root only) ◾echo "newpassword" | passwd --stdio MIKE

 passwd -u:解锁用户账号(root only)

passwd -d:删除用户密码。用户密码删除后不能登录。

 

 12.pwch(password check):检查密码文件的完整性,可获取一些警告信息

 

13.groupadd 命令:添加组

groupadd -g GID GROUPNAME:指定GIDgroupadd -r GROUPNAME:添加一个系统用户组(-r 也适用于 useradd) ◾groupadd -r apache

 

14groupmod 命令:修改组

groupmod -g NEWGID GROUPNAME:修改GID

groupmod -n NEWGROUPNAME GROUPNAME:修改组名

 

15.groupdel 命令:删除组

groupdel GROUPNAM

 

16.gpasswd 命令:给组加密码

gpasswd GROUPNAME

 

 

转载于:https://www.cnblogs.com/zkwjl/p/9345853.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值