r read 可读权限,对应数字4(8进制)
w write 可写权限,对应数字2
x(Execute,执行权限) 对应数字1
-(没有任何权限),对应数字0
rwxrw-rw-:755
生产案例:网站的服务用户为wuyike1
防止木马入侵,文件和目录给什么权限是安全临界点:
d 755 root root
f 644 root root
站点目录的文件和目录给什么权限:
[root@wuyike wuyike]# touch test.sh
[root@wuyike wuyike]# ll test.sh
drw---x--x 2 wuyike1 incahome 4096 4月 21 06:46 test.sh
数字修改文件权限法:
[root@wuyike wuyike]# chmod 531 test.sh
[root@wuyike wuyike]# ll test.sh
-r-x-wx--x 1 root root 0 4月 21 07:05 test.sh
字符修改文件权限法:
chmod [用户类型] [+|-|=] [权限字符] 文件名
rw-rw-r-x --> rwx--xr-x:
chmod u+x,g=x test.sh
rw-rw-r-x --> -wx-wx--x:
chmod a-r test.sh
文件属主、用户
文件用户组
其他用户
准备工作:
[root@wuyike ~]# groupad incahome
-bash: groupad: command not found
[root@wuyike ~]# yum -y install e2fsprogs
更新完毕:
e2fsprogs.x86_64 0:1.41.12-23.el6
作为依赖被升级:
e2fsprogs-libs.x86_64 0:1.41.12-23.el6
libcom_err.x86_64 0:1.41.12-23.el6
libss.x86_64 0:1.41.12-23.el6
完毕!
添加一个家庭用户组"incahome"
[root@wuyike ~]# chattr -i /etc/group
[root@wuyike ~]# chattr -i /etc/gshadow
[root@wuyike ~]# groupadd incahome
向家庭用户组“incahome”中添加连个用户wuyike1、wuyike2
[root@wuyike ~]# useradd -g incahome wuyike1
useradd: cannot open /etc/passwd
[root@wuyike ~]# chattr -i /etc/passwd
[root@wuyike ~]# useradd -g incahome wuyike1
useradd: cannot open /etc/shadow
[root@wuyike ~]# chattr -i /etc/shadow
[root@wuyike ~]# useradd -g incahome wuyike1
[root@wuyike ~]# useradd -g incahome wuyike2
建立一个普通用户test
[root@wuyike ~]# useradd test
查看:
[root@wuyike ~]# id wuyike1
uid=502(wuyike1) gid=502(incahome) 组=502(incahome)
[root@wuyike ~]# id wuyike2
uid=503(wuyike2) gid=502(incahome) 组=502(incahome)
[root@wuyike ~]# id test
uid=504(test) gid=504(test) 组=504(test)
[root@wuyike ~]# id root
uid=0(root) gid=0(root) 组=0(root)
[root@wuyike wuyike]# ll wuyike.sh
-rw-r--r-- 1 root root 45 4月 21 05:40 wuyike.sh
[root@wuyike wuyike]# chown wuyike1.incahome wuyike.sh
[root@wuyike wuyike]# ll wuyike.sh
-rw-r--r-- 1 wuyike1 incahome 45 4月 21 05:40 wuyike.sh
wuyike1:可读可写不可执行
wuyike2:可读不可写不可执行
test:可读不可写不可执行
[root@wuyike wuyike]# chmod 765 wuyike.sh
[root@wuyike wuyike]# ll wuyike.sh
-rwxrw-r-x 1 wuyike1 incahome 45 4月 21 05:40 wuyike.sh
wuyike1:可读可写可执行
wuyike2:可读可写不可执行
test:可读不可写可执行
[root@wuyike wuyike]# chmod 331 wuyike.sh
[root@wuyike wuyike]# ll wuyike.sh
--wx-wx--x 1 wuyike1 incahome 45 4月 21 05:40 wuyike.sh
wuyike1:不可读可写理论上可执行,只能用echo写,不能vi(可用“!”强制写,但是什么都看不见,属于非正常写入),实际上执行不了
wuyike2:不可读可写可执行,同上
test:不可读不可写可执行,同上
[root@wuyike wuyike]# chmod 777 wuyike.sh
[root@wuyike wuyike]# ll wuyike.sh
-rwxrwxrwx 1 wuyike1 incahome 45 4月 21 06:08 wuyike.sh
删除权限:受父目录的权限控制,和文件本身无关
[root@wuyike wuyike]# cd ..
[root@wuyike test]# ll -ld wuyike
drwxr-xr-x 3 root root 4096 4月 21 06:08 wuyike
[root@wuyike test]# chown wuyike1 wuyike
[root@wuyike test]# ll -ld wuyike
drwxr-xr-x 3 wuyike1 root 4096 4月 21 06:08 wuyike
[root@wuyike test]# cd wuyike
[root@wuyike wuyike]# ll wuyike.sh
-rwxrwxrwx 1 wuyike1 incahome 45 4月 21 06:08 wuyike.sh
[wuyike1@wuyike wuyike]$ rm wuyike.sh
rm:是否删除普通文件 "wuyike.sh"?y
[wuyike1@wuyike wuyike]$ ll
总用量 4
drwxr-xr-x 3 root root 4096 4月 19 03:16 wuyikekeke
lrwxrwxrwx 1 root root 10 4月 19 03:16 wuyikekeke_soft_link -> wuyikekeke
文件的执行:
1、文件本身要能够执行。2、家庭用户组用户和普通用户同时还需具备r的权限才能执行
3、root都可以执行
win32:*.exe、*.bat、*.com
linux:*.sh、*.py、*.perl
读文件的过程:
目录权限
[root@wuyike wuyike]# cd /test/wuyike
[root@wuyike wuyike]# mkdir test
[root@wuyike wuyike]# ll -ld test
drwxr-xr-x 2 root root 4096 4月 21 06:41 test
[root@wuyike wuyike]# chown wuyike1.incahome test/
[root@wuyike wuyike]# ll -ld test
drwxr-xr-x 2 wuyike1 incahome 4096 4月 21 06:41 test
[root@wuyike wuyike]# touch test/a
[root@wuyike wuyike]# touch test/b
wuyike1:
[wuyike1@wuyike wuyike]$ cd test(可执行)
[wuyike1@wuyike test]$ mv a c(可写)
[wuyike1@wuyike test]$ ll(可读)
总用量 0
-rw-r--r-- 1 root root 0 4月 21 06:45 b
-rw-r--r-- 1 root root 0 4月 21 06:45 c
[wuyike1@wuyike test]$ rm -f b(可写)
[wuyike1@wuyike test]$ ll
总用量 0
-rw-r--r-- 1 root root 0 4月 21 06:45 c
[wuyike1@wuyike test]$ touch a(可写)
[wuyike1@wuyike test]$ ll
总用量 0
-rw-r--r-- 1 wuyike1 incahome 0 4月 21 06:46 a
-rw-r--r-- 1 root root 0 4月 21 06:45 c
wuyike2:
[wuyike2@wuyike wuyike]$ cd test(可执行)
[wuyike2@wuyike test]$ ll
总用量 0
-rw-r--r-- 1 wuyike1 incahome 0 4月 21 06:46 a
-rw-r--r-- 1 root root 0 4月 21 06:45 c
[wuyike2@wuyike test]$ rm -f a(不可写)
rm: 无法删除"a": 权限不够
没有x就不能执行w写和删
没有w也不能写和删
总结:
目录的读、写、执行权限说明:
可读r:表示具有浏览目录下面文件及子目录的权限,即ls dir
(不能进到子目录里,即无法cd dir);
如果没有x权限,ls列表时可以看到所有文件名。但是会提示无权访问。
如果ls -l列表,所有的属性会带有问号,也会提示无权访问目录下文件。
但是可以看到所有文件名。
可写w:表示具有增加、删除或修改目录内文件名(一般指文件名)的权限(需要x权限配合)
可执行x:表示具有进入目录的权限,但是没有r无法列表,没有w无法新建和删除。