chmod 文件权限管理 stay foolish, stay hungry
文/甄谨言
在服务器远程等有许多人共用设备资源的情况下,在同一个工作环境中,大家往往会分配不同的用户名、密码和相应的工作文件夹,这个时候如果用户组不对其文件、文件夹进行权限操作,其他用户是可以看得到你的文件和文件夹的,如果你有文件或者整个文件夹的内容不想给其他用户查看,就需要用 chmod 对该文件或文件夹设置权限。
本文目录
权限管理基本概念
文件或目录的访问权限分为只读,只写和可执行三种。以文件为例,只读权限表示只允许读其内容,而禁止对其做任何的更改操作。可执行权限表示允许将该文件作为一个程序执行。文件被创建时,文件所有者自动拥有对该文件的读、写和可执行权限,以便于对文件的阅读和修改。用户也可根据需要把访问权限设置为需要的 任何组合。
有三种不同类型的用户可对文件或目录进行访问:文件所有者,同组用户、其他用户。所有者一般是文件的创建者。所有者可以允许同组用户有权访问文件,还可以将文件的访问权限赋予系统中的其他用户。在这种情况下,系统中每一位用户都能访问该用户拥有的文件或目录。
每一文件或目录的访问权限都有三组,每组用三位表示,分别为文件属主的读、写和执行权限;与属主同组的用户的读、写和执行权限;系统中其他用户的读、写和执行权限。当用ls -l命令显示文件或目录的详细信息时,最左边的一列为文件的访问权限。
例如我在远程输入:
ls -l
就会得到文件、文件夹类别,各组员权限,创建者,服务器,文件大小,创建时间,文件名及扩展名等信息。
drwx------ 2 liubin labmem 4096 Jan 18 21:08 personal
这就是说只有用户组有读写执行权限。
chmod 使用方法
chmod命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。 我一般喜欢用数字设定法,所以这里只介绍第二种方法。
用数字表示的属性的含义:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)。
例子
$ chmod 644 test.txt
$ ls –l
即设定文件test.txt的属性为:
-rw-r--r-- 1 inin users 1155 Nov 5 11:22 test.txt
文件属主(u)inin 拥有读、写权限
与文件属主同组人用户(g) 拥有读权限
其他人(o) 拥有读权限
把一个文件夹的权限设置为任何用户可读可写。
chmod 777 /usres/test
$ ls –l
-rwxrwxrwx 1 inin users 44137 Nov 12 9:22 test