Symlink está usando os dois locais?

1

Eu pesquisei e não encontrei nenhuma resposta, então decidi perguntar aqui. O disco /dev/sda2 do meu servidor web WHM / Cpanel ficou 100% cheio. A pasta /var está no disco /dev/sda2 e descobri que o motivo de 100% do disco completo é a pasta /var/lib/mysql .

Para corrigir, preciso mover a pasta /var/lib/mysql de /dev/sda2 para /home , onde tenho muito espaço no disco.

Então eu usei as linhas de comando:

service mysql stop
cp -r -p /var/lib/mysql/ /home/databasesmysql/
mv /var/lib/mysql /var/lib/mysql.backup/
ln -s /home/databasesmysql/ /var/lib/mysql
service mysql start

Ok, agora, para verificar se ele está sendo executado no novo local, acabei de renomear o /var/lib/mysql para /var/lib/mysql.backup e o MySQL parou de funcionar.

Além disso, quando eu renomeio a pasta /home/databasesmysql , o MySQL também para de funcionar.

Eu não sei o que está acontecendo, o link simbólico está usando os dois locais?

    
por Tiago Rossi 21.08.2014 / 12:21

2 respostas

1

Você está usando ln -s com os argumentos ao contrário. Pense em cp quando você usa ln : a origem vem primeiro, o destino é o último.

Você deseja ter um link /var/lib/mysql apontando para o diretório real /home/databasesmysql . Se você estivesse copiando, faria:

cp -r /home/databasesmysql /var/lib/mysql

Então, com ln -s você faz:

ln -s /home/databasesmysql /var/lib/mysql
    
por zwets 21.08.2014 / 13:56
0

O diretório /home/databasesmysql existe antes de executar os comandos?

Em caso afirmativo, o diretório /var/lib/mysql não foi copiado para /home/databasesmysql ,
foi copiado para /home/databasesmysql ,
então a cópia é chamada de /home/databasesmysql/mysql , em vez de /home/databasesmysql .

Isso significa que o link /var/lib/mysql não aponta para o diretório correto, é claro.

    
por Volker Siegel 21.08.2014 / 13:42