По этой теме есть прекрасная документация — http://workaround.org/articles/ispmail-sarge/. Я сделал у себя примерно так, как там написано и всё отлично работает. Рекомендую. 🙂
Настройка bluetooth на HP nx6310
Про то, что bluetooth работает — это я погорячился. Да, dmesg выдаёт нам информацию, что якобы всё работает как надо, но в реальности же это не так. Погуглив, я нашёл решение, которое к сожалению, у меня не заработало. Опубликую на всякий случай, вдруг у кого-то получится.
Для начала нужно скачать с сайта HP набор драйверов и программ “HP Integrated Module with Bluetooth Wireless Technology Software“. Запустив его в wine, получим распакованный архив. В папке Win32/drivers есть файл btwusb.inf, который нам и нужен.
Также необходимо поставить ndiswrapper:
hp:~# apt-get install ndiswrapper-common ndiswrapper-utils-1.9 ndiswrapper-source
Затем нужно собрать и установить модуль ndiswrapper:
hp:~# module-assistant build ndiswrapper
Extracting the package tarball, /usr/src/ndiswrapper.tar.bz2, please wait…
Завершено с /usr/src/ndiswrapper-modules-2.6.26-1-686_1.53-2+2.6.26-13lenny2_i386.deb .
hp:~# module-assistant install ndiswrapper
Выбор ранее не выбранного пакета ndiswrapper-modules-2.6.26-1-686.
(Чтение базы данных… на данный момент установлено 107995 файлов и каталогов.)
Распаковывается пакет ndiswrapper-modules-2.6.26-1-686 (из файла …/ndiswrapper-modules-2.6.26-1-686_1.53-2+2.6.26-13lenny2_i386.deb)…
Настраивается пакет ndiswrapper-modules-2.6.26-1-686 (1.53-2+2.6.26-13lenny2) …
hp:~# modprobe ndiswrapper
Проверяем, что всё получилось:
hp:~# dmesg | tail | grep ndis
[14510.663905] ndiswrapper version 1.53 loaded (smp=yes, preempt=no)
Теперь нужно установить драйвер:
hp:~# ndiswrapper -i btwusb.inf
installing btwusb …
hp:~#
Проверим, установился драйвер или нет:
hp:~# ndiswrapper -l
btwusb : driver installed
Как мы видим, драйвер установлен но заветной надписи:
hp:~# ndiswrapper -l
btwusb : driver installed, hardware present
увы, нет.
Попробую пересобрать ядро посвежее. Если это поможет — отпишу немедленно. А пока, если у кого-то есть рабочее решение проблемы — добро пожаловать в комментарии.
Консольный клиент DC — microdc2
Помимо стандартных средств файлообмена, мы пользуемся P2P сетью Direct Connect. На “Warehouse” был установлен хаб Verlihub, с которым соединяются все пользователи. Как его поставить и настроить я напишу чуть позже. В файлообмене активно участвуют и наши сервера, а в качестве клиентской программы я использую microdc2 — консольный клиент для DC сетей.
Сборка и установка
Сборка и установка microdc2 не занимает много времени. Скачаем архив с исходниками, распакуем его и перейдём в папку с исходниками:
warehouse:~# wget http://corsair626.no-ip.org/microdc/microdc2-0.15.6.tar.gz
warehouse:~# tar zxf microdc2-0.15.6.tar.gz
warehouse:~# cd microdc2-0.15.6
Прежде чем начать собирать программу, поставим необходимые пакеты:
warehouse:~# apt-get install libreadline5-dev libxml2-dev
После установки пакета можно запустить конфигурирование программы:
warehouse:~/microdc2-0.15.6# ./configure
Если всё прошло без ошибок, как это было в моём случае, можно скомпилировать и установить программу:
warehouse:~/microdc2-0.15.6# make && make install
Теперь программа установлена и можно переходить к её настройке.
Настройка
Запускать microdc2 я буду не от рута, а от обычного пользователя, поэтому зайдём в его каталог и создадим папку с файлом конфигурации:
alexey@warehouse:~$ mkdir .microdc2
alexey@warehouse:~$ mcedit .microdc2/config
Мой конфигурационный файл:
set filesystem_charset urf-8
set hub_charset cp1251
set log_charset utf-8
set auto_reconnect on
set filelist_refresh_interval 600
set display searchresults
set log searchresults
share /var/www/
set downloaddir /tmp/
set listingdir /tmp/
set nick Warehouse
set password MyPass
set description «Warehouse server bot»
set email alexey@local
set logfile /home/alexey/.microdc2/microdc.log
set slots 100
set speed LAN(T3)
set active on
connect dc.local
Теперь можно запускать microdc2 и она автоматически подключится к указанному в конфигурационном файле хабу.
Автозапуск microdc2 при загрузке
Сначала установим screen:
warehouse:~# apt-get install screen
Создадим скрипт запуска microdc2:
mcedit /etc/init.d/microdc2.sh
Добавим в него следующие строки:
#!/bin/sh
/usr/bin/screen -d -m su -l alexey -c «/usr/local/bin/microdc2 -c /home/alexey/.microdc2/config»
В моём случае microdc2 будет запускаться под пользователем alexey.
update-rc.d microdc2.sh defaults 90
Добавим скрипт в автозапуск. Оформлен он не по правилам, на что будет выдано предупреждение. Впрочем, взять за основу /etc/init.d/skeleton и оформить скрипт в соответствии с правилами мне не мешает ничто, кроме лени. 😉
Настраиваем web сервер — lighttpd + php5
Так как “Warehouse” не очень мощный сервер, использовать ресурсы нужно очень бережно. 🙂
Я хочу организовать доступ к файлам на сервере по HTTP протоколу и lighttpd поможет мне в этом. Также я хочу иметь возможность запуска php скриптов через CGI.
warehouse:~# apt-get install lighttpd php5-cgi
После загрузки и установки пакетов, разрешим lighttpd использовать модуль mod_cgi и сделаем в папке /etc/lighttpd/conf-enabled/ символическую ссылку на 10-cgi.conf:
warehouse:~# lighty-enable-mod mod_cgi
warehouse:~# ln -s /etc/lighttpd/conf-available/10-cgi.conf /etc/lighttpd/conf-enabled/10-cgi.conf
Редактируем файл /etc/lighttpd/conf-available/10-cgi.conf. Найдём блок:
#cgi.assign = (
# ".pl" => "/usr/bin/perl",
# ".php" => "/usr/bin/php-cgi",
# ".py" => "/usr/bin/python",
#)
раскомментируем строчку с .php и поправим путь к интерпретатору PHP:
cgi.assign = (
# ".pl" => "/usr/bin/perl",
".php" => "/usr/bin/php5-cgi",
# ".py" => "/usr/bin/python",
)
После рестарта lighttpd он должен выполнять php скрипты. Ну и пользователи моей сети теперь смогут видеть и скачивать файлы с сервера по HTTP. 🙂
Начальная настройка нового сервера
Итак, начнём. Я взял один мой старый системный блок со следующей начинкой: Celeron 633, 512MB RAM, 120GB жёсткий диск, 1Gb сетевая карта D-Link и установил Debian Lenny c netinst дистрибутива.
Этому серверу суждено быть файловым хранилищем, так как я планирую установить в него два жёстких диска объёмом 1TB каждый. Поэтому я назвал его “Warehouse“. 😉
Прежде всего установим систему мониторинга за состоянием сервера. Я предпочитаю использовать Munin из-за его простоты и информативности.
apt-get install munin-node
У меня на шлюзе установлен управляющий центр Munin на который стекаются данные со всех серверов сети. Исторически так сложилось, что этот сервер был первым в сети, поэтому центр управления установлен на нём.
После установки ноды Munin на “Warehouse” нужно отредактировать файл /etc/munin/munin.conf на шлюзе. Там уже есть информация об одной ноде, с которой собираются данные:
<…>
[www.local]
address 127.0.0.1
use_node_name yes
<…>
Нужно добавить данные о ноде на “Warehouse”:
<…>
[www.local]
address 127.0.0.1
use_node_name yes[warehouse.local]
address 192.168.0.1
use_node_name yes
<…>
Теперь на “Warehouse” нужно отредактировать конфиг ноды /etc/munin/munin-node.conf. Находим строку:
allow ^127\.0\.0\.1$
и разрешаем собирать данные управляющему центру Munin, который расположен по адресу 192.168.0.254:
allow ^127\.0\.0\.1$
allow ^192\.168\.0\.254$
Также находим строку, начинающуюся с “host_name“, редактируем её:
host_name warehouse.center
также находим и редактируем строку, начинающуюся с “host”:
host 192.168.0.254
Рестартуем ноду Munin на “Warehouse”:
/etc/init.d/munin-node restart
и теперь она готова отдавать данные о состоянии сервера управляющему центру.
Однако для бухгалтерии такой сервер не подойдёт, особенно если на нём будет установлена «1с зарплата и кадры». В этом случае рекомендуется взять сервер помощнее, да с несколькими жёсткими дисками для реализации хотя бы RAID 1.