在 Debian(以及大多数使用 ls 彩色输出的 Linux 发行版)里,软链接(符号链接)显示成红色,通常代表它指向的目标不存在(断链 / dangling symlink)。
目标文件或目录已被删除
ln -s /opt/app/bin/app ~/app
# 后来 /opt/app 被删了
此时 ~/app 就会变红。
目标路径写错 比如绝对路径拼错、相对路径计算错误。
跨文件系统 / 挂载点未挂载 软链接指向一个还没挂载的磁盘或网络目录。
权限不足(较少见) 某些配色方案中,无法访问目标的链接也可能显示为特殊颜色(但 Debian 默认红色主要是断链)。
ls -l 软连接名
如果看到类似:
lrwxrwxrwx 1 user user 10 Jun 10 10:00 link -> no_such_file
且 no_such_file 不存在,就是断链。
也可以用:
readlink -f 软连接名
看实际解析路径。
rm 软连接
ln -s 正确目标 软连接
Debian 默认使用:
eval "$(dircolors)"
其中:
ORPHAN # 断链(红色)
LINK # 正常软链接(通常青色)
你可以查看:
dircolors -p | grep -E 'LINK|ORPHAN'
如果你愿意,可以把 ls -l 的输出贴出来,我可以帮你具体判断。