更改linux文件/目录的权限、拥有者及用户组
- 在Linux中,创建一个文件时,该文件的拥有者都是创建该文件的用户。该文件用户可以修改该文件的拥有者及用户组,root用户可以修改任何文件的拥有者及用户组。
- 在Linux中,对于文件的权限(rwx),分为三部分,一部分是该文件的拥有者所拥有的权限,一部分是该文件所在用户组的用户所拥有的权限,另一部分是其他用户所拥有的权限。
- 文件(含文件夹,下同)的权限,在shell中可以通过chmod命令来完成。
- 在 shell中,可以使用chown命令来改变文件所有者及用户组。
- chgrp命令来改变文件所在用户组。
- 在shell中,要修改文件当前的用户必须具有管理员root的权限。可以通过su命令切换到root用户,也可以通过sudo获得root的权限。
chmod命令修改文件/文件夹权限
chmod命令介绍
- chmod 只有管理员才能执行。 普通用户可以通过 sudo chmod 执行。
- Linux 的文件权限可以分成三段, ll出来的第一列就是文件权限信息。每个文件(任意类型的文件或者文件夹)的属性都用10个字符表示。
- 例如:drwxr-xrw-
第一个字符是d:文件夹
第一个字符是-:文件
r: 可读(4), w: 可写(2), x: 可执行(1).
从第二到第四位 (rwx) 是文件所有者的权限.可读、可写、可执行。
从第五到第七位(r-x)文件夹用户拥有者所在组的权限.可读、可执行。
从第八位到第十位(rw-)其他人对这个文件夹操作的权限. 可读、可写。
修改文件/文件夹权限
- 修改文件/文件夹权限
chmod 644 test.php #只有拥有者可以修改, 其他人只能看文件内容.
- 针对某一类的用户的权限操作
"+" 表示增加权限. "-" 表示消减权限.
文件所有者可以用字母 u (user)表示. 用户所在的组可以用字母 g (group)来表示. 其他人可以用字母 o (other)来表示. 所有人可以用字母 a (all)来表示.
增加其他人可以写test.php的权限:
chmod o+w test.php
修改用户所在组的成员对该文件也有可修改的权限:
chmod g+w test.php
去掉其他人对该文件的可修改的权限:
chmod o-w test.php
让所有人对该文件都有全部权限:(比较危险)
chmod a+rwx test.php
对一个目录及其下面的文件都修改成统一的权限:
chmod -R 644 test
chown(change owner)命令:改变文件拥有者
chown介绍
- 用户必须是已经存在系统中的,也就是只能改变为在 /etc/passwd这个文件中有记录的用户。
- chown命令的用途很多,还可以顺便直接修改用户组的名称。此外,如果要连目录下的所有子目录或文件同时更改文件拥有者的话,直接加上 -R的参数即可。
基本语法
chown [-R] 账号名称 文件或目录
chown [-R] 账号名称:用户组名称 文件或目录
示例1
![](http://upload-images.jianshu.io/upload_images/2294180-b0eb677f7a1a2850.png?imageMogr2/auto-orient/strip|imageView2/2/w/625/format/webp)
image.png
示例2
![](http://upload-images.jianshu.io/upload_images/2294180-a30e05553ac9cf04.png?imageMogr2/auto-orient/strip|imageView2/2/w/609/format/webp)
image.png
chgrp(change group)命令
chgrp介绍
- 改变文件所属用户组,要改变成为的用户组名称,必须在/etc/group里存在。
基本语法
- chgrp [-R] 用户组名称 dirname/filename