rhcsa 用户管理

本文介绍了Linux系统中用于管理文件权限的命令,包括chown用于改变文件所有者和组,chgrp允许用户改变文件所属组,以及chmod用于设置文件权限。详细阐述了各项参数和使用示例,如递归处理、权限掩码等,并展示了如何用数字和符号模式设置权限。内容涵盖了用户、组和其他用户对文件的读、写、执行权限的控制,以及特殊权限如setuid和setgid位的设置。
摘要由CSDN通过智能技术生成

rhcsa 用户管理**

Linux chgrp命令用于变更文件或目录的所属群组。

与 chown命令不同,chgrp 允许普通用户改变文件所属的组,只要该用户是该组的一员。

在 UNIX 系统家族里,文件或目录权限的掌控以拥有者及所属群组来管理。您可以使用 chgrp 指令去变更文件与目录的所属群组,设置方式采用群组名称或群组识别码皆可。

  • -c或–changes 效果类似"-v"参数,但仅回报更改的部分。
  • -f或–quiet或–silent  不显示错误信息。
  • -h或–no-dereference  只对符号连接的文件作修改,而不更动其他任何相关文件。
  • -R或–recursive  递归处理,将指定目录下的所有文件及子目录一并处理。
  • -v或–verbose  显示指令执行过程。
  • –help  在线帮助。
  • –reference=<参考文件或目录>  把指定文件或目录的所属群组全部设成和参考文件或目录的所属群组相同。
  • –version  显示版本信息。

Linux chown命令用于设置文件所有者和文件关联组的命令。

Linux/Unix 是多人多工操作系统,所有的文件皆有拥有者。利用 chown 将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户 ID,组可以是组名或者组 ID,文件是以空格分开的要改变权限的文件列表,支持通配符。 。

chown 需要超级用户 root 的权限才能执行此命令。

只有超级用户和属于组的文件所有者才能变更文件关联组。非超级用户如需要设置关联组可能需要使用chgrp 命令。

  • user : 新的文件拥有者的使用者 ID
  • group : 新的文件拥有者的使用者组(group)
  • -c : 显示更改的部分的信息
  • -f : 忽略错误信息
  • -h :修复符号链接
  • -v : 显示详细的处理信息
  • -R : 处理指定目录以及其子目录下的所有文件
  • –help : 显示辅助说明
  • –version : 显示版本

chown 所属用户:所属组 被更改的文件

chown :所属组 被更改的文件 只更改所属组

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JH9UDPFm-1634646298223)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\image-20211018203752294.png)]

对文件权限用8 4 2 1

					r	w	x

---			 ---			---

所属用户 所属组 其他用户

查看权限掩码 : umask

更改权限掩码:umask 0022

0(特殊权限)022

777 - 022 = 755(权限相减,经过权限掩码值过滤)

对于文本最高权限为 6 6 6

对目录最高权限时 7 7 7

666 - 022=644(权限相减,经过权限掩码值过滤)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5WK0FFeR-1634646298226)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\image-20211018205408111.png)]

基于字母过滤

Linux chmod(英文全拼:change mode)命令是控制用户对文件的权限的命令

Linux/Unix 的文件调用权限分为三级 : 文件所有者(Owner)、用户组(Group)、其它用户(Other Users)。

  • u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
  • + 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
  • r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。

其他参数说明:

  • -c : 若该文件权限确实已经更改,才显示其更改动作
  • -f : 若该文件权限无法被更改也不要显示错误讯息
  • -v : 显示权限变更的详细资料
  • -R : 对目前目录下的所有文件与子目录进行相同的权限变更(即以递归的方式逐个变更)
  • –help : 显示辅助说明
  • –version : 显示版本

符号模式

使用符号模式可以设置多个项目:who(用户类型),operator(操作符)和 permission(权限),每个项目的设置可以用逗号隔开。 命令 chmod 将修改 who 指定的用户类型对文件的访问权限,用户类型由一个或者多个字母在 who 的位置来说明,如 who 的符号模式表所示:

who用户类型说明
uuser文件所有者
ggroup文件所有者所在组
oothers所有其他用户
aall所用用户, 相当于 ugo

operator 的符号模式表:

Operator说明
+为指定的用户类型增加权限
-去除指定用户类型的权限
=设置指定用户权限的设置,即将用户类型的所有权限重新设置

permission 的符号模式表:

模式名字说明
r设置为可读权限
w设置为可写权限
x执行权限设置为可执行权限
X特殊执行权限只有当文件为目录文件,或者其他类型的用户有可执行权限时,才将文件权限设置可执行
ssetuid/gid当文件被执行时,根据who参数指定的用户类型设置文件的setuid或者setgid权限
t粘贴位设置粘贴位,只有超级用户可以设置该位,只有文件所有者u可以使用该位

