/tmp/mysql.sock からシンボリックリンクを設定するにはどうすればよいですか?

/tmp/mysql.sock からシンボリックリンクを設定するにはどうすればよいですか?

シンボリックリンクを設定しようとしました

/tmp/mysql.sock -> /var/run/mysqld/mysqld.sock

ただし、次のコマンドを使用してこれを実行しようとすると、

sudo ln -s /var/run/mysqld/mysqld.sock /tmp/mysql.sock

次のような応答が返されます。

ln: failed to access ‘/tmp/mysql.sock’: Permission denied

chmod を使用しようとしましたが、同じ応答でした。

HHVMの問題のためこれを実行する必要がありますhttps://github.com/facebook/hhvm/issues/4987

(Ubuntu 14.04LTS を実行しています)

答え1

/tmpフォルダにスティッキービットが設定されているようです

これはprotected_symlinksにより権限が拒否されたことを意味します

protected_symlinks が「0」に設定されている場合、シンボリックリンクの追跡動作は制限されません。

「1」に設定すると、誰でも書き込み可能なスティッキーディレクトリの外部にある場合、またはシンボリックリンクとフォロワーの uid が一致する場合、またはディレクトリの所有者がシンボリックリンクの所有者と一致する場合にのみ、シンボリックリンクをたどることができます。

この行動を変えるには

sysctl -w fs.protected_symlinks=0

参考文献権限

関連情報