Домашний сервер. Часть 4: Пробная сборка

Домашний сервер. Часть 4: Пробная сборка

Дата Автор 21 комментарий 41 767 просмотров

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

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

Аппаратная часть

Домашний сервер. Часть 4: Пробная сборка

Процессор: Intel Pentium E5300
Материнская плата: Asus P5QPL-AM
Оперативная память: 4 Гб DDR2
Дисковые накопители: 60 Гб (SSD), 320 Гб (HDD), 500 Гб (HDD)
Салазки для HDD: OImaster MR-6601
БП: Codegen Real Power 350W
Корпус: Zalman ZM-T2

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

Салазки OImaster для установки шести 2,5″ накопителей в один 5,25″ отсек прибыли ко мне год назад из интернет-магазина Cafago.com и я публиковал их обзор. Довольно экзотичная, но интересная железка.

Домашний сервер. Часть 4: Пробная сборка

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

Самый важный компонент

Самой важной частью при сборке домашнего сервера является блок питания. Качественный БП — это не только залог стабильной 24/7/365 работы, но и сведенный к минимуму шум.

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

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

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

Поэтому стоит переплатить за хороший БП, умеющий отключать свой кулер при низкой нагрузке. А то и вовсе взять безвентиляторный блок питания — стоят они дорого, но такая покупка будет служить очень долго. Из производителей безвентиляторных блоков питания могу отметить бренд SeaSonic.

Программная часть

В текущем своем виде мой домашний сервер работает на базе Ubuntu с несколькими дополнительно установленными пакетами.

Ubuntu

В качестве операционной системы я использую Ubuntu 18.04 LTS Server.

LTS означает долговременную поддержку — данный релиз будет получать обновления как минимум до 2023 года, а «серверность» в названии дистрибутива говорит об отсутствии графического интерфейса в составе. Немного экономии на потреблении дискового пространства и оперативной памяти.

Для установки Ubuntu нужно сделать следующее:

  1. Скачать дистрибутив с официального сайта
  2. Сделать из него загрузочную флешку при помощи приложений Rufus, Win32 Disk Imager, Etcher
  3. Загрузиться с флешки и следовать инструкциям инсталлятора, не забыв согласиться на установку сервера OpenSSH

Процесс установки очень прост и явно не нуждается в подробных инструкциях.

Webmin

Домашний сервер. Часть 4: Пробная сборка

Webmin — удобный веб-интерфейс для удаленного управления компьютерами на базе Linux. Обновлять пакеты, смотреть системную нагрузку, управлять жесткими дисками и работать с файлами на сервере через встроенный файловый менеджер — все это и многое другое доступно через Webmin. Конечно, все то же самое можно делать просто подключившись к серверу по SSH, но во многих случаях графический интерфейс окажется намного удобнее.

Я уже описывал процесс установки Webmin на примере Raspberry Pi 3 в отдельной статье, но продублирую необходимые команды без пояснений тут:

sudo apt update
sudo apt install software-properties-common apt-transport-https wget
wget -q http://www.webmin.com/jcameron-key.asc -O- | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] http://download.webmin.com/download/repository sarge contrib"
sudo apt install webmin

После этого можно будет управлять сервером с любого устройства в локальной сети, перейдя по ссылке https://ip-адрес-сервера:10000 в браузере.

Samba

Samba — пакет утилит для сетевого доступа к дискам по протоколу SMB/CIFS.

В рамках цикла статей по Raspberry Pi я уже публиковал инструкцию по установке и настройке Samba, информация в ней полностью актуальна на сегодняшний день.

В дополнение к ней опишу как подготовить к работе дисковые накопители сервера.

Если совместно с Raspberry Pi я использовали внешние диски, подключенные по USB и отформатированные в NTFS, то в случае сборки полноценного сервера с нативным SATA-интерфейсом правильнее будет сразу отформатировать диски в формате ext4.

В этом нам и поможет Webmin:

HardwarePartitions on Local DisksWipe PartitionsWipe and Re-LabelAdd primary partitionLinux EXT → Create

Там же:

Create Filesystem

Там же:

Mountext4/задаем имя раздела/ → Create

Nextcloud

Nextcloud — персональный облачный сервис, бесплатная и безопасная альтернатива всем «Дропбоксам», «Яндекс.Дискам» и прочим коммерческим облачным сервисам.

Установку и настройку Nextcloud я подробно описывал на примере Raspberry Pi 3. Инструкция актуальна.

Единственное — нужно выбирать свежий дистрибутив, он успел неоднократно обновиться с момента публикации той статьи.

Transmission

Домашний сервер. Часть 4: Пробная сборка

