восстановление работоспособности массива raid5

Posted in Новости on 15 декабря, 2010 by admin

после смены жесткого диска всплыла вот такая ситуация :

root@rescue / # cat /proc/mdstat
Personalities : [raid1] [raid6] [raid5] [raid4]
md2 : inactive sda3[0](S) sdc3[2](S)
2917660800 blocks

md1 : active raid1 sda2[0] sdc2[2] sdb2[1]
2104448 blocks [3/3] [UUU]

md0 : active raid1 sda1[0] sdc1[2] sdb1[1]
4200896 blocks [3/3] [UUU]

/dev/md2 никак не хотел вставать на путь истинный по советам из интернетов :

root@rescue / # cat /sys/block/md2/md/array_state
inactive
root@rescue / # echo «clean» > /sys/block/md2/md/array_state
-bash: echo: write error: Invalid argument

также :

modprobe raid5

но помог единственный совет :

mdadm —assemble /dev/md2 /dev/sda3 /dev/sdc3 ( и то с флагом —force )

Tags: , ,

защита от hotlink c nginx ( Debian , CentOS )

Posted in Новости on 13 декабря, 2010 by admin

Появилась потребность поставить защиту от хотлинков , когда nginx работает в связке с апачем ( nginx стоит фронтендом ). Все решения выглядели вот так :

location ~ \.(jpg|png|gif)$ {
valid_referers server_names blocked none frienddomain.com *.frienddomain.com ;
if ($invalid_referer) {
return 403;
}
}

но при добавлении локейшена с подправленным valid_referers и расширениями изображения не отдавались и на наш хост, что не есть гуд. Очень долго ворошил интернет, но все ответы были однотипными. Ошибка заключается вот в чем :

с локейшеном — location ~ \.(jpg|png|gif)$ в еррор логе nginx идет вот такая запись :

2010/12/13 12:11:58 [error] 16362#0: *110 open() «/usr/local/nginx/html/comedy/009.jpg» failed (2: No such file or directory),
2010/12/13 12:11:59 [error] 16362#0: *110 open() «/usr/local/nginx/html/comedy/009.jpg» failed (2: No such file or directory),

что свидетельствует нам о некорректности пути. Подправив локейшен был приятно удивлен работоспособностью правила =) . Корректное правило :

location ~* ^.+\.(svg|mp3|ogg|mpe?g|zip|gz|bz2?|rar|jpg|png|gif|jpeg|flv)$ {
root /path/to/site/;
valid_referers none blocked server_names ;
if ($invalid_referer) {
return 403;
}
}

PS для работы должен быть включен в состав nginx модуль — ngx_http_referer_module , который по-умолчанию включен. при конфигурации отсутствие —without-http_referer_module говорит нам, что этот модуль есть.

Приятных блокировок ! =)

Tags: , , ,

проблемы с установкой bugzilla

Posted in Новости on 8 декабря, 2010 by admin

если при проверке нужных модулей ( ./checksetup.pl —check-modules ) некоторых не хватает и при ручной установке ( как советует чекер ) вылезают ошибки :

command:/var/www/admin/data/www/bugs.n0na.me# /usr/bin/perl install-module.pl Test::Taint
Checking for CPAN (v1.81) ok: found v1.94
Checking for YAML (any) ok: found v0.72
CPAN: Storable loaded ok (v2.18)
Going to read '/root/.cpan/Metadata'
Database was generated on Wed, 08 Dec 2010 00:30:54 GMT
Going to read 9 yaml files from /root/.cpan/build/
CPAN: Time::HiRes loaded ok (v1.9711)
DONE
Restored the state of none (in 0.1705 secs)
Installing Test::Taint version 1.04…
Running install for module 'Test::Taint'
Running make for P/PE/PETDANCE/Test-Taint-1.04.tar.gz
Has already been unwrapped into directory /root/.cpan/build/Test-Taint-1.04-s2Sawm
Could not make: Unknown error
Skipping test because of notest pragma
Running make install
Make had returned bad status, install seems impossible

то идем в указанную директорию ( /root/.cpan/build/Test-Taint-1.04-s2Sawm ) и вручную ставим нужные модули :

perl Makefile.PL
make
make install

Tags: ,

после смены сетевой карты не поднимается сеть ( siocsifaddr no such device) Debian

Posted in Новости on 7 декабря, 2010 by admin

Чтобы это исправить, нужно сменить MAC адрес для сетевого интерфейса. Делается это так :

1. записываем новый MAC
2. ищем файл настроек для интерфейса

find /etc/udev/rules.d/ | grep persistent-net

3. редактируем файл путем смены MAC
4. перезагружаем сервер

PS Огромное спасибо за подсказку Павлу Одинцову ( http://phpsuxx.blogspot.com )

Tags:

установка LibXSLT для php на Debian и CentOS

Posted in Новости on 6 декабря, 2010 by admin

в пятой ветке данная библиотека была заменена на xsl , поэтому установка будет выглядеть так :

Debian :

apt-get install -y php5-xsl

CentOS :

yum install -y php-xsl

Tags: , ,