1.实验目的与要求
- 掌握用户文件权限的设置与管理
- 掌握组权限的设置与管理
2.实验平台
实验室安装的实验环境(Linux操作系统)和头歌(www.educoder.net)实验平台(课程实验)
3.实验内容
- 掌握用户文件权限的设置与管理
- 掌握组权限的设置与管理
4.实验详细内容、步骤
任务描述
假设系统中存在一个文件File
,修改该文件的权限,根据实际需求添加/删除该文件读、写、执行权限,通过本关的学习,我们学会如何让一个文件允许哪些用户访问或禁止哪些用户访问。
本关任务:学会如何修改文件的权限。
相关知识
Linux
系统中的每个文件都有访问许可权限,文件的访问权限分为只读,只写和可执行三种。
只读权限表示只允许读其内容,而禁止对其做任何的更改操作。
只写权限表示允许修改文件的内容。
可执行权限表示允许将该文件作为一个程序执行。
每一文件的访问权限都有三组,每组用三位表示,分别为文件所属主的读、写和执行权限;与属主同组的用户的读、写和执行权限;系统中其他用户的读、写和执行权限。
当用ls -l
或ll
命令显示文件的详细信息时,最左边的一列为文件的访问权限。例如显示test
文件详细信息:
[请在右侧“命令行”里直接体验]
Linux修改文件权限命令
Linux
中使用chmod
命令来修改文件权限。
文字设定法具体命令如下:
chmod [who] [+ | - | =] [mode] 文件名
who
参数如下:
- u 表示“用户
(user)
”,即文件或目录的所有者; - g 表示“同组
(group)
用户”,即与文件属主有相同组ID的所有用户; - o 表示“其他
(others)
用户”; - a 表示“所有
(all)
用户”,它是系统默认值。
操作符如下:
- +:添加某个权限;
- -:取消某个权限;
- =:赋予给定权限并取消其他所有权限。
mode
参数如下:
- r 可读;
- w 可写;
- x 可执行。
数字设定法具体命令如下:
chmod [mode] 文件名
mode
为具体的数字。
首先了解用数字表示的属性的含义:0
表示没有权限,1
表示可执行权限,2
表示可写权限,4
表示可读权限,然后将其相加。所以数字属性的格式应为3
个从0
到7
的八进制数,其顺序是u
、g
和o
。
案例演示一:
将文件testFile
的所有权限设置为仅读权限,可以使用如下命令:
chmod a=r testFile
[请在右侧“命令行”里直接体验]
案例演示二:
将文件testFile
的所有权限设置为可读可写,同组用户权限设置为只读,可以使用如下命令:
chmod u=rw,g=r testFile
[请在右侧“命令行”里直接体验]
案例演示三:
将文件testFile
的权限设置为所有者可读可写可执行,同组用户设置为可读可执行,其他用户设置为可读,可以使用如下命令:
chmod 754 testFile
[请在右侧“命令行”里直接体验]
Linux修改所有者权限
linux使用chmod u+/-/=
命令来设置文件所有者的权限。
具体命令如下:
chmod u [+ | - | =] [mode] 文件名
操作符如下:
- +:添加某个权限;
- -:取消某个权限;
- =:赋予给定权限并取消其他所有权限。
mode
参数如下:
- r 可读;
- w 可写;
- x 可执行。
案例演示一:
将文件testFile
的所有者权限设置为仅读权限,可以使用如下命令:
chmod u=r testFile
[请在右侧“命令行”里直接体验]
案例演示二:
给文件testFile
的所有者权限添加可执行权限,可以使用如下命令:
chmod u+x testFile
[请在右侧“命令行”里直接体验]
Linux修改同组用户权限
Linux修改同组用户权限的方法与修改所有者的权限大致一样,唯一不同的点是修改同组用户权限采用chmod g
而不是采用chmod u
。
案例演示一:
将文件testFile
的同组用户权限设置为仅读权限,可以使用如下命令:
chmod g=r testFile
[请在右侧“命令行”里直接体验]
案例演示二:
给文件testFile
的同组用户权限添加可执行权限,可以使用如下命令:
chmod g+x testFile
[请在右侧“命令行”里直接体验]
Linux修改其他用户权限
Linux修改其他组用户权限的方法与修改所有者的权限大致一样,唯一不同的点是修改其他组用户权限采用chmod o
而不是采用chmod u
。
案例演示一:
将文件testFile
的其他组用户权限设置为仅读权限,可以使用如下命令:
chmod o=r testFile
[请在右侧“命令行”里直接体验]
案例演示二:
给文件testFile
的其他组用户权限添加可执行权限,可以使用如下命令:
chmod o+x testFile
[请在右侧“命令行”里直接体验]
编程要求
根据右侧窗口命令行内的提示,在Begin - End
区域内进行命令行语句补充,具体任务如下:
- 将系统已存在文件
oldFile1
的所有者权限设置为可执行; - 为系统已存在文件
oldFile2
的同组用户权限删除可写权限; - 为系统已存在文件
oldFile3
的其他组用户权限添加可执行权限; - 将系统已存在文件
oldFile4
的权限设置所有者权限为可读,同组用户权限为可写,其他用户权限为可执行;
任务描述
假设系统中存在一个目录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
个从0
到7
的八进制数,其顺序是u
、g
和o
。
案例演示一:
将目录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
的权限设置所有者权限为可读,同组用户权限为可写,其他用户权限为可执行,同时将该目录下的所有子目录或文件权限一并处理。