前言
在网上搜索网站文件夹权限配置一般都是是: 文件夹权限最小权限755 文件最小权限644
文件的可读可写可执行很容易理解,但文件夹的权限就需要好好梳理梳理啦,下面是自己的一些经验分享给大家,需要的一起来看看详细的介绍:
前期工作
先创建一个文件夹 test
| mkdir test |
在该目录下创建一个1.txt文件并写入111
| cat > 1.txt 111 |
现在退出该目录来一个一个分析改目录权限
不要用root用户来创建文件夹,因为文件权限配置对root用户无效
目录的可执行权限
| chmod 111 test |
经过测试,此时只能cd test进入目录,但既无法ls列目录,也无法touch 2.txt一个新的文件,但cat 1.txt还是可以读取到内容的
于是我们总结
目录的可执行权限是用户可以进入或者说切换到该目录下,但无法列目录和创建新文件,能读取原来文件是属于文件的权限设置为可读
目录的可写权限
| chmod 222 test |
最直观的变化是该目录颜色变深了( ps,文件赋予可执行权限时也会颜色变深)
可以尝试一些我们常见的命令
| ls test cd test cat test/1.txt touch test/2.txt |
结果是什么都不能做
| ubuntu@VM-8-81-ubuntu:~$ ls test ls: cannot open directory test: Permission denied ubuntu@VM-8-81-ubuntu:~$ cd test bash: cd: test: Permission denied ubuntu@VM-8-81-ubuntu:~$ cat test/1.txt cat: test/1.txt: Permission denied ubuntu@VM-8-81-ubuntu:~$ touch test/2.txt touch: cannot touch ‘test/2.txt': Permission denied |
现在我们在给改目录加上可执行权限
| chmod 333 test |
发现,除了不能正常ls列目录外,其余cd touch cat都可以执行,因此得出总结
linux 文件夹想要创建文件,必须要有可写可执行权限,即权限大小为333,如果只给写权限,什么都干不了
目录的可读权限
| chmod 444 test |
| ubuntu@VM-8-81-ubuntu:~$ ls test ls: cannot access test/1.txt: Permission denied ls: cannot access test/2.txt: Permission denied 1.txt 2.txt ubuntu@VM-8-81-ubuntu:~$ cd test bash: cd: test: Permission denied ubuntu@VM-8-81-ubuntu:~$ cat test/1.txt cat: test/1.txt: Permission denied |
总结: 目录的可读权限可以列目录
网站只有可读权限只能列目录,其他cd cat都无法执行,那么如果网站设置555的权限是什么呢
| ubuntu@VM-8-81-ubuntu:~$ chmod 555 test ubuntu@VM-8-81-ubuntu:~$ cd test/ ubuntu@VM-8-81-ubuntu:~/test$ ls 1.txt 2.txt ubuntu@VM-8-81-ubuntu:~/test$ touch 3,txt touch: cannot touch ‘3,txt': Permission denied |








