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

Введение

Статей вроде "Давайте сделаем сетевое хранилище (NAS) своими руками" написано предостаточно. При этом многие из них выглядят примерно "...нашли интересный дистрибутив, переписали на флешку, вставили в компьютер и радуемся жизни«.При этом упускаются такие интересные моменты как определение роли (проще говоря, для чего это нужно), подбор компонентов, тестирование, особенности будущей эксплуатации и так далее.

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

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

NAS (Network Attached Storage) - один из вариантов системы хранения данных (СХД). Фактически это узкоспециализированный файл-сервер, чьё программное обеспечения (а порой и аппаратное) заточено исключительно на операции обмена и сохранения данных.Обычно работает через стек протоколов TCP/IP, хотя бывают и исключения.

Традиционно NAS поддерживает передачу данных по протоколам файлового доступа: SMB (CIFS), NFS, APF и некоторым другим. Но в последнее время в NAS стали встраивать и поддержку протоколов блочного доступа, например, iSCSI.

Примечание. Строго говоря, работа в режиме блочного доступа - это прерогатива другой группы устройств - SAN (Storage Area Network). Фактически, современный NAS с функциями блочного доступа - это уже гибридное устройство SAN/NAS. Но несмотря на красивое симметричное написание, называть его всё равно будем NAS. Так короче и привычнее.

Преимущества создания NAS своими силами

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

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

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

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

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

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

Очень важный аспект - это получение практического опыта. Можно с уверенностью сказать, что построение сетевого хранилища своими руками даёт шанс гораздо лучше разобраться в системах хранения данных в целом. Даже отучившись на курсах того или иного вендора, можно так и не узнать тех или иных нюансов, которые, что называется, «плавают на поверхности». Так же при разработке никогда не будут лишними знания о том, как выглядит реальное «железо», как взаимодействуют компоненты и так далее.

Какие могут быть недостатки у этого направления?

Во-первых, творческий процесс затягивает. Уже давно пора сдавать в эксплуатацию, а тут не провели ещё тысячу первый тест, не переписали в литературном стиле главу в документации и так далее... :)

Во-вторых, конечно, нужна определённая уверенность в своих действиях. Когда речь идёт о проверке идеи на «старом железе», не так давит груз ответственности. Но когда приходится потратить живые деньги и потом доверить «самоделке» свои данные, иногда бывает сложно на это решиться.

Правильно определяем роль и расположение NAS в ИТ-инфраструктуре

Для этого рассмотрим два варианта использования NAS: в роли самостоятельного файл-сервера и в роли СХД.

NAS как файл-сервер

Обычно это вспомогательный файл-сервер для разгрузки основного корпоративного сервера. Зачастую это связано ограниченными функциями при интеграции в Active Directory.


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

Использование NAS - в качестве СХД

Здесь могут преследоваться такие цели как:

Расширение дискового пространства серверов. Проще говоря, стало мало места - добавили сетевое хранилище и на серверах подключили новые тома, например, по iSCSI.

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

Вспомогательная СХД для виртуальной системы. Далеко не всегда требуется размещать те или иные виртуальные машины на скоростных ресурсах. Иногда вполне достаточно простого NAS c томами, подключёнными по протоколам NFS или iSCSI.


Выбор программного обеспечения

При создании NAS есть два пути: воспользоваться готовым специализированным дистрибутивом или создавать свой вариант на базе универсальной операционной системы.

Если есть желание досконально разобраться во всех тонкостях программного и аппаратного обеспечения и создать уникальную систему под себя с максимально гибкими настройками - имеет смысл взять некий OpenSource дистрибутив, например, одну из сборок Linux, FreeBSD, Open Indiana и, тщательно его переработав, сделать платформу для собственного сетевого хранилища.

Если есть желание сразу запустить и начать работать - стоит воспользоваться готовым популярным дистрибутивом для NAS.

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

Среди готовых дистрибутивов есть три наиболее известных направления:

    на основе FreeBSD - FreeNAS, NAS4Free, ZFSGuru;

    на основе Solaris - NexentaStor;

    на основе Linux - Open-E, OpenMediaVault, RockStor.

Основной «изюминкой» дистрибутивов FreeNAS, NAS4Free, ZFSGuru, а также NexentaStor и Open-E является поддержка той или иной вариации файловой системе ZFS.

RockStor - экспериментальный дистрибутив, предполагающий использование Btrfs.

