Установка apache php mysql на centos 5.7

В принципе, всё просто, но если давно не делал – то туговато вспоминается как заставить апач контачить с пхп 🙂

В общем, устанавливаем необходимые пакеты командой:

yum install httpd httpd-devel php php-mysql php-common php-gd php-mbstring php-mcrypt php-devel php-xml mysql-server
Далее запускаем апач и мускуль и добавляем их в автозагрузку:
/etc/init.d/httpd start
/etc/init.d/mysqld start
chkconfig mysqld on
chkconfig httpd on

Затем правим конфиг апача:

nano /etc/httpd/conf/httpd.conf

Находим строчку, раскомментируем, и вписываем туда своё доманное имя:

#ServerName http://www.example.com:80

Перезагружаем апач, чтобы изменения вступили в силу:

/etc/init.d/httpd reload

Далее для теста создаем файлик в дефолтном виртуалхосте:

nano /var/www/html/phpinfo.php

В файлик записываем:

<?php phpinfo(); ?>

Сохраняем и проверяем: http://ip.address/phpinfo.php

Если видим страничку с информацией о пхп – всё получилось.

Можно еще установить пароль на пользователя root в mysql:

/usr/bin/mysqladmin -u root password ‘passwd’

http://geckich.blogspot.com/

Добавление маршрута для VPN

Чтобы у Вас был и инет и доступ к локальным ресурсам виртуальной сети, нужно правильно настроить маршруты. Всё нижесказанное справедливо для Linux, а точнее Ubuntu Linux.

А точнее, добавить к обычным маршрутам маршрут для VPN. Предположим, у нас адрес сети внутри VPN 10.0.x.x, а VPN поднимается на интерфейсе ppp0. Тогда нужно добавить такой маршрут (после включения VPN):

route add -net 10.0.0.0/16 dev ppp0

Таблица маршрутов по команде route -n должна быть что-то типа такого:

Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0         10.10.0.1       0.0.0.0         UG    0      0        0 eth0
10.10.0.0       0.0.0.0         255.255.240.0   U     1      0        0 eth0
10.232.73.0     10.10.0.5       255.255.255.0   UG    0      0        0 eth0
157.199.8.0     10.10.0.5       255.255.255.0   UG    0      0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 eth0
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

10.0.0.0        0.0.0.0         255.255.0.0     U     0      0        0 ppp0

Самый последний – наш маршрут для VPN.


http://geckich.blogspot.com/

Восстановление удаленных данных и с флешки или жесткого диска (HDD)

Столкнулся я недавно с такой проблемкой. Принесли мне флешку, которую перепахал вирус, и попросили восстановить фотки с нее. 
Вначале попробовал открыть в линуксе – ничего хорошего не вышло. Далее начал рыться в поисках проги. Нашел прогу с названием, говорящим самим за себя – Recover My Files. Да еще и портабельная – гуд. Скачал, запустил – и она мне помогла. 
После запуска видим мастер, в котором можно выбрать что восстанавливать – конкретно какую-то папку или целый диск.

В следующем окне выбираем, что восстанавливать.
Затем недостойное скриншота окно подтверждения – и оно погнало восстанавливать. Процесс может затянуться надолго с большим жестким диском или флешкой. У меня поиск на флешке 16 гиг занял где-то минут 40. 

Теперь выбираем, что из найденного восстановить – и выбираем в меню Recovery -> Save.
Дело в шляпе.

Об одном возможном косяке я расскажу в своем следующем посте.

http://geckich.blogspot.com/

Что такое Wildcard mask

Недавно столкнулся с таким термином и – к своему стыду – сразу не понял, что это такое.


Willcard mask – это перевернутая маска, или как ее еще называют – инверсная. Эта маска показывает какая часть (сколько бит) IP адреса могут меняться. Она может применяться при объявлении сетей в протоколах маршрутизации таких как IGRP, EIGRP, OSPF, в списках доступа. Принцип работы маски тоже такой же как у обычной маской, за исключением того, что вместо единиц ставятся нули, а вместо нулей единицы.


Например: Адрес сети 192.168.1.0 маска 255.255.255.0, в двоичном виде это выглядит так

11000000.10101000.00000001.00000000 – 192.168.1.0      Адрес сети 