Transmission — популярный, легко настраиваемый и управляющийся по сети торрент-клиент для Linux.

За детальной инструкцией по его установке и настройке опять-таки отправляю читателей к своей статье про установку торрент-клиента на Raspberry Pi. Там все очень подробно расписано и до сих пор актуально.

Концепция

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

На SSD установлена система и Nextcloud со своим хранилищем. Остальная информация хранится на жестких дисках.

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

Понятие «инбокс» я позаимствовал из системы GTD Дэвида Аллена.

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

  1. Книги
  2. Музыка
  3. Фильмы
  4. Сериалы
  5. Фото
  6. Бэкапы
  7. Другие данные

Категория «Другие данные» — самая сложная из всех. Сюда попадает все, что вышло из инбокса, но не вошло в одну из первых шести категорий. По ходу увеличения количества файлов в данной категории они начинают делиться на разные подкатегории.

Допустим, 3 скачанных видеокурса по программированию на Python объединяются в папку «Курсы по Python», а десяток картинок с понравившимися мне интерьерными решениями  перемещаются в папку «Идеи для дома». И так далее.

Для понимания идеи очень рекомендую ознакомиться с системой GTD и «Методом ограниченного хаоса» Глеба Архангельского.

Упрощение

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

После сборки x86-компьютера в качестве домашнего сервера некоторые реализованные еще на Raspberry Pi 3 решения перекочевали на него. И от части из них я в итоге отказался в пользу большей простоты.

Электронная библиотека

Как было: Calibre + COPS

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

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

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

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

Как стало: структура из файлов и папок

Домашний сервер. Часть 4: Пробная сборка

Для каждого автора создается своя папка. Каждая книга переименовываются по шаблону «Автор — Серия /если есть/ — Порядковый номер в серии — Название».

Просто, но удобно и информативно. Для меня подобной структуры пока достаточно.

Из минусов — теперь нет собственного OPDS-каталога. Но используемая мной читалка на мобильных устройствах позволяет подключать SMB-шару в качестве библиотеки. Так что особо ничего не теряю.

Медиатека

Как было: Plex

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

Плюс я не нашел способов бороться в Plex’е с рассинхроном субтитров. Зарубежные сериалы по возможности я предпочитаю смотреть с родной звуковой дорожкой и русскими субтитрами — и это не блажь и не попытка продемонстрировать мнимую «элитарность», просто наши недоделанные переводчики иной раз гонят такую шизофреническую отсебятину, что невозможно понять сюжет по переведенным ими диалогам. А когда посмотришь пару сериалов в оригинале, то слушать унылые, монотонные, напрочь лишенные интонаций голоса деятелей из какой-нибудь NewStudio становится и вовсе тошнотворно.

В общем, зарубежные сериалы я уже давно смотрю с субтитрами. А подгружаемые отдельно субтитры нередко бывают плохо синхронизированными с видеорядом. При использовании какого-нибудь VLC или MPC это исправляется легко: нажатием определенной клавиатурной комбинации регулируется задержка субтитров (положительная или отрицательная).

В Plex же такого функционала нет. Либо я его не нашел.

Как стало: структура из файлов и папок

Домашний сервер. Часть 4: Пробная сборка

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

Менее изящно, чем интерфейс «Плекса» с постерами и подробной информацией о каждом фильме, но практически не требует времени на поддержание в рабочем состоянии.

Заметки, база знаний

Как было: Leanote / DokuWiki

Сперва я использовал Leanote на Raspberry Pi 3. Красивое, легкое и функциональное приложение, ничем не уступающее своим коммерческим аналогам (а Evernote так и вовсе превосходящее). Смущало лишь то, что в нем используется закрытый формат хранения данных, и в случае повреждения БД будет трудновато восстановить накопленную информацию.

Поэтому с Leanote я перешел на DokuWiki — легковесный Wiki-движок, хранящий всю информацию в файловой структуре.

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

И я бы так и продолжил пользоваться DokuWiki, если бы не покупка макбука.

Как стало: Apple Notes + Simplenote

Домашний сервер. Часть 4: Пробная сборка

Отказался от хранения данных на своем оборудовании в пользу «яблочной» экосистемы.

Apple Notes обладает отличным легковесным интерфейсом, моментально синхронизируется через iCloud со всеми macOS- и iOS-девайсами, а встроенная в macOS системная утилита Spotlight отлично индексирует добавленные заметки и выискивает нужные по ключевым словам за доли секунду.

Это намного удобнее всех self-hosted решений, которые я знаю. Поэтому в данный момент мой основной заметочник — Apple Notes.