OpenMediaVault - заслуженный известный дистрибутив на базе Debian, поддерживающий файловые системы: XFS, JFS, ext2/ext3/ext4 - полная поддержка, NTFS и FAT32 - в режиме «чтение/запись». Следует учесть, что все дистрибутивы с ZFS предъявляют достаточно высокие требования к аппаратному обеспечению.

Народная примета: Если на сервере меньше 16GB RAM - возиться с ZFS особого смысла нет.

Ещё один важный нюанс - откуда планируется запускать саму операционную системы. В этом случае есть два варианта:

    система каждый раз стартует с временного носителя, например, с USB-флешки или при загрузке по сети, и потом образ разворачивается оперативной памяти;

    стандартная установка на постоянный жёсткий диск.

Например, NAS4Free может быть установлен как на сменный носитель, так и на жёсткий диск, а для OpenMediaVault лучше выбрать жёсткий диск из-за swap раздела. И тут снова вопрос, а есть ли возможность установить жёсткий диск или SSD для системы? После того, как мы разобрались со своими пожеланиями, переходим к выбору аппаратного обеспечения.

Проработка конфигурации

Стоит отметить, что большинство современных OpenSource дистрибутивов поддерживает широкий спектр серверных конфигураций. Но до сих пор существуют некоторые пробелы при поддержке оборудования. Ниже идёт описание таких «запланированных сюрпризов».

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

RAID-контроллер или HBA

Некоторые RAID-контроллеры, HBA и сетевые карты могут не поддерживаться в том или ином дистрибутиве. Симптом внешне выглядит примерно так - загружается дистрибутива, например, с флешки, а диски система «не видит».

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

Сетевые адаптеры

Проблема примерно та же что и в случае с HBA и RAID-контроллерами. Можно побороться, но иногда можно столкнуться с полным отсутствием поддержки.

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

Например, если сейчас используется стандарт Gigabit Ethernet на витой паре, а в дальнейшем планируется использовать 10 Gigabit Ethernet SFP (оптоволокно), то нужно проработать вопросы совместимости и в том, и в другом случае.

Количество слотов расширения

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

Возможность установки в корпусе дополнительных компонентов

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

Как происходит проработка конфигурации

Берём описание конфигурации выбранного сервера, включая чипсет, HBA или RAID-контроллер, сетевой адаптер, etc., и перечень поддерживаемого оборудования в выбранном дистрибутиве и сверяем с тем, что есть в спецификации сервера.

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

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

А Если совсем всё плохо - выбираем другой дистрибутив или другую конфигурацию сервера.

Важно! Все щекотливые моменты совместимости крайне желательно проработать до покупки оборудования путём тщательного анализа спецификаций. Чтобы потом не уговаривать дистрибьютора дать возможность что-то поменять или вернуть, а также чтобы не докупать отсутствующее.

Тестирование

Допустим, уже закупили оборудование с тщательно проработанной конфигурацией.

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

Для проверки на производительность нам понадобится ещё один компьютер желательно с более мощными характеристиками, чтобы протестировать NAS без оглядки на производительность других компонентов обмена данными. Сразу стоит отметить, что тестирование - это целая наука. И далеко не всегда расчётные и ожидаемые значения соответствуют тому, что получается на практике. Поэтому прислушаемся к совету Козьмы Пруткова «невозможно объять необъятное» и выборочно остановимся на интересных нюансах.

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

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

Второй вид тестов - при помощи специализированной программы, например, выполняем различные сочетания.

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

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

Поэтому рекомендуется провести тестирование не только на создаваемом NAS, но и на других системах (компьютерах), с целью получить некое усреднённое значение. Тогда легче определиться с результатами в данной среде эксплуатации.

По результатам тестирования может быть три варианта:

    Характеристики соответствуют ожидаемым условиям для этой среды эксплуатации.

    Характеристики отстают от ожидаемых, но известно узкое место, которое необходимо «расширить». Например, нужен кэширующий SSD.

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

Третий случай самый сложный. Наиболее частая рекомендация, которая может помочь - попробовать другое программное обеспечение (другой дистрибутив). Иногда помогает установка другого драйвера на HBA или RAID-контроллер, например, свежий драйвер от производителя. Помимо тестирования на производительность существует ещё тестирование на отказоустойчивость. Например, как поведёт себя RAID (аппаратный или программный) при искусственном сбое диска, сохраняется ли связь на дублированных сетевых каналах при аварии на одном из них и так далее.