11111111.11111111.11111111.00000000 – 255.255.255.0  Обычная маска 

 Диапазон адресов : 
от 11000000.10101000.00000001.00000001 – 192.168.1.1 
до 11000000.10101000.00000001.11111110 – 192.168.1.254

Как посчитать Willcard mask? А очень просто, для этого мы просто в обычной маске пишем вместо единиц нули, а вместо нулей единицы.

Обычная маска 255.255.255.0 будет выглядеть
11111111.11111111.11111111.00000000 – 255.255.255.0   Обычная маска 00000000.00000000.00000000.11111111 – 0.0.0.255          Это и будет Willcard mask

Диапазон адресов такой же как и с обычной маской
11000000.10101000.00000001.00000000 – 192.168.1.0       Адрес сети 

00000000.00000000.00000000.11111111 – 0.0.0.255          Willcard mask 
от 
11000000.10101000.00000001.00000001 – 192.168.1.1 
до 
11000000.10101000.00000001.11111110 – 192.168.0.254 

Для маски 255.255.252.0 Willcard mask будет 0.0.3.255,

255.255.240.0        –     0.0.15.255 

255.0.0.0                –     0.255.255.255 
255.255.255.252    –     0.0.0.3

Вот здесь нашел полезную штуку – калькулятор масок http://www.subnet-calculator.com/wildcard.php

http://geckich.blogspot.com/

Собрать программу из исходников в определенную папку

Для этого вначале идем, напрмиер в каталог нашего пользователя – /home/user/ Затем скачиваем файл. (Мне нужно было собрать Sphinx в /opt/sphinx) Сделать это можно либо wget-ом если есть прямая ссылка, либо консольным браузером lynx. Либо залить на сервак командой scp (http://geckich.blogspot.com/2011/11/scp-lanwan.html).
Распаковываем сырцы:

tar -xzvf sphinx-2.0.2-beta.tar.gz

Переходим в папку с исходниками:

sphinx-2.0.2-beta

Далее конфигурируем:

./configure –prefix /opt/sphinx

Параметр –prefix как раз указывает, в какую директорию устанавливать. Далее ждем, пока оно отконфигурируется. Если будут ошибки – исправляем и повторяем. Далее собираем бинарники:

make

После окончания, если не было ошибок:

make install

Всё, готово. Еще можно добавить путь в переменную $PATH чтобы можно было запускать команды без указания пути. Для этого узнаем текущее содержимое этой переменной:

echo $PATH

Копируем в буфер обмена содержимое (Ctrl+Ins). Открываем файл в домашней директории пользователя .bashrc:

nano /home/user/.bashrc

И добавляем в конец запись вида:

PATH=”${PATH}/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/ruby-enterprise-1.8.7-2010.02/bin:/opt/sphinx/bin/”

Всё, дело сделано.

Кстати, если конкретно при инсталле сфинкса ругается на отсутствие исходников мускуля, то на Debian/Ubuntu нужно установить пакет libmysqlclient-dev.

http://geckich.blogspot.com/

В cPanel PHPMyAdmin вызывает циклическую переадресацию (redirect loop)

Зашли вы в cPanel через веб-морду, клацаете на PHPMyAdmin, вводите свой логин и пароль – и всё) браузер колбасит редайрект бесконечно.

Происходит это потому что cPanel не может отдать сессию PHPMyAdmin. Т. е. он вроде как авторизуется типа всё окей, а сессию не получает.

Решение такой траблы не очень очевидно, но просто – поменяйте пароль на этого пользователя в cPanel.

http://geckich.blogspot.com/

Создание программного RAID на CentOS

Всё нижеописанное валидно для CentOS 5. Для других систем пути или какието детали могут отличаться – будьте внимательны.

Смотрим, что у нас с примонтированными разделами.

df -h

Если диски, которые мы хотим использовать смонтированы – отмонтируем их, предварительно слив куда-нибудь информацию.

Далее программой fdisk можно создать необходимые разделы на наших дисках.

После создаем рейд командой:

mdadm –create –verbose /dev/md0 –level=0 –raid-devices=2 /dev/sdf1 /dev/sdh1

