Сайт о телевидении

Сайт о телевидении

» » Самодельный сервер в домашних условиях. Мифы и реальность, а также с чего начать

Самодельный сервер в домашних условиях. Мифы и реальность, а также с чего начать

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

Как не странно, но если вы читали статью о , то вы уже умете хостить сайты на своем домашнем компьютере. Оказывается, все что нужно для того, чтобы сайт грузился не с какого-то сервера хостинг-провайдера, а со своего знакомого родного домашнего компьютера – это описанным в статье образом настроить связку apache+php+mysql и связать доменное имя с IP-адресом вашего домашнего компьютера.

Повторюсь:

  • О том как настраивать Apache + PHP + MySQL я писал .
  • О том, как связать IP-адрес и доменное имя я записал .

Так что вы вполне вооружены знаниями, остается лишь правильно их применить.

Замечательно, если компьютер подключен напрямую к провайдеру сетевым проводом и в настройках сети задан внешний статический IP-адрес. Именно этот IP и нужно будет указать в настройках доменного имени.

Но, обычное дело, когда компьютер, который будет выполнять роль сервера, расположен либо в локальной подсети, либо перед ним стоит какой-нибудь АДСЛ-модем и внешний IP-адрес (который вы можете узнать воспользовавшись сервисом myip.ru) – это адрес роутера либо адрес АДСЛ-модема. IP-адрес компьютера имеет при этом локальный вид (либо 192.168.0.ХХХ, либо 10.0.0.Х). Здесь уже сложнее, но все равно можно реализовать поставленную цель и сделать у себя дома филиал хостинг-провайдера.

Необходимо реализовать так называемый проброс портов . Т.е. настроить роутер или АДСЛ-модем следующим образом:

  • Пользователь набрал адрес сайта сайт.
  • Name-сервер сообщил IP-адрес. Этот IP-адрес является внешним статическим адресом либо роутера, либо АДСЛ-модема, либо шлюза, через который компьютер-сервер выходит в интернет.
  • Запрос пришел к роутеру на 80-й порт (именно через 80-й порт осуществляется http-соединение).
  • Роутер настроен таким образом, что все запросы, приходящие на 80-й порт, перенаправляет компьютеру локальной подсети с определенным IP, например 192.168.0.200.
  • Запрос пошел на локальный компьютер-сервер, а там его уже с радостью встречает Apache и выдает нужный сайт.

Но с пробросом портов мы разберемся чуть позже. Пока поковыряем сам компьютер-сервер.

Характеристики компьютера-сервера

Здесь очень сложно говорить о каких-либо точных параметрах.

Если вы собираетесь поиграть в хостинг-провайдера, то сервер должен быть четырехъядерным компьютером с 4-мя Гигабайтами оперативки, и несколькими жесткими дисками, объединенными в RAID-массив . Такой компьютер делится на несколько виртуальных серверов, управление которыми дается клиентам.

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

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

Скорость чтения с жесткого диска и его надежность можно повысить все теми же RAID-массивами .

Но неоспоримым оказывается тот факт, что ОС Windows, из-за огромного количества дыр в безопасности, множества вирусов, нестабильности работы – на сервере не место.

Поэтому на серверах бал правят операционные системы семейства Linux. Но не пугайтесь, принципы работы в Linux не так и сложны, как кажется, а настройка Apache + PHP + MySQL практически ничем не отличается от настройки в Windows.

Установка ArchLinux

Давайте-ка, уважаемый читатель, я познакомлю вас с установкой операционной системы ArchLinux.

Существует множество операционных систем, разработанных на основе Linux . Это и всем известная Ubuntu и openSUSE и многие другие. Одним из завоевавших популярность дистрибутивов является ArchLinux. С ним-то мы и будем знакомиться.

Почему именно ArchLinux:

  • На мой взгляд, оптимально подходящий дистрибутив для сервера. В нем нет никакой лишней тяжести, все настраивает и устанавливает сам пользователь (оставляя только то, что действительно необходимо).
  • Мощная система установки обновлений Pacman .

Теперь я подробно опишу процесс установки ArchLinux на будущий сервер.

В случае обычного домашнего компьютера, из которого мы планируем сделать сервер, подойдет дистрибутив Core ISOs: i686 , Torrent-ссылку на который можно получить на этой странице .

Данный дистрибутив представляет собой 32-х битную версию с присутствующими в скачиваемом образе необходимыми файлами установки (короче говоря, это то, что нам нужно).

Как я уже писал в статье о моих программах, я буду использовать инструментарий .

Для начала запускаю из TCUP Torrent-клиент и примерно через час дистрибутив у меня на жестком диске.

Теперь, как вы, наверное, догадались, нужно нарезать дистрибутив на диск. Идеальным окажется обычный CD, но где его в наше прогрессивное время взять, поэтому я использую чистую DVD (ради такого дела не жаль).

Нарезать будем плагином все того же TCUP.

Запускаем плагин Прожиг CD/DVD . Далее выбираем пункт Проект: Образ ISO/CUE и, прямо в открывшееся содержимое пункта, копируем скачанный дистрибутив ArcLinux-а (при помощи всем знакомой кнопки F5).

Запись начинаем, естественно, кликом на пункт Запись диска .

Выбираю низкую скорость записи, спешить нам некуда. И поехали трансформировать образ диска в загрузочно-устновочный диск ArcLinux.

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

Считается, что дойдя до понимания необходимости установки Linux, пользователь знает где именно в BIOS подопытного компьютера можно включить загрузку с CD.

Грузимся с CD.

Выбираем пункт Boot Arch Linux Live CD . После чего наблюдаем процесс загрузки операционной системы.

Хозяйке на заметку root – это логин суперпользователя, обладающего самыми широкими правами по настройке системы.

В установочном режиме учетная запись root-пользователя не имеет пароля. Пароль мы создадим на одном из последних шагов установки ОС Arch Linux.

Если обратить внимание на появившуюся, после авторизации, красиво оформленную надпись, то станет понятно – установку нужно начитать с ввода команды / arc/ setup и подтверждаю ввод нажатием, вы не поверите, Enter.

Все, приступаем непосредственно к установке.

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

1. Select Source

На данном этапе нам предлагается выбрать между установкой с CD или из интернета. Т.к. мы скачали полный дистрибутив, то выбираем пункт CD-ROM or OTHER SOURCE и нажимаем Enter.

2. Set clock

Select region and timezone. Здесь необходимо выбрать временной регион. Я выбираю Europe и после Kiev (т.к. территориально я нахожусь в Украине).

Set time and date Здесь без лишних пояснений выбираю UTC. В режиме manuale редактирую дату. После корректировки возвращаюсь в подменю установки даты и времени, выбрав пункт return.

Настройку времени и даты я закончил, выбираю 3-й пункт Return to Main Menu.

Теперь самая интересная и сложная часть – разбивка жесткого диска. Но мы эту науку быстро одолеем.

Выбираю пункт

3. Prepare Hard Drive(s)

Разбивать будем в ручном режиме. Поэтому в подменю выбираем пункт 2. Manually Partition Hard Drives.


Я имею диск в 18 Гбайт, о чем с радостью меня информирует программа разбивки диска.

На данном этапе хочу пояснить принципы работы с оборудованием и файловой иерархией Arch Linux:

В Linux нет дисков С:, D: и т.д., как мы привыкли видеть в Windows. Здесь вся иерархия начинается от корня, обозначаемого / Все находится внутри этого слеша и распределено по папкам.

Удивительно для пользователя Windows, но все оборудование хранится в папке /dev. Мой единственный жесткий диск обозначается как sda. Именно поэтому я вижу надпись /dev/sda: 18GiB, которая говорит о том, что на компьютере есть одно устройство, распознанное как жесткий диск размером в 18 ГигаБайт и оно, как и все устройства, засунуто в папку dev.

А теперь мы приступим непосредственно к созданию разделов на жестком диске.

Выбираю диск /dev/sda и нажимаю Enter. После этого запускается программа cfdisk, при помощи которой мы и будем делить диск на разделы. Убираем приветственное окно программы cfdisk, нажав Enter и наблюдаем интерфейс программы cfdisk.

Для чистоты эксперимента я удаляю все имеющиеся разделы, выбирая внизу пункт Delete (нижнее меню, перемещаюсь при помощи курсорной клавиши вправо).

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

Создадим три раздела:

  • Загрузочный раздел, который будет содержать ядро системы (для него нам достаточно отвести 50 Мбайт).
  • Раздел подкачки или swap. Он используется для хранения данных из оперативной памяти, когда они уже там не умещаются (512 Мбайт).
  • Раздел для всего остального, корневой раздел /. Для него задействуем все что осталось.

Итак, выбираю пункт New и создаю загрузочный раздел. На следующей развилке я вбираю пункт Primary. Далее выбираю размер раздела, в моем случае достаточно 50 МегаБайт. Выбор подтверждаю пунктом Beginning.

