Linux权限管理命令
可以对文件权限修改的只有两个人,一个是管理员root用户,一个是文件的所有者。
权限管理命令:chmod
chmod:改变文件或目录权限
用法:
chmod [{ugoa} {+-=}{rwx}][文件或目录]
chmod [mode=421][文件或目录]
-R 递归修改
在对权限修改之前,对文件权限再详细介绍一下
文件权限分为所有者权限(u),用户组权限(g)和其他权限(o)
他们三者可拥有权限:读(r),写(w),可执行(x)
r,w,x权限对应的数值为:4 2 1
1.chmod [{ugoa} {+-=}{rwx}][文件或目录]
a(all):代表三种类型的用户
+ :即授予权限
- :即收回权限
= :无论当前文件的权限是什么,默认把权限修改为=对应的权限
更改所有者权限
更改用户组权限和其他用户权限:
chmod g+w+x,o+w+x-r world
授予用户组写(w),可执行(x)的权限;授予其他用户读(w),可执行(x)的权限,同时收回读(r)的权限。
chmod可以同时更改多个类型用户的权限,中间用逗号(,)隔开。
= :无论当前文件的权限是什么,默认把权限修改为=对应的权限
在实际修改文件或目录的权限时,我们通常使用权限对应的数字来修改文件权限
chmod [mode=421][文件或目录]
在对权限修改之前,对文件权限再详细介绍一下
文件权限分为所有者权限(u),用户组权限(g)和其他权限(o)
他们三者可拥有权限:读(r),写(w),可执行(x)
r,w,x权限对应的数值为:4 2 1
rwxrwxrwx rwxrw-r-- rwxrw---x
7 7 7 7 6 4 7 6 1
chmod 774 struggle
把文件struggle的权限修改为774
使用参数-R,递归修改该目录及其目录下所有文件的权限
文件目录权限总结:
代表字符 | 权限 | 对文件的含义 | 对目录的含义 |
r | 读权限 | 可以查看文件内容 | 可以列出目录中的内容 |
w | 写权限 | 可以修改文件内容 | 可以在目录中创建删除文件 |
x | 执行权限 | 可以执行权限 | 可以进入目录 |
对文件file来说:
r:可以使用命令cat/more/less/head/tail查看文件内容
w:可以使用vim修改文件内容
x:可以执行脚本和命令,文件可能是脚本或命令
对目录(directory)来说:
r:可以使用命令ls
w:可以使用命令touch/mkdir/rmdir/rm
x:可以使用命令cd
小实验:
1.创建一个目录hard
2.在目录hard下创建文件workhard
3.把目录hard的权限修改为777,并查看hard和hardwork的权限
4.创建一个普通用户
5.登录
6.猜想一下,普通用户可以删除文件hardwork吗,为什么?
如下图显示实现了步骤1,2,3, 4
实现步骤5,如下图所示
使用普通用户tangtang删除文件hardwork
在root用户下查看文件hardwork是否被删除
实验结果显示文件hardwork被普通用户tangtang删除。
原因:把目录hard的权限修改为777时,即所有者,用户组,其他用户都具备了写权限w,对于具有w权限的目录来说,则可以在目录中创建,删除文件。即普通用户也可以删除该目录下的文件。
小tips:
root用户前显示的是:#
普通用户显示的是:$