头歌--第2关:Linux目录权限修改(Linux文件/目录高级管理一)

任务描述

假设系统中存在一个目录DIR,修改该目录的权限,根据实际需求添加/删除该目录读、写、访问权限,通过本关的学习,我们学会如何让一个目录运行哪些用户访问或禁止哪些用户访问。

本关任务是学会修改目录的权限。

相关知识

Linux系统中的每个目录都有访问许可权限,目录的权限和文件的权限类似,目录的访问权限也分为只读,只写和可进入三种。

只读权限表示允许浏览其内容。

只写权限表示允许在目录下新创建文件或目录。

可进入权限表示允许使用cd命令进入到该目录下。

每一目录的访问权限都有三组,每组用三位表示,分别为所有者权限、同组用户权限和其他用户权限。

当用ls -l命令显示目录的详细信息时,最左边的一列为目录的访问权限。例如显示当前目录下的test目录详细信息可以使用如下命令:

ls -l .

[请在右侧“命令行”里直接体验]

Linux修改目录权限命令

Linux中使用chmod命令来修改目录权限。

文字设定法具体命令如下:

chmod 参数 [who] [+ | - | =] [mode] 目录名

常用参数如下:

  • -R或——recursive:递归处理,将指令目录下的所有文件及子目录一并处理。

who参数如下:

  • u 表示“用户(user)”,即文件或目录的所有者;
  • g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户;
  • o 表示“其他(others)用户”;
  • a 表示“所有(all)用户”,它是系统默认值。

操作符如下:

  • +:添加某个权限;
  • -:取消某个权限;
  • =:赋予给定权限并取消其他所有权限。

mode参数如下:

  • r 可读;
  • w 可写;
  • x 可执行。

数字设定法具体命令如下:

chmod [mode] 文件名

mode为具体的数字。

首先了解用数字表示的属性的含义:0表示没有权限,1表示可进入权限,2表示可写权限,4表示可读权限,然后将其相加。所以数字属性的格式应为3个从07的八进制数,其顺序是ugo

案例演示一:

将目录testDir的所有权限设置为仅读权限,可以使用如下命令:

chmod a=r testDir

[请在右侧“命令行”里直接体验]

此时testDir目录只能被用户所读,而不能进行其他的任何操作。

[请在右侧“命令行”里直接体验]

案例演示二:

将目录testDir的所有权限设置为可读可写,同组用户权限设置为只读,可以使用如下命令:

chmod u=rw,g=r testDir

[请在右侧“命令行”里直接体验]

[请在右侧“命令行”里直接体验]

此时testDir目录有写权限,但是还是无法创建新文件,原因是目录中的写权限(w)必须与执行权限(x)配合才能创建和删除目录下的内容。

案例演示三:

将目录testDir的权限设置为所有者可读可写可执行,同组用户设置为可读可执行,其他用户设置为可读可执行,可以使用如下命令:

chmod 755 testDir

此时,用户可以向testDir目录添加新文件和删除已有文件。

[请在右侧“命令行”里直接体验]

Linux修改所有者权限

linux使用chmod u+/-/=命令来设置目录所有者的权限。

具体命令如下:

chmod u [+ | - | =] [mode] 目录名

操作符如下:

操作符如下:

  • +:添加某个权限;
  • -:取消某个权限;
  • =:赋予给定权限并取消其他所有权限。

mode参数如下:

  • r 可读;
  • w 可写;
  • x 可执行。

案例演示一:

将目录testDir的所有者权限设置为可读可写可执行,可以使用如下命令:

chmod u=rwx testDir

[请在右侧“命令行”里直接体验]

案例演示二:

将目录testDir的所有者权限添加可执行权限,同时递归的将该目录下的所有文件或目录都添加可执行权限,可以使用如下命令:

chmod -R u+x testDir

[请在右侧“命令行”里直接体验]

Linux修改同组用户权限

