John Von Neumann Asked: 2018-09-04 03:30:21 +0800 CST2018-09-04 03:30:21 +0800 CST 2018-09-04 03:30:21 +0800 CST ls -F OR ls -al - 红色突出显示是什么意思?[复制] 772 所以我在我的目录上运行了一个ls -F或,我的一些文件显示为红色背景和白色文本。这是什么意思?ls -al/usr/bin linux security 2 个回答 Voted Best Answer HBruijn 2018-09-04T04:44:38+08:002018-09-04T04:44:38+08:00 在 GNU 实现中ls,颜色的含义取决于LS_COLORS环境变量的设置,通常使用dircolors命令设置。 数字代码(组合)确定使用哪些颜色来指示特定文件类型: # Attribute codes: # 00=none 01=bold 04=underscore 05=blink 07=reverse 08=concealed # Text color codes: # 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white # Background color codes: # 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white 红色背景上的白色文本由以下组合定义37;41 用于echo "$LS_COLORS"调查并发现: su=37;41 因此 SETUID 文件是红色背景上的白色文本(这恰好是默认值) dircolors --print-database在没有任何自定义的情况下,为默认设置提供更详细和可读的输出: SETUID 37;41 # file that is setuid (u+s) STICKY 37;44 # dir with the sticky bit set (+t) and not other-writable 红色突出显示的唯一其他默认用法是设置了粘性位的目录的红色背景上的蓝色文本。 John Von Neumann 2018-09-04T03:30:21+08:002018-09-04T03:30:21+08:00 当您运行ls -alorls -F时,以红色背景和白色文本列出的文件表示该setuid位已被翻转。这意味着文件/脚本/程序将以拥有它的用户身份运行,而不是以运行它的用户身份运行。正如您从图片中看到的那样,ping和ping6将它们的第 4 位设置为s,而其他setuid位未翻转的位显示为x。 更多信息可以在以下位置找到: https://en.wikipedia.org/wiki/Setuid
在 GNU 实现中
ls
,颜色的含义取决于LS_COLORS
环境变量的设置,通常使用dircolors
命令设置。数字代码(组合)确定使用哪些颜色来指示特定文件类型:
红色背景上的白色文本由以下组合定义
37;41
用于
echo "$LS_COLORS"
调查并发现:su=37;41
因此 SETUID 文件是红色背景上的白色文本(这恰好是默认值)
dircolors --print-database
在没有任何自定义的情况下,为默认设置提供更详细和可读的输出:红色突出显示的唯一其他默认用法是设置了粘性位的目录的红色背景上的蓝色文本。
当您运行
ls -al
orls -F
时,以红色背景和白色文本列出的文件表示该setuid
位已被翻转。这意味着文件/脚本/程序将以拥有它的用户身份运行,而不是以运行它的用户身份运行。正如您从图片中看到的那样,ping
和ping6
将它们的第 4 位设置为s
,而其他setuid
位未翻转的位显示为x
。更多信息可以在以下位置找到:
https://en.wikipedia.org/wiki/Setuid