Опытная эксплуатация

Как это часто бывает - получили более-менее приличные данные при тестировании и бегом стали внедрять. И в итоге получаем кучу неприятных «сюрпризов», которые не проявлялись при тестировании.

Как этого избежать? Только путем постепенного ввода в эксплуатацию. Самое главное - все это время пристально наблюдать за новым оборудованием и тщательно контролировать выбранные параметры.

Например, не переносим все выбранные виртуальные машины на новый том iSCSI, а только одну. И проверяем её работу. Если всё нормально, через неделю можно перенести ещё одну. Ещё через две недели - ещё две и так далее.

Основное достоинство такого подхода заключается в том, что появляется время вовремя избавится от этих самых «сюрпризов» и запускать на полную мощность уже проверенную и предсказуемо работающую систему. Кроме того, появляется время написать инструкции, уточнить регламенты, проще говоря, подогнать документальную базу под новые реалии.

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

Этот небольшой мануал поможет вам собрать полноценный NAS сервер из старого компьютера. Если вы готовы купить новые комплектующие и сделать свое файловое хранилище компактным и придать ему более современный вид и функциональность, то для вас больше подойдет статья , ну а любителям готовых решений я подготовил этот материал: . Теперь вернемся к старому ПК и оценим его возможности.

Требования к старому ПК

  • SATA разъемы на материнской плате, так как HDD c этим интерфейсом обладают наилучшим соотношением цена/производите-льность и имеют гораздо больший объем, в отличии от IDE винчес-теров.
  • Количество разъемов для подклю-чения жестких дисков на мате-ринской плате и свободных слотов в корпусе (возможность установить HDD в 5,25-дюймовые отсеки (специальные боксы)) Для сборки HTPC я использую такие боксы с 2-мя слотами под 2.5″ HDD.
  • При недостаточном количестве SATA-штекеров на блоке питания можно воспользоваться специальными переходниками IDE-SATA.

Процедура установки HDD в корпус

Чтобы установить 3,5-дюймовые жесткие диски в 5,25-дюймовые отсеки для оптических приводов поместите их в специальный бокс (см. рис).

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

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

Установка программного обеспечения

Для реализации серверного решения будем использовать ПО FreeNAS . Скачайте ISO-образ по ссылке для 32-битной или 64-битной системы и запишите на минимальной скорости на диск CD-R\RW. Если нет болванки можно установить на флешку, как сделать загрузочную флешку написано в . Временно подключите к ПК дисковод (который сняли ранее или воспользуйтесь USB приводом). Зайдите в BIOS и установите в разделе Boot загрузку с дисковода. После установки программного обеспечения и перезапуска ПК запомните его IP-адрес, который будет указан на экране.

Настройка NAS сервера

Подключите NAS-сервер к своей сети. Откройте браузер вашего рабочего компьютера в этой сети и введите в адресной строке: http://»IP-адрес вашего NAS». В появившемся окне введите имя пользователя — admin и пароль — freenas. Перейдите в меню «Storage | Volumes | Create Volume» и выберите жесткие диски, которые будут образовывать RAID-массив. Далее активируйте файловую систему ZFS.

Можно использовать:

  • RAID 0 — дисковый массив повышенной производительности, без отказоустойчивости.
  • RAID 1 — зеркальный дисковый массив, имеет высокую надежность

Будем использовать RAID 1, как более надежный. Теперь нажмите «Add Volume» для форматирования ваших дисков в массив.

Доступ к NAS серверу в локальной сети

Чтобы открыть доступ к серверу перейдите в меню «Services | Control Services», задействуйте службы CIFS и настроить доступ в разделе «Sharing | Windows Shares» . Как и к любому сетевому носителю локальной сети доступ осуществляется с помощью Проводника Windows (например, \\NAS для доступа к корню или \\NAS\Photos для доступа к определенной расшаренной папке). Также можно сделать ярлыки, нажав на кнопку «Подключить сетевой диск» в окне Компьютер (Windows 7) под строкой проводника.

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

Немного информации об опасности использования RAID

RAID — это избыточный массив независимых жестких дисков. RAID — это не система хранения резервных копий, он лишь помогает повысить комфорт доступа к данным. RАID-система представляет собой набор HDD, объединенных в один массив. Если ваш жесткий диск вышел из строя его можно заменить, а после восстановить RAID и ваши данные будут с вами, исключая массив RAID 0.

