Сетевое хранилище для дома своими руками. Где хранить большие файлы? Собираем домашний сервер

Практически в любой локальной компьютерной сети оказывается востребован файл-сервер . Хранилище данных необходимо и в "самопальной" сети - масштаба дома, деревни, школы, дачного посёлка. Это просто удобно, когда есть отдельное хранилище для "тяжелого" контента - HD-видеофильмов, музыки, ПО и т.д. Но фирменный файл-сервер - удовольствие не из дешевых. Изрядно сэкономить можно, превратив старый ПК в домашний файл-сервер. Для этого потребуется лишь установить специальный софт и настроить его.

Фактически, мы сделаем своими руками NAS (Network Attached Storage) - сетевую систему хранения данных, сетевое хранилище . То есть, компьютер с некоторым дисковым массивом, подключенный к локальной сети и поддерживающий работу по принятым в ней протоколам.

В нашем примере для организации NAS мы используем дистрибутив FreeNAS . FreeNAS - это свободная операционная система для сетевого хранилища . FreeNAS основан на FreeBSD с использованием Samba и PHP, поддерживает software RAID. К нему можно получить доступ по протоколам CIFS (SMB), Apple Mac AFP, FTP, SSH, iSCSI и NFS. Для работы FreeNAS необходим компьютер с процессором i386 или x86-64, с минимум 128 Mб оперативной памяти и 500 Mб дискового пространства. Также требуется возможность загрузки с привода оптических дисков.

Мы рассмотрим установку и настройку 7-й ветки FreeNAS. Поскольку FreeNAS базируется на FreeBSD, список поддерживаемого оборудования для них совпадает. Как показывает практика, для нормальной работы системы требуется хотя бы 512 Мб RAM. Для домашнего NAS 1-2 Гб памяти будет более чем достаточно.

Главный компонент домашнего NAS - жёсткие диски . Понятно, что при возможности стоит выбирать ёмкие HDD с большим буфером и частотой вращения 5400-5900 RPM - они не будут сильно шуметь и нагреваться при работе. Но преимущество описываемой системы как раз в том, что её можно собрать из кучи разнообразных старых винчестеров, объединив их в дисковый массив . При этом для SATA-дисков стоит выставить в BIOS режим совместимости с IDE.

FreeNAS не требует мощной системы - хватит и старого Pentium или Athlon. Если NAS-система собирается "с нуля", достаточно будет платы с чипом Intel Atom и пассивным охлаждением - такая платформа будет тихой, негреющейся и энергоэкономичной. Видеопамять также имеет смысл снизить до минимума. На время установки нам также понадобится CD-привод - потом его можно будет отключить.

Собрав систему, устанавливаем FreeNAS. Качаем ISO-образ системы, пишем его на CD, указываем в BIOS загрузку с оптического привода и перегружаемся. Загрузчик предлагает несколько вариантов запуска системы. Загружаясь в режиме по умолчанию, FreeNAS выводит основное меню.

Выбираем полный (Full) вариант установки и указываем диск, на который будем инсталлировать ОС. Для раздела с ОС желательно выделить примерно 500 Мб дискового пространства. Установка занимает всего пару минут, после чего нужно перезагрузиться . Оптический привод уже можно отключить.

Первым делом следует изменить настройки сетевого интерфейса. Выбираем в меню пункт номер два - в случае, если локальная сеть имеет адресацию, отличную от 192.168.1.0/24. Лучше всего для файл-сервера задать статический IP-адрес - не забудьте только указать адрес основного шлюза и DNS-сервера.

После того, как эти настройки будут применены, монитор и клавиатуру также можно отключить. Далее вся настройка пойдёт только через веб-интерфейс по адресу http://ip-адрес-NAS/ (его мы задали ранее). По умолчанию логин - admin, пароль - freenas.

Войдя под ними, отправляемся в раздел System > General Setup. Там меняем язык интерфейса , выставляем часы, и при необходимости - включаем синхронизацию с NTP-сервером. Сохраняемся и обновляем управляющую страницу. Не забываем поменять пароль для входа в веб-интерфейс, снова сохраняемся, выходим и логинимся заново.

Теперь нужно подключить swap-раздел. Отправляемся в секцию "Диагностика" > "Информация" > "Разделы" и смотрим там информацию о разбивке диска. Наш диск разбит на три раздела разного объёма - для ОС, данных и подкачки. Определяем путь до раздела подкачки. Имя диска в нашем примере - /dev/ad0 (оно видно сверху), по размеру (256 Мб) понятно, что для swap используется третий раздел. Путь к нему будет выглядеть как /dev/ad0s3. Во время установки нам этот путь был показан сразу после форматирования диска . Переходим по пути "Система" > "Дополнительно" > "Файл подкачки ", выбираем тип устройства и указываем путь. Сохраняемся.

Теперь следует добавить в систему диски. Проходим путем "Диски" > "Управление" и кликаем на список. Выбираем в списке требуемый диск. Включаем поддержку SMART. Если используется только один диск (на который и установлена ОС), выбираем UFS with Soft Updates. При добавлении другого, уже отформатированного диска с данными, следует указать соответствующий тип файловой системы . Нажимаем "Добавить".

Если система собрана с использованием ещё не отформатированных дисков, то переходим в раздел "Диски" > "Форматирование", выбираем нужный диск и форматируем его. Специалисты рекомендуют использовать UFS, хотя это и не обязательно.

