一:权限介绍
1:Linux下有两种用户:超级用户(root),普通用户。
1:超级用户可以在Linux下做任何事情,不受限制;
2:普通用户会有所限制
2:root和普通用户之间的切换指令:
普通到超级:su root 和 su -
超级用户到普通用户:su user 和 Ctrl+D
3:我们通过指令 ll 即可看到文件的属性,请看下面,这是对Linux下文件属性的介绍。
这样例如:-rw-rw-r--. 1 test test 0 8月 27 07:38 file 的意思就是普通文件,拥有者可读可写不可执行,所属组可读可写不可执行,other可读不可写不可执行,连续数为1,属于test用户,属于test组,文件大小0kb,创建于8月27日7:38 ,文件名是file。
4:sudo
可以临时增加权限
二:对文件访问权限的设置方法
1:chmod 设置文件访问权限(加-R可实现递归修改)
命令:chmod u/x/o/a+r/w/x file (u/g/o/a 分别代表拥有者,所属组 ,other,全部;r/w/x代表写,读,执行)
eg:(加粗的是命令)
[test@localhost test]$ ll
总用量 0
-rw-rw-r--. 1 test test 0 8月 27 08:05 file
[test@localhost test]$ chmod u+x file
[test@localhost test]$ ll
总用量 0
-rwxrw-r--. 1 test test 0 8月 27 08:05 file
在这之后用户就拥有了可执行权。
当然如果你觉得这样设置权限太繁琐你也可以这样
eg2:
[test@localhost test]$ ll
总用量 0
-rwxrw-r--. 1 test test 0 8月 27 08:05 file
[test@localhost test]$ chmod 067 file
[test@localhost test]$ ll
总用量 0
----rw-rwx. 1 test test 0 8月 27 08:05 file
在这之后你会发现-rwxrw-r--变成了----rw-rwx ,权限有所改变,那这是为什么呢?
这是因为chmod采用八进制与二进制转换进行权限处理,它分别由这几种情况,000,001,010,011,100,101,110,111,分别代表0,1,2,3,4,5,6,7 ;0代表无权限,1代表有权限;
3:此外chmod还可以设置粘滞位,首先这里有一个问题:当一个用户无法读文件也无法写文件那他可以删除文件嘛?
答案是可以的:这就造成了文件的不安全性,而粘滞位恰好可以解决这一问题
eg3:
[root@localhost test]# chmod +t file^C
[root@localhost test]# ll
drwxr-xr-t. 2 root root 6 8月 27 08:19 file
[test@localhost ~]$ cd file
[test@localhost file]$ ll
总用量 0
-rw-r--r--. 1 root root 0 8月 27 08:22 test
[test@localhost file]$ rm -f test
rm: 无法删除"test": 权限不够
用粘滞位设置目录,那么目录内的文件就不能被随意删除;被 chmod +t后的文件只有一, 超级管理员删除 二、该目录的所有者删除 三、该文件的所有者删除 注意:chmod -t 为取消粘滞位
2:chown修改文件的拥有者
eg:(chown -R 可实现递归修改(目录))
[root@localhost file]# ll
总用量 0
-rw-r--r--. 1 root root 0 8月 27 08:22 test
[root@localhost file]# chown test test //chown 用户 文件名
[root@localhost file]# ll
总用量 0
-rw-r--r--. 1 test root 0 8月 27 08:22 test
3:chgrp修改文件所属组
eg:(chown -R 可实现递归修改(目录))
格式:chgrp [参数] 用户组名 文件名
[root@localhost file]# ll
总用量 0
-rw-r--r--. 1 test root 0 8月 27 08:22 test
[root@localhost file]# chgrp test test
[root@localhost file]# ll
总用量 0
-rw-r--r--. 1 test test 0 8月 27 08:22 test