Где –level – тип raid. Может быть linear, 0, 1, 5, 6. –raid-devices – количество дисков в рейде, а затем перечисление, каких именно.

Проверяем, что всё создалось нормально:

cat /proc/mdstat

Должно быть что-то типа такого:

md0 : active raid0 sdb1[1] sda1[0]
      104320 blocks [2/2] [UU]

Создаем файловую систему на нашем рейд-разделе (ext3 в моем примере):

mkfs.ext3 /dev/md0

Далее необходимо создать конфиг для mdadm командой:

mdadm –detail –scan –verbose > /etc/mdadm.conf

Создаем папку, куда будем монтировать наш новый рейд-раздел:

mkdir /raid

Монтируем:

mount /dev/md0 /raid

И, напоследок, не забываем добавить запись в fstab:

/dev/md0 /raid ext3 defaults 1 2

Всё. Перезагружаемся и исправляем глюки, если таковые будут.

http://geckich.blogspot.com/

Исправление ошибки Cannot open the disk or… VMware ESX cannot find the virtual disk… в VMware vSphere.

Недавно была такая проблема – виртуальная машина на VMware, отказывалась запускаться и выдавалась ошибка как на этом скриншоте (скриншот не мой – свою ошибку я не заскриншотил ибо надо было быстро всё восстанавливать):

Из данной ошибки видно, что ESX не может найти виртуальный диск <vm_name>.vmdk и соответственно виртуальная машина не запускается. <vm_name> – имя искомой вирт. машины. Поковырявшись в браузере датастора, я обнаружил, что есть файл <vm_name>-flat.vmdk, на котором – слава японским богам – судя по размеру были все данные. Поковырявшись в гугле, я обнаружил, что <vm_name>.vmdk – это конфиг, а <vm_name>-flat.vmdk – это собственно сам файл с данными. Приступим к восстановлению этого пропавшего конфига:
1) При помощи консоли (ssh или putty) заходим по ssh на ESX хост:
ssh root@<hostname_IP>

2) Переходим в папку, в которой находятся файлы нашей виртуальной машины:

cd /vmfs/volumes/<your_volume>/<VM_directory>

3) Теперь нам необходимо узнать точный размер flat диска:

ls -l <vm_name>-flat.vmdk 

-rw——- 1 root root 36106127360 Nov 21 21:07 <vm_name>.vmdk

Запоминаем размер (в примере – 36106127360)!

4) Далее при помощи команды vmkfstools нужно создать новый (временный) vmdk файл с именем, например, temp.vmdk и точным размером файла flat (то что мы узнали в предыдущем пункте), тип диска выберем thin (тонкий – то есть растущий по мере наполнения его данными) и адаптером lsilogic.

vmkfstools -c 36106127360 -d thin -a lsilogic temp.vmdk

5) У вас должно получиться два файла – temp.vmdk и temp-flat.vmdk. Последний файл нам не нужен, удалим его:

rm temp-flat.vmdk

6) Теперь переименуем temp.vmdk в нужное нам название, то есть в <vm_name>.vmdk:

mv temp.vmdk <vm_name>.vmdk

7) Vmdk файл – это конфигурационный файл диска, соответственно нам необходимо его отредактировать. При помощи редактора VI открываем файл:

vi <vm_name>.vmdk

Находим в нем строчку:

RW 31457280 VMFS «temp-flat.vmdk»

Соответственно изменяем «temp-flat.vmdk» на «<vm_name>.vmdk». Сохраняемся и выходим из редактора ([Esc], :wq).

Все, возносим хвалу японским богам и успешно запускаем нашу виртуальную машину 🙂

http://geckich.blogspot.com/

Установка расширений, модулей для Perl с помощью CPAN (CPAN.pm)

Здравствуйте, уважаемые читатели 🙂

Вот недавно был мелкий таск – установить модуль Tie::Handle::CSVдля Perl. Я в Перле как-то так ни бум-бум) потому сразу начал изучать тему и нашел такое простое и действенное решение – установил командой:

perl -MCPAN -e ‘install Tie::Handle::CSV’

Далее ответил на вопросы по начальной настройке установщика – там всё понятно из описания – и всё 🙂 Делов-то.

http://geckich.blogspot.com/