chmod命令

chmod命令用来变更文件或目录的权限。在UNIX系统家族里,文件或目录权限的控制分别以读取、写入、执行3种一般权限来区分,另有3种特殊权限可供运用。用户可以使用chmod指令去变更文件与目录的权限,设置方式采用文字或数字代号皆可。符号连接的权限无法变更,如果用户对符号连接修改权限,其改变会作用在被连接的原始文件。

权限范围的表示法如下:

u User,即文件或目录的拥有者;
g Group,即文件或目录的所属群组;
o Other,除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围;
a All,即全部的用户,包含拥有者,所属群组以及其他用户;
r 读取权限,数字代号为“4”;
w 写入权限,数字代号为“2”;
x 执行或切换权限,数字代号为“1”;
- 不具任何权限,数字代号为“0”;
s 特殊功能说明:变更文件或目录的权限。

语法

chmod(选项)(参数)

选项

-c或——changes:效果类似“-v”参数,但仅回报更改的部分;
-f或--quiet或——silent:不显示错误信息;
-R或——recursive:递归处理,将指令目录下的所有文件及子目录一并处理;
-v或——verbose:显示指令执行过程;
--reference=<参考文件或目录>:把指定文件或目录的所属群组全部设成和参考文件或目录的所属群组相同;
<权限范围>+<权限设置>:开启权限范围的文件或目录的该选项权限设置;
<权限范围>-<权限设置>:关闭权限范围的文件或目录的该选项权限设置;
<权限范围>=<权限设置>:指定权限范围的文件或目录的该选项权限设置;

参数

权限模式:指定文件的权限模式;
文件:要改变权限的文件。

知识扩展和实例

Linux用 户分为:拥有者、组群(Group)、其他(other),Linux系统中,预设的情況下,系统中所有的帐号与一般身份使用者,以及root的相关信 息, 都是记录在/etc/passwd文件中。每个人的密码则是记录在/etc/shadow文件下。 此外,所有的组群名称记录在/etc/group內!

linux文件的用户权限的分析图


例:rwx rw- r--

r=读取属性  //值=4
w=写入属性  //值=2
x=执行属性  //值=1

chmod u+x,g+w f01  //为文件f01设置自己可以执行,组员可以写入的权限
chmod u=rwx,g=rw,o=r f01
chmod 764 f01
chmod a+x f01  //对文件f01的u,g,o都设置可执行属性

文件的属主和属组属性设置

chown user:market f01  //把文件f01给uesr,添加到market组
ll -d f1  查看目录f1的属性
转载自:http://man.linuxde.net/chmod
### chmod 命令的用法及 Linux 文件权限设置 在 Linux 系统中,`chmod` 是一个用于更改文件或目录权限的命令。它允许用户通过符号模式或数字模式来调整文件或目录的访问权限[^1]。 #### 符号模式 符号模式使用特定的字符来表示不同的用户类别、操作和权限类型: - 用户类别: - `u`:文件所有者(user) - `g`:所属组(group) - `o`:其他用户(others) - `a`:所有用户(all) - 操作符: - `+`:添加权限 - `-`:移除权限 - `=`:设置权限为指定值 - 权限类型: - `r`:读取权限 - `w`:写入权限 - `x`:执行权限 例如,以下命令从“其他”用户段中删除指定文件的所有权限: ```bash sudo chmod o-rwx linuxmi.txt ``` 这条命令的作用是移除“其他”用户对 `linuxmi.txt` 的读、写和执行权限[^1]。 #### 数字模式 数字模式是一种更简洁的方式,通过将权限转换为八进制数字来设置。每个权限类型都有一个权重值: - `r`(读取)= 4 - `w`(写入)= 2 - `x`(执行)= 1 权限组合可以通过加总这些权重值得到。例如: - `rwx` = 4 + 2 + 1 = 7 - `rw-` = 4 + 2 + 0 = 6 - `r-x` = 4 + 0 + 1 = 5 以下命令将文件 `ping-pong.hex` 的权限设置为仅文件所有者可读、写和执行: ```bash chmod 700 ping-pong.hex ``` 这意味着文件所有者拥有完全权限(`rwx`),而组用户和其他用户没有任何权限[^2]。 #### 设置目录权限 对于目录,`x` 权限表示是否可以进入该目录。以下命令将目录权限设置为所有者可读、写和执行,组用户可读和执行,其他用户没有任何权限: ```bash chmod 750 my_directory ``` #### 查看当前权限 可以使用 `ls -l` 命令查看文件或目录的当前权限: ```bash ls -l linuxmi.txt ``` ### 示例代码 以下是一些常见的 `chmod` 使用示例: ```bash # 设置文件为所有人可读、写和执行 chmod 777 example.txt # 设置文件为仅所有者可读、写和执行 chmod 700 example.txt # 添加组用户的写权限 chmod g+w example.txt # 移除其他用户的任何权限 chmod o-rwx example.txt ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值