После создания раздела указываю его тип (пункт Type) как 83 (Linux).

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

Теперь я буду создавать раздел подкачки swap.

Используем вышеописанный алгоритм. Размер данного раздела будет равен 512 Мегабайт.

В качестве типа данного раздела (Type) необходимо указать 82.

Все остальное помечаем как sda3, туда мы будем монтировать корень /.

Размеченный жесткий диск sda имеет следующий вид:

Настал этап указать один из дисков, как загрузочный. Для этого мы перемещаемся на sda1 и помечаем его пунктом Bootable.

Все, уважаемый читатель, с разметкой диска покончено. Выбираем в интерфейсе cfdisk пункт write (в нижнем меню) и сохраняем внесенные изменения.

После сохранения можно выйти (пункт Quit).

Мы снова попадаем в знакомое нам меню установки Arch, где выбираем пункт DONE.

После выбора DONE, мы окажемся в подменю работы с диском, где будет заботливо выбран пункт 3. Manually Configure block devices, filesystems and mounpoints

Нажимаем Enter и переходим к монтированию разделов жесткого диска.

Перейдя в соответствующий раздел меню мы сможем указать файловые системы и точки монтирования (что именно должно располагаться в выбранном разделе жесткого диска).

Итак, начинаем с sda1. Этот раздел загрузочный. Для него оптимальной окажется файловая система ext3, поддерживающая восстановление после сбоя.

Как и договаривались, монтируем на sda1 загрузочный раздел /boot.

Никаких дополнительных опций указывать не будем, нажимаем Enter.

Аналогично вышеописанному создаем файловую систему и точку монтирования для sda2. Файловая система – swap. Это собственно все, что нужно было указать для sda2.

Sda3 будет иметь файловую систему ext3 монтировать туда будем, как и договаривались, все остальное, т.е. /.

Вот результат:

Остается лишь выбрать done и все, что мы наворотили, применится.

Вот теперь уж с настройкой жесткого диска действительно все. Arch заботливо выбирает пятый пункт в меню установки 5 Return to Main Menu.

Продолжаем устанавливать наш замечательный Linux.

В главном меню установки выбран пункт 4. Select Packages . В нем нам нужно выбрать ничто иное как base.

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

Попадаем на 5-й пункт меню Install Packages , которым запускается установка пакетов. Если вы видите вот это

и CD старательно шуршит, значит все нормально, ждите окончания установки.

Все, уважаемый читатель, процесс установки Arch Linux закончен, приступаем к конфигурированию. Все, что мы сейчас наконфигурируем, можно будет поправить в любой удобный момент.

6. Configure System

На следующем экране нам предложат выбрать редактор для изменения текстовых файлов конфигурации. Выбираем nano и не парим мозг.

После выбора редактора текстовых файлов мы видим список всех файлов конфигурации. Но не пугайтесь, править нужно лишь часть из них.

Основной конфигурационный файл – /etc/rc.conf

Выбираем соответствующий пункт и нажимаем Enter.

Редактор nano загружает содержимое текстового файла rc.conf, расположенного в папке файлов конфигурации etc.

Для начала мы настроим сеть. Переходим к разделу NETWORKING в файле и внимательно впиваемся взглядом в строчки

#eth0="eth0 192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255" eth0="dhcp" INTERFACES=(eth0) gateway="default gw 192.168.0.1" ROUTES=(!gateway)

Значит так, если мы настраиваем сервер, то речи о динамической раздаче IP-адресов быть не может. Поэтому мы убираем комментирующую решетку перед первой строкой и ставим ее на вторую строчку. Получается вот что:

Eth0="eth0 192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255" #eth0="dhcp"

Теперь развлекаемся с первой строкой. Вместо 192.168.0.2 прописываем IP-адрес сервера. Мой сервак находится в локальной сети и имеет адрес 192.168.0.200 (именно его я и указываю).

netmask 255.255.255.0 Это нас устраивает. Данный формат маски говорит о том, что в подсети могут находится 254 компьютера (первые три составляющие IP-адреса у них фиксированы, а последняя изменяется от 1 до 254). Ну и ладно.

broadcast 192.168.0.255 – это IP-адрес для широковещательных пакетов. Если на данный IP будет отправлен пакет, то его получат все компьютеры подсети. Ну и хорошо, нас это устраивает.

В результате имеем следующее вместо первой строки:

Eth0="eth0 192.168.0.200 netmask 255.255.255.0 broadcast 192.168.0.255"

Крутим ниже, к строке

Gateway="default gw 192.168.0.1" ROUTES=(!gateway)

Первая строка указывает шлюз. Моя локальная сеть организована таким образом, что перед сервером расположен роутер, имеющий адрес 192.168.0.1, его я и указываю в качестве шлюза. Если в вашем случае, никакого роутера нет, то администратор сети должен сообщить вам IP-адрес шлюза, его здесь и укажете.

Во второй строке нам нужно, всего на всего, убрать восклицательный знак:

ROUTES=(gateway)

С этим файлов все. Жмем ctrl+o для записи и ctrl+x для выхода.

Следующим конфигурационным файлом, к которому мы проявим интерес, будет /etc/resolv.conf

Здесь все очень просто. В формате nameserver ip необходимо указать DNS.

Прямо под строкой #nameserver дописываем следующее

nameserver 192.168.0.1

nameserver 8.8.8.8

Кто такой 192.168.0.1 вы, уважаемый читатель, уже знаете.

8.8.8.8 – это DNS от Google. Указываю его, в качестве альтернативного.

Следующий интересный файл – /etc/hosts.deny

По умолчанию в этом файле запрещаются все соединения. Поправить это можно закомментировав строку ALL: ALL: DENY, т.е. поставить # перед фразой решетку, вот так:

# ALL: ALL: DENY

Сохраняем файл и выходим.

Следующим шагом мы подкорректируем зеркала для обновления, содержащиеся в файле /etc/pacman.d/mirrirlist

Прокручиваем файл к разделу Russia и раскомметируем строчки с адресом yandex.ru

Сохраняем, закрываем.

Последняя операция – установка пароля для супермощного пользователя root. Задайте его, и не забудьте.

Вводя пароль знайте, что в Linux символы паролей не закрываются звездочками, они просто вообще не показываются (чтобы нельзя было подсмотреть даже количества знаков в пароле и потом как-то их подобрать).

Жмем Done в самом конце.

Изменения применяются.

Последнее, что нам нужно будет сделать – это выбрать загрузчика. Пункт 7 Install Bootloader .

Здесь все просто, не парим мозг, выбираем Grub. После его выбора мы увидим содержимое файла конфигурации загрузчика. Он нас не интересует, сразу выходим оттуда.

Теперь нам нужно выбрать, куда устанавливать загрузчик. Выбираем пункт /dev/sda

Все, уважаемый читатель, 8 Exit Install .

Поздравляю, Arch Linux стоит, вводите команду reboot и не забудьте вынуть загрузочный диск из СДРОМА. Кстати, СДРОМ не откроется, пока не начнется перезагрузка, потому что диск примонтирован, вот такие особенности Linux.

Все, Linux загрузился и приглашает начать работу с ввода логина и пароля. А вы что ожидали?

Логинимся как root (пароль от рута вы сами завали, так что вводите, если не забыли).

Поздравляю, вы залогинились как root (по крайней мере, я точно залогинился).

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

Тогда все должно работать, пишем команду ping google. com и наблюдаем веселую картину удачных пингов.

Когда картина пинга наскучит, нажмите ctrl+c.

Если ping у вас не проходит, то убедитесь в том, что вы получали в детстве достаточно витаминов.

Наконец-то теперь мы можем установить программу для удаленного SSH доступа через Putty. Помните я об этом ?

Теперь мы узнаем как это все настраивается на стороне сервера.

Установив SSH-доступ я смогу удаленно управлять сервером и записывать видеоуроки, делать обычные скрины а не сидеть перед монитором с фотоаппаратом.

У Arch есть такая замечательная штуковина, как менеджер пакетов. Называется он pacman. Назначение pacman-а – установка необходимых программ, их обновление, обновление всех имеющихся программ, установка необходимых компонентов для вновь устанавливаемых программ. В общем, замечательная вещь. Подробнее о pacman можно читать .

А пока введем команду pacman - Syu , которая синхронизует данные о пакетах на серверах Яндекса.

После завершения синхронизации мы установим программу для SSH доступа. Называется она openssh. Установка происходит командой pacman -Sv openssh

Pacman скачает и установит программу и все недостающие компоненты. Почему-то с первого раза у меня обновился только лишь pacman, а openssh не установился. Поэтому я повторяю команду pacman -Sv openssh

На этот раз попытка увенчалась удачной установкой программы.

Вот где расположен файл запуска /etc/rc.d/sshd

