目录
前言:
1.理解文件权限
1.1使用文件权限符【!】解读ls -l命令所输出的谜一般的文件权限
2.默认文件权限
2.1umask命令用来设置所创建文件和目录的默认权限
3.改变权限
3.1.八进制模式改变权限
3.2.符号模式改变权限
记下相关笔记,记录我的学习生活!
该文章为原创,转载请注明出处和作者:https://blog.csdn.net/Eterlove/article/details/120611962
输出的第一个字段是用来说明文件和目录权限的编码
第一个字符代表对象类型:
- 代表文件
d代表目录
l 代表链接
c 代表字符型设备
b 代表快设备
n 代表网络设备
之后三组三字符的编码,每一组都定义了三种访问权限:
r (read)代表对象是可读的
w (write) 代表对象是可写的
x 代表对象是可执行
若没有某种权限,则用单破折线替代(如rw-说明该对象没有可执行权限)
[shichenghong@localhost 桌面]$ cd /home
[shichenghong@localhost home]$ ls -l
总用量 8
-rw-r--r--. 1 root root 0 9月 29 17:46 aaa.txt
drwxr-xr-x. 2 root root 4096 9月 29 17:47 bbb
-rw-r--r--. 1 root root 0 9月 28 18:00 hello
这里有三组权限分别对应对象的三个安全级别:
(按从左到右顺序) 第一组:对象的属主
第二组:对象的属组
第三组:系统其他用户
用上面找个简单例子说明:
-rw-r--r--. 1 root root 0 9月 29 17:46 aaa.txt
文件aaa.txt(第一个字符-代表对象是文件)有三组权限:
rw-: 文件的属主(是登录名root)
r--: 文件的属组(是组名root)
r--: 系统上其他用户
详解:这些权限说明登录名为root的用户可以读取,写入这个文件,但不可以执行这个文件,类似的,root组的成员可以读取,但不可以写入这个文件及执行这个文件,而不属于root组的其他用户也只能读取文件,而不能写入和执行文件。(wx被单破折线-所替代)
接下来我们讨论下文件从何而来,你可能曾经接触过-----umask
[root@localhost home]# umask
0022
[root@localhost home]# pwd
/home
[root@localhost home]# touch zzz.txt
[root@localhost home]# ls -l zzz.txt
-rw-r--r--. 1 root root 0 10月 5 21:14 zzz.txt
-rw-r--r--. 1 root root 0 10月 5 21:14 zzz.txt
值得注意的是,在大多数Linux发行版中,umask中设置在/etc/profile启动文件中,也有一些是设置在/etc/login.defs文件中(如Ubuntu),可以用umask命令设置指定一个新值。
[root@localhost home]# umask 026
你已经创建了一个目录和文件,如何更改文件和目录的已有权限?
[root@localhost home]# ls -l zzz.txt
-rw-r--r--. 1 root root 0 10月 5 21:14 zzz.txt
[root@localhost home]# chmod 760 zzz.txt
[root@localhost home]# ls -lF zzz.txt
-rwxrw----. 1 root root 0 10月 5 21:14 zzz.txt*
u表示用户
g表示组
o表示其他
a代表上述全部
X:如果对象是目录或者它已有执行权限,赋予执行权限
s:运行时重新设置UID(用户ID)或GID(组ID)
t:保留文件和目录
u:将权限设置为跟属主一样
g:将权限设置为跟属组一样
o:将权限设置为跟其他用户一样
还是以上述zzz.txt为例:
[root@localhost home]# ls -lF zzz.txt
-rwxrw----. 1 root root 0 10月 5 21:14 zzz.txt*
[root@localhost home]# chmod u-x zzz.txt
[root@localhost home]# ls -lF zzz.txt
-rw-rw----. 1 root root 0 10月 5 21:14 zzz.txt
[root@localhost home]#
动手才能收获。最后感谢大家阅读!