Чудесные падения debian и такие же чудесные восстановления

В процессе решения предыдущей проблемы мне надо было перезагрузить компьютер. И я его перезагрузил, но при этом все интернет-сервисы упали. Я спешно бросился разбираться что к чему и увидел прекрасное: не запускается MySQL, не работает apache, не получается достучаться до пользовательской папки через ftp. Вглядываясь в сообщения при загрузке системы я увидел строку в том плане, что первая строка /etc/fstab неправильная, поэтому не буду ничего монтировать вообще. И дальше загрузка со множеством сообщений о том, что то это, то то не запустилось. Я пошел в этот самый fstab и обнаружил, что там первая строка наполнена какими-то точками, а потом идёт заголовок из комментариев от файла fstab, а потом конец файла. И всё.
Команда ls -l /dev/disk/by-id быстро напомнила, что у меня тут два диска. А краткая прогулка по диску в mc показала, что у меня пустой каталог /home. Я прописываю в /etc/fstab монтирование второго диска в каталог /home, перезагружась — не помогает. Смотрю на соседском компе, прописываю строку

proc /proc proc defaults 0 0

перезагружаюсь: РАБОТАЕТ.

Вот только в логах нарылись строки о том, что надо почекать диск на предмет потерянных кластеров. И что какой-то апдейт mysql при старте не произошел. Куда с этим идти — не понятно.

Настраиваем web-интерфейс zabbix на другом физическом сервере

Собственно, установлен zabbix на котором всё работает и хочется на сервере, торчащем в интернет, получить доступ к web-интерфейсу. Поставил пакет zabbix-frontend-php, но он мне сказал, что база не настроена. Разумеется. Читать далее

Как сделать русские буквы в web-интерфейсе в zabbix под debian

Собственно, во время предыдущей попытки устанавливать zabbix я эту проблему как-то решал. Вроде всё по-русски пишет, а как создашь тест с названием «Тест», так сразу и получаешь «????». Вроде немного обидно. Сеть подсказала, что проблема в том, что в таблицах mysql не та кодировка при установке создании таблиц. Собственно, правило конвертации оказалось простое:

ALTER TABLE users CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;

Вот только таблиц 88, которые вместо users подставить надо. И тут я вспомнил, что я умный. Что характерно, вспомнил сразу, поэтому память у меня тоже ничего. И написал буквально следующее:

root@zabbix:~# echo ‘show tables;’ | mysql zabbix -uroot -psecretpass | xargs -i -t -p echo ‘ALTER TABLE {} CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;’ | mysql zabbix -uroot -psecretpass

Разумеется, я сначала написал без буквы -p в xargs, поэтому у меня скрипт сразу зарубился с диагнозом отсутствия таблицы zabbix.Tables_of_zabbix. А когда я добавил -p и гордо отказался конвертировать заголовок, то всё остальное прошло на ура. И думать над этим скриптом как-то лень. А как бы вы первую строчу с заголовком убрали бы?

Кстати, в phpmyadmin я ещё поменял операцию сравнения с той, что была на эту utf8 general. И вот тогда точно заработали русские буквы.

Как я борол error: ‘Lost connection to MySQL server at ‘reading initial communication packet’, system error: 111′

Нет ничего проще: на том сервере к которому обращаюсь по сети я зашел в /etc/mysql/my.cnf и поправил bind-address с 127.0.0.1 на реальный ip-шник, к которому обращаюсь. Ну и сервер mysql перезагрузил.

Сказ о том, как я базу mysql-ную протерял. И расколол тоже. И какую софтину нарыл для этого.

Дело было вечером, делать было нечего. Как-то раз установил я сервер красивый-прекрасивый, да перемудрил там что-то с установкой пакетов Perl, так что инсталляторы что всей системы, что конкретно перловых модулей нервно поёживались при моём появлении в консоли. А на всякие мои обращения опускали глаза в пол и начинали на ходу выдумывать левейшие отмазки только бы я поскорее ушел. Я с ними и так, и эдак, а они всё ни в какую, не хотят со мной коммуницировать. Ну я это только с виду добрый, а по жизни я справедливый. И на своей шкуре вышеупомянутые менеджеры узнали как это бывает. Из работающего на сервере на тот момент была только одна софтинка: сервер, да его mysql-льная база. Читать далее