Далее монтируем все использованные нами HDD. Для этого проходим путем "Диски" > "Точка монтирования", нажимаем плюсик, выбираем в качестве типа "диск", потом собственно накопитель, указываем номер раздела и тип файловой системы, а также вводим имя точки монтирования. Замечу, что для каждого диска они должно быть уникальным. Нажимаем кнопки "Добавить" и "Применить изменения". Базовая установка FreeNAS завершена.

Теперь откроем доступ к NAS по сети. Для этого потребуется включить службу CIFS/SMB (NetBIOS). В настройках меняем имя рабочей группы, имя NAS в сети, выставляем кодировки, включаем сервер времени и разрешаем AIO. Прочие параметры оставляем по умолчанию, после чего жмем "Сохранить и перезапустить". Далее следует добавить как минимум один сетевой ресурс: указываем имя и комментарий, а также путь до него.

Изначально все точки монтирования находятся в каталоге /mnt. Соответственно, путь до корня накопителя выглядит так: /mnt/точка_монтирования/ (в нашем случае - /mnt/data/). При настройке рекомендуется создать в корне диска несколько папок и уже их добавлять в сетевые ресурсы. Если NAS содержит несколько дисков, всех их следует "расшарить" аналогичным образом.

Теперь в сетевом окружении Windows виден созданный файл-сервер с полным доступом. Чтобы управлять файлами и папками прямиком из веб-интерфейса, применяем файл-менеджер из раздела "Дополнительно". Логин и пароль для него аналогичны таковым у пользователей FreeNAS.

SMB-ресурсы используются в локальной сети; для внешнего доступа следует включить FTP-сервер . Соответственно, на роутере нужно открыть 21-й TCP-порт, а также включить DDNS-службу (присутствует в составе FreeNAS). В параметрах службы FTP разрешаем вход только авторизованных пользователей. Сохраняем настройки.

Управление пользователями - через раздел "Доступ" > "Пользователи". Для доступа пользователя к FTP-серверу указываем в качестве основной группы ftp.

В случае с NAS для домовой сети (как в нашем случае) также стоит включить встроенный во FreeNAS Bittorrent-клиент Transmission. В его настройках указываем папку, куда будут складываться закачиваемые файлы. Затем выбираем каталог для отслеживания torrent-файлов - как только в него будет закинут torrent, Transmission автоматически добавит закачку. Ссылка на веб-интерфейс Bittorrent-клиента по умолчанию выглядит как http://ip-адрес-NAS:9091/.

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

Когда всё настроено, Windows легко определяет NAS как сетевое медиаустройство и позволяет напрямую слушать с него музыку, просматривать видео и картинки .

Вся эта процедура не единожды была описана в разных источниках в Рунете. На практике мы её применили, когда делали коллективный файл-сервер для своей домовой сети - в моём доме она объединяет более полусотни ПК. NAS мы собрали, "нашпиговав" старый десктоп винчестерами - по большей части также не новыми. Однако всё работает вполне нормально. Собранный файл-сервер мы установили в одной из квартир - там же, где стоит ADSL-модем , обслуживающий домовую сеть.

Виктор ДЕМИДОВ

Часть первая: холодное железо

Его можно тушить, и в бульон покрошить,
И подать с овощами неплохо.

Льюис Кэрролл, Охота на Снарка

Любой, кто способен собрать персональный компьютер и установить Windows, при желании может справиться и с созданием достаточно продвинутого NAS из x86-совместимого железа и свободных сборок ПО на основе *nix . При этом, грубо говоря, число установленных дисков влияет на стоимость и трудоемкость проекта только стоимостью дисков. Что позволяет серьезно сэкономить по сравнению с покупкой готового NAS на 4 и более дисков, но вряд ли выгодно, если ваши потребности удовлетворит NAS на 1-2 диска. Сказать, какой вариант лучше - нельзя. У каждого свои предпочтения. Кто-то отлично готовит дома, а кто-то предпочитает ужинать в ресторане. Вам доставляет удовольствие возня с компьютерным софтом и железом? Тогда этот текст может быть полезен. Вам нужен сервис хранения сам по себе? Выбирайте между облачным хранилищем и готовым NAS из коробки.

N. B. Это статья не про модель оборудования и не про версию программного продукта. Она про концепцию создания NAS своими руками и предлагает рассмотреть другие варианты решения задачи, кроме покупки готового устройства. Тема длинная, насчитывает под тысячу страниц обсуждения. Народ там вежливый и отзывчивый. Это как бы намек на то, что статья не претендует на полноту, академичность или истину в последней инстанции.

Что за NAS-то?

По словам Википедии, NAS (англ. Network Attached Storage) - сетевая система хранения данных, сетевое хранилище. Представляет собой компьютер, подключенный к сети и предназначенный для предоставления сервисов хранения данных другим устройствам. Операционная система и программы NAS-модуля обеспечивают работу хранилища данных и файловой системы, доступ к файлам, а также контроль над функциями системы. Устройство не предназначено для выполнения обычных вычислительных задач, хотя запуск других программ на нем может быть возможен с технической точки зрения. Обычно NAS устройства не имеют экрана и клавиатуры, а управляются и настраиваются по сети, часто с помощью браузера.

Определение не идеальное, но вполне рабочее. NAS используют и в бизнесе, но там свои требования и особенности. Нас же будет интересовать домашнее использование NAS.