Linux修改同组用户权限的方法与修改所有者的权限大致一样,唯一不同的点是修改同组用户权限采用chmod g而不是采用chmod u

案例演示一:

将目录testDir的同组其他用户权限设置为可读可写可执行,可以使用如下命令:

chmod g=rwx testDir

[请在右侧“命令行”里直接体验]

案例演示二:

将目录testDir的同组其他用户权限添加可执行权限,同时递归的将该目录下的所有文件或目录都添加可执行权限,可以使用如下命令:

chmod -R g+x testDir

[请在右侧“命令行”里直接体验]

Linux修改其他用户权限

Linux修改其他组用户权限的方法与修改所有者的权限大致一样,唯一不同的点是修改其他组用户权限采用chmod o而不是采用chmod u

案例演示一:

将目录testDir的其他组用户权限设置为可读可写可执行,可以使用如下命令:

chmod o=rwx testDir

[请在右侧“命令行”里直接体验]

案例演示二:

将目录testDir的其他组用户权限添加可执行权限,同时递归的将该目录下的所有文件或目录都添加可执行权限,可以使用如下命令:

chmod -R o+x testDir

[请在右侧“命令行”里直接体验]

编程要求

根据右侧窗口命令行内的提示,在Begin - End区域内进行命令行语句补充,具体任务如下:

  • 将系统已存在目录oldDir1的所有者权限设置为可执行;
  • 为系统已存在目录oldDir2的同组用户权限删除可写权限;
  • 为系统已存在目录oldDir3的其他组用户权限添加可执行权限;
  • 将系统已存在目录oldDir4的权限设置所有者权限为可读,同组用户权限为可写,其他用户权限为可执行;
  • 将系统已存在目录oldDir5的权限设置所有者权限为可读,同组用户权限为可写,其他用户权限为可执行,同时将该目录下的所有子目录或文件权限一并处理。

测试说明

本平台只需将需要的命令写入到对应的命令填写区域(命令间使用换行分隔)即可,平台会自动读入和执行用户写入的命令,并判断用户输入的命令是否符合要求。

#!/bin/bash

#在以下部分写出完成任务的命令
#***********begin*************#
chmod u=x oldDir1
chmod g-w oldDir2
chmod o+x oldDir3
chmod 421 oldDir4
chmod -R 421 oldDir5
#************end**************#

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
修改Linux目录文件权限和所有权,可以使用chmod和chown命令。 1. 修改文件目录权限 chmod命令可以修改文件目录权限。它的语法如下: ``` chmod [选项] 模式 文件目录 ``` 其中,模式表示文件目录权限,可以用数字或符号表示。数字表示法中,每个数字代表一组权限:第一个数字代表所有者的权限,第二个数字代表同组用户的权限,第三个数字代表其他用户的权限。每个数字由三个二进制数字组成,分别表示读、写、执行权限,其中1表示有该权限,0表示没有该权限。例如,数字7表示所有者、同组用户和其他用户都有读、写、执行权限,即111。 符号表示法中,用r、w、x表示读、写、执行权限,用u、g、o表示所有者、同组用户、其他用户。例如,u+rwx表示给所有者添加读、写、执行权限。 以下是一些常用的chmod选项: - -R:递归修改目录及其子目录权限。 - +:添加权限。 - -:删除权限。 - =:设置权限。 例如,要将目录/tmp的权限设置为所有者有读、写、执行权限,同组用户和其他用户只有读、执行权限,可以使用以下命令: ``` chmod 755 /tmp ``` 2. 修改文件目录的所有权 chown命令可以修改文件目录的所有权。它的语法如下: ``` chown [选项] 用户[:组] 文件目录 ``` 其中,用户表示新的所有者,组表示新的所属组。如果不指定组,则默认为用户的主组。 以下是一些常用的chown选项: - -R:递归修改目录及其子目录的所有权。 例如,要将文件/tmp/test.txt的所有者修改为用户“john”,所属组修改为“users”,可以使用以下命令: ``` chown john:users /tmp/test.txt ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值