Недостатки RAID 0

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

Недостатки RAID 1

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

Недостатки RAID 1 и RAID 5

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

Также неисправный RАID-контроллер может привести к выходу из строя HDD. В RAID-массивах изменения применяются к файлам и при случайном удалении или изменении данных, действия необратимы.

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

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

Так вот, давайте зададим себе первый вопрос - зачем вам нужен NAS? И окажется, что подавляющему большинству NAS не нужен вовсе. Да, они его могут использовать - если, к примеру, брат, cын и т.п. настроит и подарит. Но они не купят себе новый (и будут его настраивать), даже если старый исчезнет. Потребности большинства людей по просмотру кино удовлетворяются телевизором, обычным компьютером, в самом продвинутом случае - стриминговыми сервисами, iTunes и Play. По бекапу, если делают - USB диском и облачными сервисами. Так что оставим в стороне тех, кому обсуждаемая железка не нужна ни в каком виде.

А в остатке имеем многократно меньшее меньшинство, способное рассказать, зачем именно им NAS понадобился. Этот список заслуживает отдельного поста (который напишу следом), но сейчас полезнее обдумать этот список самостоятельно. Скорее всего, список окажется без экзотики, как у всех. Качать торренты, смотреть кино и слушать музыку через медиаплеер, умный телевизор или HTPC. Бекапить домашние компьютеры и мобильные устройства. Хранить домашние фотки. Тогда вам подойдёт и покупной и самосборный NAS. Если же экзотика будет в наличии (яркие примеры - виртуализация, использование конкретного программного обеспечения, не включённого в поставку готовых NAS) - то это веский аргумент в сторону самосбора. Не так чтобы это совсем нельзя на готовых NAS. Но если вам нужна виртуализация (дома!), то проблемы собрать и настроить NAS самому для вас не существует. Точно также, вроде бы обычные потребности, но по-крупному (не пара терабайт, а десять-двадцать, транскодирование видео на разные устройства и тп) поднимают требования к готовому NAS от простых домашних устройств до продвинутых, а то и корпоративных. Поднимают вместе с ценой.

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

PS Как видим - в самом выборе места для холивара нет. Он есть в психологических моментах, которые мы тут обсуждать не будем. За одним исключением. Практически всегда на старте происходит подмена понятий. И вместо сравнения яблок с яблоками, а ананасов с ананасами идёт сравнение яблок с ананасами.

Ещё несколько лет назад по железу самосборный NAS означал x86 платформу, а базовый готовый - ARM. Конечно, ARM жрёт меньше, меньше греется и много слабее по производительности. Но в последние годы появилась возможность собирать и на ARM. Например, под новый год я купил на авито за 2500+300+300+200 = 3300руб + блок питания + корпус + SD карту, нашёл в загашнике USB коробку для HDD, оставшуюся от покупки внешнего диска по цене меньше внутреннего той же модели. Поставил в коробку старый полуторатерабайтный диск, ставший не нужным в медиаплеере при наличии NAS. Настроил nas4free (с zfs!), включая робота для автоматической загрузки новых эпизодов сериалов и для передачи туда и обратно фоток и прочего через горячие папки, т.е. способом, понятным для домохозяйки. И отвёз родственникам в другой город. Аптайм подходит к 5 месяцам.

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

По софту 99.99% готовых NAS - это сборки на основе Linux. А в самосборе можете выбрать хоть Win, от Windows 7 Embedded standard, вычищенного от всякого хлама до Win Server 2016 Tech Preview, хоть *nix во всём многообразии, от Linux до FreeBSD и Solaris. Но есть ли это сравнительное преимущество? IMHO почти наверняка - нет. Потому, что если для вашего случая не хватает софтового функционала покупного NAS - у вас, скорее, необычные требования.

PPS UPD про вопрос, который наверняка зададите - а в каком варианте больше функционала?
IMHO - одинаково, причём что практически, что теоретически.

Практически: вам не нужен весь функционал, а лишь тот, что используете. И всё, кроме экзотики во всех вариантах есть.