Дома стоит (и довольно активно используется) десктоп на Windows. Иногда приходится синхронизировать информацию с ним. Для этой цели использую Simplenote.

Заключение

В таком виде мой домашний сервер работает уже долгое время и удовлетворяет всем потребностям.

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

Подробнее обо всем этом поговорим в следующих статьях цикла.

Домашний сервер. Часть 1: Вводная теория
Домашний сервер. Часть 2: Локальная сеть
Домашний сервер. Часть 3: Жесткие диски
Домашний сервер. Часть 4: Пробная сборка
Домашний сервер. Часть 5: Скорость Ethernet

Автор статьи:
Дмитрий
Руководитель отдела в IT-компании. Веду этот блог с 2013 года, пишу о гаджетах и домашней автоматизации, обозреваю одноплатные компьютеры, неспешно собираю «умный дом».

21 комментария на «Домашний сервер. Часть 4: Пробная сборка»

  1. Спасибо за Ваши статьи. Очень интересно было бы почитать про бэкапы. Буквально несколько дней назад собрал х86 конфигурацию вместо малинки.

  2. Очень хороший цикл статей, спасибо — написано понятно и по делу! Надеюсь ещё про настройку RAID почитать

  3. Спасибо за статьи, коротко и по делу. Напишите, пожалуйста, про шифрование HDD (с примерами софта), подключение и настройку дисков в RAID и бэкапы.

  4. Добрый день Дмитрий. Спасибо Вам за цикл статей про сборку и настройку домашнего сервера, много встречал статей про сервер и его настройку , Спасибо ВАМ !!

  5. Привет.
    Какое энергопотребление у твоей системы? У самого есть сервер собранный из старых комплектующих, все хорошо работает, но вот энергоэффективность ужасная. По замерам выходит 110 вт в час, это сам сервер + 2 роутера + малинка с внешним hdd. При цене 4.55 за киловат получается около 400р в месяц.

    Это дешевле аренды сервера сопоставимой мощности, но все равно дороговато :(

    • Замерил сейчас:
      45Вт в режиме простоя
      47-48Вт при обращении к информации на жестких дисках по сети
      60-67Вт при нагрузке на ЦП

      Это потребление только системного блока, роутер и коммутатор запитаны в другом месте и считать общее с ними энергопотребление не очень удобно.

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

  7. Дмитрий, отличная статья, но она ещё сильнее ввергла меня в раздумья: самосборный сервер или NAS. Всё-таки, QNAP или Synology получаются в несколько раз эффективнее применённого решения по энергопотреблению, а в наше время цена на электричество кусается. Несколько лет, и стоимость NAS будет компенсирована расходами на электричество. А сейчас на NAS через Docker можно поставить что угодно…
    Не думали об этом?

    • Задумывался когда перешел с описанной тут сборки на Rock Pi 4 с Penta SATA HAT (PCI-E контроллер, добавляющий 4x SATA и 1x eSATA). Энергопотребление действительно снизилось в 4 раза, стоимость эксплуатации уменьшилась на ~1000 рублей в год. Получается, что на экономии электричества железо будет окупаться не менее 7 лет. А если Synology покупать, то там сроки окупаемости в районе 10 лет окажутся наверное.

      Хотя, опять же, смотря что брать за отправную точку. Энергопотребление этой сборки на Pentium E5300 — 48 Вт при обращении к дискам, год ее работы обходится примерно в 1350 рублей. Если железо будет другим и исходное энергопотребление будет выше, то и цифры экономии при переходе на NAS будут выглядеть интереснее.

      Но Rock Pi в роли файлового сервера мне в любом случае нравится — миниатюрный, охлаждается пассивно, если в перспективе сменить HDD на SSD, то станет полностью бесшумным (сейчас диски при работе шум издают).

  8. Спасибо за замечательный цикл статей!
    Интересно было бы почитать продолжение.

  9. Здравствуйте. Спасибо за статьи. Тоже делаю сейчас домашний медиа сервер — бесшумный комп (всё в одном кроме игр).
    Уже купил 2 HDD по 10 тб (пока отдельно лежат) и в ожидании чебурнета потихоньку собираю данные :).
    Данные распределил так: книги, фото, музыку и дистрибутивы дублирую на оба диска, а фильмы и другое видео делю между дисками (например русские и не русские фильмы на разные диски, чтоб упростить поиск). Диски гелиевые, прохладные и быстрые, WD ( они же Хитачи).
    Так же собираюсь поставить SSD 256-1000 гб, для системы и чтоб архивные диски не крутить когда они не нужны.
    Мыслю о корпусе с пассивным охлаждением для процессора (АПУ AMD) и может тепловую трубку кину на HDD, по проекту пока так. Тепловые трубки можно самому изготовить или выписать с АЛИ. Если трубки получится уложить под правильным наклоном, то можно и без капиллярного эффекта делать.
    По возможности поставлю качественную звуковую карту, что нибудь типа Sound Blaster AE-7, если с ними решат проблемы… Есть очень хороший VMA 4К 32″ монитор Филипс и система microlab 5.1 h500d.

    Сеть 2,5 гбит, больше HDD всё равно не дают, но в 1гбит сейчас уже упираются. В сети ещё 1 комп, ноут и ТВ. Вот только маршрутизаторы пока дороговаты, придётся пересидеть на 1гбит и потом апгрейдится.
    Скорее всего поставлю Windows, говорят вроде для 7-ки решили вопрос со встроенным видео для AMD-шных процев. Можно и Linux Mint, она по интерфейсу Win XP напоминает, книги, фото, фильмы, музыку и интернет без разницы на чём смотреть и слушать, к тому же многие проги из Windows запускаются без проблем.
    Каталогизатор или базу данных или любую подобную хрень могу сам написать на Purebasic.
    Для поиска дубликатов файлов (любых) могу порекомендовать «dupdetector», есть русский интерфейс и ломан:).
    В теории, комп будет абсолютно бесшумным, потянет «Танки» и старые игры, видео на 4К и хороший звук, влезет в теплопакет до 150 ватт (под нагрузкой).
    Вот так.

    • Интересная задумка. Но по поводу охлаждения хочу отметить, что приличный кулер в тяжелом корпусе и так будет не слышен. Мой домашний десктоп собран в корпусе Fractal Design Define R6 с глухими шумоизолированными стенками (без стекла), кулер Noctua NH-U12A. Наиболее шумным элементом является вентилятор блока питания, затем идут корпусные вентиляторы (тоже Fractal Design, шли вместе с корпусом — далеко не самые качественные из того что можно найти на рынке). Процессорный же кулер с закрытыми стенками не слышно вообще. До Noctua был более дешевый башенный Zalman — он в этом корпусе тоже практически не шумел.

      • Спасибо Дмитрий, что так быстро ответили!
        На счёт кулеров: просто есть желание сделать без них. Есть куча одинаковых радиаторов от Пентиума-4, замощу ими всю заднюю или боковую стенку корпуса, возможно придётся под них проложить медную шину (кусок меди) в качестве теплораспределителя, или распределю непосредственно по ним тепловые трубки.
        Есть конечно готовые подобные корпуса, но хочется сделать самому, так как только я знаю чего мне нужно:).

        Как бы понимание и опыт в этих делах есть, лет 10 назад (когда вышли Phenom-II) изготовил для него водянку. Пользовался вот этой статьёй в 4-х частях:
        https://overclockers.ru/lab/show/21361/Klassika_ohlazhdeniya_Chast_4._Mikrokanalnost_teoriya_i_realnost
        Естественно водоблок сделал сам (микроканальный с напаянными рёбрами), помпу взял аквариумную, а радиатор под стол поставил от Тойоты Короны :). Залил антифриз, с тех пор так и работает, ничего не ломалось и не протекало. К тепловым трубкам видеокарты была припаяна внешняя медная трубка и после процессора антифриз идёт по этой самой трубке. Пару раз слышал как под нагрузкой работает штатный кулер видеокарты (от того что перегибался шланг охлаждения). В остальном норм.

        У меня много чего такого самодельного/доработанного есть: например, эта самая водянка; старый микроавтобус с охеренным мотором, который только спортивная легковушка в горку догнать может.
        Есть такой же лодочный мотор (мощность минимум удвоил), есть мебель собственного изготовления под конкретные нужды (например компьютерный стол, для компа и пайки, жалко фотку приложить нельзя).
        В своё время был видеомагнитофон с процессором разработанным и изготовленным мною :), самопальный радиоприёмник покруче любого фабричного, антены с усилителями для ТВ: Японию напрямую смотрел, без всяких спутников!
        Погиб во мне инженер, короче :).

  10. Спасибо за статьи! Не пробовали на свою сборку устанавливать torrserver для просмотра больших торрентов онлайн на телевизоре, хватает ли мощности?

    • Можно, если поднять VPN через SSTP-туннель. В роутерах Keenetic, например, он из коробки поддерживается и работает через кинетиковское облако KeenDNS. На другом оборудовании понадобится самостоятельно настроить DDNS и VPN-сервер, это сложнее и времязатратнее, но тоже реализуемо.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

[Хамство, оскорбления и попытки крауд-маркетинга будут удалены]