К идее собрать NAS своими руками люди приходят обычно двумя путями, причем часто - обоими сразу. Когда дома один компьютер, NAS не нужен. Постепенно появляются другие сетевые устройства. Ноутбуки, смартфоны, планшеты. А особенно - сетевые HD-медиаплееры, всякие Dune, Popcorn, WD TV и им подобные. Именно с приобретением сетевого медиаплеера человек зачастую начинает накапливать терабайты информации. Сначала она хранится на сменных жестких дисках, подключаемых к медиаплееру и/или на все добавляемых в основной компьютер. Скоро дисков становится слишком много для удобного пользования, а круглосуточно тихонько жужжащий компьютер, заодно качающий что-то из интернета, начнет раздражать если не вас, то вашу дражайшую половину. Возникает идея собрать эту кучу дисков в отдельную коробку, засунуть куда-нибудь в угол и поручить ей раздавать контент всем сетевым устройствам и качать торренты. Поздравляю, вы пришли к NAS по первому пути. По дороге обязательно взглянули на готовые NAS, из коробки. Но цена!..

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

Конечно, есть и другие пути. Например, вы - увлеченный фотограф и нуждаетесь в надежном хранении многолетних архивов. Или любящий родитель, снимающий на видео каждый шаг своего малыша. И т.д. Вот только редко такие сценарии приводят к сборке NAS своими руками. Гораздо чаще - к покупке готового из коробки. Потребности таких пользователей уверенно удовлетворяются 1-2 дисковыми моделями готовых NAS. Собрать самому что-то аналогичное по размерам, шумности и цене 1-2 дисковым моделям любителю-неофиту трудно, если вообще возможно.

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

Ситуация кардинально меняется, если 1-2 дисков не хватает, а есть потребность в 4 и больше. Маркетологи производителей устанавливают на них ценовой уровень, который знакомого с компьютерным ценником человека ввергает в состояние фрустрации (хотя произносят они при этом куда как более народные слова). И человек начинает выбирать аппаратную конфигурацию, к которой мы и переходим. Хотя ему стоило бы начать с программной, но против природы не попрешь.

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

По амбару помела

Для того, чтобы комфортно смотреть по сети FullHD видео, включая образы BD дисков нам понадобится как минимум:

  • 1-2 гигабайта RAM, если не будет использоваться ZFS и 4-8, можно больше, если ZFS будет. (Про ZFS - позже, нетерпеливым Гугл в помощь.) Но даже на раритете с 256 МБ можно кое-что полезное собрать;
  • x86-совместимый процессор, в идеале (и для ZFS) - 64-битный, но и 32-битный подойдет для большинства вариантов. То есть любой x86-процессор кроме уже совсем музейных. Желательно - поменьше греющийся, но тут уж что есть;
  • проводной Ethernet-порт, лучше гигабитный - хотя и 100 мегабит достаточно для просмотра по сети BD-образов. Подключение NAS по Wi-Fi - спорная идея (но в случае самостоятельной сборки у вас гораздо больше свободы в выборе беспроводных контроллеров);
  • диски и SATA-порты. Для NAS нет разницы между SATA-2 (на 3 Гбит/с) и SATA-3 (на 6 Гбит/с). Не каждый диск работает быстрее, чем древний SATA-1, поэтому и такие порты можно использовать. А вот IDE-диски, по современным понятиям, медленные, малоемкие, горячие и шумные. Если SATA-портов не хватает, можно использовать контроллеры. Но если (когда) вы вскоре решите переехать на новое железо, то купленные как костыли для устаревшей материнской платы SATA-контроллеры будут валяться без дела. По себе знаю, у меня два валяются. И осторожнее с дисками более 2 ТБ. Многие старые контроллеры с ними несовместимы. А среди контроллеров SATA-1 попадаются и такие, которые не работают с дисками более терабайта - правда, это уже древность и редкость;
  • понятно, корпус, куда это все влезет и блок питания, который это потянет. С БП есть тонкости, имеет смысл присмотреть и новый, см. ниже.

Скорее всего, оставшееся от апгрейдов железо таким требованиям удовлетворит. А если еще и шуметь будет не очень (или есть куда убрать) - то вообще повезло. Можно начать экспериментировать.

Индпошив

Если вы собираете NAS из специально приобретаемых компонентов, то сначала стоит определиться с пожеланиями. В большинстве случаев (но нельзя объять необъятное) запросы делятся на три группы, условно «тихо-компактно», «эффективно-расширяемо» и «сервер-так-сервер». Уточню, что однозначно правильный вариант не существует. Ведь взвешивает пожелания, затраты и свои возможности сам пользователь. А вот неправильный - возможен. Когда результат не удовлетворяет явно или неявно заданным при проектировании требованиям. Например, супруга заявит, что коробка, конечно, большая. Но воет как самолет, и жить она в одной квартире с ней не согласна. Или собранная под пассив система не выдерживает испытания летом. Или банально затыкается видео при просмотре по сети. Поэтому пожелания лучше обдумать на берегу. Особенно - неявные.

Важное примечание. Мы говорим про NAS, а не про HTPC (Home Theatre PC), то есть не о компьютере, показывающем кино со звуком на большом экране, подключенном к его видеовыходу. В принципе никто не запрещает вам делать HTPC , в том числе со многими жесткими дисками, хотя требования для HTPC и NAS, а также используемые для них софт и железо очень различны. HTPC - это другая тема.

Тихо-компактно

Этот набор требований сформирован под влиянием готовых NAS. Хочу компактный и тихий, но чтобы влезало 4 диска (часто 6, иногда больше). Такие требования обычно приводят к выбору материнской платы Mini-ITX с впаянным Atom-подобным процессором, размещенной в компактном корпусе. Примеры - чуть ниже.