Теоретически: на достаточное мощном железе и в готовых и в самосборных NAS поддерживается гипервизор. Соответственно в виртуалку на самосборе можно поставить Xpenology. (Это легально, тк оная есть компиляция кодов, опубликованных по GNU лицензии. Обратного, кстати, не утверждает и Synology.) И поиметь весь функционал, который есть в DCM и отсутствует в хост системе. Точно также - наоборот, на готовый NAS в виртуалку ставим что угодно - и вперёд. Так что вопрос лишь в железе, читай - про деньги. такой подход не решает, конечно, вопрос с некими облачными сервисами производителей NAS. Но если(!) они вам нужны - вряд ли среди них есть что-то уникальное настолько, что не найдётся замена. Т.е. снова про деньги. И невеликие.

Этот небольшой мануал поможет вам собрать полноценный NAS сервер из старого компьютера. Если вы готовы купить новые комплектующие и сделать свое файловое хранилище компактным и придать ему более современный вид и функциональность, то для вас больше подойдет статья , ну а любителям готовых решений я подготовил этот материал: . Теперь вернемся к старому ПК и оценим его возможности.

Требования к старому ПК

  • SATA разъемы на материнской плате, так как HDD c этим интерфейсом обладают наилучшим соотношением цена/производите-льность и имеют гораздо больший объем, в отличии от IDE винчес-теров.
  • Количество разъемов для подклю-чения жестких дисков на мате-ринской плате и свободных слотов в корпусе (возможность установить HDD в 5,25-дюймовые отсеки (специальные боксы)) Для сборки HTPC я использую такие боксы с 2-мя слотами под 2.5″ HDD.
  • При недостаточном количестве SATA-штекеров на блоке питания можно воспользоваться специальными переходниками IDE-SATA.

Процедура установки HDD в корпус

Чтобы установить 3,5-дюймовые жесткие диски в 5,25-дюймовые отсеки для оптических приводов поместите их в специальный бокс (см. рис).

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

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

Установка программного обеспечения

Для реализации серверного решения будем использовать ПО FreeNAS . Скачайте ISO-образ по ссылке для 32-битной или 64-битной системы и запишите на минимальной скорости на диск CD-R\RW. Если нет болванки можно установить на флешку, как сделать загрузочную флешку написано в . Временно подключите к ПК дисковод (который сняли ранее или воспользуйтесь USB приводом). Зайдите в BIOS и установите в разделе Boot загрузку с дисковода. После установки программного обеспечения и перезапуска ПК запомните его IP-адрес, который будет указан на экране.

Настройка NAS сервера

Подключите NAS-сервер к своей сети. Откройте браузер вашего рабочего компьютера в этой сети и введите в адресной строке: http://»IP-адрес вашего NAS». В появившемся окне введите имя пользователя — admin и пароль — freenas. Перейдите в меню «Storage | Volumes | Create Volume» и выберите жесткие диски, которые будут образовывать RAID-массив. Далее активируйте файловую систему ZFS.

Можно использовать:

  • RAID 0 — дисковый массив повышенной производительности, без отказоустойчивости.
  • RAID 1 — зеркальный дисковый массив, имеет высокую надежность

Будем использовать RAID 1, как более надежный. Теперь нажмите «Add Volume» для форматирования ваших дисков в массив.

Доступ к NAS серверу в локальной сети

Чтобы открыть доступ к серверу перейдите в меню «Services | Control Services», задействуйте службы CIFS и настроить доступ в разделе «Sharing | Windows Shares» . Как и к любому сетевому носителю локальной сети доступ осуществляется с помощью Проводника Windows (например, \\NAS для доступа к корню или \\NAS\Photos для доступа к определенной расшаренной папке). Также можно сделать ярлыки, нажав на кнопку «Подключить сетевой диск» в окне Компьютер (Windows 7) под строкой проводника.

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

Немного информации об опасности использования RAID

RAID — это избыточный массив независимых жестких дисков. RAID — это не система хранения резервных копий, он лишь помогает повысить комфорт доступа к данным. RАID-система представляет собой набор HDD, объединенных в один массив. Если ваш жесткий диск вышел из строя его можно заменить, а после восстановить RAID и ваши данные будут с вами, исключая массив RAID 0.

Недостатки RAID 0

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

Недостатки RAID 1

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

Недостатки RAID 1 и RAID 5

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

Также неисправный RАID-контроллер может привести к выходу из строя HDD. В RAID-массивах изменения применяются к файлам и при случайном удалении или изменении данных, действия необратимы.

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

