Тема интересна для тех, кто хочет организовать домашний сервер, на котором можно хранить свои личные данные: фото, музыку, фильмы, документы и т.д. Ограничения касаются только объемом жесткого диска. Но можно еще и управлять домашней сетью, а для особых параноиков еще и организовать домашнюю защиту от проникновения. Тут уже кому что захочется.
Вариант №1 — самый простой и банальный вариант, это пойти в магазин и купить NAS-сервер. Стоимость таких устройств самая разнообразная. Думаю каждый найдет для себя то что он хочет.
Вариант №2 может подойти тем, у кого есть дома в углу старое железо, которое выбросить жалко и можно найти рабочие устройства. С этого можно собрать рабочий системный блок и, при необходимости докупить жесткие диски.
Вариант №3 — вот с этого момента я постараюсь рассказать тему более малого размера сервера. А сервер будет строить на одноплатниках.
Данная статья не претендует на уникальность и описывает только мой личный опыт. И так — поехали!
На что можно посмотреть
Первым делом нужно выбрать плату. Таких плат и производителей уж очень много на сегодняшний день. Тут есть практически на любой вкус и цвет процессоры. С размером ОЗУ тоже все достаточно понятно: от 512МБ и до 8ГБ (то что я видел на картинках).
Очень многие одноплатники имеют слот под SD-карту, но очень мало имеют SATA-разъемы. SD-карты нужны, чтобы установить первоначальную операционную систему и запустить ее уже в рабочем режиме. Некоторые из моделей имеют «на борту» у себя eMMC-микросхему, а которую можно «перенести» установленную ОС, тем самым избавиться от «флешки».
Что касается носителей (HDD/SDD), то в этом плане немного сложнее. Здесь можно использовать 3 варианта:
- Плату уже с распаянным SATA-разъемом;
- Плату расширения с SATA-разъемом;
- Переходник USB->SATA.
Собственно разницы особо никакой, потому что даже первый вариант в большинстве случаев является переходником с USB на SATA, только уже сделанный для удобства.
Я в 2018 году долго выбирал что бы взять подешевле. В итоге остановился на Orange Pi Zero Plus с 512МБ. Такая себе вполне вменяемая плата, но на ней отсутствует SATA. Чтобы подключить диск нужна плата расширения либо переходник. Вот как раз у производителя есть такая плата расширения, но она все так же является переходником с USB.
Что касается ограничений, то это USB 2.0, так что от него ничего производительного ждать не стоит (если вы надеетесь на сотни мегабайт в секунду). В общем про SSD можно забыть. А что по скорости HDD, то я проверял последовательность чтения и записи и она не превышает 40МБ/с, так что жесткий диск тоже напрягаться не будет.
Электричество
Вот тут нас поджидает небольшой облом… Дело в том что у этого одноплатника есть питание через OTG, но куча всяких блоков питания не хочется подключать. Это придется удлинитель куда-то засовывать, да и вообще, не по фэншую это все. А так как я еще заказывал Orange Pi Prime на 2ГБ, то там уже не было питание через OTG, а присутствует разъем под блок питания. Кстати, для обеих плат рекомендован БП на 2А при 5В. А вот в NAS-расширении присутсвтует ровно такой же разъем.
Ну что же. Пришел час старого доброго БП от стационарника. Подключим его, ибо в нем хватает всего и вся. Мощность его всего 350Вт, но даже этого хватает с головой.
Пошел я в Китай-магазин и заказал 10шт разъемов питания 24pin под БП и решил еще прикупить разъемов USB пачкой (они так же пригодятся). Пришло, хорошо. Теперь нужно все это распаять. Так как у БП формата ATX питание включается только при определенных условиях, то нужно их выполнить. Вот распиновка разъема (ищется на раз):
Чтобы БП заработал нужно замкнуть PS-ON и Ground обычной скрепкой. И вот тут нужно идти в радио-магазин за кнопкой с фиксацией. Заодно прикупить штекеров для компов.
Теперь берем разъем и припаиваем проводами штекеры к Ground и +5V. К ним же можно припаять USB-разъемы. Можно подключить телефончик для зарядки или еще какую-нибудь штуку, типа ионизатора воздуха. Найти применение можно.
После сборки подключаем, проверяем — работает!
Операционная система
Сразу скажу: про форточки можно забыть! Если взять практически любой роутер или тот же магазинный NAS-сервер, то там стоит Linux, так что при ручной настройки придется поковыряться. Я не буду здесь описывать готовые решения «поставил и играй». Здесь мы будем ставить все изнутри ручками.
Для начала нужно выбрать и установить какой-нибудь дистрибутив. Тут кому что нравится. Мне лично понравился Armbian на основе Debian. Загружаем и устанавливаем. Не скажу как это сделать в Windows (не пользуюсь), но вот в Linux это достаточно просто. Распаковываем архив и выполняем команду:
dd of=/dev/sd<буква вставленной флешки> if=<путь и имя файла образа> bs=1M status=progress
Мне нравится видеть сколько скопировано, по этому и указан статус.
Ждем окончания и все готово.
Если есть выход HDMI, то подключаем монитор и настраиваем (статей в интернете полно). Если нету, то вот тут нужен USB->UAR, который тоже нужно заблаговременно приобрести. Подключать нужно Rx->Tx, Tx->Rx, GND->GND. Подключаем, запускаем, открываем последовательный терминал типа Telnet, Putty, Screen (Linux), подключаемся и точно так же делаем первоначальную настройку и настраиваем сеть.
Связь
Так как это бездисплейные домашний серверы и мы хотим чтобы они работали по сети, то их нужно как-то подключить в домашнюю локальную сеть. У меня в закромах был Коммутатор 100Tx-Base. Для моих задач мне хватает, тем более на текущий момент у меня скорости чтения с диска не превышает 15МБ/с, а по сети предел 100МБит/с или примерно 10МБ/с. 5 портов на текущий момент хватает (2 платы, TV-Box и порт от роутера). Wi-Fi на платах я не использую.
Барахло на коленке
Как-то грустно это все валяется на полу. Я вижу 3 варианта:
- Пусть оно так и валяется пока кто-нибудь не убьется или пока домашние не вышвырнут из жилплощади;
- Старый системный корпус;
- Сделать свой корпус с шахматами и пивом.
3-й вариант ну уж очень вкусно выглядит, так как можно придумать все что угодно, но… Да чего тут говорить, просто лень что-то придумывать. Тут либо из фанеры лобзиком вырезать, либо из металла/оргстекла/чего-то лепить, либо разработать корпус и напечатать. Кстати если есть 3D-принтер то это не должно быть проблемой, а если нет, то, наверно же, можно найти у кого он есть. Главное разработать проект печати.
В итоге я решил сделать из старого корпуса, а к 3D-печати может потом вернусь и реализую.
Для начала бежим в строительный магазин и покупаем пакеты винтов М3, стоечек того же формата и шайбы под все это (лишним прям совсем не будет). После все платы прикручиваем внутри корпуса с помощью молотка, так как расстояния отверстий на плате и на задней стенке под материнскую плату не совпадают (тут меня долго бомбит из-за 0,5мм разброса) и подключаем все провода.
Итоги
Если посчитать по стоимости, то обошлась мне эта сборка около 10000 рублей вместе с диском на 1ТБ, 2-мя MicroSD на 16ГБ и двумя одноплатниками плюс рассыпуха по мелочи. По времени дня 4 с установкой ОС, настройкой сетевых дисков, отладкой работы и объяснением домочадцам как это работает и на кой оно надо.