Есть очень неплохое преконфигурированное решение - HP Proliant Microserver (). Компактно, разумно по цене (от 12 000 на момент), 4 жестких диска, пятый можно вставить вместо ODD, излишнего в NAS. И с помощью небольшого бубна заставить нормально работать предназначенный для ODD SATA порт. Недостатки - далеко не мощный процессор, но для многих сценариев - достаточный. Если микросервер вас устроил, отправляемся в главу про софт.

HP Proliant Microserver - качественный и недорогой кандидат на роль домашнего NAS

Если нет - сначала выбираем корпус под желаемое число дисков (нужен или нет диск под систему, зависит от ОС. В главе про софт и обсудим.). Здесь в схватке понтов эстетического чувства с жадностью со стремлением к эффективным затратам проходит первая проверка на прочность концепции «тихо-компактно». Красивые компактные корпуса недешевы. Если победа за жабой стремлением к эффективности, идем в главу эффективно-расширяемо. Туда же отправляемся, если выбранный корпус допускает установку материнской платы microATX. Если победила эстетика - подбираем материнскую плату Mini-ITX (Mini-DTX). Первое требование - максимум портов SATA (можно с учетом eSATA). В принципе, настольные варианты с 6 SATA-портами выпускались. Но удастся ли найти здесь и сейчас - вопрос. Если не хватает портов, SATA-контроллеры PCIe на 2 и даже 4 порта достаточно доступны. Для них, естественно, нужен слот PCIe. С учетом того, что он в Mini-ITX - единственный, расширяемость на этом и заканчивается.

Примеры все из реальной жизни, часто с доработками и дополнительными фото - см. FAQ в профильной ветке, раздел 3.1

от axel77 от half_moon_bay от padavan
Корпус Chenbro ES34069 Lian Li PC-Q25 Lian-Li PC-Q08
Блок питания 180 Вт в комплекте Corsair, PSU-500CXV2EU, 500 Вт Enermax 380 Вт (82+)
Материнская плата Zotac NM10-DTX WiFi Asus E35M-I* Asus P8H67-I**
Процессор интегрированный Intel Atom D510 интегрированный AMD E-350 Intel Pentium G840
Оперативная память Kingston 2×2 ГБ Corsair XMS3 2×8 ГБ 2×4 ГБ DDR3-1333
Винчестеры для данных 4×Samsung HD204UI 7×3,5″ 6×3,5″ + хотсвап для 3,5″ HDD в отсеке 5,25″
Системный накопитель 2,5″ Toshiba 500 ГБ USB-флешка 2,5″ HDD
Операционная система FreeBSD FreeNAS 8.x OMV
Дополнительно сеть Intel WG82574L*** ST-Lab 370 4xSATA PCIe 2xSATA-II
Оценка цены**** 14 950 руб 15 600 руб 14 000 руб

* Сейчас материнские платы с E-350 стали редкостью, их заменили версии с E-450. SATA-портов - меньше;
** В продаже нет, но см., к примеру, ASUS P8H77-I;
*** автор через самодельный рейзер добавил сеть, но это, скорее, личный перфекционизм;
**** Цены - прикидка по просьбе редакции с использованием современного Яндекс Маркет, при отсутствии - Price.ru, при отсутствии - аналоги. Прикидка грубая, так как некоторых моделей уже нет в продаже и найденные цены не обязательно актуальны. Цена не учитывает диски данных, б/у системный HDD при наличии учитывался как 1000 руб.

По поводу «тихо» есть тонкости. Первый порыв - «полный пассив». Однако в большинстве случаев принимается аргумент о том, что 4-6 дисков будут производить больше шума, чем хороший 120-миллиметровый вентилятор с заниженными оборотами. В любом случае надо понимать, что за все надо платить и компактный корпус при прочих равных окажется шумнее более просторного стандартного с большими вентиляторами.

Очевидная особенность впаянного процессора - производительность. Если ее недостаточно, подавляющее большинство отказывается от формата Mini-ITX. Но, полноты ради, надо сказать, что это не обязательно, ср. конфигурацию от маэстро padavan.


Сборка от padavan, как видно - на редкость компактно

В декабре прошлого года были анонсированы Intel Atom S1200 (Centerton) серверного назначения. Когда появятся в продаже - могут оказаться интересным вариантом для домашнего NAS. Поддержка ECC-памяти, Intel Virtualization (VT-x), 8 линий PCI-E, 8 ГБ памяти - этого хватит для большинства вариантов.

Эффективно-расширяемо

Значительная часть NAS-остроителей - кто сразу, кто столкнувшись с ограничениями вариантов на Atom-подобных процессорах, - решает собрать конфигурацию, допускающую серьезное расширение. По процессору, памяти, но прежде всего - по числу дисков. Как уже говорилось, готовые NAS даже на 4 диска недешевы, а на 8-10 уже запретительно дороги для дома. В то же время, подобрать достаточно просторный корпус нетрудно. Например, в моем корпусе, оставшемся от апгрейда Крафтвеевского компьютера (на корпусном железе тогда не экономили), сейчас живет 7 шт. 3,5″ дисков и без особых проблем можно установить еще 3. При выборе корпуса под действительно большое число дисков стоит смотреть в сторону моделей со многими 5,25″ слотами, в которые затем ставить корзины с обдувом, используя 5,25″ слоты для четырех 3,5″ дисков. См. пример в главе «Затраты».

