我的Ubuntu 18.04服务器上有一个目录
它由www-data拥有
/var/www/html/svg
drwxrwxr-x 2 www-data www-data 20K Apr 16 05:48 svg
作为“ubuntu”用户,我已经创建了一个指向/ tmp目录的符号链接,因为我需要一个webservice来访问这个目录。这按预期工作。
pwd
/tmp
lrwxrwxrwx 1 ubuntu ubuntu 17 Apr 15 09:11 svg -> /var/www/html/svg
但是,如果我以服务器上的任何用户身份登录,并尝试cd进入符号链接目录
cd /tmp/svg
我收到以下错误:
-bash: cd: /tmp/svg: Permission denied
如果我作为任何用户进入实际目录/ var / www / html / svg,我可以毫无问题地做到。
令人担忧的是,这甚至以root身份发生。
可能是什么导致了这个?我希望能够访问此符号链接,而不必显式cd到目录。
您可以更改sym链接的权限,例如:
chmod -h 777 /tmp/svg
或者所有者,为了匹配您的实际目录,它指向:
chown -h www-data:www-data /tmp/svg
尝试更改符号链接所有权以匹配工作案例
chown -h www-data:www-data /tmp/svg
正如评论中所指出的,更新了传递-h
标志的答案,以避免链接解除引用。
-h, - no-dereference影响每个符号链接而不是任何引用的文件(仅在可以更改符号链接所有权的系统上有用)