Суббота
18.05.2024, 07:33
| RSS
Главная
Меню сайта

Категории раздела
Madriva [3]
Ubuntu (KUbuntu, EdUbuntu, XUbuntu) [78]
SUSE [1]
Fedora Core [9]
ASPLinux [1]
Debian [16]
Gentoo [3]
Другие [167]

Мини-чат

Наш опрос
Оцените мой сайт
Всего ответов: 45

Статистика

Rambler's Top100Рейтинг@Mail.ru

Главная » 2009 » Август » 30 » Домашняя сеть на базе Linux.
Домашняя сеть на базе Linux.
19:00

Некоторое обилие компьютерной техники дома сподвигло на покупку wi-fi роутера для  устройства домашней сети. Что требовалось? Да в общем-то самый минимум: единое файловое хранилище (музыка, фильмы), торрент клиент с общим доступом, сервер для web-разработки (apache, mysql, perl, php, svn), терминальный доступ к операционным системам, установленных под VirtualBox, ну и ряд разных плюшек в довесок. Итак, у нас дано:

  • Wi-fi роутер D-link
  • Старенький компьютер (Slackware 12.2)
  • Ноутбук Acer Aspire 5100 (Slackware 12.2)
  • Субноутбук Asus eeePC 901 (Xandros)

Поехали. 

Настройка роутера.
Здесь все просто, цепляемся на один из LAN портов c любой машины, логинимся, меняем пароль администратора и приступаем к настройке. Здесь кому-что нравится. Я указал essid точки доступа, выбрал в качестве метода шифрования WEP, прописал выдачу ip адресов всем машинам (сервер, ноутбук, субноутбук) c привязкой по MAC-адресу (по умолчанию, каждой машине выдается ip из настраиваемого диапазона, в соответствие с тем, в каком порядке они подключаются, и если для ноутбуков это не критично, то для сервера хочется иметь постоянный ip). Ip раздал просто и незатейлево:

  • 192.168.0.1 – роутер
  • 192.168.0.100 – сервер
  • 192.168.0.101 – ноутбук LAN
  • 192.168.0.104 – ноутбук Wireless
  • 192.168.0.103 – субноутбук LAN
  • 192.168.0.102 – субноутбук Wireless

На этом я остановился.

Настройку Apache, Mysql, PHP, SVN я опущу, мануалов по этому поводу и без того в сети хватает, начну с настройки NFS.

Настройка NFS.
Почему именно NFS? На самом деле все просто. И мой ноутбук, и субноутбук жены и сам сервер работают под управлением Linux, поэтому необходимости в той же Samba просто нет. С другой стороны, использовать не менее удобный sshfs на eeePC не представляется возможным, в силу отсутствия там нормального программного обеспечния (жена наотрез отказалась сносить предустановленный Xsandros, который на удивление беден софтом, не располагает компиляторами как таковыми, а в репозитории Asus’а такой прекрасной вещи как sshfs не наблюдается).
Первое, что нам потребуется, это определить те ресурсы, которые мы хотим расшарить посредством NFS (хотя правильнее будет сказать, что мы будем экспортировать каталоги, которые разрешим монтировать на других машинах сети), для этого редактируем /etc/exports. Выглядит это приблизительно вот так:


/media/hd0/audio 192.168.0.102(rw,no_subtree_check) 192.168.0.104(rw,no_root_squash,no_subtree_check)
/media/hd2/video 192.168.0.102(rw,no_subtree_check) 192.168.0.104(rw,no_root_squash,no_subtree_check)
/media/hd1/docs 192.168.0.104(rw,no_root_squash,no_subtree_check)

Здесь небольше пояснение. Через пробел, в каждой строке мы указываем директорию для экспорта и машины, на которых позволим монтировать эту директорию+опции, то есть схема такая:

/dir ip1(option,option) ip2(option,option,option)

Теперь об опциях. Я использовал всего 3:

  • rw – разрешить чтение/запись (ro – соответственно, чтолько чтение)
  • no_subtree_check – не проводить проверку вложенных директорий
  • no_root_squash – отключение ограничения прав root

Подробнее об опциях man exports.

После этого достаточно перезапустить демон NFS командой /etc/rc.d/rc.nfsd restart. Что бы он стартовал автоматически при запуске системы, нужно убедиться, что права на /etc/rc.d/rc.nfsd установлены как 0755. Все, настройка серверной части NFS завершена.

На клиентских машинах я не стал мудрить и просто прописал монтирование NFS разделов в /etc/fstab. Делается это просто:

server:/myshare /mountdir nfs intr,soft,lock

где, intr – позволяет прервать процесс при необходимости, soft – предотвращает от зависания в случае недоступности удалённой машины.
Единственный минус, если на клиентской машине смонтировать сразу несколько NFS разделов, то машинка начинает ощутимо подтормаживать.

