问题现象
在Linux系统中我们时不时会看到形如下图这样被绿色高亮的目录:
我们可以对这样的目录进行正常的读写操作,但是过于的与众不同总是容易让人看着碍眼。
原因
出现这个问题的原因是这个目录给所有用户、组都赋予了读、写、执行权限。如果我们用`ls -lh`命令查看这些文件夹的权限,可以看到`file_mod_test`的权限是`drwxrwxrwx`。系统会通过高亮的形式提醒我们这是一个高危险的目录,容易被黑客利用。
解决方法
这个问题的解决方法很简单,执行如下命令修改文件夹的读写权限即可。
chmod 775 file_mod_test/
Linux系统文件权限
解决完这个问题后,我们来聊一聊Linux系统中的文件权限。
在Linux系统中,文件和目录的权限是通过一串由 10 个字符组成的字符串表示的,这个字符串包括文件类型和访问权限。这串字符可以分为三部分:文件类型(第一个字符)、所有者权限(第2~4个字符)、群组权限(第5~7个字符)和其他用户权限(第8~10个字符)。以下是关于这些权限的详细介绍:
文件类型
第一个字符表示文件类型,具体的文件类型如下:
- 普通文件(-): 表示这是一个普通文件。
- 目录(d): 表示这是一个目录。
- 符号链接(l): 表示这是一个符号链接。
- 字符设备(c): 表示这是一个字符设备文件。
- 块设备(b): 表示这是一个块设备文件。
- 套接字(s): 表示这是一个套接字文件。
- 管道(p): 表示这是一个命名管道。
权限
每组权限由三个字符表示,分别表示所有者(owner)、群组(group)和其他用户(others)的权限。
- 读(r): 表示读权限,对于目录,表示可以列出目录内容。
- 写(w): 表示写权限,对于目录,表示可以在目录中创建或删除文件。
- 执行(x): 表示执行权限,对于目录,表示可以进入该目录。
示例
下面是一个例子:
-rw-r--r-- 1 owner group 4096 Jun 19 10:00 example.txt
在这个例子中:
- example.txt 是一个普通文件。
- 所有者(owner)有读写权限。
- 群组(group)有读权限。
- 其他用户(others)有读权限。
更改文件权限
使用`chmod`命令可以更改文件的权限。例如,要将文件设置为所有者可读写,群组和其他用户只读的权限,可以运行:
chmod 644 example.txt
此时该文件的权限将变成(对当前用户可读可写、用户组和其他用户可读):
-rw-r--r-- 1 owner group 4096 Jun 19 10:00 example.txt
这些权限对于文件和目录的安全性和访问控制至关重要,所以分配权限时一定要留意下。