Для того, чтобы запустить openssh, необходимо ввести следующую команду:

/ etc/ rc. d/ sshd start

После чего будет возможен SSH-доступ к серверу.

Для доступа к серверу мы будем использовать программу Putty. Скачать ее можно либо с официального сайта , либо с Deposit Files (*.zip, 243 КБайта).

Вводим IP-адрес сервера (в моем случае 192.168.0.200) и подключаемся по SSH.

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

Напоследок мы обновим нашу систему замечательной командой pacman – Syu

В моем случае потребовалось загрузить обновлений на 100 Мбайт, так что мужайтесь, дело это не быстрое.

Пока на этом все. До следующей встречи предлагаю вам, уважаемый читатель, потыкать в google вопросами типа «основные команды linux» много всего забавного найдете.

Зачем, собственно, нужен сабж? Что он может дать?

Если Вы хотите всего-навсего разместить домашнюю страницу или блог, обмениваться с друзьями файлами по ftp, получить e-mail на своем домене, вероятно,
Вам будет проще воспользоваться услугами виртуального хостинга, в крайнем случае, заказать виртуальный выделенный сервер.

Так же, дома удобнее проводить различные эксперементы, так как сервер рядом, и, если Вы что-то убьете, не нужно ждать ответа от технической поддержки хостера, а можно сразу подцепить монитор, и исправить то, что сломалось.

Сразу оговорюсь, что речь о сервере, который предназначен, в первую очередь, для доступа из внешней сети.
К серверу, который раздает контент/предоставляет web(irc и пр.) сервисы на несколько машин подъезда, предъявляются совсем другие требования:)

Не у всех есть финансовая возможность поставить свой сервер в Дата-Центр, зато, с проникновением широкополосных технологий доступа во всемирную Сеть, появляется возможность использовать сервер под web и другие задачи прямо из дома.
Сейчас это с высокой вероятностью доступно для каждого отдельно взятого жителя для Москвы и Санкт-Петербурга, но я уверена, что не смотря ни на какие кризисы, домашний канал, подходящий по характеристикам, очень скоро появится в каждом крупном Российском городе.

Какой нужен канал?

Прежде всего, он должен быть:

1. Широким, симметричным и безлимитным.
2. Провайдер должен выдавать статические IP
3. Не должно быть никакой фильтрации портов, как входящих, на сервер, так и исходящих, во внешний мир.
4. Желательно, что бы не было никаких VPN.
5. Если провайдер готов поправить Вам DNS-PTR запись, то это сразу снимет ряд проблем с исходящей с Вашего сервера почтой.

Теперь подробнее по каждому пункту.

1.а Симметричность

Большая часть домашних интернет-каналов обладают одной особенностью, которая не имеет почти никакого значения для пользователя, в основном занимающегося серфингом: их ширина (еще, говорят, скорость) различна в разных направлениях. Типовой домашний пользователь больше скачивает из интернета, чем "загружает" что-то на какой-то ресурс.

Например, такие московские провайдеры как Акадо и Стрим готовы дать очень широкую полосу down ("вниз", на закачку) но ширина полосы up ("вверх", на загрузку) даже на самых дорогих тарифных планах незначительно отличается от самых дешевых.

Несиммитричный канал ужасен для домашнего публичного сервера тем, что подавляющая часть трафика сервера будет идти вверх , и какой бы дорогой и крутой не был Ваш интернет-канал, он будет, фактически, простаивать. Ваши десятки мегабит down никто не заметит, зато все обратят внимание на тормоза при загрузке файлов с Вашего сервера.
Для сервера, можно сказать, меняется местами важность down и up.

Поэтому, например, каналы в Дата-Центрах, и тарифы для размещения серверов рассчитаны на то, что трафик up будет больше чем трафик down в несколько раз. В России в большинстве Дата-центров даже берут деньги за нарушения соотношения по трафику (обычно, входящий:исходящий 1:4, и часто есть ограничение на соотношение по зарубежному трафику).

Я ни разу не слышала, что интернет-провайдер может как-то наказать за нарушение соотношения (то есть, за то, что Вы больше будете отдавать трафика, чем скачивать), наоборот, думаю, ситуация будет меняться в нужную для нас сторону.

Очень многие домашние пользователи обмегиваются файлами с помощью p2p сетей , а в этих сетях для того, что бы хорошо качать, нужно иметь высокий рейтинг, который можно получить только раздавая контент. Уже сейчас почти все "продвинутые" пользователи за новым mp3-альбомом любимой группы пойдут, скореe в торренты, чем в магазин.
Провайдеры понимают тенденции и подстраиваются. Хотя, конечно, провайдеров могут ограничивать различные факторы: характеристики своего канала, технологии "последней мили"(у ADSL - операторов просто нет технической возможности сделать канал симметричным), и т.д.

1.б Безлимитность

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

1.в Ширина

.
У Вас есть дешевый безлимитный симметричный канал? Отлично! Что? У него ширина 128kb/s? Поверьте, в этом случае Ваш сервис не будет никому нужен.

Всю вашу полосу забьет один пользователь сервиса с широкополосным доступом, который будет очень раздражен тем, что "кортинке медленна грузяццо". Который уйдет, и больше не вернется.
Мне жаль Вас огорчать, но, наверное, не стоит организовывать домашний сервер, если Ваш up всего 128kbs.
Я бы поставила минимальное значение в 512kbs.

Но 20 мегабит от Ethernet-провайдера были бы самым верным решением. В этом случае, посетители вряд ли бы заметили разницу в скорости работы сервиса, размещенного дома, и сервиса, размещенного в Дата-Центре.
В регионах таких каналов пока нет, но в Москве подключают уже и с большей полосой.

Отдельно хотела бы сказать про сетевую связность.
Во всемирной Сети иногда возникают так называемые "черные дыры", в которых пропадает трафик. К сожалению, хостинг-провайдеры, предоставляющий место для сервера в ДЦ, обычно борятся за связность активнее, чем интернет-провайдеры.

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

2. Статический IP-адрес

Некоторые провайдеры, например, Стрим, просто не выдают домашним пользователям статический IP-адрес.
Если у сервера постоянно меняется IP-адрес, пользователи Ваших сервисов просто не смогут на них попасть.
Вы можете попробовать выкрутиться с помощью DynDNS сервисов и даже разместить сайт таким примерно образом:

host h.shaggy-cat.ru
h.shaggy-cat.ru is an alias for shaggy-cat.dyndns.org.
shaggy-cat.dyndns.org has address 91.77.252.108

Здесь домен третьего уровня является CNAME записью , ссылающейся на хост бесплатного сервиса динамического DNS.
Ваш сервер время от времени подключается с помощью специальной программы на сервис DynDNS, который обновляет для Вашего домена значение А-записи.

Cервис dyndns.org бесплатно поддерживает только домены третьего уровня, поддомены доменов, принадлежащих сервису.
Если Вы готовы заплатить, сервис может предоставить Вам поддержку Вашего домена.

Когда у меня не было канала со статическим IP, я поступила проще:) Просто создала DNS CNAME запись.

Про настройку DynDNS в Redhat-like системах можно почитать .
Обычно, dyndns умеют ADSL-модемы и домашние дешевые хардварные роутеры.