Так как NAS работает 24/7, хотелось бы процессор энергоэффективный (в Москве ватт в год стоит 35 руб). Intel Sandy Bridge и Ivy Bridge серьезно снижают энергопотребление в простое, а ведь NAS львиную долю времени загружен крайне слабо. Поэтому суточное энергопотребление такого NAS может оказаться существенно ниже, чем у варианта на Atom, который не умеет снижать потребление в простое. Какую именно модель процессора взять, зависит от того, требуется ли делать транскодинг видео в реальном времени.

Многие современные телевизоры имеют функциональность DLNA, позволяющую принимать видео по локальной сети. Проблема в том, что понимают они лишь некоторые варианты кодировки. И часто вовсе не те, что используют рипы и ремуксы, водящиеся на просторах Сети. Задачу можно решить несколькими способами. (1) Искать кино в формате, который поминает ваш телевизор. Это хвост, виляющий собакой. (2) Перекодировать на компьютере кино под запросы телевизора. Это потери времени и возможно только для самостоятельно снятого видео. (3) Нагрузить NAS перекодировкой в реальном времени и (4) Купить медиаплейер, то есть небольшую коробочку, которая получает, с том числе по сети с NAS, видео как файлы и снабжает в телевизор с ресивером аудио-видео сигналом, обычно по HDMI. Если Вы выбрали вариант (3), то надо изучать спецификации телевизора и смотреть в районе Core i7. Плюс из-за ограничений в DLNA вообще, и в реализации этой маркетинговой идеи в вашем телевизоре в частности, полной всеядности получить не удастся. Вариант (4) на современном уровне цен оказывается не только проще и функциональнее, но и дешевле. Тогда как процессор NAS подойдет фактически любой младший Pentium или Celeron 2-го или 3-го поколений Core. Можно взять i3, благо в сравнении с ценой дисков разница будет ничтожна. Выбирайте на вкус. Для быстрой справки или детального окончательного сравнения моделей-кандидатов можно использовать раздел тестирования процессоров на iXBT . Я себе взял Intel Pentium G2120 как младший на то момент Ivy Bridge. Младшие Sandy Bridge дешевы и более чем достаточны.

Доступные на момент написания процессоры AMD на фоне Intel не впечатляют - хотя AMD гораздо щедрее снабжает свои процессоры поддержкой ECC-памяти, и возможно, вскоре у компании появится что-то конкурентоспособное, например Opteron 3250 с заявленной ценой $99.


Материнская плата ASUS P8H77-M Pro: 7 SATA, до 32 ГБ ОЗУ

Материнская плата. Я взял ASUS P8H77-M Pro из таких соображений:

  • LGA1155, встроенное видео получаем автоматом из-за процессора, оно понадобится только на этапе установки;
  • максимальное число SATA-портов, неважно, 3 или 6 Гбит/с (7 SATA + eSATA);
  • лучше 4 слота под память, но достаточно 2 (4, до 32 ГБ);
  • интегрированный 1000BaseTX, считается, что лучше от Intel. Но с учетом наличия процессора с запасом вычислительной мощности, и Realtek прекрасно пойдет (Realtek 8111F);
  • PCIe-слоты на случай установки в будущем SATA-контроллеров и сетевых карт (x16, x4 в слоте x16, 2 по х1);
  • Форм фактор - microATX.
Этого вполне достаточно для обеспечения всей требуемой функциональности. А всевозможные дополнения будут только зря кушать электричество. Но если вдруг приглянулась ATX-плата - имеете право.

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

Блок питания вынесен в отдельную главу.

Примеры описанного варианта:



от ZanZag от shale
Корпус Lian Li PC-V354R InWin BP659
Блок питания Chieftec BPS-550C 550 Вт 200 Вт в комплекте
Материнская плата ASUS P8H67-M EVO(B3) ECS H61H2-I2
Процессор Intel Pentium G860 Intel Celeron G530
Оперативная память 4×4 ГБ DDR3 PC3-1066 Kingston 2×2 ГБ
Винчестеры для данных 6×Hitachi HDS5C3030ALA630 3×Seagate ST3000DM001
Системный накопитель CF 4 ГБ через переходник CF-IDE 40 ГБ SSD
Операционная система nas4free 9.x OMV
Дополнительно кулер Cooler Master DP6-8E5SB-PL-GP, доп. вентиляторы 2×Zalman FDB-1 и Arctic Cooling F9 PWM
Оценка цены 18 200 руб 7300 руб

Сервер-так-сервер

Существует «премиальная» категория NASостроителей, которые по объективным или субъективным причинам строят NAS из серьезных и дорогих серверных компонентов. Энтузиасты экспериментируют с 10-гигабитными сетевыми решениями. Помните, что серверные конфигурации зачастую по габаритам и шуму не вполне совместимыми с жилыми помещениями. Возможность использования ECC-памяти - наиболее очевидное преимущество подхода. Файловая система ZFS, используемая в данном сегменте домашнего NASостроения, активно использует память. При этом сбой в памяти может привести к оставшемуся незамеченным искажению данных. ECC-память решает проблему, но для ее использования в варианте Intel нужны серверные процессоры (есть интересные исключения, например Pentium G2120) и материнские платы.

Зачастую используется виртуализация и несколько гостевых OC решают задачи, у каждого - какие-то свои. Распространен вариант, когда SATA-контроллер пробрасывается в виртуальную машину, выполняющую функцию хранилища (Solaris или FreeBSD c zfs). Из этой VM дисковая емкость экспортируется по NFS или iSCSI для гипервизора и других VM. От дальнейшего объяснения того, в чем сам не сильно разбираюсь, воздержусь и приведу реальные примеры.