Редактирование плагинов WordPress — это просто. И MySQL это не страшно.

Оставил я замечательный плагин — Display future posts. Он порождает виджет, который показывает какие посты у меня запланированы на будущее. То бишь только темы от них. Но вот незадача — он показывает посты в хронологическом порядке, причём все. И настройками это не регулируется. Ну вы же меня знаете. Там в этом плагине единственный запрос к MySQL. Сначала я добавил просто LIMIT 1 в конец запроса, но он начал выдавать только ближайший пост. А это не спортивно. Кого на такую уловку заманишь? Тогда я ещё поменял параметр ORDER BY на Rand() и стало именно то, что мне надо.

Главное только не обновить это плагин когда выйдет новая версия.

Выполнение команд mysql из скрипта

В скрипте, который автоматизирует мою рутину, надо выполнить несколько команд mysql от имени root. Разумеется, что бы не вводить пароль по двадцать раз. Нашел я на одном из доставшихся в наследство мне серверов (Debian 4) скрипт с такими словами:

#/bin/bash
echo create database $1 default character set cp1251 collate cp1251_bin\;
echo create database $1 default character set cp1251 collate cp1251_bin\; |mysql -u root -p`</root/mysql.pass`
Мне как-то сразу показалось странным отсутствие ! в первой стороке. Но тем не менее, скрипт с удовольствием выдаёт ошибку mysql. А значит, система работает. Мне не понятно почему нет пробела после -p и вычисляемым выражением. Почему man mysql утверждает, что имя базы обязательно, а тут его нет, но факт остаётся фактом — это работает.
Когда я перенёс эту конструкцию на более родной мне сервер (Debian 5), то она там работать не стала. Заставил я работать только в виде
echo bla-bla\; |mysql —user=root —password=password
И мне это странно. А вам?

Кто сожрал трафик предприятия на моём сервере без моего ведома?

Вчера мне сообщили, что любезно холимый и лелеемый мною сервер очень активно и продуктивно работает с интернетом. Настолько, что сожрал 90 гиг за месяц. Мне это стало странно, потому что я то думал, что совсем обнаглел с репозиторием debian lenny на i386, который до 30 мег в день, а точнее в ночь качает. Но это всё равно никак не 90 гиг в месяц, а один. Ну я попросил админов сделать выборку на тему куда и зачем он ходит, а они мне Читать далее

Команды для работы с Cyrus-sasl. Back to fidonet.

Я очень медленно разбираюсь с настройками сервера, в том числе и почтового под debian. Первоначально сервер был установлен по инструкции не предусматривающей несколько доменов. Потом я понял, что буду заводить эти виртуальные домены, в чём мне поможет вот этот документ и замечательная инструкция по установке виртуальных доменов под gentoo. Сегодня я полдня (с отвлечениями и отрывами) изучал вот такое описание sasl, но у меня сложилось впечатление, что там более теоретическая ,чем практическая сторона вопроса. Вроде бы первоначально скрестить postfix c sasl получилось по первоначальной инструкции, но если что, то есть официальная страничка как sasl прописывать в postfix.

Так вот, пост этот не столько для того, что бы сохранить такое количество ссылок, а что бы запомнить команды:

sasldblistusers2 — получить список юзеров, которых распознаёт sasl

saslpasswd2 test — создать пользователя test (далее система дважды пароль спрашивает)

testsaslauthd -u test -p pass — проверить идентификацию пользователя test с паролем pass. В ответ получается строка либо «0: OK «Success.»», либо «0: NO «authentication failed»»

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

А про fidonet я в сабже вспомнил, потому что как сейчас помню все эти замечательные outboud бинкли стайл, squish, sqafix, itrack и прочую фигню, которая из элементов мозаики рано или поздно создавала законченный организм автоматизированной почтовой системы.