Однако, поверьте, Вы сможете избежать огромного количества проблем, бессоных ночей, и граблей, на которые Вы наступите, если просто подключите стический IP адрес.
Любым способом: заплатив за него как за опцию тарифного плана, напившись с одмином Вашего провайдера, в конце концов, переспав с ним, если Вы девушка:)))
Все усилия, которые Вы предпримите для получения статического IP, себя окупят.
Мой личный опыт свидетельствует только о постоянных глюках DynDNS сервисов:(

Мне статический IP достался проще: я ушла к другому интернет-провайдеру. Стрим пока оставила как резервный линк, перейдя на самый дешевый тарифный план.

3. Фильтрация портов

Некоторые интернет-провайдеры, устав от жалоб завирусованных клиентов, просто отключают входящие порты для своих клиентов, через которые сетевые черви и злоумышленники могут поломать компьютер их клиента.
Часто в список портов попадают и порты, через которые Windows-системы обычно не троянят. Например, Стрим блокирует входящие порты: 80 (прощай веб-сервер!), 21(прощай ftp!), 25(прощай, почтовый mx-сервер!)

Понятно, что пользователи врядли оценят красоту URL Вашего сайта, если на него придется заходить каким-то таким образом:

http://pupkin.ru:8888

Что касается фильтрации исходящих портов, обычно, применяется фильтрация 25 порта, что бы массовый завирусованный Win-пользователь не спамил.
Это может доставить определенные неудобства, если Вы, например, хотите, что бы пользователи Ваших сервисов получали уведомления по почте.
В этом случае, Вы можете попробовать настроить локальный SMTP-сервер релеить почту через другой SMTP по такой, например, инструкции: тЫц .
Использовать провайдерский SMTP совсем не обязательно, Вы можете использовать свой обычный бесплатный ящик.

4. VPN и *nix системы.

Как много боли, страдания, отчаяния и полного разочарования кроется за этой фразой!!
Настройка VPN для стабильной работы, достаточной для сервера, была и остается огромной проблемой для новичка.
Даже при оптимальной настройке следуют учитывать то, что Ваше VPN-соединение будет падать время от времени, и нужно писать скрипты, которые будут опеределять падение канала, и передергивать соединение.

Даже если Вы собираетесь использовать сервер под Windows, Вас ждут те же самые проблемы со стабильностью канала, если не большие, связанные с фичами устройства сетевой подсистемы
этой операционки (я сама не использовала такой сервер, но один очень хороший человечек рассказывал жуткие вещи)

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

В Москве Корбина Телеком переходит на L2TP VPN-соединение, говорят, что оно гораздо стабильнее.

Если сможете, подключайтесь к каналу, использующему авторизацию по MAC-адресу сетевой карты.
В Москве это, например, Су-29 Телеком, Qwerty, Акадо.
Впрочем, VPN не на столько плох, на сколько плох динамический IP-адрес. Если VPN не избежать, имейте ввиду, что poptop, вероятно, самый нестабильный.

5. Фильтрация портов

Если провайдер не фильтрует исходящие порты, то почта, напрямую отправленная с Вашего сервера, с высокой вероятностью попадет в spam-папку ящика назначения.
Это связано с тем, что практически весь спам в современном мире рассылается с затрояненных компьютеров домашних пользователей под управлением Windows. IP-адреса, выдаваемые таким пользователям, обычно имеют характерную DNS PTR-запись вида:

host 91.77.252.108
108.252.77.91.in-addr.arpa domain name pointer ppp91-77-252-108.pppoe.mtu-net.ru.

Достаточно просто пишется регулярное выражение(можете поискать примеры в Google), которое выделяет такие хосты среди "законных" SMTP-релеев.

Если Ваш провайдер исправит для Вашего IP PTR-запись, почта с Вашего сервера перестанет фильтроваться по этому критерию.

7. Железо сервера

Тут я затрудняюсь дать какие-то подробные и профессиональные советы, так как просто-напросто очень плохо разбираюсь в hardware, которое мне никогда не было интересно.

Чем больше ядер у процессора, тем лучше. Вообще, чем он быстрее, тем это правильнее. Только не стоит разгонять систему до космических скоростей, и тюнить сотней куллеров, вам ведь еще и спать ночью рядом с этим монстром придется...
Если Вы используете такие технологии виртуализации как Xen, KVM, VmWare, обратите внимание на процессоры с поддержкой технологий Intel VT или AMD Pacifica

Чем больше ОЗУ, тем лучше. Особенно в случае использования Виртуализации .

Навороченная видео-карта, как и вообще звуковая система Вам не нужны. Лучше брать материнскую плату с интегрированной видео, что бы свободный PCI-слот занять под, например, сетевую карту.

UPS. Очень и очень желателен. Так же, как мне подсказал один хороший человечек, стоит активировать в BIOS опцию включения при подаче питания.

- "Стойка" засуньте сервер куда-нибудь далеко, что бы не мешал гудением, Вы его случайно не залили жидкостью, не уронили, и так далее.
Лучше на антресоль или в кладовку. Только учтите, что: а) пыль это плохо; б) Летом, в связи с глобальным потеплением;) в маленькой, душной конуре он может просто перегреться и выключиться:(
Впрочем, проблемы с перегревом возможны и в Дата-центрах. .masterhost вот чуть не наградили Антипримией Рунета за оригинальную технологию охлаждения серверов сухим льдом:)))

8. Софт

Это самое главное. То, без чего не будет сервера как такового. Можно умудриться организовать плпулярный сервис на динамическом айпи с фильтрацией портов и старом-старом Пентиуме-2, если есть идея, и конкретная программная реализация.
Наоборот, можно вбухать время и деньги, и получить мертво стоящую железку.

Я использую на своем HomeServer промышленную технологию виртуализации OpenVZ. О ней можно почитать и

Использую из-за легкости эксперементов (новый контейнер с почти любым Linux-дистрибутивом создается за две-три секунды), отсуствии потерь на виртуализацию, и по тому, что считаю технологию очень прогрессивной.

Впрочем, OpenVZ выходит за рамки этого поста, надеюсь, когда-нибудь соберусь и расскажу о ней и ее использовании, так же как и сейчас, на пальцах.

Я рекомендую использовать какую-либо технологию виртуализации, так как Вы, возможно, захотите держать на своем сервере множество различных сервисов, каждый со своими требованиями к программной среде(иногда не совместимыми с требованиями другого сервиса, который Вы бы так же хотели использовать), предоставляемым ресурсам, с разным отношением разработчиков к безопасности своего продукта.

Используя виртуализацию на домашнем сервере, Вы получите ту самую консолидацию, и дом, в конце концов, не превратится в филиал дата-центра.
Вам хватит одного, максимум, двух мощных компьюетеров для решения любых задач на виртуальных машинах, размещенных на сервере.

Советую обратить внимание на следующие технологии:

а) Xen
б) KVM
в) OpenVZ
г) _серверные_ варианты VmWare

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

Наиболее "модным" решением для виртуализации сейчас является VmWare. Популярность обсуловлена простотой настройки, и администрирования.
Однако, VmWare не лишина недостатков. Главный из которых заключается в том, что наиболее мощный вариант VMware ESX Server стоит денег (бесплатный VMware Server смотрится очень тускло рядом Xen или OpenVZ), так же, я бы отметила не самую лучшую поддержку оборудования, и большие потери производительности при виртуализации.
Думаю, VmWare можно назвать попсовым решением, если Вы хотите "все сразу", и согласны мириться с некоторой негибкостью решения, наверное, лучше VmWare для Вас нет ничего.

KVM является, возможно, самой перспективной технологией из всех перечисленных, учитывая то, какое внимание ему уделяет RedHat(тЫц) и динамику самого RedHat . Однако, сейчас технология явно остает по числу фич от своих конкурентов.

Xen Очень интересная и мощная технология. Существует сайт с большим числом русских статей про Xen . Когда я выбирала программную платформу, долго колебалась между Xen и OpenVZ. Выбрала, как уже писала выше, OpenVZ

OpenVZ Главные плюсы в том, что технология, как я уже писала выше, работает практически без потерь производительности, что существуют десятки шаблонов VPS с самым разным ПО и разными дистрибутивами, которые могут быть развернуты за мгновения.
Очень удобно для эксперементов:)
Самый главный минус заключается в том, что виртуализируются только Linux-дистрибутивы

Этот абзац не отражает и доли того, чем для меня стала OpenVZ. Очень-очень надеюсь, что соберусь и напишу статью по использованию этой системы.

Если Вы планируете использовать несколько виртуальных серверов, а внешний IP-адрес всего один(так скорей всего и будет в случае с домашним сервером), Вы можете давать виртуальным машинам IP-адреса из диапазонов, предназначенных для локальных сетей , и пробрасывать на виртуальные машины порты с внешнего IP (Iptables DNAT в Linux).

Если Вы планируете больше одного web-сервера, то проброс портов не поможет. Я выкрутилась с помощью акселерирующего http-реверс-прокси nginx на отдельной VPS.
Этот nginx проксирует http-соединения к одной, либо другой VPS. Может быть, и об этом когда-нибудь расскажу:))

З.Ы. Перепечатка разрешена только с указанием ссылки на оригинал этой заметки.

Удачной настройки домашнего сервера, и... меньше возитесь с компьюетрами, чаще гуляйте, ходите в музей/театр/кино/в гости/ездийте в путешествия!

  • Tutorial

Будь я работником макаронной фабрики, то сейчас ломал бы голову над тем, куда девать этак 500 упаковок макарон по полкило штука. К счастью, когда начальство решает премировать сисадмина “натурой”, получение в подарок фургона сухого пайка не грозит, хотя имеются неплохие шансы стать обладателем нескольких десятков килограмм откровенного лома. Однако в этот раз мне повезло – в качестве корпоративного подарка я получил пару новеньких WD Re 2004FBYZ на 2 терабайта каждый, и блок питания Thermaltake Smart DPS G 750W. Вот только что делать с дисками? Ставить в домашний комп – слишком расточительно даже для меня, все-таки Enterprise Class, да и нужды особой нет. Куда практичнее на их основе собрать NAS. Разумеется, не какую-нибудь файлопомойку, а высоконадежное хранилище – эдакий “черный ящик” для критически важных данных. Плюс к этому, можно совместить приятное с полезным – раз уж принято решение целиком перевести инфраструктуру на “умные” БП (а именно так Thermaltake позиционирует линейку Smart DPS), неплохо бы воочию увидеть, как это работает.

