在 centOS 上设置目录文件权限
上传目录权限设置
对于对外开放的网站和系统,文件权限控制是一个很重要的事情,对于文件和文件夹权限原则是最小权限够用就行,不相关的文件只需要只读权限即可。目录权限设置很重要:可以有效防范黑客上传木马文件。
chmod -R 644 upload
,php文件就没有权限访问了。chmod -R 755 upload
,php文件的权限就高了。
所以就需要分开设置目录权限和文件权限。实现方法:递归修改权限方法是通过find命令,根据文件参数查找到对应的类型之后执行指定权限。upload,为你需要修改的目录的路径。
修改文件权限:find upload -type f -exec chmod 644 {} \; 修改目录权限:find upload -type d -exec chmod 755 {} \;
设置完成后,再通过命令,将目录和文件的所有者改为root。
chown -R root:root upload
目录权限
权限角色对应:
- 第 0 位,文件类型,
- 为文件,d 为目录。 - 第 1 - 3 位,所有者(owner)对该文件的权限。
- 第 4 - 6 位,所属组(group)对该文件的权限。
- 第 7 - 9 位,其他用户(other)对该文件的权限。
权限字母含义:
r (Read ,读取,权限值为4):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限。w (Write,写入,权限值为2):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。x (Execute,执行,权限值为1):对文件而言,具有执行文件的权限;对目录来说,该用户有进入目录的权限。
权限数字表示:
- 当数字为7时,用
rwx 表示:4(r)+ 2(w)+ 1(x)= 7。 - 当数字为6时,用
rw- 表示:4(r)+ 2(w)+ 0(x)= 6。无执行权限。 - 当数字为5时,用
r-x 表示:4(r)+ 0(w)+ 1(x)= 5。无写入权限。 - 当数字为4时,用
r-- 表示:4(r)+ 0(w)+ 0(x)= 4。无执行写入权限。
- 普通文件,默认
-rw-r--r-- ,644,保证其他用户可以读取文件内容。 - 目录文件,默认
drwxr-xr-x ,755,保证属主用户对目录进行编辑,保证其他用户可以读取目录中的信息,可以进入到目录中
/usr、/var、/opt 区别
- /usr:属于系统级别的目录。/usr/local/bin和/usr/local/sbin是被加入到 PATH 环境变量中的,它中的程序命令,可以在 Linix 启动的时候,自动启动、执行。/usr/src:系统级的源码目录。/usr/local/src:用户级的源码目录。
- /usr/local:是用户级的程序目录,用户自己安装的软件和用户自己编译的软件,默认会安装到这个目录下。相当于在 windows 下的programe files这个目录。安装到这个目录的程序,需要使用软连接到/usr/local/bin或/usr/local/sbin,才能实现开机自启动。当此程序不需要时,直接
rm -rf
掉即可。 - /opt:是用户级的程序目录。用户自己安装的软件,可以安装到这个目录下。相当于在 windows 操作系统的D:/Software。opt 有可选的意思。安装到这个目录的程序,需要使用软连接到/usr/local/bin或/usr/local/sbin,才能实现开机自启动。是一些大型软件的安装目录,或者是一些服务程序的安装目录。当此程序不需要时,直接
rm -rf
掉即可。安装到/opt目录下的程序,它所有的数据、库文件等等都是放在同个目录下面。在硬盘容量不够时,也可将/opt单独挂载到其他磁盘上使用。
/tmp 与/var/tmp 区别
Linux 发行版(Ubuntu、Centos、Redhat)中,有/var/tmp
和/tmp
两个目录,/var
下,放置系统执行过程中经常变化的文件,保存文件 720 小时(30天)。
/tmp
,包含系统和用户创建的临时文件。当系统重新启动时,这个目录下的文件都将被删除。每隔 1 天执行一次临时目录清理操作,把超过 240 小时(10天),没有任何变动的目录文件全部删除。清理规则,主要取决于/usr/lib/tmpfiles.d/tmp.conf文件的设定。
手动清理其下文件,不能简单的rm -rf /tmp/*
,这样会导致正在使用的临时文件被删除,出现一系列问题。正确的做法,使用
若没安装过,首次使用需要安装 tmpwatchdnf -y install tmpwatch
删除 24 小时内,没使用过的临时文件:
tmpwatch 24 /tmp/