Новая категория — сервер

После некоторых размышлений я решил публиковать мои изыскания в работе с серверами. Несколько лет назад мы с друзьями сделали небольшую локальную сеть у нас в районе. Так как больше желающих не нашлось, невольно мне пришлось стать злым, но справедливым системным администратором.

В новой рубрике я опишу как установить и запустить веб сервер, bind, DC хаб, ftp сервер, почтовый сервер, как осуществлять сетевой мониторинг и многие другие интересные вещи. Надеюсь мои записи помогут вам сохранить время и нервы. Также надеюсь кто-нибудь укажет мне на возможные ошибки и предложит более оптимальное решение предложенных задач. Stay tuned, как говорится! 😉

Running Debian Linux in VMware Player

Некоторое время назад я сделал себе образ Debian Etch в VMware Workstation для моих программистских нужд. Этим образом я пользовался работая в Microsoft Windows XP. Не так давно мне снова потребовался этот образ для работы.

Сказано — сделано. Установил VMware Player 2.5.0, открыл предварительно сохранённый образ. Открылся диалог, вопрошающий меня, был ли скопирован или перенесён открываемая виртуальная машина. Ответил — “I copied it”. Когда виртуалка запустилась и загрузилась, я обнаружил, что сеть не работает. Ifconfig показывал, что eth0 отсутствует и в системе имеется только lo интерфейс. ifup eth0 выдал ошибку:

eth0: ERROR while getting interface flags: No such device

Тем не менее, я сделал dmesg | grep eth и обнаружил, что драйвер pcnet32 успешно загружен и работает в виртуальной машине.

vmware:~# dmesg | grep eth
eth0: registered as PCnet/PCI II 79C970A

После поисков в гугле, я нашёл причину проблемы и её решение. Проблема была в том, что когда VMware Player запускается, он генерирует MAC адрес для сетевой карты в виртуальной машине такой же, как UUID в моей системе.

Для решения проблемы я отредактировал в виртуальной Debian Etch файл /etc/udev/rules.d/z25-persistent-net.rules. В нём были строки:

# This file was automatically generated by the /lib/udev/write_net_rules
# program, probably run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single line.
# MAC addresses must be written in lowercase.

# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM==»net», DRIVERS==»?*», ATTRS{address}==»00:xx:xx:xx:xx:48″, NAME=»eth0″

# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM==»net», DRIVERS==»?*», ATTRS{address}==»00:xx:xx:xx:xx:47″, NAME=»eth1″

Я закомментировал первую строку с eth0 на конце, а во второй строке заменил “eth1″ на “eth0″. Получилось следующее:

# This file was automatically generated by the /lib/udev/write_net_rules
# program, probably run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single line.
# MAC addresses must be written in lowercase.

# PCI device 0x1022:0x2000 (pcnet32)
#SUBSYSTEM==»net», DRIVERS==»?*», ATTRS{address}==»00:xx:xx:xx:xx:48″, NAME=»eth0″

# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM==»net», DRIVERS==»?*», ATTRS{address}==»00:xx:xx:xx:xx:47″, NAME=»eth0″

После перезапуска VMware OS eth0 нашёлся в системе и заработал нормально.

How to play MKV files on Linux

Для просмотра MKV файлов на своём ноутбуке, я пользуюсь плеером Kmplayer. Дополнительно я установил пакет mkvtoolnix:

apt-get install mkvtoolnix

HD Video смотрится гораздо лучше. 😉

Также хорошо играет MKV файлы VLC Media Player.

I830PMEvent: Capability change

Вскоре после того как я установил KDE4, экран моего ноутбука начал своевольно отключаться до тех пор, пока я не нажимал на какую-нибудь клавишу или двигал мышью. Первое впечатление было, что это срабатывает энергосберегающий режим или скринсейвер, но это были не они.

Я начал просматривать файл /var/log/Xorg.0.log:

tail -f /var/log/Xorg.0.log

и выяснил, что все эти мигания сопровождались записью в логе:

PM Event received: Capability Changed
I830PMEvent: Capability change

Решение проблемы, которое я нашёл в интернете: добавить в файл /etc/modprobe.d/blacklist строку “blacklist video“.

Access to shared folders — 2

Ранее я писал, что есть несколько способов доступа к расшаренным папкам в Microsoft Windows.

Второй метод — smbmount

Smbmount является частью пакета smbfs, так что установим его:

apt-get install smbfs

Как подключиться к удалённому хосту? Очень просто:

smbmount //192.168.0.5/video /home/alexey/video_05

где video_05 это папка, которую я предварительно создал в своём домашнем каталоге. При попытке подключения будет запрошен пароль. Если на удалённом хосте разрешён анонимный доступ к папке, не нужно ничего вводить, достаточно просто нажать на “Enter”. Теперь можно смело работать с файлами на удалённом хосте как будто они расположены где-то на моём жёстком диске.

Что делать, если разрешён доступ с определённым логином и паролем? Нет никаких проблем:

smbmount //192.168.0.5/video /home/alexey/video_05 -o user=username
password=mysecretpass

Я предпочитаю не писать пароль в командной строке, чтобы он не сохранился в файле .bash_history. 😉