Симлинк используют оба места?

1111 Я исследовал и не нашел никаких ответов, поэтому решил спросить здесь. Диск /dev/sda2 моего веб-сервера WHM / Cpanel заполнен на 100%. Папка /var находится на диске /dev/sda2, и я обнаружил, что причиной заполнения диска на 100% является папка /var/lib/mysql.

Чтобы это исправить, мне нужно переместить папку /var/lib/mysql из /dev/sda2 в /home, где у меня много места на диске.

Затем я использовал командные строки:

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

Хорошо, теперь, чтобы проверить, работает ли он в новом месте, я просто переименовал /var/lib/mysql в /var/lib/mysql.backup и MySQL перестал работать.

Также, когда я переименовываю папку /home/databasesmysql, MySQL также перестает работать.

Я не знаю, что происходит, символическая ссылка использует оба местоположения?

1
задан 21 August 2014 в 16:28

2 ответа

Вы используете ln -s с аргументами наоборот. Думайте cp, когда Вы будете использовать ln: источник на первом месте, место назначения в последний раз.

Вы хотите иметь ссылку /var/lib/mysql указывающий на фактический каталог /home/databasesmysql. Если бы Вы копировали Вас, то сделал бы:

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

Так с ln -s Вы делаете:

ln -s /home/databasesmysql /var/lib/mysql
0
ответ дан 21 August 2014 в 16:28

Сделал каталог /home/databasesmysql существовать прежде, чем выполнить команды?

Если это сделало, каталог
/var/lib/mysql не был скопирован в /home/databasesmysql,
это было скопировано в /home/databasesmysql,
таким образом, копию называют /home/databasesmysql/mysql, вместо /home/databasesmysql.

Это означало бы ссылку /var/lib/mysql не указывает на правильный каталог, конечно.

0
ответ дан 21 August 2014 в 16:28

Другие вопросы по тегам:

Похожие вопросы: