Вот уже утро, голова снова начинает варить..
Господа и дамы, прошу немного внимания и сочувствия) Суть истории в кратком пересказе:
Из-за паталогии некачественного энергоснабжения, Debian Wheezy ушел в отказ с просьбой run fsck manualy. Силы и знание инглиша офисных сотрудников были направлены на удовлетворение воли машины. В результате когда меня попросили приехать/посмотреть я наблюдал картину, как секретарь сидит у монитора и давит пальцем на «y». Тем временем на экран сыпались сообщения Buffer I/O error on /dev/sda1 и информация о закате суперблоков.
Коротко о системе:
Debian 7, iRedMail (dovecot, postfix, roundcube, mysql, fail2ban, spamassassin, amavisd, clamav), все на 1 разделе ext4.
Быстренько поставив другой винт и накатив Debian, смонтировал изнасилованную систему и слил что мог. При копировании /usr пошли ошибки в консоль, значит накрыло эту часть файлов. Могло быть и хуже, но директории с БД живы. Отмонтировав и проверив нормально fs система загрузилась.
Некоторые демоны подниматься отказывались. smartctl выдал passed, badblocks застрял на одном блоке.
MySQL
Err
[ERROR] Can't find messagefile '/usr/share/mysql/errmsg.sys'
Solve
cp /usr/share/mysql/russian/errmsg.sys /usr/share/mysql/errmsg.sys
Dovecot
Err
/usr/lib/dovecot/pop3 {pop3-login} {imap} - no such file or directory
Solve (?)
touch /usr/lib/dovecot/pop3 {pop3-login} {imap}
chmod 777 /usr/lib/dovecot/pop3 {pop3-login} {imap}
Сейчас такое положение:
root@mail:~# service --status-all
[ + ] acpid
[ - ] amavis
[ - ] apache2
[ + ] atd
[ - ] bootlogs
[ ? ] bootmisc.sh
[ ? ] checkfs.sh
[ ? ] checkroot-bootclean.sh
[ - ] checkroot.sh
[ + ] clamav-daemon
[ + ] clamav-freshclam
[ - ] console-setup
[ + ] cron
[ + ] dbus
[ - ] dovecot
[ - ] exim4
[ + ] fail2ban
[ - ] firebird2.5-super
[ - ] hostname.sh
[ ? ] hwclock.sh
[ + ] iptables
[ + ] iredapd
[ - ] kbd
[ - ] keyboard-setup
[ ? ] killprocs
[ ? ] kmod
[ - ] motd
[ ? ] mountall-bootclean.sh
[ ? ] mountall.sh
[ ? ] mountdevsubfs.sh
[ ? ] mountkernfs.sh
[ ? ] mountnfs-bootclean.sh
[ ? ] mountnfs.sh
[ ? ] mtab.sh
[ ? ] mysql
[ ? ] networking
[ + ] nfs-common
[ - ] ntp
[ + ] postfix
[ - ] postfix-cluebringer
[ - ] procps
[ ? ] rc.local
[ - ] rmnologin
[ + ] rpcbind
[ + ] rsyslog
[ + ] samba
[ ? ] sendsigs
[ - ] spamassassin
[ + ] ssh
[ + ] udev
[ ? ] udev-mtab
[ ? ] umountfs
[ ? ] umountnfs.sh
[ ? ] umountroot
[ - ] urandom
[ - ] x11-common
Пытаюсь запустить службы:
root@mail:~# service apache2 restart
apache2: Syntax error on line 244 of /etc/apache2/apache2.conf: Syntax error on line 1 of /etc/apache2/mods-enabled/auth_mysql.load: Cannot load /usr/lib/apache2/modules/mod_auth_mysql.so into server: /usr/lib/apache2/modules/mod_auth_mysql.so: cannot open shared object file: No such file or directory
Action 'configtest' failed.
The Apache error log may have more information.
failed!
root@mail:~# service spamassassin restart
Restarting SpamAssassin Mail Filter Daemon: No /usr/bin/perl found running; none killed.
start-stop-daemon: unable to start /usr/sbin/spamd (Input/output error)
root@mail:~# service amavis restart
Stopping amavisd: (not running).
Starting amavisd: Can't locate auto/NetAddr/IP/Util/autosplit.ix in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl) at /usr/share/perl/5.14/AutoLoader.pm line 173.
at /usr/lib/perl5/NetAddr/IP/Util.pm line 9
Can't locate auto/NetAddr/IP/UtilPP/autosplit.ix in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl) at /usr/share/perl/5.14/AutoLoader.pm line 173.
at /usr/lib/perl5/NetAddr/IP/UtilPP.pm line 8
Problem in antispam SA code: Can't locate auto/NetAddr/IP/InetBase/inet_any2n.al in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl) at /usr/lib/perl5/NetAddr/IP/Lite.pm line 622
Compilation failed in require at /usr/lib/perl5/NetAddr/IP.pm line 7.
BEGIN failed--compilation aborted at /usr/lib/perl5/NetAddr/IP.pm line 7.
Compilation failed in require at /usr/share/perl5/Mail/SpamAssassin/NetSet.pm line 25.
BEGIN failed--compilation aborted at /usr/share/perl5/Mail/SpamAssassin/NetSet.pm line 25.
Compilation failed in require at /usr/share/perl5/Mail/SpamAssassin/Conf.pm line 86.
BEGIN failed--compilation aborted at /usr/share/perl5/Mail/SpamAssassin/Conf.pm line 86.
Compilation failed in require at /usr/share/perl5/Mail/SpamAssassin.pm line 71.
BEGIN failed--compilation aborted at /usr/share/perl5/Mail/SpamAssassin.pm line 71.
Compilation failed in require at (eval 115) line 66.
BEGIN failed--compilation aborted at (eval 115) line 66.
(failed).
root@mail:~# service postfix-cluebringer restart
[....] Restarting postfix policy daemon cluebringer...Stopping...Starting...Couldn't open log file «/var/log/cbpolicyd.log» [Файловая система доступна только для чтения]. at /usr/share/perl5/Net/Server.pm line 217.
[FAIL] Failed ... failed!
failed.
Последнее показало, что за ночь файловая система опять задумалась о вечном и ушла в readonly. Я не могу из-за этого установить права на /var/log/*, отпускать в ребут тоже побаиваюсь.
Что же делать? На данный момент почтовик раздает интернет и принимает почту, отказывая в соединении при отправке (что не критично). Все письма надежно лежат в почтовых клиентах. Я сижу на основной работе и чешу репу, есть ли смысл его реанимировать, или нужно воспользоваться тем диском, на который я слил инфу и заново все развернуть.