Настройка FTP.
Изредка нужно что-нибудь забросить/стянуть с сервера, причем в/из директории, которая остается за рамками экспорта NFS, и иногда удобнее делать это именно по FTP.
В стандартной поставке Slackware есть vsftpd, маленький, шустрый и достаточно безопасный FTP сервер. Его конфигурация предельно проста, так что описывать ее я не стану, все что вам понадобится, это конфигурационный файл vsftpd.conf. Для автозапуска сервера достаточно прописать в /etc/rc.d/rc.local следующую строчку:

/usr/sbin/vsftpd &

Настройка терминального доступа.
Непосредственный терминальный доступ к серверу мне оказался без необходимости, хватает ssh, если кому интересно, может погуглить на тему xrdp. В большей степени меня интересовал терминальный доступ к виртуальным машинам, которые крутятся на сервере (к вопросу о виртуальных машинах, ранее я писал о локализации приложения, так вот, из-за огромного количества библиотек среды Gnome, которые этому приложению требовались и которые ну никак не хотелось ставить на свой ноутбук, я тестировал приложение на Ubuntu 8.10, которая установлена на одной из виртуальных машин, ну и естественно, при тестировании верстки никак нельзя забывать об Internet Explorer, а эта вещь лучше всего себя чувствует в своей родной среде). При создании виртуальной машины в VirtualBox, достаточно включить «Удаленный дисплей» и назначить порт для соединения, после чего, на сервере можно запустить виртуальную машину следующим образом:

$ VBoxVRDP -s имя_виртуальной_машины &

Я делаю это зайдя на сервер по ssh, а так как данный процесс я запускаю в фоновом режиме, то спокойно закрыв ssh соединение, уже на своем ноутбуке, обращаюсь к запущенной виртуальной машине посредством rdesktop:

$ rdesktop 192.168.0.100:3389

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

Настройка торрент клиента.
В качестве торрент клиента я выбрал Transmission. Клиент довольно простой и незатейливый, обладает самыми необходимыми функциями и стабилен в работе. Помимо всего, предоставляет несколько вариантов работы: через графический интерфейс, через командную строку, и через веб интерфейс. Последний пункт является в нашем случае пожалуй самым удобным. Для того что бы использовать веб интерфейс, необходимо запустить transmission в режиме демона, это делается довольно просто:

$ transmission-daemon [options]

Что бы не вводить все опции, я внес изменения в конфигурационный файл и запускаю с одной опцией:

$ transmission-daemon -g ~/.config/transmission-daemon/

Основные опции я опущу, отмечу только следующее: для запуска в режиме демона необходимо скомпилировать transmission с флагом –with-daemon, а для доступа через веб интерфейс с других машин, нужно в конфигурационном файле указать следующее:


"rpc-whitelist": "192.168.0.102,192.168.0.104", (список разрешенных адресов)
"rpc-port": номер порта, (по умолчанию 9091)
"rpc-username": пользователь, (если включена аутентификация)
"rpc-password": пароль, (если включена аутентификация)

А чтобы все это добро стартовало вместе с запуском системы, я внес эту команду в /etc/rc.d/rc.local. Теперь достаточно на клиентской машине в адресной строке браузера набрать 192.168.0.100:9091, и, если ip вашей машины в списке доверенных (если вы конечно вообще активировали список доверенных машин), то после ввода логина/пароля вы попадете в веб интерфейс торрент клиента, который, кстати, на мой взгляд, весьма и весьма удобный.

Настройка MPD – музыкального демона.
Одна из приятных плюшек. Музыкальный демон MPD позволяет создавать и управлять плейлистами на стороне сервера, а так же управлять воспроизведением музыки прямо на сервере. Акустика подключена у меня именно к серверу и порой удобно порулить музыкой которая проигрывается на нем. После установки создаем конфиг /etc/mpd.conf и заполняем его как-то вот так:

music_directory "/media/hd0/audio" #тут будет вся музыка
playlist_directory "/media/hd0/mpd/playlists"
db_file "/media/hd0/mpd/tag_cache"
log_file "/media/hd0/mpd/mpd.log"
error_file "/media/hd0/mpd/errors.log"
pid_file "/media/hd0/mpd/pid"
bind_to_address "192.168.0.100"
port "6600"

Так же нужно создать директорию, которую мы указали в playlist_directory. После чего запускаем /usr/bin/mpd. Я, опять таки, повесил запуск на автозагрузку, то бишь в /etc/rc.d/rc.local.
Оговорюсь сразу, клиентов для этого чуда мысли немало, и тут дело вкуса, кому что подойдет, я лично выбрал gmpc, а жене на субноутбук поставил расширение для Firefox, которое довольно забавно называется – Music Player Minion. После установки клиента, скармливаем ему адрес сервера, порт и наслаждаемся :)
Категория: Другие | Просмотров: 1089 | Добавил: tol | Рейтинг: 0.0/0 |
Всего комментариев: 0
Имя *:
Email *:
Код *:
Форма входа

Поиск

Друзья сайта

  • Администрация

    Andry


    Tol


    Copyright MyCorp © 2024
    Хостинг от uCoz