在 Ubuntu(以及其它 Linux 发行版)里,符号链接(软连接,symlink)本身的权限基本没意义,关键要看它指向的文件/目录的权限。下面分情况说明。
ln -s target linkname
创建后:
ls -l
lrwxrwxrwx 1 user user 6 date linkname -> target
你会发现:
lrwxrwxrwxtarget 的权限✅ 访问 linkname ≈ 访问 target
chmod 755 target
chown user:user target
软连接会自动继承对目标的访问能力。
chown -h user:user linkname
-h 表示只改软连接本身,不改目标。
⚠️ 一般没必要这么做
chmod 644 linkname
⚠️ 多数文件系统会忽略
在 Ubuntu 上通常报错或无效果
如果软连接指向目录:
ln -s /data/logs /var/log/mylogs
访问权限取决于:
/data/logs 的权限/data 是否有 x 权限示例:
chmod 755 /data
chmod 755 /data/logs
→ 仍然能访问
→ 访问被拒
chmod 改软连接→ 没用
namei -l linkname
或:
stat target
Ubuntu 软连接没有实际权限,权限看目标文件/目录
如果你有具体场景(比如 Web 服务、Docker、Nginx、普通用户访问),可以告诉我,我给你精确配置示例。