地图网站 源码,阿里云 ip 网站,个人优秀网站欣赏,wordpress教学视频前言
深入了解 CentOS 7 用户组管理的命令#xff0c;掌握关键的用户组操作技巧。从创建和删除用户组、修改组属性#xff0c;到设置组密码和管理组成员#xff0c;这篇文章详细介绍了 CentOS 7 系统下常用的用户组管理命令#xff0c;为读者小伙伴提供了实用而全面的指南… 前言
深入了解 CentOS 7 用户组管理的命令掌握关键的用户组操作技巧。从创建和删除用户组、修改组属性到设置组密码和管理组成员这篇文章详细介绍了 CentOS 7 系统下常用的用户组管理命令为读者小伙伴提供了实用而全面的指南。无论是初学者还是有经验的用户都能在这篇文章中找到对用户组管理的实际运用方法以便加强你的 Linux 系统管理技能提高工作效率。
Linux权限控制的基本工作原理
Linux系统的权限管理基本原理是基于用户和用户组的访问控制。每个文件和目录都有一个所有者和一个所属用户组以及对应的读、写、执行权限。那什么是所有者和所属组呢又是如何控制权限呢
所有者Owner是指创建该文件或目录的用户。所有者具有最高权限可以对文件或目录进行读、写和执行操作也可以修改权限和更改所有者。所属用户组Group是指将文件或目录分配给某个特定用户组。所属用户组的成员具有与所有者相同的权限但不能更改文件或目录的所有者。通常情况下文件或目录的所属用户组与创建它的用户的默认用户组相同。Linux系统有三种权限分别是可读、可写、可执行用数字4、2、1分别表示可读、可写、可执行。文件和目录的权限可以分为三部分分别是所有者权限、所属用户组权限和其他用户权限其中每一部分又分别包括读、写、执行权限。例如一个文件的权限为-rw-r--r--其中第一位表示这是一个普通文件后面的三组r、w、x分别表示所有者、所属用户组、其他用户的读、写、执行权限。具体来说这个文件的所有者具有读和写的权限所属用户组和其他用户则只有读的权限。请注意数字0代表没有权限数字1代表执行权限数字2代表写权限数字4代表读权限。这些数字权限可以通过相加来表示不同权限的组合例如读和写权限为642读、写和执行权限为7421。
通过设置文件和目录的权限Linux系统可以实现对不同用户的权限控制从而保证文件和目录的安全性和机密性。同时Linux系统还提供了一些特殊权限如SUID、SGID和Sticky Bit以更精细地控制用户和进程对文件和目录的访问。
用户组管理相关命令
groups
groups 命令用于显示当前用户所属的用户组。它列出了当前用户在系统中所属的所有用户组的名称。
语法
groups [选项] [用户名]
选项一般情况下groups 命令并不需要太多可选参数用户名指定要查询的用户名。如果未提供用户名则默认为当前登录用户。
使用示例
显示当前用户所属的用户组
groups
显示指定用户所属的用户组例如用户名为fanfu
groups fanfu
gpasswd
gpasswd 命令用于管理组用户和组密码。它允许管理员添加或删除组成员设置组管理员以及更改组密码等操作。
语法
gpasswd [选项] 组名
可选参数
-a, --add 用户名将指定的用户添加到组中。-d, --delete 用户名将指定的用户从组中删除。-M, --members 用户列表设置组成员列表用逗号分隔。-A, --administrators 管理员列表设置组管理员用逗号分隔。-R, --restrictions 权限列表设置组的权限限制。-S, --sync将组的密码同步到关联的GID。-s, --crypt使用指定算法设置密码加密方式。-x, --expiredate 过期日期设置密码的过期日期。
使用示例
创建一个新的组例如组名为developers
sudo groupadd developers
将用户添加到组中例如用户名为fanfu
sudo gpasswd -a fanfu developers
将用户从组中删除例如用户名为fanfu
sudo gpasswd -d fanfu developers
设置组管理员例如管理员用户名为fanfu
sudo gpasswd -A fanfu developers
设置或更改用户组密码
gpasswd developers
groupadd
groupadd 命令用于在 Linux 系统中创建新的用户组。
语法
groupadd [选项] 组名
可选参数
-g, --gid GID指定要分配给新组的GID组标识符。-r, --system创建一个系统组。-K, --key VALUE设置键值对用于修改 /etc/login.defs 中的默认值。
使用示例
创建一个新的组例如组名为developers
sudo groupadd developers
创建一个系统组例如组名为sysadmin
sudo groupadd -r sysadmin
分配特定的GID给新组例如组名为testgroupGID为1001
sudo groupadd -g 1001 testgroup
groupmod
groupmod 命令用于修改 Linux 系统中已有的用户组。
语法
groupmod [选项] 组名
可选参数
-g, --gid GID修改组的GID组标识符。-n, --new-name 新名称将组的名称更改为新名称。-K, --key VALUE设置键值对用于修改 /etc/login.defs 中的默认值。
使用示例
将组的名称更改为新名称例如将组名testgroup更改为newgroup
sudo groupmod -n newgroup testgroup
修改组的GID例如将组名testgroup的GID更改为1001
sudo groupmod -g 1001 testgroup
groupdel
groupdel 命令用于在 Linux 系统中删除用户组。
语法
groupdel 组名
可选参数
无
使用示例
删除一个组例如组名为developers
sudo groupdel developers
请注意只有超级用户才能执行 groupdel 命令。此命令将永久删除指定的组及其相关信息包括组的密码和GID如果存在。因此在执行此操作之前请务必小心谨慎。
cat /etc/group
运行 cat /etc/group 命令它会显示系统上所有用户组的信息。每一行代表一个用户组每一行的结构是由冒号 : 分隔的字段组成具体会包含以下字段
组名用户组的名称。组密码通常是 x表示密码存储在 /etc/gshadow 文件中。GID用户组的唯一标识符Group ID。组成员属于该用户组的用户列表。
执行下面的命令查询用户组名是developers的详细信息
cat /etc/group | grep developers
输出结果如下所示
developers:x:1004:ayi,fanfu
在这个示例中developers 是一个用户组GID 为 1004它只有两个个成员即 ayi和fanfu。
写在最后
喜欢我为你精心准备的 CentOS 7 用户组管理命令文章吗如果你觉得这篇指南对你的 Linux 系统管理技能提供了帮助不妨点个赞支持一下当然也建议反这篇文章收藏起来以备日后查阅。这样你就能随时回顾和复习文章中的重要知识点确保你的技术水平始终保持在最高水平。