chmod简介及其使用方法




1. 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 与其他用户拥有一样的权限。

2.查看文件权限,使用命令“ll”可以查看文件或者文件的权限:
-rwxrwxrwx. 1 root root 0 6月   8 09:37 mosquitto
其中“-rw-r--r--”表示权限,第一个字符,表示文件类型:文件还是目录;如果是“-”则表示是文件,如果是“d”则表示是目录(directory)。
后面9个字符每3个字符一组(“rwx”、“rwx”、“rwx”),其中:r是读权限、w是写权限、x是可执行权限、-没有对应字符的权限,这三组中:
(1)左边一组,表示所属用户本身具有的权限,对应chmod命令中who为u的值;
(2)中间一组,表示所属用户的用户组其他成员的权限,对应chmod命令中who为g的值;
(3)右边一组,表示其他用户的权限,对应chmod命令中who为o的值。

Linux里面对这些字符设置对应的数值,r是4,w是2,x是1,-是0。上面示例中,最左边一组的“rwx”则是7(=4+2+1),
因此,这里mosquitto的权限是777,即最左边属于root用户组的root用户的权限为7,具备读、写、可执行权限。

常用的操作:
chmod 777 文件名
表是分别给这三组用户了读、写、可执行权限;

3.操作示例:
使用ll命令查看当前文件的权限:
[root@localhost jason]# ll
总用量 0
-rwxrwxrwx. 1 root root 0 6月   8 09:37 mosquitto

如何将其权限转换为:-rw-r--r--
(1)去掉所有用户的可执行权限x,命令如下:
[root@localhost jason]# chmod a-x mosquitto 
[root@localhost jason]# ll
总用量 0
-rw-rw-rw-. 1 root root 0 6月   8 09:37 mosquitto
(2)去掉同组的其成员的写权限w,对应中间那个w:
[root@localhost jason]# chmod g-w mosquitto 
[root@localhost jason]# ll
总用量 0
-rw-r--rw-. 1 root root 0 6月   8 09:37 mosquitto
(3)去掉其他成员的写权限,对应右边那组的w:
[root@localhost jason]# ll
总用量 0
-rw-r--r--. 1 root root 0 6月   8 09:37 mosquitto

猜你喜欢

转载自blog.csdn.net/hjx_1000/article/details/72910419