八进制语法

chmod命令可以使用八进制数来指定权限。文件或目录的权限位是由9个权限位来控制,每三位为一组,它们分别是文件所有者(User)的读、写、执行,用户组(Group)的读、写、执行以及其它用户(Other)的读、写、执行。历史上,文件权限被放在一个比特掩码中,掩码中指定的比特位设为1,用来说明一个类具有相应的优先级。

#权限rwx二进制
7读 + 写 + 执行rwx111
6读 + 写rw-110
5读 + 执行r-x101
4只读r–100
3写 + 执行-wx011
2只写-w-010
1只执行–x001
0000

例如, 765 将这样解释:

  • 所有者的权限用数字表达:属主的那三个权限位的数字加起来的总和。如 rwx ,也就是 4+2+1 ,应该是 7。
  • 用户组的权限用数字表达:属组的那个权限位数字的相加的总和。如 rw- ,也就是 4+2+0 ,应该是 6。
  • 其它用户的权限数字表达:其它用户权限位的数字相加的总和。如 r-x ,也就是 4+0+1 ,应该是 5。

实例

将文件 file1.txt 设为所有人皆可读取 :

chmod ugo+r file1.txt

将文件 file1.txt 设为所有人皆可读取 :

chmod a+r file1.txt

将文件 file1.txt 与 file2.txt 设为该文件拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入 :

chmod ug+w,o-w file1.txt file2.txt

为 ex1.py 文件拥有者增加可执行权限:

chmod u+x ex1.py

将目前目录下的所有文件与子目录皆设为任何人可读取 :

chmod -R a+r *

此外chmod也可以用数字来表示权限如 :

chmod 777 file

语法为:

chmod abc file

其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。

r=4,w=2,x=1
  • 若要 rwx 属性则 4+2+1=7;
  • 若要 rw- 属性则 4+2=6;
  • 若要 r-x 属性则 4+1=5。
chmod a=rwx file

chmod 777 file

效果相同

chmod ug=rwx,o=x file

chmod 771 file

效果相同

若用 chmod 4755 filename 可使此程序具有 root 的权限。

更多说明

命令说明
chmod a+r *file*给file的所有用户增加读权限
chmod a-x *file*删除file的所有用户的执行权限
chmod a+rw *file*给file的所有用户增加读写权限
chmod +rwx *file*给file的所有用户增加读写执行权限
chmod u=rw,go= *file*对file的所有者设置读写权限,清空该用户组和其他用户对file的所有权限(空格代表无权限)
chmod -R u+r,go-r *docs*对目录docs和其子目录层次结构中的所有文件给用户增加读权限,而对用户组和其他用户删除读权限
chmod 664 *file*对file的所有者和用户组设置读写权限, 为其其他用户设置读权限
chmod 0755 *file*相当于u=rwx (4+2+1),go=rx (4+1 & 4+1)0 没有特殊模式。
chmod 4755 *file*4设置了设置用户ID位,剩下的相当于 u=rwx (4+2+1),go=rx (4+1 & 4+1)。
find path/ -type d -exec chmod a-x {} \;删除可执行权限对path/以及其所有的目录(不包括文件)的所有用户,使用’-type f’匹配文件
find path/ -type d -exec chmod a+x {} \;允许所有用户浏览或通过目录path/

例如:chmod 644 b

chmod u=x,g=x,o=x

chmod ugo=x c(文件)

chmod a=x c(文件)

chmod =x c(文件) 只给原来所在的用户改权限,而其他的用户权限全部取消

chmod u+r,u-x c(文件)

如果一些文本文件没有一些权限,root用户也无法运行或者使用,但是可以给自己更改权限来达到去使用或者运行的目的

格式:chmod 555 filename

chmod u=r,g+w,o-w filename

4 2 1

u+s g+s o+t

suid:仅对可执行文件设置(目标文件的所属用户是可执行文件自身的所属用户)所属用户禁锢位

sgid:可执行文件设置 (目标文件的所属组是可执行文件自身的所属组)

​ 目录设置(对当前目录设置GID强制位,则当前目录下所有文件(-/d)的所属组都是当前目录的所属组)

o+t:仅对目录设置(在一个目录,删除自己的文件,但不能删除别人的文件)

u+s SUID 仅对可执行文件有意义,无论哪个用户运行改文件,文件进程的所属用户都是文件自身的所属用户

g+s SGID 对可执行文件以及目录文件有意义

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值