LINUX.ORG.RU
решено ФорумAdmin

chown -R root / FAIL


0

1

Доброго времени суток! Такой вопрос: ставил почту, ошибся командой - ввёл «chown -R root /» (вместо слэша надо было имя файла). Вовремя остановил, но потёрлось дофига. Самое главное, Мускулы перестали работать:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

Пробовал менять права, хозяев на папку и файл (http://anthologyoi.com/computers/cant-connect-to-local-mysql-server-through-s...) - не помогает. Видимо, где-то еще исправлять надо.

Подскажите пожайлуста, где надо проверить владельцев чтоб запахало?

>ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

Сдаётся мне, что это ошибка не в логе мускуля, а в логе приложения.

Ты пытаешься восстановить работоспособность mysql, читай ЕГО логи. И проверяй локальным клиентом mysql

router ★★★★★ ()
Ответ на: комментарий от router

Абсурдно, но в логах пусто. Единственная запись за вчера в файле error.log из logs/mysql:

110604 11:26:32 [Note] /usr/sbin/mysqld: Normal shutdown

110604 11:26:32 [Note] Event Scheduler: Purging the queue. 0 events 110604 11:26:32 InnoDB: Starting shutdown... 110604 11:26:35 InnoDB: Shutdown completed; log sequence number 0 28454284 110604 11:26:35 [Note] /usr/sbin/mysqld: Shutdown complete

DiamondDream ()
Ответ на: комментарий от DiamondDream

Перезапусти mysql, убедись что процесс mysqld работает. Проверь системные логи /var/log/messages, /var/log/syslog, /var/log/daemon.log, если есть

router ★★★★★ ()
Ответ на: комментарий от router

ЗЫ. проверь, что у mysql есть право на его же логи :)

router ★★★★★ ()
Ответ на: комментарий от router

Процесс вроде работает, рапортует

mysql start/running

Логи: В daemon'e:

Jun 5 08:35:33 server init: mysql main process ended, respawning Jun 5 08:35:37 server ntpd[620]: can't open /var/lib/ntp/ntp.drift.TEMP: Permission denied Jun 5 08:36:03 server init: mysql post-start process (22124) terminated with status 1 Jun 5 08:36:03 server init: mysql main process (22195) terminated with status 1 Jun 5 08:36:03 server init: mysql main process ended, respawning Jun 5 08:36:33 server init: mysql post-start process (22196) terminated with status 1 Jun 5 08:36:33 server init: mysql main process (22267) terminated with status 1 Jun 5 08:36:33 server init: mysql main process ended, respawning Jun 5 08:37:04 server init: mysql post-start process (22268) terminated with status 1 Jun 5 08:37:04 server init: mysql main process (22340) terminated with status 1 Jun 5 08:37:04 server init: mysql main process ended, respawning Jun 5 08:37:34 server init: mysql post-start process (22341) terminated with status 1 Jun 5 08:37:34 server init: mysql main process (22415) terminated with status 1 Jun 5 08:37:34 server init: mysql main process ended, respawning Jun 5 08:38:04 server init: mysql post-start process (22416) terminated with status 1 Jun 5 08:38:04 server init: mysql main process (22488) terminated with status 1

syslog:

Jun 5 06:26:07 server init: mysql post-start process (3305) terminated with status 1 Jun 5 06:26:07 server init: mysql main process (3377) terminated with status 1 Jun 5 06:26:07 server init: mysql main process ended, respawning Jun 5 06:26:08 server postfix/postdrop[31621]: warning: mail_queue_enter: create file maildrop/435437.31621: Permission denied Jun 5 06:26:15 server postfix/postdrop[31785]: warning: mail_queue_enter: create file maildrop/46956.31785: Permission denied Jun 5 06:26:18 server postfix/postdrop[31621]: warning: mail_queue_enter: create file maildrop/435619.31621: Permission denied Jun 5 06:26:25 server postfix/postdrop[31785]: warning: mail_queue_enter: create file maildrop/47155.31785: Permission denied Jun 5 06:26:28 server postfix/postdrop[31621]: warning: mail_queue_enter: create file maildrop/435812.31621: Permission denied Jun 5 06:26:35 server postfix/postdrop[31785]: warning: mail_queue_enter: create file maildrop/47355.31785: Permission denied

Еще и postfix ковырять придется...

При запуске mysql_upgrade тоже гонит на сокет

root@server:~# mysql_upgrade Looking for 'mysql' as: mysql Looking for 'mysqlcheck' as: mysqlcheck Running 'mysqlcheck' with connection arguments: '--port=3306' '--socket=/var/run/mysqld/mysqld.sock' mysqlcheck: Got error: 2002: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) when trying to connect FATAL ERROR: Upgrade failed

Не проще ли всё нахрен снести и заново поставить?)

DiamondDream ()
Ответ на: комментарий от DiamondDream

Во! Такая идея - если снести мусклы вообще, надо базы слить. Еще бы знать, в каком виде они хранятся) через mysql не сделать - не запускается

DiamondDream ()

Вы скажите, какой у вас дистрибутив, и попросите ls -l запостить тех директорий, которые запопроли.

