Erro de permissões do Unix ao trabalhar com link simbólico e instalação do MySQL

1

Estou trabalhando para instalar o MySQL em um de nossos servidores. Eu sou o ec2-user e estou tentando instalar no diretório ec2-user home, mas permitindo acesso ao diretório para o usuário mysql .

No entanto, mesmo que inicialmente faça login como mysql me dê acesso ao diretório, não consigo encontrar uma maneira de voltar a ele se eu sair:

-bash-4.1$ whoami
mysql
-bash-4.1$ ls
bin  COPYING  data  docs  include  INSTALL-BINARY  lib  man  my.cnf  my-new.cnf  mysql-5.6.24-linux-glibc2.5-x86_64  mysql-test  README  scripts  share  sql-bench  support-files
-bash-4.1$ pwd
/home/ec2-user/install/mysql-5.6.24-linux-glibc2.5-x86_64
-bash-4.1$ ls -l /usr/local
total 44
drwxr-xr-x 2 mysql mysql 4096 Jan  6  2012 bin
drwxr-xr-x 2 mysql mysql 4096 Jan  6  2012 etc
drwxr-xr-x 2 mysql mysql 4096 Jan  6  2012 games
drwxr-xr-x 2 mysql mysql 4096 Jan  6  2012 include
drwxr-xr-x 2 mysql mysql 4096 Jan  6  2012 lib
drwxr-xr-x 3 mysql mysql 4096 Oct  8  2014 lib64
drwxr-xr-x 2 mysql mysql 4096 Jan  6  2012 libexec
lrwxrwxrwx 1 mysql mysql   69 Apr 18 13:27 mysql -> /home/ec2-user/install/mysql-5.6.24-linux-glibc2.5-x86_64
drwxr-xr-x 2 mysql mysql 4096 Jan  6  2012 sbin
drwxr-xr-x 6 mysql mysql 4096 Oct  8  2014 share
drwxr-xr-x 2 mysql mysql 4096 Jan  6  2012 src
-bash-4.1$ cd /usr/local/mysql
-bash: cd: /usr/local/mysql: Permission denied

O que estou fazendo de errado? Devo estar executando a instalação inteira como o mysql user?

    
por Craig Otis 18.04.2015 / 15:36

1 resposta

2

/usr/local/mysql links para /home/ec2-user/install/mysql-5.6.24-linux-glibc2.5-x86_64 e, embora o link em si tenha a permissão de link padrão, ainda não sabemos quais são as permissões para /home/ec2-user/install/mysql-5.6.24-linux-glibc2.5-x86_64 e aposto que essa é a origem do problema.

Qual é a saída de ls -la /home/ec2-user/install/mysql-5.6.24-linux-glibc2.5-x86_64 ? A entrada representada por um . é o que nos interessa. Estou pensando em um deles:

  • Proprietário incorreto (e talvez grupo). Deve ser definido para qualquer processo que o mysql execute como, neste caso mysql
  • Permissões incorretas. Pode ser muitas coisas, mas acho que deveria ser 700 (o proprietário pode fazer o que quiser, ninguém mais pode tocá-lo)
  • Uma combinação dos dois acima.
por 18.04.2015 / 16:24