
Linux-账号和权限管理
2. 用户账号文件
3. 密码文件
4. 添加用户账号
5. 设置用户密码
6. 修改用户账号属性
7. 删除用户账号
9. 组账号文件
10. 添加组账号
11. 添加/删除组成员
12. 删除组账号
15. 设置文件和目录权限
16. 设置文件和目录归属
17. 设置默认权限
发布日期:2021-05-10 03:45:52
浏览次数:22
分类:精选文章
本文共 2804 字,大约阅读时间需要 9 分钟。
Linux 账号和权限管理
1. 用户账号概述
在Linux系统中,用户账号分为以下几类:
- 超级用户(root):是Linux系统中默认的超级用户账号,对本主机拥有最高权限。系统中只有一个超级用户账号,通常由系统管理员负责管理。
- 普通用户:由超级用户或其他具有管理员权限的用户创建。普通用户的权限会受到限制,一般只能读写自己的宿主目录。
- 程序用户:安装Linux操作系统或某些应用程序时,会自动创建一些低权限用户账号。这些用户通常不能登录系统,例如
bin
、daemon
、ftp
、mail
等。
组账号
组账号分为基本组和附加组:
- 基本组:创建用户时指定的组,记录在
/etc/passwd
文件的第4个字段(GID)。 - 附加组:用户可以加入多个附加组,附加组的名称或GID号需要预先存在。
UID和GID
- UID(User ID):用户账号的标识号,root账号的UID为0。
- GID(Group ID):组账号的标识号,root账号的GID也为0。
- 程序用户:UID和GID号默认为1~499。
- 普通用户:UID和GID号默认为500~60000。
2. 用户账号文件 /etc/passwd
保存用户的基本信息,每行对应一个用户账号,格式为:
username:x:UID:GID:full name:home directory:shell
x
:密码占位符。UID
:用户身份标识号。GID
:用户所属基本组的组标识号。full name
:用户的全名。home directory
:用户的宿主目录。shell
:用户登录的Shell程序路径。
3. 密码文件 /etc/shadow
保存用户的密码信息及其他安全相关属性,每行对应一个用户账号,格式为:
username:Encrypted password:latest=F transcend:GID表示密码过期时间等信息
默认只有root用户可以读取该文件,普通用户无法访问。
4. 添加用户账号 useradd
命令语法:
useradd [选项]... username
常用选项:
-u UID
:指定用户的UID号。-d dir
:指定用户的宿主目录。-e
:指定用户账户失效时间。-g GID或组名
:指定用户的基本组。-G GID或组名
:指定用户的附加组。-M
:不创建宿主目录。-s shell
:指定用户的登录Shell程序。
示例:
useradd -d /ftphome/mike -g ftpuser -G root mike
添加用户后,用户账号信息会被添加到/etc/passwd
、/etc/shadow
等文件中。
5. 设置用户密码 passwd
命令语法:
passwd [选项]... username
常用选项:
-d
:清空用户密码。-l
:锁定用户账号。-S
:查询用户账号状态。-u
:解锁用户账号。
示例:
echo "新密码" | passwd --stdin username
6. 修改用户账号属性 usermod
命令语法:
usermod [选项]... username
常用选项:
-l
:更改用户登录名称。-s
:指定用户的登录Shell程序(如/sbin/nologin
表示不可登录)。-d
:修改用户的宿主目录。-g
、-G
、-e
:修改用户的基本组、附加组及账户失效时间。
示例:
usermod -l zhangsan1 zhangsan
7. 删除用户账号 userdel
命令语法:
userdel [-r] username
选项:
-r
:删除用户的宿主目录及相关文件。
示例:
userdel -r zs
8. 用户初始配置文件
用户登录后会自动读取以下配置文件:
~/.bashrc
:设置用户登录时自动执行的环境变量和命令。~/.bash_profile
:设置用户每次登录时自动执行的环境变量和命令。~/.logout
:设置用户退出登录时自动执行的命令。
9. 组账号文件 /etc/group
和 /etc/gshadow
/etc/group
:保存组账号的基本信息,格式为:groupname:x:GID: username1,username2,...
/etc/gshadow
:保存组账号的密码信息,格式与/etc/shadow
类似。
10. 添加组账号 groupadd
命令语法:
groupadd [-g GID] groupname
选项:
-g GID
:指定组的GID号。
示例:
groupadd -g 1000 market
11. 添加/删除组成员 gpasswd
命令语法:
gpasswd [选项]... groupname
常用选项:
-a
:添加一个用户到组中。-d
:删除一个用户从组中。-M
:指定组成员列表,用户用逗号分隔。
示例:
gpasswd -a user market
12. 删除组账号 groupdel
命令语法:
groupdel groupname
示例:
groupdel market
13. 查询用户信息
groups
命令:查询用户所属的组。groups username
id
命令:查询用户UID号。id username
finger
命令:查询用户详细登录属性。finger username
who
、w
、users
命令:查询已登录到主机的用户信息。
14. 文件和目录权限管理
权利项
权限为3位数字,每位数字对应如下:
- 4:读取(读)
- 2:写入(写)
- 1:执行(执行)
组织权限
权限项与文件或目录的归属关系为:
权限位:所有者、所属组、其他用户
例如:
drwxr-xr-x
:所有者有写、读、执行权限,所属组有读、写权限,其他用户有读执行权限。
15. 设置文件和目录权限 chmod
命令语法:
chmod [ugoa][±=][rwx]... file/directory
选项:
u
:属主g
:属组o
:其他用户a
:所有用户+
:加上权限-
:移除权限=
:设置特定权限
示例:
chmod ugo+x filechmod -x file
如果使用3位八进制数:
chmod 755 file
16. 设置文件和目录归属 chown
命令语法:
chown [owner]:[group] file/directory
示例:
chown root:dba /database
17. 设置默认权限 umask
默认权限控制新建文件或目录的权限,值从0到7,0表示最严格的权限。
umask 022
例如:
umask 0
:新建文件为—
(不可读、不可写、不可执行)。umask 777
:新建文件为777
(执行权限给所有人)。
通过合理设置文件和目录的权限及归属,可以有效保护系统安全。
发表评论
最新留言
初次前来,多多关照!
[***.217.46.12]2025年04月12日 16时48分22秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
OpenCv+wxwidgets尝试
2019-03-16
wxwidgets自定义事件+调试
2019-03-16
wxwidgets编写多线程程序--wxThread
2019-03-16
BUUCTF:[湖南省赛2019]Findme
2019-03-16
p144循环网络
2019-03-17
三维点云处理
2021-05-20
springboot security 基于redis的session共享(7)
2021-05-20
vue 权限管理 菜单按钮权限控制(7)
2021-05-20
vue 权限管理 主题切换(8)
2021-05-20
Qt 在Excel文件中Chart绘图
2021-05-20
01-webpack5理解及配置
2021-05-20
webpack的安装和使用
2021-05-20
Vue.js学习-15-v-for循环数组内容
2021-05-20
kafka超时错误或者发送消息失败等错误,排错方式
2021-05-20
sockjs-node/info?t=1462183700002 报错解决方案
2021-05-20
FI 替代相关 OSS Note 要点记录
2021-05-20
蓝桥杯---试题 算法提高 欧拉函数(数学)
2021-05-20
【网络加速】TensorRT7-开发指南中文_Plus版【1】
2021-05-20
SaltStack about The Top File 使用知识介绍
2021-05-20