Но есть одна загвоздка – на данный момент фирменное приложение существует только под Windows. Для корпоративного ЦОДа эта операционная система хороша, но для домашнего файлового хранилища ужасна и крайне нерентабельна. Посему, я решил сделать два поста. В этом мы поднимем NAS на основе Windows Server 2008 r2 (убедившись, что “окошки” и “домашний NAS” – понятия несовместимые), и посмотрим, на что способна DPS G App 2.0. Во втором же соберем бюджетный NAS на основе NAS4Free, создав по-настоящему надежную систему.

Предисловие

Дабы не быть закиданным помидорами, сразу хочу предупредить – статья рассчитана, прежде всего, на непрофессионалов. Хотя почитать о Smart Power Management от Thermaltake будет интересно даже опытным админам и энтузиастам, основной материал ориентирован на людей, не желающих переплачивать за громкое имя, покупая готовые решения, и при этом далеких от системного администрирования (программистов, дизайнеров, веб-разработчиков и т.д.). Если ваша рука достаточно тверда, чтобы собрать компьютер из комплектующих, но при этом вы не хотите долго и муторно разбираться с серверным ПО, а консоль видели только в страшных снах – этот материал для вас. Если же захотели посмотреть на SPM Cloud, чтобы решить, насколько эта система может оказаться полезной именно вам, крутите пост до подзаголовка “Насколько умен интеллектуальный блок питания?”. Кстати, предупреждаю – под катом много фото и скриншотов.

Простенько, но со вкусом

Сразу оговорюсь – я не стремился собрать домашний NAS только лишь исходя из стоимости. Подбирая комплектующие, я ориентировался на то, насколько компоненты подходят для реализации поставленной задачи, при этом не забывая о качественных характеристиках. Можно ли собрать бюджетный NAS с меньшими затратами? Можно. Но при этом также можно потерять в производительности и удобстве, чего мне бы не хотелось. В итоге, получилось следующее.

Корпус. Роль корпуса для хранилища данных взял на себя Thermaltake Core V1 – симпатичный, цельнометаллический кубик с тихим 200 миллиметровым вентилятором за передней фальш-панелью.

Сзади имеются посадочные места еще под пару вентиляторов на 80 мм, благодаря чему сетевое хранилище можно будет сделать по-настоящему холодным.

Как и в других современных моделях, для блока питания здесь отведен нижний отсек. Защиту от пыли обеспечивает металлический фильтр.

Еще одним преимуществом Core V1 являются 4 съемные стенки (боковые, крыша и дно), что значительно облегчает процедуру сборки. Каждая панель крепится парой винтов, которые легко откручиваются вручную. Также мне весьма понравилась реализация корзин для дисков – каждый из четырех фиксирующих винтов получил собственный резиновый демпфер, неплохо гасящий вибрацию:

Материнская плата. Здесь мой выбор пал на GIGABYTE GA-J1800N-D2H со встроенным Intel Celeron. Мощности двухъядерного процессора с базовыми 2.41 GHz для сетевого накопителя данных хватит за глаза (хотя Windows Server загрузит его на 100%, но ведь “окошки” – не наша целевая платформа), он достаточно экономичен и не требует активного охлаждения (отпадает необходимость покупки кулера).

Несмотря на дешевизну, Gigabyte внедрили в продукт свои фирменные фишки: технологию High ESD, обеспечивающую защиту от электростатики для микросхем и LAN, а также Anti-Surge IC, предотвращающую выход системной платы из строя из-за скачков напряжения – все, что нужно для действительно надежной системы. Единственный спорный момент – расположение внутреннего USB-разъема вплотную к радиатору: с ним попросту неудобно работать.

Оперативная память. Ничего особенного – обычные Transcend 2Gb DDR-III 1333Mhz в форм-факторе SO-DIMM. Если где-то в чулане завалялся старый ноутбук, можете снять модули с него.

Блок питания. Добротный Thermaltake Smart DPS G 750W, рассчитанный на производительные ПК и серверные платформы, сертифицированный по стандарту 80 PLUS Gold. Для полноценного сервера или рабочей станции – в самый раз, для сборки NAS своими руками – слишком мощный, однако на время эксперимента можно себя побаловать, установив нитрос на малолитражку.

Разумеется, в устройстве подобного класса предусмотрено модульное подключение кабелей. Из встроенных – только коннекторы материнской платы и процессора (разделяемый 4+4 pin, что пришлось очень кстати при сборке).

Дополнительное удобство обеспечивают плоские кабели, хотя даже они уместились в компактном Core V1 с трудом – все же корпус на подобное не рассчитан. Среди них оказался и провод для подключения Thermaltake Smart DPS G 750W к внутреннему разъему USB. Очевидно, он обеспечивает взаимодействие бортового 32-битного микроконтроллера с сенсорами материнской платы, и необходим для полноценного функционирования Smart Power Management. Однако о том, насколько система мониторинга оправдывает себя и какие фичи предоставляет, мы поговорим несколько позже.

Охлаждение. Два тихих нерегулируемых TITAN DC FAN. Раз мы хотим собрать тихий NAS без лишних затрат, такой вариант станет оптимальным.

HDD. Хотя дареному коню в зубы не смотрят, считаю нужным все же сказать пару слов о виновниках торжества – сладкой парочке WD Re 2004FBYZ. Ведь, как ни крути, именно от качества жестких дисков зависит сохранность информации.

Если обратиться к спецификациям производителя, выглядит все очень вкусно. Так, винчестеры оборудованы акселерометрами и датчиками давления, на базе которых реализована технология Rotary Acceleration Feed Forward (RAFF), обеспечивающая защиту от линейной и угловой вибрации в реальном времени, что повышает как надежность, так и производительность. Будучи серверным решением, WD Re 2004FBYZ имеют и TLER (Time Limited Error Recovery), ограничивающую время коррекции во избежание ошибочного выпадения диска из RAID-массива. Добавьте к этому заявленное время наработки на отказ в 1.2 миллиона часов, и мы получим практически идеал.

Впрочем, о правдивости красивых слов и мудреных аббревиатур сложно судить, пока не попробуешь продукт самостоятельно. И здесь я могу сказать лишь то, что набираю эту статью на компьютере, внутри которого вот уже 6-ой год трудится пара терабайтных Caviar Black. Да и 2.5-дюймовый малыш в стареньком Dell Inspirion 1501, ныне отданном родителям, чувствует себя ничуть не хуже. Собственно, и перевод инфраструктуры именно на WD на текущем месте работы состоялся именно с моей подачи – с этим брендом у меня сложились давнишние и весьма продуктивные отношения. Я использую их диски уже не первый год, они никогда меня не подводили, и на сегодняшний день я не вижу ровным счетом ни одной причины изменять своим предпочтениям.

Флешка. Любой USB-накопитель объемом 8 Гб. Разумеется, оптимально подойдут компактные “затычки”, корпус которых практически не выступает над разъемом.

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

  • Дополнительные кулеры следует ставить на выдув – тогда мы добьемся проточной циркуляции воздуха спереди назад и оптимального охлаждения;
  • Когда будете устанавливать материнскую плату, следите за металлической перемычкой над отверстием USB 3.0 на задней панели – действуя неосторожно, ее можно загнуть и, таким образом, блокировать разъем;
  • Корзины для дисков крепятся одним-единственным винтом, однако установлены они достаточно жестко и сразу могут не податься. Для извлечения корзины ее необходимо потянуть по направлению от корпуса и немного вниз;
  • На материнской плате не предусмотрено подключение для внешних USB 3.0, можете смело прятать этот провод в нижний отсек корпуса.

Занимательная математика

Пожалуй, стоит взять небольшую пазу и посчитать, насколько бюджетной получилась наша сборка. Итак, приступим:
  • Корпус: Thermaltake Core V1 – 3 764 руб.
  • Блок питания: как бы ни был хорош Thermaltake Smart DPS G 750W, для небольшого файлового хранилища он слишком роскошен. В будущем я планирую поставить туда Chieftec HPS-350NS – 1560 руб.
  • Материнская плата: GIGABYTE GA-J1800N-D2H – 4436 руб.
  • Оперативная память: Transcend SO-DIMM 2Gb DDR-III 1333Mhz x 2 – 3040 руб.
  • Охлаждение: TITAN DC FAN (80 мм, 2000 об/мин) x 2 – 404 руб.
  • USB-накопитель: 300 рублей.
Итого: 13 504 рубля.

