第四章:用户和权限管理
用户和组的概念和管理:
在Linux系统中,用户和组是管理系统访问权限和资源的重要组成部分。用户代表着系统中的个体,而组则用于组织和管理用户。以下是一些用户和组管理的基本知识:
- 用户管理:
- 创建用户:使用
useradd
命令创建新用户。例如:
useradd username
- 删除用户:使用
userdel
命令删除现有用户。例如:
userdel username
- 修改用户属性:使用
usermod
命令修改用户的属性,如用户名、密码、家目录等。例如:
usermod -l newname oldname
- 切换用户:使用
su
命令或sudo
命令切换到其他用户。例如:
su username
- 查看用户信息:使用
id
命令或finger
命令查看用户的详细信息。例如:
id username
finger username
- 组管理:
- 创建组:使用
groupadd
命令创建新组。例如:
groupadd groupname
- 删除组:使用
groupdel
命令删除现有组。例如:
groupdel groupname
- 修改组属性:使用
groupmod
命令修改组的属性,如组名等。例如:
groupmod -n newname oldname
- 将用户添加到组:使用
usermod
命令将用户添加到指定组。例如:
usermod -aG groupname username
- 查看组信息:使用
group
命令或grep
命令查看组的详细信息。例如:
group groupname
grep groupname /etc/group
用户认证和权限控制:
在Linux系统中,用户认证和权限控制是保护系统资源和数据安全的关键机制。以下是一些用户认证和权限控制的基本知识:
- 用户认证:
- 用户名和密码:用户使用唯一的用户名和对应的密码进行认证。密码存储在
/etc/shadow
文件中,以加密形式保存。 - 口令策略:可以通过修改
/etc/login.defs
文件来设置密码的复杂性要求、最小长度、过期时间等策略。 - 公钥认证:可以使用公钥加密技术来进行用户认证,避免使用密码进行认证。用户的公钥保存在
~/.ssh/authorized_keys
文件中。
- 权限控制:
- 文件权限:Linux系统使用权限位来控制文件的访问权限。权限位包括读取(r)、写入(w)和执行(x)权限。可以使用
chmod
命令修改文件的权限。 - 文件所有者和所属组:每个文件都有一个所有者和一个所属组。所有者可以修改文件权限,而所属组成员有特定的访问权限。可以使用
chown
和chgrp
命令修改文件的所有者和所属组。 - 目录权限:目录的权限控制方式与文件类似,但有一些额外的权限。例如,读取权限允许查看目录内容,写入权限允许在目录中创建、删除和重命名文件。
用户环境配置和Shell定制:
用户环境配置和Shell定制可以提高用户的工作效率和舒适度。以下是一些用户环境配置和Shell定制的基本知识:
- 用户配置文件:
~/.bashrc
:每次用户登录时执行的脚本,用于设置用户的环境变量、别名和函数等。~/.bash_profile
:用户登录时执行的脚本,用于设置用户的环境变量和执行其他初始化任务。~/.bash_logout
:用户退出登录时执行的脚本,用于执行清理任务或其他操作。
- 环境变量配置:
PATH
:定义命令搜索路径,用于指定系统在哪些目录下查找可执行文件。HOME
:指定用户的主目录路径。PS1
:定义Shell提示符的格式。LANG
和LC_ALL
:定义系统的语言环境。
- Shell定制:
- 别名和函数:可以使用
alias
命令创建别名,简化常用命令的输入。例如:
alias ll='ls -l'
也可以在~/.bashrc
文件中定义自己的函数,实现更复杂的操作。
- 命令历史记录:Shell会记录用户执行的所有命令,可以使用
history
命令查看和搜索历史记录。可以通过修改~/.bashrc
文件中的HISTSIZE
和HISTFILESIZE
变量来控制历史记录的大小。 - 自动补全:Shell可以自动补全命令、文件和路径等。可以通过修改
~/.bashrc
文件中的complete
命令来定制自动补全的行为。
通过合理配置用户和组、进行用户认证和权限控制,以及定制用户环境和Shell,可以更好地管理系统资源和保护数据的安全性。
标签:文件,Shell,用户,命令,使用,权限,第四章 From: https://blog.51cto.com/u_16123429/7074336