Сборка от TPAKTOP, вид снаружи и изнутри

от fatfree от axel77 от TPAKTOP
Корпус Fractal Design Define Mini Supermicro CSE-SC846E26-R1200B
Блок питания Seasonic X560
Материнская плата Supermicro X9SCL-F Supermicro X9SCM-F Supermicro X9SCM-F
Процессор Intel Xeon E3-1230 Intel Xeon E3-1230 Intel Xeon E3-1220
Оперативная память 4×Kingston KVR1333D3E9S/8G 4×Kingston KVR1333D3E9S/4G 4×Kingston KVR1333D3E9S/4G
Винчестеры для данных 5×WD20EFRX в процессе накопления 12×ST31000524AS в двух 6xRaidZ2 (основной пул), 2хST32000542AS в зеркале (бэкап пул), 4хST3250318AS в страйпе (торрент пул)
Системный накопитель Intel SSD 520 180 ГБ 2,5″ на 320 ГБ TS64GSSD25S-M
Операционная система ESXi 5.1.0 + Nexenta CE + Ubuntu Server 12.04 + Windows 8 FreeBSD FreeBSD
Дополнительно HBA IBM ServeRAID M1015, кулер Noctua NH-L12 2×HBA IBM ServeRAID M1015 2×HBA IBM ServeRAID M1015, Intel Gigabit ET Dual Port Server Adapter

SATA/SAS-контроллеры

Так что если не терпится - можно приступать. А во второй части софт будем обсуждать подробнее.

Хотелось бы выразить благодарность всем участникам профильной ветки на forum.сайт, в том числе камрадам axel77, half_moon_bay, padavan, ZanZag, shale, конфигурации которых были использованы в статье; камрадам Sergei V. Sh, TPAKTOP, iZEN и RU_Taurus за множество полезных комментариев.
Особая благодарность разработчикам свободного софта: Olivier Cochard-Labbé, Daisuke Aoyama, Michael Zoon, Volker Theile и многим другим. Они сделали возможным само существование темы «NAS своими руками».

Как ты догадался по названию, сегодня мы будем строить домашний NAS-сервер. Уже больше пяти лет у меня обитает маленький старенький зверек в корпусе In Win BQ656 Black Mini-ITX 80W USB/Audio/Fan + External remote control. Внутри у него вот такой процессор: AMD Athlon(tm) Dual Core Processor 4050e, с показанием BogoMips в 4200. Хоть и крошка, зато мало ест и умеет виртуализацию, что немаловажно. Подробные характеристики можно посмотреть где угодно:). К слову, уже после сборки захотелось поменять его на чуть более крутой Athlon 64 X2 6000+. Купить такой можно на Авито за 500–700 рублей. Все это дело мы подняли на материнке Minix780G-SP128M .

Не фонтан, конечно, - всего четыре SATA и нет поддержки RAID, но зато малое энергопотребление. Цену на сегодняшний день определить не удалось, но когда-то она стоила 220 долларов . В идеале бы, конечно, лучше иметь мать с возможностью подключения шести дисков и поддержкой RAID. Но такое удовольствие обойдется в некислую сумму. Попробуем прикинуть из того, что есть на рынке б/у. Предложили комплект на Intel 7600 + мать Asus можно приобрести за 1500–2000 рублей (напомню, что это б/у).

До замены корпуса система состояла из Ubuntu-сервера, шары на ней - и, собственно, все. Внутри было два диска по 500 Гбайт. Сейчас приобретен новый корпус, установлена еще пара жестких дисков. Итого три HDD по 500 Гбайт и один на 1,5 Гбайт.

Хотелки

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

  • само собой, Samba, раздача медиаконтента по сети, об этом чуть ниже;
  • виртуализация различного уровня: пара виртуальных машин, внутри может быть 1С-сервер Linux, Docker-контейнеры;
  • чтобы не надо было настраивать каждый домашний узел для сервисов, маленький DNS с зоной что-нибудь.local.

Требования к аппаратной части:

  • бесшумность;
  • удобная установка/замена HDD;
  • компактность.

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

Пара фраз о корпусе

Производитель и модель: Raijintek Metis, с окном
Материал: алюминий, сталь
Габариты: 190 x 254 x 277 мм (Ш x В x Г)
Форм-фактор: Mini-ITX
Отсеки накопителей: 1 x 2,5/3,5" (внутри), 2 x 2,5" (внутри)
Вентиляторы: 1 x 120 мм (сзади, предустановлен)
Вес: около 2,8 кг

Классный дизайн и цвет отлично смотрятся практически везде, а стоимость весьма демократична. К слову, мне такой корпус обошелся всего в 4000 рублей. Приобретался на Avito, доставка почтой. Подробнее с корпусом можно познакомиться на сайте производителя . Чуть не забыл про память! На момент написания статьи было установлено 2 Гбайт (две планки по 1 Гбайт). Сейчас уже заказываю две плашки по 2 Гбайт.

Реализация программной части

Итак, что самое главное хочется от сервера? Чтобы был легко масштабируемый, в ногу со временем, приятый и удобный в использовании/администрировании. Желательно привлекательная веб-морда.

  • Вариант 1: поставить Ubuntu Server c панелью управления Ajenty 2 и все необходимое доставлять руками.
  • Вариант 2: поставить OpenMediaVault. Морда в наличии, много плагинов/расширений для увеличения функциональности, в основе лежит Debian, соответственно, всегда есть возможность доставить или допилить руками.
  • Вариант 3: поставить FreeNAS. Чуть меньше плюшек, но можно доставить все руками, правда - чуть сложней. Базируется на FreeBSD.
  • Вариант 4: поставить XPEnology. Огромное количество плюшек, репозиториев с дополнениями. Поддержка виртуальных машин и Docker.