Я намеренно не учитывал HDD, чтобы сравнить с продукцией Synology. К примеру, DiskStation DS216+ обойдется вам в 28 173 рубля, при этом под капотом мы увидим весьма скромную начинку: Intel Celeron N3050 1.6 GHz, RAM – 1 Gb, все те же два посадочных места 3.5 мм для дисков. Если бы WD Re 2004FBYZ не достались мне даром, то я заплатил бы еще 17 660 рублей, а конечные затраты приблизились к 31 тысяче – стоимость “голой” платформы популярного бренда. Да, наша сборка менее компактна, зато более производительна и надежна, и это практически за полцены! А если есть разница, затем платить больше? На этом небольшое лирическое отступление завершено – время двигаться дальше и вводить в строй нашу машину!

Windows Server – самое ужасное решение для домашнего NAS

Даже если вы в глаза не видели *nix’ы, даже если при виде командной строки вас бросает в дрожь, даже если “окошки” кажутся привычными и вселяют чувство безопасности, не вздумайте поднимать личное файловое хранилище на основе Windows. Почему? Расскажу по ходу данного материала. Но сперва разберемся с установкой.

Ставить Windows Server 2008 r2 будем, разумеется, с флешки. Для создания загрузочного накопителя можно обратиться к следующей инструкции , или воспользоваться утилитой Windows USB/DVD Download Tool , которую также рекомендуют в официальном блоге Майкрософт . Тоже самое можно осуществить и с помощью Rufus , которая, к тому же, сможет проверить память на битые блоки (одного-двух проходов будет вполне достаточно), либо осуществить установку в режиме Windows To Go, что позволит запускать ОС непосредственно с девайса.

Однако последний вариант – не лучшая идея, учитывая особенности работы операционной системы и требуемое для нее дисковое пространство, поэтому давайте сделаем обычную загрузочную USB-флешку.

Теперь можно приступать к установке, и здесь мы видим первый подводный камень – размер. Хотите поставить редакцию Standart с визуальным интерфейсом? Будьте добры выделить 24 гигабайта. В случае с парой дисков, это – слишком расточительно. В остальном какие-либо нюансы отсутствуют: как и в версии для домашнего использования, все сводится к “Далее-Далее-Готово”.

Войдя в систему, вы увидите следующий довод “против” – необходимость активации. Я не планирую использовать Windows Server в качестве основы для NAS – все это, прежде всего, эксперимент, поэтому ограничусь триалом, который любезно предоставляют сами Microsoft. Запускаем regedit, ищем ключ реестра

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform\Activation\Manual

Меняем его значение на единицу и перезагружаем машину. Теперь пробный период увеличился с 3-х до 30 дней. В общей сложности, его можно продлить до полугода при помощи сценария slmgr.vbs. Команда slmgr.vbs -dli поможет узнать, сколько времени осталось до окончания текущей лицензии, а slmgr.vbs –rearm сбросить период оценки (не более трех раз). Процесс можно автоматизировать , создав небольшой XML-файл.

Еще одно “фе” я бы хотел высказать в сторону “Центра обновлений”. К Windows Server 2008 r2 SP1 впоследствии было выпущено более 300 заплаток разного калибра. На установку их всех потребуется несколько часов, при этом патчи конфликтуют с добавлением ролей сервера. То есть, обновляться необходимо либо до, либо после, процесс отнимает уйму времени, и загружает систему по максимуму:

С обновлениями связан еще и прискорбный баг. После установки апдейтов вы можете обнаружить, что место на системном диске стало пропадать само собой. Если подметите утечку, зайдите в папку C:\Windows\Temp. Почти наверняка вы увидите такую картину:

Дело в сбое архивации логов обновлений – система плодит поврежденные архивы со страшной скоростью, после каждой ошибки запуская процедуру заново. Лечится это удалением всех файлов из папки C:\Windows\Logs\CBS, после чего можно спокойно почистить каталог Temp.

Однако двинемся дальше. И первое, что необходимо сделать – настроить автологин, благо NAS все равно будет находиться в домашней сети, а каждый раз вводить пароль – слишком утомительно. Отправляемся в “Пуск” –> “Выполнить”, и вбиваем команду control userpasswords2.

Выбрав группу “Администраторы”, снимаем галочку с “Требовать ввод имени пользователя и пароля”, сохраняем выбор.

Теперь разберемся с удаленным подключением. Проще всего воспользоваться встроенным менеджером рабочего стола. Для его активации пройдите в “Пуск” –> “Панель управления” –> “Система и безопасность” –> “Настройка удаленного доступа”, выберите второй или третий пункт (если планируете вывести NAS в интернет). Также стоит задать более простое и лаконичное имя компьютера на одноименной вкладке.

Альтернативой способен стать LiteManager – многофункциональная и бесплатная для частного пользователя программа, обладающая кучей полезных функций: передача файлов, прямой доступ к консоли, редактору реестра, диспетчеру задач, и рядом других. При установке серверной части на NAS задайте пароль доступа, который будет использоваться при входе:

Если планируете выпускать домашний NAS в интернет, можно дополнительно настроить IP-фильтр:

Убедитесь в том, что LM Server находится в автоматическом режиме запуска:

Также не забудьте задать статический адрес для нашей машины в свойствах адаптера:

Где 192.168.1.1 – адрес роутера. Наконец, включите сетевое обнаружение и общий доступ к файлам и папкам в “Панель управления” –> “Сеть и интернет” –> “Центр управления сетями и общим доступом” –> “Изменить дополнительные параметры общего доступа”.

После описанных выше операций, можно со спокойной совестью подключить NAS к домашней сети. Если дальнейшее управление будет осуществляться через LM Viewer, установите приложение на свой компьютер и добавьте новое соединение, нажав на плюс на панели инструментов и заполнив необходимые поля:

Где 192.168.1.250 – IP-адрес NAS. Либо воспользуйтесь встроенной в Windows утилитой подключения к удаленному рабочему столу.

Теперь давайте создадим раздел для хранения информации. Идем в “Диспетчер сервера” –> “Хранение” –> “Управление дисками”, щелкаем правой кнопкой мыши по неразмеченному пространству на системном диске, выбираем “Создать простой том” и, следуя подсказкам мастера, создаем основной раздел “Данные”, отформатированный в NTFS.

Можно приступать непосредственно к поднятию файлового сервера. Открываем в диспетчере “Роли” –> “Добавить роли”.

После приветственного окна мастера, появится список доступных. Нас интересуют “Файловые службы”:

В следующем окне ставим галочку напротив “Диспетчер служб файлового сервера”, по желанию можно включить “Службу Windows Search”.

В “Наблюдение за хранилищем” помечаем наш раздел “Данные”:

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

В “Параметрах отчета” задаем путь для хранения записей:

Если подключили Windows Search, выбираем индексацию тома “Данные”:

Подтверждаем выбор и ждем окончания установки. После этого нам станут доступны возможности диспетчера управления файлами (расположен в “Пуск” –> “Администрирование”). Из всего спектра предлагаемых инструментов, для домашнего использования пригодится управление квотами.

Как видим, раздел “Данные” уже получил по умолчанию “мягкую” квоту. Это означает, что в случае его заполнения более, чем на 85%, нам придет оповещение, однако запись файлов в NAS по-прежнему будет доступна. Квоты можно задавать не только для разделов, но и для отдельных директорий. Давайте создадим на диске “E” папку “Music”, и зададим для нее предельный размер. Нажимаем “Создать квоту” и выбираем путь:

В “Настраиваемых свойствах” укажем лимит в 300 Гб и выберем вариант “Жесткая”, чтобы меломания не привела к ситуации, когда на диске не останется места для регулярных бэкапов и важных документов:

Добавим пороговое значение в 85% и зададим способ оповещения:

В результате получим:

После нажатия кнопки “Создать” система предложит сохранить настройки в шаблон. Впоследствии это позволит нам применять аналогичные правила к другим папкам в один клик.

Чтобы новая квота отобразилась в списке, следует перенастроить фильтр. Кликните по одноименной ссылке и выберите значения “Все”:

Теперь новая квота также видна на главном экране:

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

Давайте создадим директорию Backup и запретим захламлять ее музыкой и видео. Для этого достаточно щелкнуть по “Создать фильтр блокировки файлов”, выбрать нужный каталог и, в нашем случае, предустановленный шаблон “Блокировать файлы аудио и видео”.

В шаблоне указаны практически все наиболее распространенные форматы, однако вы всегда можете добавить новые в соответствующем разделе:

Щелкнув по “Изменить свойства шаблона”, попадаем в меню настройки.

Здесь, нажав кнопку “Изменить”, можно вызвать раздел добавления новых расширений и удаления существующих, а также ознакомиться с предустановленными:

Осталось сделать нашу папку доступной по сети. Для этого отправляемся в “Пуск” –> “Администрирование” –> “Управление компьютером” –> “Общие папки” –> “Общие ресурсы” и создаем новый. Далее просто следуем подсказкам мастера. Сперва указываем путь к папке:

На следующем шаге задаем ее параметры (можно оставить по умолчанию):

