Давно было в мечтах собрать домашний сервачок торренты качать, да как файловую помойку использовать.
Задачи перед сервером.
Качать, раздавать и хранить файлы. Получать к ним доступ по сети со всех устройств дома (два смарта, планшет, ПК с Ubuntu, ноут с Win10, телевизор с ChromeCast (у самого ТВ есть и поддержка DLNA). В основном сейчас интересует доступ со смарта (пока живем в однокомнатной фильмы смотрим на 6′ ZenFone ночью) и доступ с ТВ, пока через ChromeCast (лень тянуть кабель для DLNA)
Железо
Когда-то давно был у меня собран из старых железок (PentiumIII, 384Мб DDR) сервачок на ОС FreeNAS. Умер он так же давно (сгорела материнская плата).
На этот раз рассматривал несколько вариантов. В начале думал собрать полноценный мини ПК, но курс доллара убил идею. Потом думал собрать на PassberyPi или подобном. Но тут мне повезло, и в моих руках оказался старенький нетбук Lenovo S9 (по бартеру достался). Внутри процессор Atom N270 1600 МГц, 1 ядро, 1 Гб DDR2 667 МГц, экран 8,9′, WinXP Home на борту. Для наших целей хватит. Один минус — платформа x86, но для поставленных задач не критично. Возможно скоро Ubuntu Server будет только под x64. Ну и ладно, ведь главная идеология linux — если работает, то не трогай.
Покупаем жесткий диск. Размер 2,5′ (далее по тексту именно об ноутбучных HDD) Выбирал долго. Мне больше нравятся диски от WD. К сожалению модели серии Green (отличия — большой объем и тихость) толстые (15 мм против стандартных для ноутбуков 9 мм). Серия Red (диски для NAS) была бы оптимальной, но в наличии не было. Пришлось брать стандартный WD Blue на 1Tb. Купили, вставили.
Софт
Затираем стоявшую WinXP установкой Ubuntu Server 14.04. Стандартная установка. Сразу сталкиваемся с проблемой — Wi-Fi не взлетел по умолчанию. Втыкаем сеть по кабелю. Об этом чуть позже. Ставим Webmin для управления. Устанавливаем торрент качалку работающую службой — transmission-daemon, настраиваем под себя (более подробную настройку гуглите). Устанавливаем Samba для доступа с windows ПК. Расшариваем одну папку. Я настроил качалку подхватывать от туда torrent-файлы, запускать закачку в эту же папку, torrent-файлы удалять после добавления на закачку.
Столкнулся с проблемой. Веб-морды Transmission и Webmin не открываются по имени ПК (хоста) только по IP. Потому настроил статичный IP и зарезервировал его в маршрутизаторе. Сетевая же папка нормально открывается по имени хоста.
Wi-Fi. Хотелось бы поставить сервачок куда подальше. Он не особо шумит, но в однокомнатной квартире ночью слышно чуток. Внутри у нетбука чип BCM4313. Ubuntu его по умолчанию не видит. Пробовал установить следующие пакеты — bcmwl-kernel-source и firmware-b43-installer (каждый по отдельности с затиркой другого). С ним Wi-Fi работает. НО. Но есть огромное НО. Или сам вай-фай в ноуте слабый, или слаб маршрутизатор (когда через него одно устройство берет с другого по Wi-Fi) но просмотр видео очень тормозит. Потому, пока нет под рукой usb Wi-Fi адаптера для проверки, оставляем подключение по LAN.
Доступ с устройств
Управление серваком — через веб-морды Webmin и Transmission. Плюс ssh через стандартный терминал Ubuntu на ПК. Так же есть ssh и Transmission клиенты для андроида.
Доступ к файлам — Все PCобразные устройства и смарты видят файлы через стандартные файловые менеджеры. На смартфоне смотрим через BSPlayer — он хорош по скорости и есть встроенная поддержка сети.
Но что делать с ТВ? Можно поднять DLNA сервер. Но тогда надо тянуть сетевой кабель через всю комнату. В ТВ вставлен брелок ChromeCast, давайте заюзаем его, за одно и увеличим функциональность сервера.
Plex Media Server
Ставим Plex Media Server. Что получаем:
- Медиа-сервер подхватывающий видео и аудио файлы на сервере. Сам подбирает к ним картинки, описание, даже русские названия.
- Доступ через веб-морду.
- Есть перекодирование на лету.
- Есть софтина для смартфона. Можно просматривать коллекцию, но просмотр видео только 1 минуты, за большее надо заплатить.
- Есть DLNA сервер.
- И самое главное — из веб-интерфейса и мобильного приложения можно послать просмотр на ChromeCast.
В итоге получили трансляцию на ТВ через CromeCast + полноценный медиа-сервер.
Что можно было сделать лучше и что еще можно сделать.
Во первых можно было поставить OC на отдельный носитель, например SD карту. И надежнее и быстрее.
Во вторых — поставить что-нибудь для синхронизации со смартфонами. Есть пара вариантов. Один — синхронизация по p2p протоколам. Но на смартфоне у меня Yota, а она режет p2p. Другой вариант — поставит OwnCloud, но тогда надо покупать выделенный IP.
Так же думаю потестить Wi-Fi адаптеры, может будет нормально работать. Можете посоветовать хорошую модельку дружащую с UServer’ом