После долгих мучений выбор пал на четвертый вариант. На нем и будем поднимать домашний сервер далее. Почему именно так? Первый вариант хорош сам по себе, но в то же время хочется минимум усилий и максимум возможностей без дополнительного рукоприкладства. К тому же Ajenty не дает гибко обращаться к серверу, так и хочется залезть в консоль и сделать все руками оттуда. А потом зайти в панель и просто любоваться:). Среди оставшихся вариантов победу одержал XPEnology. Предоставляет максимум сервисов при минимуме настроек.

Взлетаем

Итак, перво-наперво идем на сайт xpenology.me в раздел downloads и скачиваем набор для развертывания.

XPEnoboot - это образ загрузочного диска для установки и загрузки/перезагрузки сервера.

DSM - сама система. Synology Assistant - опционально, программа обнаруживает серверы XPEnology/Synology, установленные или готовые к установке узлы. Я устанавливал через веб-интерфейс - как говорится, на вкус и цвет все фломастеры разные.

ISO-образ нужно распаковать на флешку и использовать при каждом перезапуске сервера, что не совсем удобно. Либо подарить флешку серверу и сделать ее приоритетной при загрузке. Есть второй путь. В предыдущих выпусках журнала «Хакер» я писал про организацию PXE-сервера с различными вариантами загрузки. Если есть такой сервис, то можно с легкостью отдать это ему. За загрузку в XPEnology отвечают два файла (как и в любом линукс-дистрибутиве): zImage и rd.gz. Располагаем их в директории PXE-сервера, в меню дописываем:

Insert into pxelinux.cfg/default LABEL xpenolog kernel xpenology/zImage root=/dev/md0 ihd_num=0 netif_num=2 syno_hw_version=RS3612xs ac1=0010562E3E36 mac1=0051562E3E37 sn=B5JDN10005 initrd xpenology/rd.gz

Из меню понятно расположение файлов в подкаталоге xpenology, относительно корня TFTP-сервера. Информация была найдена на сайте xpenology.com. Рекомендую ознакомиться .

Первый вариант не сработал. Пробую по-другому. Распаковываю ISO, беру оттуда файл меню isolinux.cfg, копирую менюшку в свое меню PXE, с поправкой пути до файла ядра zImage. Копирую zImage на PXE-сервер. Вот этот вариант сработал как надо, после начала установки даже pat-файл операционной системы не потребовался. Сервер сам скачал его с сайта synology.com, что не может не улыбнуть:). В процессе установки сервер попросит ввести учетные данные администратора. После установки получаем полностью готовый к работе сервер Synology на обычном железе. Тем, кто не знаком с этой ОС, очень рекомендую! Огромное сообщество. Как результат - большое количество репозиториев, которые в разы расширяют штатную функциональность.

Продолжение доступно только подписчикам

Вариант 1. Оформи подписку на «Хакер», чтобы читать все материалы на сайте

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

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

Итак, у нас имеется коробка со следующими характеристиками:

  • Корпус: Thermaltake Core V1;
  • Блок питания: Chieftec HPS-350NS;
  • Материнская плата: GIGABYTE GA-J1800N-D2H;
  • Оперативная память: Transcend SO-DIMM 2Gb DDR-III 1333Mhz x 2;
  • HDD: WD Re 2004FBYZ x 2 (прежде, чем делать круглые глаза, читаем );
  • Охлаждение: TITAN DC FAN (80 мм, 2000 об/мин) x 2.
Настало время превратить ее в домашний NAS, надежный настолько, насколько это вообще возможно в данных условиях. И в этом нам поможет Zettabyte File System – пожалуй, лучшее решение для организации отказоустойчивого и, вместе с тем, производительного файлового хранилища. Разработанная Sun Microsistems под Solaris, позже ZFS была портирована на Linux и FreeBSD. Среди многочисленных ее достоинств нас будут интересовать следующие:
  1. Создание датасетов, благодаря чему появляется возможность избирательного управления сжатием файлов и дедупликацией, установки дисковых квот, и все это – без участия менеджеров, подобных LVM;
  2. Проверка целостности данных с помощью 256-битных контрольных сумм;
  3. Автоматизированое создание резервных копий на основе снэпшотов;
  4. Возможность объединения дисков в RAID-подобные массивы на программном уровне.
Среди специализированных решений, способных работать с ZFS, явно выделяются два конкурента – FreeNAS и NAS4Free . Такие “зеркальные” названия отнюдь не случайны – обе сборки основаны на FreeBSD, а сама NAS4Free является форком FreeNAS 0.7, зародившимся в те времена, когда оригинальная операционная система перешла под крыло iXsystems и встала на коммерческие рельсы. Именно NAS4Free является моим личным фаворитом. Почему? Давайте разбираться.

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

Установка NAS4Free

Поскольку дисков в системе всего два, в качестве загрузочного накопителя будем использовать флешку. Какую именно – абсолютно не имеет значения, любой древности от 2 Гб будет вполне достаточно. Если есть сомнения в исправности девайса, можно воспользоваться тем же Rufus , прогнав несколько тестов. Далее все просто – и приступаем к установке. Сперва вы увидите следующий экран:

Cпустя некоторое время на дисплее появится текстовое меню:

Нас интересует 9-й пункт – его и выбираем. Запускается процесс установки:

