文件权限管理
1.文件权限的介绍
在Linux操作系统中用户访问任何文件都是有权限的
权限可以分为基本权限和特殊权限
1)基本权限(r w x)
rwx r-x r-x
文件所有者的权限 文件所属组的权限 其他用户权限
符号表示 数字表示 含义 对于普通文件的影响 对于目录文件的影响
r 4 可读 是否可以读取文件内容 是否可以列出目录的子文件
w 2 可写 是否可以修改文件内容 是否可以创建或删除子文件
x 1 可执行 是否可以执行文件内容 是否可以访问目录内容
2)修改文件权限
sudo chmod 权限 文件名 //修改文件的权限
//由于文件的权限有数字表示法和符号表示法,所以本身修改权限的方法有很多
//如果操作目录文件,修改权限想要影响子文件或子文件夹
sudo chmod -R 权限 文件名
1>符号方法
rwx r-x r-x
文件所有者的权限 文件所属组的权限 其他用户权限
u g o
u 表示文件所有者的权限
g 表示文件所数组的权限
o 表示其他用户的权限
a 表示所有人的权限
u + r
sudo chmod g - w 文件名
o = x
a -
-----------------------------------------------
例:
sudo chmod u+x hello.c
//给hello.c的文件所属者加可执行权限
sudo chmod g-r hello.c
//给hello.c的文件所属组去掉可读的权限
sudo chmod a=rwx hello.c
//给hello.c文件的权限修改成所有人都可读可写可执行
sudo chmod ug=rw,o=r hello.c
//给hello.c文件的权限修改成,所属者所属组可读可写,
其他用户可读
sudo chmod a=- hello.c
//给hello.c文件的权限修改成所有人都无权限
-----------------------------------------------
2>数字方式
八进制表示法
r 4
w 2
x 1
- 0
-----------------------------------------------
例:
sudo chmod 777 hello.c
//给hello.c文件的权限修改成所有人都可读可写可执行
sudo chmod 664 hello.c
//给hello.c文件的权限修改成,所属者所属组可读可写,
其他用户可读
sudo chmod 000 hello.c
//给hello.c文件的权限修改成所有人都无权限
-----------------------------------------------
3)修改文件的属主和属组
sudo chown //既可以修改属主也可以修改属组
sudo chown name 文件名 //把文件的属主修改
sudo chown .name 文件名 //把文件的属组修改
sudo chown name.name 文件名 //既修改属主也修改属组
//如果操作目录文件,修改权限想要影响子文件或子文件夹
sudo chown -R name.name 文件名