文件权限
Linux一般将文件可存取的身份分为:
- user
- group
- others
文件基本权限又分为:
- read
- write
- execute
查看文件权限ls -al
下面横线中文档来自鸟哥的Linux私房菜
档案属性的示意图
- 第一栏代表这个档案的类型与权限(permission):
这个地方最需要注意了!仔细看的话,你应该可以发现这一栏其实共有十个字符
档案的类型与权限之内容-
第一个字符代表这个档案是『目录、档案或连结档等等』:
- 当为[ d ]则是目录
- 当为[ - ]则是档案
- 若是[ l ]则表示为连结档(link file);
- 若是[ b ]则表示为装置档里面的可供储存的周边设备(可随机存取装置);
- 若是[ c ]则表示为装置档里面的序列埠设备,例如键盘、滑鼠(一次性读取装置)。
-
接下来的字符中,以三个为一组,且均为『rwx』的三个参数的组合。其中,[ r ]代表可读(read)、[ w ]代表可写(write)、[ x ]代表可执行(execute)。要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号[ - ]而已。
- 第一组为『文件拥有者可具备的权限』
- 第二组为『加入此群组之帐号的权限』;
- 第三组为『非本人且没有加入本群组之其他帐号的权限』。
-
第二栏表示有多少档名连结到此节点(i-node):
每个档案都会将他的权限与属性记录到档案系统的i-node中,不过,我们使用的目录树却是使用档名来记录,因此每个档名就会连结到一个i-node啰!这个属性记录的,就是有多少不同的档名连结到相同的一个i-node号码去就是了。
-
第三栏表示这个档案(或目录)的『拥有者帐号』
-
第四栏表示这个档案的所属群组
在Linux系统下,你的帐号会加入于一个或多个的群组中。
-
第五栏为这个档案的容量大小,预设单位为bytes;
-
第六栏为这个档案的建档日期或者是最近的修改日期:
这一栏的内容分别为日期(月/日)及时间。如果这个档案被修改的时间距离现在太久了,那么时间部分会仅显示年份而已。如果想要显示完整的时间格式,可以利用ls的选项,亦即:『ls -l --full-time』就能够显示出完整的时间格式了!包括年、月、日、时间喔。另外,如果你当初是以繁体中文安装你的Linux系统,那么日期栏位将会以中文来显示。可惜的是,中文并没有办法在纯文字的终端机模式中正确的显示,所以此栏会变成乱码。 那你就得要使用『export LC_ALL=en_US.utf8』来修改语系喔!
如果想要让系统预设的语系变成英文的话,那么你可以修改系统设定档『/etc/locale.conf』,使LANG这个变数成为上述的内容即可。
-
第七栏为这个文件的文件名
这个栏位就是档名了。比较特殊的是:如果档名之前多一个『 . 』,则代表这个档案为『隐藏档』。可以使用
ls -a
查看到隐藏文件。
改变文件权限
常用的三个
- chgrp:改变文件所属群组
- chown:改变文件拥有者
- chmod:改变文件权限
1. chgrp 改变文件所属群组
改变的群组必须在/etc/group
文件中,也就是你改变的群组必须存在
chgrp [参数] (群组名称) (文件/文件夹)
常见参数
- -R:进行递归的秩序变更。
2. chown 改变文件拥有者
改变的拥有着必须在/etc/passwd
这个文件中,也可以顺便修改群组名称
chown [-R] (拥有者) [文件/目录)
chown [-R] (拥有者:群组名称) (文件/目录)
3. chmod 改变文件权限
改变权限有辆中方式:
3.1 数字
文件的权限为:-rwxrwxrwx
,9个权限,3个为一组,对应的是owner/group/others
- r:4
- w:2
- x:1
如果我们设置一个文件权限为:-rwx---rwx
:
- user:rwx = 4+2+1 = 7
- group:--- = 0+0+0 = 0
- others:rwx = 4+2+1 = 7
所以我们设置为:chmod [-R] 707 (文件/文件目录)
3.2 符号
- user:u
- group:g
- others:o
- all:a
- +:添加权限
- -:减少权限
- =:设置权限
- r,w,x
//设置权限-rwxr-xr-x
chmod u=rxw,go=rx test.txt
//为user添加权限x
chmod u+x test1.txt
//为others删除权限w
chmod o-w test2.txt
//对所有添加w删除x权限
chmod a+w-x test3.txt
网友评论