Linux—CentOS指令—组和权限

Linux—CentOS的组和权限

  在 Linux 中,每个用户必须属于一个组,不能独立于组外;每个文件有所有者、所在组、其他组的概念。

1 文件/目录 所有者

一般为文件的创建者,谁创建了该文件,就自然的成为该文件的所有者。


1.1 查看文件的所有者

指令:ls -ahl

image-20250306161158202


1.2 修改文件所有者

指令:chown 用户名 文件名

案例: 用户 fei 创建了一个文件 apple.txt,该文件的所有者为 fei,当用户 fei 尝试修改 apple.txt 文件的所有者时,会显示权限不够,需要切换到 root 用户进行修改。

image-20250306161832617


1.3 组的创建

指令:groupadd 组名

案例:

  • 创建一个组 monstergroupadd monster

  • 创建一个用户 fox ,并放入 monster 组中:useradd -g monster fox

    useradd -g 组名 用户名:表示创建一个用户,并指定该用户的组。

image-20250306162609498


2 文件/目录 所在组

指令:ls -ahl

案例: 使用 fox 用户创建一个文件,查看该文件属于哪个组

image-20250306163856042

可以看到,fox 用户创建的 bal.txt 文件的所在组为 monster。


2.1 修改文件/目录所在的组

指令:chgrp 组名 文件名

案例: 使用 root 用户创建文件 orange.txt,查看这个文件属于哪个组,然后将这个文件的所在组,修改到 fruit 组。

  1. 创建 fruit 组:groupadd fruit
  2. 创建 orange.txt 文件:touch orange.txt
  3. 查看这个文件属于哪个组:ls -hl
  4. 修改组:chgrp fruit orange.txt

image-20250306164709056


3 其它组

除文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组。


4 改变用户所在组

在添加用户时,可以指定将该用户添加到哪个组,同样的使用 root 的管理权限可以改变某个用户所在的组。

指令:useradd -g 组名 用户名


4.1 改变用户所在组

指令:

  • usermod -g 新组名 用户名

  • usermod -d 目录名 用户名

    改变该用户登录的初始目录,特别说明:用户需要有进入到新目录的权限

案例:fox 用户从原来所在组,修改到 fruit

usermod -g fruit fox

image-20250306165806286


5 权限的介绍

当我们使用 ls -l 查看文件时,显示如下内容:

-rw-r--r-- 1 root fruit 0 3月 6 16:45 orange.txt

对显示的内容进行介绍:位数从0开始计算

0-9位:-rw-r--r--

第 0 位: 确定文件类型(d, -, l, c, b)

  • l 是链接,相当于 windows 的快捷方式
  • d 是目录,相当于 windows 的文件夹
  • c 是字符设备,鼠标、键盘等
  • b 是块设备,比如硬盘
  • - 表示普通文件

第 1-3 位: 确定所有者(该文件的所有者)拥有该文件的权限 —User

第 4-6 位: 确定所属组(同用户组的)拥有该文件的权限 — Group

第 7-9 位: 确定其他用户拥有该文件的权限 —Other


5.1 rwx 权限详解

5.1.1 rwx 作用到文件
  • r :代表可读(read):可以读取,查看
  • w :代表可写(write):可以修改,但是不代表可以删除该文件,删除一个文件的前提条件是,对该文件所在目录有写权限,才能删除该文件
  • x :代表可执行(execute):可以被执行

5.1.2 rwx 作用到目录
  • r :代表可读(read):可以读取,可以使用 ls 查看目录内容
  • w :代表可写(write):可以修改,可以在目录内创建文件,删除文件,还可以重命名目录
  • x :代表可执行(execute):可以进入该目录

5.1.3 案例

-rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc

前10个字符确定不同用户能对文件干什么

  • 第一个字符代表文件类型:- l d c b

  • 其余字符每3个一组(rwx) 读® 写(w) 执行(x) :

    • 第一组rwx: 文件拥有者的权限是读、写和执行

    • 第二组rw-: 与文件拥有者同一组的用户的权限是读、写但不能执行

    • 第三组r--: 不与文件拥有者同组的其他用户的权限是读,不能写和执行

可以用数字表示为:r = 4,w = 2,x = 1,因此 rwx = 4+2+1=7,数字可以进行组合

其他部分说明:

1:文件:硬连接数;目录:子目录数

root :用户

root :组

1213 :文件大小(字节),如果是文件夹,显示 4060 字节

Feb 2 09:39 :最后修改日期

abc :文件名


5.2 修改权限:chmod

通过 chmod 指令,可以修改文件或者目录的权限,主要有2种使用方式。


5.2.1 第一种方式:使用 +、-、= 变更权限

u :所有者

g :所有组

o :其他人

a :所有人(u、g、o的总和)

  • chmod u=rwx,g=rx,o=x 文件/目录名

    u -> rwx 的权限,g -> rx 的权限,o -> x 的权限

  • chmod o+w 文件/目录名

    给 o 增加 w 权限

  • chmod a-x 文件/目录名

    给 a 去掉 x 权限


5.2.2 第二种方式:通过数字变更权限

可以用数字表示为:r = 4,w = 2,x = 1,因此 rwx = 4+2+1=7,数字可以进行组合

chmod u=rwx,g=rx,o=x 文件/目录名

相当于 chmod 751 文件/目录名


6 修改文件所有者:chown

指令:

  • chown newowner 文件/目录

    改变所有者

  • chown newowner:newgroup 文件/目录

    改变所有者和所在组

  • chown -R newowner 目录

    如果是目录,则使其下所有子文件或目录递归生效

案例:

  • /home/abc.txt 文件的所有者修改成 tom

    chown tom /home/abc.txt

  • /home/test 目录下所有的文件和目录的所有者都修改成 tom

    chown -R tom /home/test


7 修改文件/目录所在组:chgrp

指令:

  • chgrp newgroup 文件/目录

    改变所在组

案例:

  • /home/abc.txt 文件的所在组修改成 shaolin

    groupadd shaolin

    chgrp shaolin /home/abc.txt

  • /home/test 目录下所有的文件和目录所在的组都修改成 shaolin

    chgrp -R shaolin /home/test




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值