Настраиваем разрешения доступа. Для локальной сети можно открыть доступ для всех, для интернета – оставьте только администраторам:

Теперь папка “Music” будет доступна прямо с любого компьютера вашей домашней сети – достаточно набрать адрес \\NAS\Music в проводнике и авторизоваться. Аналогичную процедуру проделаем и для каталога Backup, а заодно проверим, как работает блокировка файлов, попытавшись загрузить в него фильм.

Отказано в доступе – все работает отлично.

Остался последний штрих – создание программного RAID-1. В этом нет ничего сложного: идем в “Диспетчер сервера” –> “Хранение” –> “Управление дисками”, щелкаем правой кнопкой по системному диску (“Диск 1” в нашем примере), и выбираем “Преобразовать в динамический диск”.

Затем поочередно щелкаем по каждому тому, выбирая в меню “Добавить зеркало”. Все разделы “отразятся” на второй диск и начнется ресинхронизация:

И здесь еще один довод “против”. Дело в том, что процесс ресинхронизации для HDD на 2 терабайта будет длиться более 5 часов. Диски будут сверяться полностью, независимо от того, сколько информации записано, а их загрузка будет стремиться к 100%. Конечно, WD Re способны выдержать и не такое испытание, вот только нормально использовать NAS в этот период вы не сможете: скорость записи/чтения значительно упадет.

Кстати о скорости: давайте оценим быстродействие массива в реальных условиях. Вот что получилось у меня при перекидывании дискографии Rammstein в сетевую папку:

Совсем неплохо, но можно реально лучше, в чем нам поможет убедиться NAS4Free. Бесплатная и нетребовательная к ресурсам операционка оптимальна для домашнего NAS и способна работать с файловой системой ZFS, где зеркалирование дисков реализовано куда более разумно и надежно. При этом процесс первичной синхронизации отсутствует в принципе. Именно поэтому я рекомендую NAS4Free для организации домашнего файлового хранилища. Впрочем, о ней мы поговорим в следующем посте, а теперь приступим к самому интересному.

Насколько умен интеллектуальный блок питания?

Вы любите квесты в реальности? Я вспомнил про них потому, что мое знакомство с DPS App и Smart Power Managment началось как раз с этакого миниквеста. Google услужливо подсказал страницу для скачивания приложения , нажав на заветную кнопку я увидел вот такую форму:

Ничего необычного – многие компании просят ваш E-mail для новостной рассылки. Однако введя свой адрес, вместо утилиты я получил:

Даже без переводчика ясно, что запрашиваемая страница не найдена. В чем же может быть дело? Оказывается, все работает немного не так. Сперва необходимо создать аккаунт в системе, подтвердить регистрацию, и лишь затем вы сможете скачать утилиту в разделе “Продукция”.

Еще один важный нюанс – если вы придерживаетесь золотого правила составления паролей, используя в том числе специальные знаки, то здесь от такой практики придется отказаться. Проблем с авторизацией на сайте не возникнет, однако DPS App попросту не примет кодовую фразу, отобразив ошибку:

Поэтому стоит ограничиться комбинацией латинских букв и цифр. Впрочем, не будем судить строго: пока система находится на стадии бета-тестирования, подобные баги вполне закономерны.

Теперь давайте наконец скачаем и установим само приложение. Обращаю внимание, что для его корректной работы требуется Microsoft .NET 4.5, Adobe Flash Player ActiveX, а также актуальная версия Java. После запуска утилита предложит войти в систему для синхронизации с SPM, что мы и сделаем.

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

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

Теперь посмотрим, а что, собственно, нам предлагает приложение. В ассортименте – целый набор сканеров, позволяющих контролировать следующие параметры:

  1. Общий вольтаж и напряжение по каждой из подключенных линий;
  2. Напряжение на центральном процессоре и видеокарте;
  3. Силу тока;
  4. Общую мощность.

С помощью круглых стрелочек можно включить режим графика, отображающего изменения в реальном времени:

Присутствует и датчик температуры БП, где можно выбрать единицы измерения по вкусу:

Также в DPS App доступно управление вентилятором Thermaltake Smart DPS G 750W. В режиме “Производительность” агрегат подберет оптимальные обороты, практически сравняв температуру компонентов блока питания с температурой окружающей среды. Опция “Zero fan” позволяет отключить вентилятор вовсе – хотя сам по себе блок питания чрезвычайно тихий, если ваши домочадцы так и не привыкли к убаюкивающим звукам исправного сервера, данная функция поможет сделать NAS практически бесшумным. Учитывая экономичность нашей системы, активное охлаждение может не понадобиться вовсе. Если же температура превысит критические 80°C, БП автоматически перейдет в интенсивный режим работы.

Пункт “Расходы” позволяет задать тарификацию на электроэнергию и, таким образом, узнать, во сколько вам обходится эксплуатация оборудования. К сожалению, на данный момент поддерживается только одна тарифная зона и только одна валюта – доллар США. Вследствие этого, инструмент годится лишь для использования в ознакомительных целях, о чем утилита любезно предупреждает.

Довольно занятной функцией является возможность отправки данных в социальные сети. Поддерживаются Фейсбук, Твиттер и его китайский аналог Weibo. При щелчке по соответствующей иконке на аккаунте публикуется скриншот открытого в данный момент счетчика. Также доступна отправка картинки на e-mail, но лишь в том случае, если на компьютере предварительно настроен почтовый клиент.

Вкладка “Рекорд” предоставляет куда более интересные возможности. Здесь можно выгрузить отчеты о работе блока питания по датам в формате CSV.

Показания снимаются с периодичностью в одну минуту. В таблице фиксируются все параметры, отображаемые на индикаторах – очень удобно для оценки эффективности системы.

Впрочем, давайте отвлечемся от приложения (весь доступный функционал мы разобрали, за исключением управления подсветкой, которой данная модель не оснащена), и посмотрим, какие возможности предлагает облачная платформа SPM. Но сперва зайдем в “Мой аккаунт” –> “Настройки”:

Если выставить статус “Публичный”, статистика будет отображаться на вкладке “Все выгрузки”, однако доступ к данным будут иметь только юзеры, добавленные в друзья. При включении же службы геолокации, местоположение вашего компьютера будет отображаться на интерактивной карте.

По замыслу разработчиков, Smart Power Managment должен стать не просто облачным сервисом мониторинга, но полноценной социальной платформой. Используя функции позиционирования, вы сможете заводить знакомства с другими пользователями и обмениваться опытом посредством личных сообщений. Учитывая, что целевая продукции Thermaltake – профессионалы и энтузиасты, в будущем такая система способна послужить прекрасной альтернативой тематическим группам и форумам, позволяя в пару кликов отыскать коллег и единомышленников по всему миру.

Перейдем к вкладке “Мои выгрузки”. Сюда загружаются сформированные приложением отчеты.

Щелкнув по ссылке “Загрузить данные…” попадаем в визуальный интерфейс. Тут представлена вся информация, сохраненная в текстовых отчетах, но уже в виде графиков. Можно просмотреть статистику по самому БП, CPU и видеокарте:

Наиболее же интересной является вкладка “Анализ”. Выбрав БП (а платформа позволяет добавить неограниченное количество устройств), попадаем на вот такую страничку:

Первые три вкладки позволяют узнать суммарное время использования блока питания, стоимость электроэнергии и количество затраченных кВт/ч соответственно. Щелкнув по иконке в виде дерева, мы можем оценить экологичность системы:

К сожалению, NAS проработал всего ничего, так что пока еще я не посадил ни единого дерева. Далее можно получить сводную статистику по расходу электричества и стоимости, а также узнать среднюю мощность за выбранный период:

Вкладка “Анализ потребляемой электроэнергии” подскажет, насколько БП подходит для файлового хранилища:

Как и следовало ожидать, нам удалось собрать домашний NAS, энергопотребление которого сопоставимо с обычной бытовой лампочкой.

Последняя вкладка позволяет сформировать план по энергосбережению на основе выбранных параметров. Здесь же можно настроить оповещения для мобильной версии приложения:

Помимо этого, Smart Power Managment позволяет осуществлять удаленное управление питанием компьютера или сервера. Все необходимые инструменты представлены в разделе Remote.

Имеется возможность полностью обесточить или перезагрузить систему (не пугайтесь, соответствующий сигнал будет подаваться на материнскую плату), а также планировать отключение по расписанию:

Перечисленный функционал доступен также в DPS G Mobile App, выпущенной для iOS и Android (Windows Phone закономерно обошли вниманием). И если просматривать статистику на экране смартфона не очень удобно, то реализация удаленного управления домашним NAS придется как нельзя кстати. Все внесенные ранее настройки полностью синхронизируются:

Наиболее же полезной функцией является оповещение об остановке вентилятора, либо перегреве блока свыше 60°C, после чего вы сможете тут же отключить систему, предотвратив выход БП домашнего NAS из строя.

