可以用chmod 命令修改文件权限。
chmod命令是非常重要的,用于改变文件或目录的访问权限。用户用它控制文件或目录的访问权限。该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。
用法:
文字设定法:
chmod [who] [+ | - | =] [mode] 文件名
命令中各选项的含义为:
操作对象who可是下述字母中的任一个或者它们的组合:
u 表示逗用户(user)地,即文件或目录的所有者。
g 表示逗同组(group)用户地,即与文件属主有相同组ID的所有用户。
o 表示逗其他(others)用户地。
a 表示逗所有(all)用户地。它是系统默认值。
操作符号可以是:
+ 添加某个权限。
- 取消某个权限。
= 赋予给定权限并取消其他所有权限(如果有的话)。
设置mode所表示的权限可用下述字母的任意组合:
r 可读。
w 可写。
x 可执行。
X 只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性。
s 在文件执行时把进程的属主或组ID置为该文件的文件属主。方式逗u+s地设置文件的用户ID位,逗g+s地设置组ID位。
t 保存程序的文本到交换设备上。
u 与文件属主拥有一样的权限。
g 与和文件属主同组的用户拥有一样的权限。
o 与其他用户拥有一样的权限。
文件名:以空格分开的要改变权限的文件列表,支持通配符。
在一个命令行中可给出多个权限方式,其间用逗号隔开。例如:chmod g+r,o+r example使同组和其他用户对文件example 有读权限。
数字设定法:
数字表示的属性的含义:
0表示没有权限
1表示可执行权限
2表示可写权限
4表示可读权限
然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)
如果想让某个文件的属主有逗读/写地二种权限,需要把4(可读)+2(可写)=6(读/写)
chmod命令用于改变linux系统文件或目录的访问权限。用它控制文件或目录的访问权限。该命令有两种用法。linux就该这么学,一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。
chmod -R 777 *表示对当前目录及目录下所有的文件赋予可读可写可执行权限。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
1. 命令格式:
chmod [-cfvR] [--help] [--version] mode file
2. 命令功能:
用于改变文件或目录的访问权限,用它控制文件或目录的访问权限。
3. 命令参数:
必要参数:
-c 当发生改变时,报告处理信息
-f 错误信息不输出
-R 处理指定目录以及其子目录下的所有文件
-v 运行时显示详细处理信息
权限范围:
u :目录或者文件的当前的用户
g :目录或者文件的当前的群组
o :除了目录或者文件的当前用户或群组之外的用户或者群组
a :所有的用户及群组
权限代号:
r :读权限,用数字4表示
w :写权限,用数字2表示
x :执行权限,用数字1表示
- :删除权限,用数字0表示
s :特殊权限
chmod命令详细情况如下:
1.命令格式:
chmod [-cfvR] [--help] [--version] mode file
2.命令功能:
用于改变文件或目录的访问权限,用它控制文件或目录的访问权限。
3.命令参数:
必要参数:
-c 当发生改变时,报告处理信息
-f 错误信息不输出
-R 处理指定目录以及其子目录下的所有文件
-v 运行时显示详细处理信息
选择参数:
--reference=<目录或者文件> 设置成具有指定目录或者文件具有相同的权限
--version 显示版本信息
<权限范围>+<权限设置> 使权限范围内的目录或者文件具有指定的权限
<权限范围>-<权限设置> 删除权限范围的目录或者文件的指定权限
<权限范围>=<权限设置> 设置权限范围内的目录或者文件的权限为指定的值
权限范围:
u :目录或者文件的当前的用户
g :目录或者文件的当前的群组
o :除了目录或者文件的当前用户或群组之外的用户或者群组
a :所有的用户及群组
权限代号:
r :读权限,用数字4表示
w :写权限,用数字2表示
x :执行权限,用数字1表示
- :删除权限,用数字0表示
s :特殊权限
该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。
1). 文字设定法:
chmod [who] [+ | - | =] [mode] 文件名
2). 数字设定法
我们必须首先了解用数字表示的属性的含义:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)。
Linux下一切都是文件,通过ls -l或者别名ll可以查看文件的详细信息:
drwxr-xr-x
第一个字符d指的是目录文件;
第2-4个字符rwx:
指的是u(user,owner)对这个文件具有可读可写可执行的权限;
第5-7字符r-x:
指的是g(group)对这个文件具有可读可执行权限;
第8-10字符r-x:
指的是o(other)对这个文件具有可读可执行的权限;
了解了文件权限位之后,我们来看看chmod命令的第一种语法结构:
chmod {u,g,o}{+,-,=}{r,w,x} file_name
考虑{u,g,o}{+,-,=}{r,w,x}花括号顺序不能变,排列组合也有:
((2*23)*(2*23)*(2*23))/2 =732种,哇...是不是特别刺激,还能这么玩!
我们挑选其中几组数据来做说明:
第一组数据(每个花括号里面选一个元素)
chmod u+r file
给所有者增加r权限:
第二组数据(每个花括号里面选2个元素)
chmod og+=rw file
给所属组,其他用户设置权限为rw(+,=是按照从左到右顺序执行):
第三组数据(每个花括号里面选3个元素)
chmod ugo=+-rwx file
给所有者,所属组,其他用户先赋予rwx的权限,再追加rwx的权限,最后减rwx的权限,结果为没有任何权限。
基于现实,后面2种用法很少见,仅供娱乐;也就是+,-,=是不会组合到一起使用的,没有任何意思,下面再列取几个例子以供参考:
chmod u+w file(给u(user,owner)添加一个w(可写的权限))
chmod ugo=rwx file(给所有用户包括u,g,o设置全部的权限)
chmod a=rwx file(a代表所有用户,所以得到的结果和上面结果一样)
关于chmod命令的第二种语法结构:(就是采用数字)
chmod *** filename
第一个*代表u所具有的权限
第二个*代表g所具有的权限
第三个*代表o所具有的权限
另外,
r代表4
w代表2
x代表1
rwx彼此之间的和,加上自己,可以有如下7种组合:
1=x(代表可执行)
2=w(代表可写)
3=x+w=1+2(代表可执行+可写)
4=r(代表可读)
5=1+4=x+r(代表可执行+可读)
6=2+4=w+r(代表可写+可读)
7=1+2+4=x+w+r(代表可执行+可写+可读)
举例:
chmod 124 file(给file的 u设置可执行的权限;给g设置可写,给o设置可读)
chmod 765 file(给file的 u设置全部的权限;给g设置可读可写,给o设置可读可执行)
以上2种方法,各有千秋。
chmod命令用于改变linux系统文件或目录的访问权限。该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。
1)文字设定法
命令格式:chmod [对象][+|-|=][权限] 文件名
对象:u-目录或者文件的所有者;g-目录或者文件的所有组;o-除了目录或者文件所有者和所有组的用户或者群组;a-所有的用户及组。
文字权限的表示:r-读权限;w-写权限;x-执行权限。
用法示例:给zhidao.txt文件的所有者添加读权限
$ chmod u+r zhidao.txt
2)数字设定法
命令格式:chmod [权限] 文件名
数字权限的表示:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。数字设定法需要同时设定u、g、o三组用户的权限,依次用3个8进制数表示。
用法示例:设置zhidao.py的所有者和所有组可读写、可执行,其它用户及可读、可执行不可写
$ chmod 775 zhidao.py
大家在关注