Экспертный режим не трогаем, а вот выбор между GPT и MBR зависит от возраста материнской платы вашей машины. Если вы приверженец “классики” в лице BIOS, выбирайте второй пункт. Стоит UEFI – выбираете первый. После подтверждения NAS4Free любезно сообщит, какие операции собирается проделать – соглашаемся на все:

Затем следует указать флешку, на которую будет произведена установка. Ее легко отличить от системного накопителя по размеру и названию:

На следующем этапе задаем размер файла подкачки. Правило простое: если используете накопитель в 2 ГБ – ставьте 512 Мб, 4 Гб – ставьте 1024 Мб, если 8 – 2.

Начнется процесс установки, по завершении которого вы увидите следующий экран:

Можете отключать флешку и перезагружаться – установка прошла успешно.

Теперь поработаем с самим NAS. Поскольку в качестве материнской платы мы выбрали бюджетный вариант для тонкого клиента, начать придется с настройки параметров загрузки, подключив к аппарату не только флешку, но и монитор с клавиатурой. В качестве видеовыходов присутствует D-Sub и HDMI, так что проблем возникнуть не должно. После включения машины зажимаем “Delete”, и задаем в меню “Boot” главным загрузочным девайсом нашу флешку (по умолчанию будет грузиться UEFI Shell, а он нам не нужен). Сохраняем изменения, перезагружаем NAS, и если все сделано правильно, видим уже знакомое меню:

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

  • Do you want to use DHCP for this interface? – No (мы хотим задать статический IP)
  • Enter new LAN IPv4 address – 192.168.1.250 (установлен по умолчанию, если в вашей сети он уже используется – введите любой свободный)
  • Enter new LAN subnet mask – 24 (маска подсети 255.255.255.0)
  • Enter IPv4 default gateway – 192.168.1.1 (указываем адрес роутера)
  • Enter DNS IPv4 address – 192.168.1.1 (также указываем адрес роутера)
  • Do you want to configure IPv6 for this interface? – No (в домашней сети IPv6 нам попросту не нужен)
Об удачном завершении настройки будет свидетельствовать этот экран:

На этом подготовка NAS завершена – теперь можно подключать хранилище к сети и приступать к настройке.

Настраиваем диски

Все операции осуществляются через удобный WebGUI – просто наберите в барузере установленный ранее IP (в нашем случае – 192.168.1.250) и сразу попадете на форму авторизации:

Логин по умолчанию – admin, пароль (кто бы мог подумать) – nas4free. Залогиниваемся и видим системный монитор:

Давайте-ка сразу перейдем на великий и могучий: отправляемся в “System” –> “General”, и меняем язык на русский:

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

Теперь приступим к настройке дисков. Идем в раздел “Диски” –> “Управление”, и… ничего не обнаруживаем:

Только без паники – в NAS4Free все нужно делать руками. Самый простой вариант – нажать на “Очистить конфигурацию и импортировать диски”, но я рекомендую нажать на синий плюсик справа и добавлять накопители по одному. Меню выглядит следующим образом:

Пройдемся по опциям:

  1. Описание можно не заполнять вообще, я вбил сокращенное название диска;
  2. Режим передачи оставляем Auto;
  3. Период перевода накопителей в режим ожидания указываете в зависимости от ваших личных потребностей. Однако следует учесть: частая перестартовка не идет на пользу даже надежным WD Re, поэтому выставлять 5-10 минут не имеет смысла – это лишь ускорит износ HDD;
  4. Управление питанием – я выставил Level 127 – компромисс между производительностью и энергопотреблением;
  5. Уровень шума – не считаю нужным использовать, благо WD и так работают очень тихо;
  6. Если хотите включить мониторинг S.M.A.R.T. – ставьте галочку;
  7. Поскольку диски новые, оставляем Unformated (неотформатированы) в последней строке.
Теперь нажимаем кнопку “Добавить” и повторяем процедуру для оставшихся дисков. Флешку добавлять не нужно во избежание всяких недоразумений (форматнете ее сгоряча, и все придется начинать с нуля).

После всех манипуляций видим в меню настройки дисков следующее:

Читаем предупреждение на скриншоте. Да, такова особенность NAS4Free: сперва вносим настройки, потом подтверждаем выбор, нажав “Применить изменения” – придется привыкать. После этого наблюдаем результат своих действий:

Если хотите получать данные S.M.A.R.T., отслеживая состояние дисков, пройдите на одноименную вкладку.

Проставьте галочку в чекбокс “Включить”, выберите режим электропитания Standby (чтобы не беспокоить винчестеры в режиме ожидания) и сохраните изменения. Также имеется возможность настройки оповещений. Теперь просмотреть подробные данные по каждому накопителю можно в разделе “Диагностика” -> “Информация” -> “S.M.A.R.T.”

Итак, оба диска Online, все системы работают нормально. Но это только начало пути. Давайте перейдем на вкладку “Форматирование HDD”. Как мы и договаривались в начале статьи, будем использовать ZFS. Выбираем оба накопителя и нажимаем “Далее”:

На следующем шаге задаем метку тома – я выбрал WDREZFS%1. Конструкция “%1” означает, что диски, которые мы форматируем, получат порядковые номера, начиная с единицы. То есть, первый будет назван WDREZFS1, второй – WDREZFS2, и т.д. Если не указать отправную точку, поставив знак “%” без цифры, то система сама пронумерует HDD. Также можно давать названия по серийным номерам. Например, “}

  • Сергей Савенков

    какой то “куцый” обзор… как будто спешили куда то