В качестве основы для системы NAS мы выбрали корпус Prodigy от BitFenix. Он имеет шесть отсеков для установки 3,5-дюймовых жестких дисков. Компактная материнская плата ASRock E350M1 с интегрированным двуядерным центральным процессором обеспечивает достаточную производительность и предоставляет четыре разъема SATA для подключения жестких дисков.

Для использования шести дисков потребуется установить контроллерную плату с двумя портами SATA. С материнской платой совместимы два модуля ОЗУ Kingston HyperX по 4 Гбайт каждый. В качестве блока питания мы выбрали тихую и энергоэффективную модель be quiet Pure Power L8 мощностью 300 Вт, а жесткие диски рекомендуем тихие - такие как, например, WD Red (2 Тбайт).

2. Сборка компонентов

Если точно выполнять указания руководства пользователя к корпусу BitFenix Prodigy, то проблем при сборке компьютера возникнуть не должно. Следует учесть, что блок питания лучше всего установить вентиляционным отверстием вниз, а жесткие диски вставляются в корпус вместе с салазками разъемами вперед.

3. Подключение

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

4. Установка FreeNAS на флешку

Распакуйте на ПК с операционной системой Windows образ FreeNAS, а также бесплатную программу Win32 Disk Imager. Для этого воспользуйтесь архиватором 7-Zip, который умеет работать с форматом XZ.

Вставьте флеш-накопитель емкостью не менее 2 Гбайт и запустите Win32 Disk Imager. Откройте файл образа FreeNAS, щелкнув по значку папки и выбрав в пункте «Device» букву флеш-накопителя. Щелчок по «Write» запустит процесс записи образа на флешку. Извлеките накопитель из вашего компьютера и вставьте его в USB-порт собранного вами сетевого хранилища данных.

5. Первая загрузка NAS

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

В пункте «Advanced/Super IO Configuration» измените значение «Serial Port» на «Disabled» - в противном случае FreeNAS не запустится. После этого в пункте «Boot/Boot Option» выберите флеш-накопитель, сохраните настройки и перезагрузите NAS.

После перезагрузки вы увидите текстовое меню и IP-адрес, по которому можно будет получить доступ к веб-интерфейсу FreeNAS.

6. Базовые параметры

Откройте в браузере на своем компьютере веб-интерфейс. В пункте «System/Settings» можно изменить язык на русский. В пункте «Часовой пояс» выберите необходимые настройки. После щелчка по «Сохранить» и нажатия на клавишу F5 загрузится русскоязычный интерфейс.

7. Настройка дисков

Используя кнопку «Хранилище/Управление томами ZFS», можно выполнить распределение дискового пространства. Вначале введите «Название тома», затем щелкните по значку «+» рядом с «Доступные диски». После этого в разделе «Планировка тома» вы увидите подключенные диски. Перетащите круглую серебристую кнопку вверх и вправо, в результате все диски должны расположиться рядом друг с другом. Для максимальной отказоустойчивости выберите в меню «RaidZ2».

8. Создание учетной записи пользователя

В дереве папок щелкните по «Учетная запись/Пользователи/Добавить Пользователь». В пункте «Имя пользователя» и «Полное имя» введите «Guest», кликните рядом с «Домашний каталог» по «Просмотреть» и выберите созданный на предыдущем шаге том.

Активируйте опцию «Отключить вход по паролю» и подтвердите выбор щелчком по «ОК». Кликните вверху по значку «Хранилище» и по созданному ранее тому, затем внизу по значку ключа с диском «Изменение разрешений». В диалоговом окне выберите «Guest» рядом с «Владелец (Пользователь)» и «Владелец (Группа)» и щелкните по «Изменить».

9. Настройка CIFS

Затем создайте в пункте «Общие ресурсы/Windows (CIFS)» новый общий ресурс с любым названием и укажите созданный ранее том в качестве пути. Активируйте «Разрешить гостевой доступ» и «Только гостевой доступ».

Затем щелкните по кнопке «Службы» вверху и по значку гаечного ключа позади «CIFS». Выберите в строке «Модель аутентификации» параметр «Анонимный», введите имя NetBIOS и рабочей группы вашего ПК.

В качестве гостевой учетной записи выберите «Guest» и активируйте опцию «Разрешить пустой пароль» и «Включить домашние каталоги». В пункте «Домашние каталоги» выберите созданный ранее том.

В завершение активируйте CIFS с помощью расположенной вверху кнопки «Службы». Теперь общий сетевой ресурс будет отображаться в проводнике Windows по адресу «\\\».

Теги nas