Если Debian, могу свои листы прислать.

Hoodoo ★★★★★ ()
Ответ на: комментарий от Nao

Можно ли провести полный цикл переустановки ВСЕХ пакетов, которые указаны в зависимостях мускулов?

DiamondDream ()
Ответ на: комментарий от DiamondDream

>Еще бы знать, в каком виде они хранятся)

Базы хранятся в

/var/lib/mysql/

В принципе можешь забекапить и потом подложить новой базе, главное чтобы права совпали.

Но лучше попробовать сменить права

Узнай точное имя пользователя mysql

grep -i mysql /etc/password

затем

find /var -iname '*mysql*' -print

если ничено лишнего не попадёт, запускай

find /var -iname '*mysql*' -print -exec chown mysql {} \;

и перезапусти mysql ещё раз

router ★★★★★ ()
Ответ на: комментарий от Nao

>Не надо базы сливать. Удаление (по крайней мере без всяких там --purge) не удалит настройки и бд.

Вот не надо на это рассчитывать, бекап должен быть в любом случае.

router ★★★★★ ()
Ответ на: комментарий от router

> Вот не надо на это рассчитывать, бекап должен быть в любом случае.
На бубунте (да и вообще в любом нормальном дистре) удаление пакета не ведёт к удалению настроек и других сопутствующих данных.

Nao ★★★★★ ()
Ответ на: комментарий от Nao

> На бубунте (да и вообще в любом нормальном дистре) удаление пакета не ведёт к удалению настроек и других сопутствующих данных.

Вот не надо на это рассчитывать, бекап должен быть в любом случае.

router ★★★★★ ()
Ответ на: комментарий от router

СПАСИБО ОГРОМНОЕ, router!! ЗАРАБОТАЛО!!

зачовнил вот так (find находит еще и фалы dpkg и архивы apt):

root@server:/var/log# chown mysql /var/run/mysqld root@server:/var/log# chown mysql /var/run/mysqld/mysqld.sock root@server:/var/log# chown mysql /var/run/mysqld/mysqld.sock root@server:/var/log# chown mysql /var/lib/update-rc.d/mysql root@server:/var/log# chown mysql /var/lib/mysql root@server:/var/log# chown mysql /var/lib/mysql/mysql root@server:/var/log# chown mysql /var/lib/mysql/mysql_upgrade_info root@server:/var/log# service mysql restart

Пашет! Напрягает теперь другое. Лог error.log:

110605 12:05:28 [Note] Event Scheduler: Purging the queue. 0 events 110605 12:05:28 InnoDB: Starting shutdown... 110605 12:05:29 InnoDB: Shutdown completed; log sequence number 0 28454284 110605 12:05:29 [Note] /usr/sbin/mysqld: Shutdown complete

110605 12:05:29 [Note] Plugin 'FEDERATED' is disabled. 110605 12:05:30 InnoDB: Started; log sequence number 0 28454284 110605 12:05:30 [Note] Event Scheduler: Loaded 0 events 110605 12:05:30 [Note] /usr/sbin/mysqld: ready for connections. Version: '5.1.41-3ubuntu12.10' socket: '/var/run/mysqld/mysqld.sock' port: 3306 (Ubuntu)

раньше логи были пустые, слов InnoDB и FEDERATED в помине не было. Известно ли, где подправить им владельца?

DiamondDream ()
Ответ на: комментарий от router

> Вот не надо на это рассчитывать, бекап должен быть в любом случае.
Бекап понятно должен быть, но к данному топику не имеет отношение.

Nao ★★★★★ ()
Ответ на: комментарий от DiamondDream

Попробуй переустановить все пакеты.

for pkg in $( dpkg -l | grep '^ii' | awk '{print $2; }' ); do apt-get install --reinstall $pkg;done

router ★★★★★ ()
Ответ на: комментарий от DiamondDream

>зачовнил вот так

Ты забыл про сами базы. Нужно ещё

chown mysql -R /var/lib/mysql

router ★★★★★ ()
Ответ на: комментарий от DiamondDream

> раньше логи были пустые, слов InnoDB и FEDERATED в помине не было. Известно ли, где подправить им владельца?

Проверь права доступа к файлу с конфигом /etc/my.cnf или где он у тебя. И все его инклюды grep -i include /etc/my.cnf

Frakhtan-teh ★★ ()
Ответ на: комментарий от DiamondDream

Полный цикл переустановки пакета apt-get install --reinstall packagename, но это тебе не поможет, имхо, данные оно не перезапишет, только свое содержимое.

one117 ★★★★★ ()
Ответ на: комментарий от DiamondDream

Такой вопрос. На команду service --status-all система отвечает списком, где полно [ ? ]. То есть, опять же нет прав на чтение. Откуда команда берет данные о процессах?

DiamondDream ()

cсудя по service - у тебя RPM-дистрибутив ?
rpm --setperms {packagename}

надеюсь, ты всё через пакетный менеджер ставил, а не руками ?

ovax ★★★ ()

for p in $(rpm -qa); do rpm --setperms $p; done
для всех пакетов

ovax ★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.