Como posso definir um link simbólico de /tmp/mysql.sock?

Como posso definir um link simbólico de /tmp/mysql.sock?

Eu tentei definir um link simbólico de

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

porém sempre que tento fazer isso usando o seguinte comando:

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

Recebo a seguinte resposta:

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

Tentei usar chmod, mas mesma resposta.

Preciso fazer isso por causa de um problema com o HHVMhttps://github.com/facebook/hhvm/issues/4987

(Estou executando o Ubuntu 14.04LTS)

Responder1

Parece que a pasta /tmp tem os bits fixos definidos

Isso significa que sua permissão foi negada devido a protected_symlinks

Quando protected_symlinks é definido como "0", o comportamento do link simbólico a seguir é irrestrito.

Quando definido como "1", os links simbólicos podem ser seguidos apenas quando fora de um diretório gravável mundialmente, ou quando o uid do link simbólico e do seguidor corresponderem, ou quando o proprietário do diretório corresponder ao proprietário do link simbólico.

Para mudar esse comportamento

sysctl -w fs.protected_symlinks=0

Leitura adicionalPermissões

informação relacionada