可执行目录?和 chmod o+w 更改终端目录颜色?

可执行目录?和 chmod o+w 更改终端目录颜色?
  1. 什么是可执行目录?

  2. 如果o+w设置目录颜色更改为背景绿色,这意味着什么?为什么它不为 执行此操作ug+w,而只为 执行此操作o+w

  3. 阅读评论后的附加问题:使目录可执行是否存在安全风险?如果是这样,为什么?

答案1

颜色

DIR_COLORS*颜色由位于“/etc.”下的文件控制。例如,在 Fedora 19 上我有以下 3 个文件:

$ ls -l /etc/DIR_COLORS*
-rw-r--r--. 1 root root 5004 Jan 20  2014 /etc/DIR_COLORS
-rw-r--r--. 1 root root 5682 Jan 20  2014 /etc/DIR_COLORS.256color
-rw-r--r--. 1 root root 4646 Jan 20  2014 /etc/DIR_COLORS.lightbgcolor

颜色完全是装饰性的,并且会关闭ls正在生成的输出。您可以像这样禁用它:

$ ls --color=never <other options>

这些DIR_COLORS*文件可以查看,它们只是文本,并且有很好的注释,解释了它们的功能。这行就是它显示为绿色的原因:

OTHER_WRITABLE 34;42 # dir that is other-writable (o+w) and not sticky

可执行目录

目录必须是可执行的,以便用户可以cd进入其中并运行命令。如果没有该位,则无法访问目录。

$ mkdir adir
$ chmod 644 adir
$ cd adir
bash: cd: adir: Permission denied

其背后的原因已在 U&L 的其他问答中进行了广泛讨论,标题为:执行与读取位。 Linux 中的目录权限如何工作?

相关内容