Вместо заключения

Подведем итог. Мы выяснили, что использование Windows в домашнем NAS – это долго, дорого и крайне неудобно. Излишняя прожорливость, длительность настройки, обновления и ресинхронизации, наконец, баги и необходимость приобретения лицензии – все это делает “окошки” пожалуй самым худшим решением для файлового хранилища. Поэтому уже в следующем посте я расскажу о том, что такое NAS4Free и с чем ее едят.

Что же касается платформы Smart Power Managment, могу сказать, что решение уже отлично работает, предлагая вполне достаточный набор инструментов для мониторинга и управления электропитанием. Она способна стать неплохим подспорьем в ситуациях, когда использование профессиональных отраслевых решений является нерентабельным (например, в ходе построения IT-инфраструктуры небольших офисов). Умный БП способен пригодиться и частному пользователю: когда ваш компьютер работает в режиме 24/7, возможность отслеживать изменения удаленно придется весьма кстати, как и тревожная кнопка для отключения системы в экстренных случаях. Но лично мне бы хотелось увидеть более продвинутую систему тарификации с поддержкой нескольких зон и валют – это позволило бы с высокой точностью фиксировать затраты на электроэнергию и планировать бюджет без дополнительного ПО. Если же Thermaltake выпустит версию утилиты под Linux и FreeBSD, ей и вовсе не будет цены. Надеюсь, представители компании читают Хабр – быть может, мои идеи им понравятся и утилиту все же перенесут на *nix"ы.

Задача: собрать малогабаритный домашний сервер с четырьмя 3,5-дюймовыми HDD, по возможности тихий. Служить будет в качестве NAS, backup-сервера и торрентокачалки.

Решение :
Во-первых необходимо было выбрать материнскую плату. Стандарные варианты - это mATX и Mini-ITX, оба из которых я пробовал ранее.

Форм-фактор mATX был отвергнут сразу, малыми усилиями сделать компактно с ним не получится. Существующие корпуса для mATX плат не рассчитаны на 4 диска, в них обычно ставят плохие и шумные блоки питания. Сделать компактный и тихий блок питания для такой системы трудно и дорого, т. к. потребляемая мощность будет больше 150 Ватт.

Форм-фактор Mini-ITX дает большую свободу выбора, тут и тихоходные процессоры Atom, Celeron, бодрые «середнячки» Athlon и мощные Core 2 Duo/Quad. Цена разнится сильно, но для моих задач хватит и Atom. Такие платы потребляют мало мощности, занимают мало места и обычно не сильно уступают mATX платам по кол-ву функций. Есть здесь и свои минусы: высокие цены, чуть меньшее кол-во разъемов, небольшой выбор.

К сожалению, на российском рынке выбор Mini-ITX плат меньше, чем за рубежом, но этому не стоит удивляться, учитывая их невысокую популярность. Хороший ассортимент представлен на Яндекс-Маркете и в некоторых специализирущихся на малых форм-факторах компаниях. Здесть стоит отметить Антекс и Оникс (он же dont.ru). На зарубежных сайтах (linitx.com , mini-itx.com , idotpc.com) выбор куда шире.

Подходящей маломощной платы с 4-мя SATA-разъемами я не нашел, а покупать с двумя и отдельно sata-контроллер не хотелось, единственный PCI-слот может еще пригодиться для чего-нибудь более полезного, например Wi-Fi адаптера.

Я хотел еще сделать из компьютера домашний роутер, поэтому искал плату с двумя ethernet-разъемами.

Выбор был, хоть и не большой, но, погуглив, я нашел отличную плату с двухъядерным процессором Atom, PCI-слотом, двумя ethernet-раземами и, о чудо, четырьмя SATA-разъемами. Отличный вариант: маломощный, но не совсем слабый процессор, полный набор необходимых разъемов и всего одним вентилятор.

Теперь предстояло выбрать корпус. Для 4-х жестких дисков нашелся один-единственный корпус, Chenbro ES34069 , на вид такой же отличный, как и найденная плата, но достаточно дорогой. После чтения форумов выяснилось, что тишиной он не отличается.

Хорошо, поехали дальше, можно купить другой корпус и в нем сделать место под 4 диска. Как разместить диски на тот момент я представлял лишь примерно, но это меня не пугало. После тщательных поисков было найдено два небольших подходящих по вместительности корпуса: AOpen S180 и CFI GROUP CBI-A8989TG . Оба напоминали корпуса первых bareborn-систем. По расчетам подходили оба, но я решил взять корпус от Aopen, который был немного выше, чтобы было место про запас. Впоследствии это решение оказалось единственно верным, так как во второй корпус все бы так хорошо не упаковалось. Но обо всем по порядку.

Блок питания в купленном корпусе оказался на редкость шумным и я решил искать альтернативу. Блоки питания для Mini-ITX систем обычно состоят из двух компонент - адаптера питания от сети, как у ноутбуков и платы-конвертера. Плата конвертирует напряжение, выдаваемое блоком, обычно 12 Вольт в необходимые 3,3, 5, 12, -12 Вольт. По расчетам, система должна была потреблять до 100 Ватт в пике. Ассортимент таких безвентиляторных блоков питания оказался очень маленьким. В Москве найти плату и адаптер с выходной мощностью больше 80 Ватт оказалось невозможно. Адаптеры 220 - 12 Вольт мощностью от 100 Ватт в Москве являются штучным товаром, поездки по рынкам и поиски в сети почти ничего не дали. Лишь одна фирма предлагала привезти блок питания на 120 Ватт, но в непонятные сроки. Нашлась также и одна-единственная плата на 120 Ватт, тоже на заказ и в непонятные сроки. Пришлось искать в зарубежных интернетах. Немецкие и американские магазины предлагали такие комплекты, даже был хороший выбор, но по цене около 200$ с доставкой. Тогда я обратил внимание на автомобильные конвертеры, по сути такие же платы, только рассчитанные на плавающие автомобильные 12-24 Вольт, а не на стабильные 12. Для таких плат гораздо проще найти блок питания, ведь подойтет любой от ноутбука мощностью 100-120 Ватт. Блок питания у меня был, и я нашел сходный по цене вариант на eBay. Отлично, оставалось дождаться его по почте.

Жесткие диски были выбраны серии Barracuda LP, они подешевле и меньше греются, чем взрослые 7002.11 и подобные. Однако, при тестах выяснилось, что при нагрузках они все-таки сильно греются и им не мешало бы принудительное охлаждение. Между дисками надо было сделать зазоры для свободного прохождения воздуха.

В купленном корпусе была железная каретка для крепления одного 5-дюймового и двух 3,5-дюймовых устройств. Хорошо закрепить 4 диска на ней не представлялось возможным. Зато с такой задачей отлично справлялась металлическая каретка, предназначенная для установки четырех дисков в три 5-дюймовых отсека, которая была мне подарена другом. На ней было место для крепления вентилятора, при установке дисков между ними оставались щели, достаточные для продувания.

В Леруа Мерлене нашлись подходящие для закрепления каретки в корпусе железные уголки и винты. Плата адаптера была закреплена на специально припаянных металлических стойках. Блок питания, идущий в комплекте с корпусом был снят, на задней стенке корпуса, в месте где выл вентилятор блока питания и разъем 220 В. образовалось внушительное пустое место, которое надо было как-то закрыть. Ножницами по металлу я аккуратно вырезал заплатку из листа алюминия и прикрепил к корпусу. Теперь предстояло сделать хитрый шлейф питания MOLEX-4 SATA, так как у блока питания был только один разъем molex. 20-контактный шлейф питания, соединяющий мат. плату и конвертер питания я спаял из шлейфа от старого блока питания.

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

Самой простой задачей оказалась покупка памяти. :) Для системного раздела я купил флешку на 8 Гб и спаял к ней адаптер для подключения к внутреннему разъему на мат. плате. ОС была поставлена на флешку, компьютер собран. В итоге я собрал тихий компьютер, где все получилось достаточно компактно, свободного места внутри было действительно мало.

Сейчас он работает под управлением Ubuntu 9.10, бекапы производятся с помощью snapback2+rsync.

Итоговая смета

Небольшой тест

Привожу результаты unixbench и, для сравнения, результаты тестов настольного компьютера (Athlon X2, 2 ядра, 2,5 Ггц, 2 Гб RAM) и сервера на базе Xeon 5500 (8 ядер, 2,5 Ггц, 48 Гб RAM).

Итоги

Самый дешевый NAS на 4 диска я нашел на Яндекс-Маркете за 14000 рублей (без дисков). Мой компьютер вышел на тысячу рублей дешевле и уж точно мощнее и функциональнее. Из минусов - потрачено много времени, найти детали в моем случае было не просто, и, добавим сюда риски покупки товаров из-за рубежа по почте.

Спасибо за внимание!