Navigation Menu
Mac OS X environment + Intel NUC (NUC5i7RYH) as NAS + Webmin + Samba File Server + TimeMachine + Torrent Client(transmission)

Mac OS X environment + Intel NUC (NUC5i7RYH) as NAS + Webmin + Samba File Server + TimeMachine + Torrent Client(transmission)

Окт 8, 2015 в Моя железяка | 1 коммент.

 

Данная статья рассказывает о том как создать мобильный/портативный NAS, с поддержкой эко-системы под OSX, на базе Intel NUC NUC5i7RYH.

Всю эту «кухню» я затеял потому как путешествуя по Азии я столкнулся с проблемой отсутствия высокоскоростной услуги Интернет, тем более с каналом в мир. А имея под рукой свой NAS сервер, судя оп опыту, множество проблем решается.

В качестве своего первого NAS я взял QNAP TS-220, который, в целом, справлялся со своими задачами, но был огромен (по габаритам). Возить с собой такую коробку доставляло  недостатки. Я долго искал ему замену и однажды уважаемый s0rr0w обратил моё внимание на мини-пк Intel NUC. Радости моей не было предела. Это было именно то что я искал. Оставалось дело за малым — собрать полноценную рабочую конфигурацию, настроить систему один раз, забыть и пользоваться.

В конечном итоге данный сервер будет поддерживать следующие задачи:

  • Time Machine — система резервного копирования от Apple Inc.
  • Samba file server — пакет программ, которые позволяют обращаться к сетевым дискам и принтерам на различных операционных системах по протоколу SMB/CIFS.
  • Web min — это программный комплекс, позволяющий администрировать операционную систему через веб-интерфейс
  • Torrent-client (с автоматической сихронизацией торент-файлов через Dropbox)
  • Резервное копирование OS сервера путем использования rsync (с возможностями Time Machine) на флешку
  • Резервное копирование OS сервера в облако при помощи Yandex.Disk
  • Резервное копирование данных пользователя в Google Drive при помощи Rclone
  • MiniDLNA и Serviio в качестве DLNA-сервера

Железо и конфигурация

Путем проб и ошибок в течении 2-3х месяцев я остановился на следующей конфигурации

Установка Ubuntu Server на Intel NUC

Изначально на сервер была установлена FreeNas, но по причине слишком завышенных для него рекомендуемых тех. характеристик вскоре было решено поднять все самостоятельно на базе Ubutu Server. А за одно получить опыт в администрировании серверов на простом уровне.

Ссылки по теме:

Я кратко опишу процесс установки систем на сервер скриншотами. Данный этап, как правило, не должен вызвать вопросов у любого кто хоть пару раз ставил Ubuntu. Если же нет — думаю раза с 3-4го всё получится :)

На заметку: я не включал шифрование и не включал автоматические обновления так как у меня в последствии присутствовали те или иные проблемы.

Поехали…

Готово. Система установлена.

Настройка WiFi

Если вам настраивать беспроводную сеть не требуется — пропустите этот шаг.

Первым делом надо узнать к какому IP-адресу подключён сервер, для этого вводим логин и пароль а потом выполняем команду  $ ifconfig

IMG_6028

И так мы узнали IP-адрес к которому подключился NUC по локальной сети. В данном случае роутер присвоил IP-адрес  192.168.1.110

Далее через терминал подключаемся к нему.

Всё, мы подключены.

Подключение сервера к сети WiFi

Так как предполагается что сервер будет подключен к сети не только по Eth а так же и по WiFi, настроим автоматическое подключение.

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

На заметку: в качестве консольного редактора в данной статье используется vi. Если нет опыта работы с ним то статьи Редактор Vi/Vim и 10 самых нужных команд vi заполнят этот пробел.

Файл будет содержать, скорее всего, следующие строки:

Вносим изменения

Вместо <your_router> надо вставить имя вашей сети. Вместо <your_wpa_key> пароль к ней. Регистр имеет значение!

Перезапускаем сеть и сервер следующей командой и выдергиваем шнур локальной сети после запуска.

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

Обновляем ПО сервера

После установки системы первым делом давай обновим её следующими командами и перезагрузим:

Работа с дисками

Монтируем внутренний HDD

Ссылки по теме:

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

На заметку: на этом винте уже за ранее был создан раздел в формате ext4, который занимает 100% доступного пространства.

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

Запустим пару команд и узнаем дополнительную информацию об установленных винтах:

Теперь мы знаем где размещен внутренний винт и его UUID: /dev/sda1: UUID="6aac2259-2521-48b2-9f67-19e16c4b115c" TYPE="ext4"

Далее выполняем следующую команду, редактируем файл и монтируем винт:

Изначально файл будет содержать приблизительно следующие данные:

Теперь добавим в конец следующую строку:

Обращаю внимание на UUID — это значение нам выдала команда $ sudo blkid  немного ранее

Сохраняемся и выходим из файла. Создаём путь для монтирования, перезагружаемся:

После перезагрузки проверяем:

Все правильно — пока нет прав на доступ к данному разделу, но попробуем так:

Винт примонтировался как нам надо. Немного позже мы настроим права на его использование для TimeMachine.

Подключение внешнего USB 3.0 HDD, работа с разделами

Ссылки по теме:

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

В данном случае меня интересует: “sdc”.

Предупреждение: в следствии следующих операций все данные на винте будут уничтожены!

Выполняем:

Далее мы создаем новый GPT disklabel, то есть таблицу разделов (partition table) следующей командой:

Теперь установим размер раздела:

Выходим с сохранением изменений:

Осталось только отформатировать раздел, но перепроверим что у нас сейчас светится в системе посе наших действий:

Всё отлично форматируем запуском следующей команды и дожидаемся её окончания:

Отлично, готово! :) Теперь осталось лишь создать путь для монтированная и добавит запись в /etc/fstab .

Давай в начале узнаем UUID внешнего винта:

Создаем путь и редактируем файл конфигурации:

И добавляем в конец еще пару строк:

Теперь выставим права. Я буду использовать группу “users” в качестве той, которой разрешены чтение\запись на подключаемые внешние носители.

После чего сохраняемся и перезагружаемся. Всё готово.

Установка Webmin

Ссылки по теме:

По первой ссылке более чем детально рассказано как поставить Webmin — это графический web интерфейс для управления сервером на базе Unix подобных операционных систем. То есть установив Webmin вы можете удалённо конфигурировать и управлять Linux сервер в удобном графическом интерфейсе на русском языке через браузер.

Нам лишь следует выполнить последовательность команд согласно документации.

После установки в браузере переходим по адресу: https://IP_address:10000/

Login to Webmin 2015-10-03 18-25-26

Потом вводим логин и пароль нашего пользователя и попадаем уже в саму админку.

Webmin 1.760 on nuc (Ubuntu Linux 14.04.3) 2015-10-04 13-56-35

Из коробки родная тема оставляет желать лучшего, по этому мы сразу переключаемся на “Authentic Theme” и сохраняем.

Webmin 1.760 на nuc (Ubuntu Linux 14.04.3) 2015-10-04 13-57-59

После применения настроек загрузится новая тема.

Настройка резервного копирования Ubuntu на базе rsync

Не мало важным будет иметь под рукой бэкапы самой системы, которую можно будет восстановить в момент отказа. В поисках максимально простого и надежного решения Делаем свою Time Machine для Линукса которую я использовал в качестве основы.

Для начала создай скрипт в директории

Теперь добавим скрипт

Обращаю внимание на строку  DST=/mnt/backup/Backups.backupdb/atv . По пути   /mnt/backup  примонтирована флешка usb 3.0 на которую будут сохранятся данные.

Сохраняем и делаем файл выполняемым  $ chmod +x ~/backupsystem.sh

Создаем путь куда будут складываться бэкапы командой   $ sudo mkdir -p /mnt/backup/Backups.backupdb/atv

Далее открываем Webmin в браузере и идём: Система > Расписание заданий cron

Webmin 1.770 на nuc (Ubuntu Linux 14.04.3) 2015-10-21 18-51-37

Вверху нажимаем на кнопку «Создать новое задание» и на открывшейся странице заполняем по примеру

Webmin 1.770 на nuc (Ubuntu Linux 14.04.3) 2015-10-21 18-53-44

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

Что бы проверить работоспособность вернемся в задание и нажмём кнопку внизу страницы «Выполнить задание сейчас». Откроется новая страница и выведет лог (привожу лишь начало и окончание):

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

Настройка резервного копирования Ubuntu в Yandex.Disk

Ссылки по теме:

Уверенности в том что флешка не подведёт в самый не подходящий момент у меня нет. Пробежавшись по интернетам я наткнулся на сервис Яндекс.Диск который даёт 10ГБ из коробки, что в целом более чем достаточно для того что бы хранить бекап системы. А за каких-то ~$30 можно получить целый 1ТБ (на момент написания этой части статьи). Ну что же, приступим…

Установка клиента Yandex.Disk

Вариантов установки клиента много, я в данной статье буду рассматривать установку через apt-get. Добавляем репозитарий в списки командой

Добавляем в открывшемся файле следующую строку, сохраняемся, выходим

Затем импортируем GPG-ключ

Потом обновляемся и устанавливаем Yandex.Disk

На последней строке  Using /usr/bin/wgel в моём случае система задумалась минут на 5, не спешим — дожидаемся окончания.

 

Настройка клиента Yandx.Disk

Теперь выполним следующую команду и настроем клиент

пока что с этим проблемы — продолжение следует…

Настройка Samba

Ссылки по теме (ручная настройка):

Права и пользователи

Давай используем Webmin что бы настроить шару. Идем по адресу https://192.168.1.101:10000/?dashboard (IP-адрес подставь свой), вводим логин и пароль своей учетной записи.

Webmin 1.770 на nuc (Ubuntu Linux 14.04.3) 2015-10-05 13-57-27

Идём “Система > Пользователи и группы”, далее на таб “Локальный группы”. Находим группу “users” и кликаем в неё. Находим своего пользователя, добавляем его в группу и сохраняем.

Создание нового файлового ресурса

Для начала давай создадим папку «data» (и установим на неё права), которую мы будем шарить пользователям, командами:

Теперь вернёмся в Webmin. Открываем страницу «Службы > Файл-сервер Samba» и жмём на кнопку «Создание нового файлового ресурса»:

Webmin 1.770 на nuc (Ubuntu Linux 14.04.3) 2015-10-05 14-05-47

Теперь заполним поля и нажмем «Создать» и введём настройки как на скрине:

Webmin 1.770 на nuc (Ubuntu Linux 14.04.3) 2015-10-05 14-44-29

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

Webmin 1.770 на nuc (Ubuntu Linux 14.04.3) 2015-10-05 14-50-01

Сохраняем, ждём около минуты, идем в «Funder > Go > Connect to Server», вбиваем адрес ресурса:

Connect to Server 2015-10-05 14-24-12

Система запросит логин\пароль, вводим, потом выбираем из списка «SMB NUC Share» и всё.

Transmission + Dropbox

Ссылки по теме:

Установка достаточно простая, так как надо повторить последовательность действий 1:1, как сказано в документации. Но на всякий случай я расскажу как это сделать.

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

Установка Transmission

Подключаемся к серверу по ssh своим пользователем, вводим логин\пароль:

Далее устанавливаем демон

Конфигурация Transmission

Останавливаем сервис

Переносим папку с основными файлами в домашнюю папку пользователя

И в строке CONFIG_DIR прописываем путь до папки с файлами настройки.

Что бы включить логи замените строку «OPTIONS» на следующую

Принуждаем работать службу от нашего пользователя

Меняем в строке setuid debian-transmission и setgid debian-transmission на имя своего пользователя

Настройка settings.json

Пример файла настроек с установленными путями

Сохраняем и выходим.

Установка DropBox

Ссылки по теме:

Переходим в домашний каталог

Качаем архив

Потом распаковываем и запускаем Dropbox

Сервис запустится и выдаст сообщение с ссылкой, по которой надо будет перейти, что бы разрешить этому устройству синхронизацию с сервером Dropbox

После того как будет осуществлен переход по выданной ссылке в терминале сообщат:

И начнётся синхронизация с сервером. Не будем её дожидаться и прервём комбинацией клавиш ctrl+c .

Настройка Daemon для Dropbox и как заставить Dropbox загружайся с системой

Выполнив команду  $ sudo vi /etc/init.d/dropbox откроется редактор в который вставим следующий код

Обращаем внимание на строку  DROPBOX_USERS="user1 user2" в которой вместо «user1 user2» следует указать своего пользователя в Ubuntu. Сохраняем файл и выходим.

Теперь сделаем скрипт выполняемым командой

А так же добавим в автозагрузку системой

Теперь что бы управлять сервисом достаточно будет выполнить команду

Переносим папку Dropbox в другое место

В начале следует остановить службу

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

Переносим папку Dropbox по этому пути:

И создадим симлинк на неё

Запускаем службу Dropbox и проверяем

А так же запускаем Transmission

Всё готово. Теперь как только в  /Dropbox/Torrents/  будет добавлен торрент-файл, он будет синхронизирован с сервером Dropbox а потом его сольет NUC. После чего демон Transmission автоматический его подхватит и запустит закачку.

Веб-интерфейс Transmission доступен по адресу: http://192.168.1.101:9091/transmission/web/ где 192.168.1.101 — это IP-адрес NUC, который ему раздал роутер.

Если в настройках логин и пароль не был изменён то по умолчанию пара  transmission:transmission

На заметку:

Transmission Remote GUI — Удобный интерфейс для удалённого управления демоном Transmission.

Time Machine

Ссылки по теме:

После обновления до 16.04 пришлось переустановить, по документации Install Netatalk 3.1.10 on Ubuntu 16.04 Xenial

Установка Git

Git нам понадобится что бы слить последнюю версию Netatalk — это бесплатная open-source реализация протокола Apple Filling Protocol, которая и будет отвечать за то, чтобы Time Machine могла бэкапиться сразу на сервер.

Выполняем в терминале

Потом переходим в домашний каталог и клонившем последнюю версию netatalk

Теперь перейдем в директорию с netatalk и спросим у git какая последняя доступная версия

Последняя версия на момент написания данной статьи  netatalk-3-1-7 , переключимся же на неё

Установка недостающих пакетов

Теперь опираясь на статью Install Netatalk 3.1.7 on Ubuntu 14.10 Utopic установим требуемые пакеты.

В статье сказано:

Install the following packages by «sudo apt-get install«.

  • build-essential
  • libevent-dev (used by netatalk(8))
  • libssl-dev (DHX auth aka DHCAST128)
  • libgcrypt11-dev (DHX2 auth)
  • libkrb5-dev (Kerberos V auth)
  • libpam0g-dev (PAM)
  • libwrap0-dev (TCP Wrapper)
  • libdb-dev (dbd CNID backend)
  • libtdb-dev (tdb CNID backend)
  • libmysqlclient-dev (mysql CNID backend)
  • libavahi-client-dev (Bonjour support)
  • libacl1-dev (ACL support)
  • libldap2-dev (enhanced ACL support)
  • libcrack2-dev (password ckeck)
  • systemtap-sdt-dev (DTrace-compatible)
  • libdbus-1-dev (used by afpstats command)
  • libdbus-glib-1-dev (used by afpstats command)
  • libglib2.0-dev (used by afpstats command)
  • tracker (used for spotlight indexing)
  • libtracker-sparql-1.0-dev (used for spotlight indexing) (version number may differ)
  • libtracker-miner-1.0-dev (used for spotlight indexing) (version number may differ)

If tracker’s version is unknown, you can know using command «aptitude search tracker«.

If libavahi-compat-libdnssd-dev package is installed, remove it, in order to avoid conflict between Avahi and mDNSResponder.

В начале узнаем установлен ли пакет  libavahi-compat-libdnssd-dev

Что говорит о том что пакет не установлен. Теперь узнаем какая последняя версия пакетов  libtracker-sparql-1.0-dev libtracker-miner-1.0-dev

Спустя какое-то время система выдаст список, я же приведу лишь его часть для примера

На текущий момент версия 0.16 у обоих пакетов. Запускаем установку

и ждём её завершения. Далее если мы не в папке netatalk то перейдем в неё и запустим конфигурирование

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

За тем выполняем

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

Следующим шагом мы установим avahi-daemon а потом займёмся настройкой TM

Настройка Time Machine

Настройки следует вносить редактируя файл по адресу  /usr/local/etc/afp.conf

Который изначально содержит

Отдаем в распоряжении TM весь внутренний диск и изменяем общие настройки

Если в вашем случае вам не требуется отдавать под TM всё пространство жесткого диска то параметром  # vol size limit = 1000000  установите требующее значение.

vol size limit = size in MiB (V)Useful for Time Machine: limits the reported volume size, thus preventing Time Machine from using the whole real disk space for backup. Example: «vol size limit = 1000» would limit the reported disk space to 1 GB. IMPORTANT: This is an approximated calculation taking into account the contents of Time Machine sparsebundle images. Therefor you MUST NOT use this volume to store other content when using this option, because it would NOT be accounted. The calculation works by reading the band size from the Info.plist XML file of the sparsebundle, reading the bands/ directory counting the number of band files, and then multiplying one with the other.

Сохраняем настройки, выполняем

Добавляем оба демона в автозагрузку

Установка прав доступа

Теперь на всякий случай установим права на директорию куда будут сохранятся бэкапы TM

Теперь добавим своего пользователя в группу users  (если его там нет)

И проверим, на всякий случай, что пользователь есть в группе

И перезагружаемся

Настройка TM на Mac

Как правило данный шаг не стоит описывать, но всё же.

Monosnap 2015-10-08 11-04-27

Идём Menu > System Preferences > Time Machine > Select Backup Disk... и выбираем диск для создания бекапов

Monosnap 2015-10-08 11-09-23

Потом вводим логин и пароль своей учетной записи и жмем «Connect»

Time Machine 2015-10-08 11-09-57

Подключение и настройка TM завершена.

На заметку: для того что бы создать расписание когда делать бэкапы требуется выключить TM (на скрине выше выбрать «OFF») и воспользоваться TimeMachineEditor

Резервное копирование данных в Google Drive

Ссылки по теме

Rclone — программа написана на языке Go. Можно воспользоватся готовым инсталлером а можно установить сам Go и потом уже rclone (наш выбор).

Установка Go

Для начала поставим сам Go (ожидаются проблемы в установке, советую пробежаться глазами до конца раздела)

Установка Rclone при помощи Go

Выполним команду

если система выдаёт ошибку следующего содержимого

значит не определена  $GOPATH — это директория куда Go скачивает пакеты и делает билды. Решим данную проблему следующей командой и повторим установку

Если после выполнения последней команды система выдала ошибки

значит что-то пошло не так :( Интернет говорит что надо обновить Go до версии 1.4, но его не в официальных источниках. Зато мне попалась под руку страничка с другим источником golang 1.4

И так, создаём файл

добавляем источники

и сохраняем. Далее добавляем ключи (ключ взят от сюда Signing key)

запускаем обновление списков и установку новой версии Go 1.4. За одно проверим установлению версию

Отлично, установлена версия 1.4, что нам и нужно. Теперь попробуем установить Rclone ещё раз

Настройка Rclone

И так — мы успешно установили Go и Rclone (который установился по пути /home/user_name/gopath/ ). Теперь наша задача настроить их.

Следующие изменения мы добавим в ~/.bash_profile. Создадим его, если его еще нет, командой

далее открываем файл редактором

и добавляем в конец

сохраняемся и выходим. Возможно потребуется переподключится к серверу по ssh что бы изменений «подтянулись», затем проверяем:

А теперь приступим непосредственно к настройке Rclone

Далее система будет задавать вопросы и я буду приводить их в качестве примера

Так как мы запускаем сервис впервые у нас нет подключений — создадим его введя  n и нажав унтер (дальше все шаги одним махом)

Система выдаст ссылку, по которой надо пройти, авторизироватся в Google и разрешить доступ

Запрос на разрешение 2015-10-22 19-59-28

Нажимаем «Разрешить» и после перезагрузки страницы система предоставить ключ

Success state=041e7d1a4916736a7aeeec606b9c2a5f&code=4:XhfW9V9-3KY34K2z5XVVdGcHYXFw3-wOZCSCvWYW7pA 2015-10-22 20-02-03

который надо вставить в терминал.

Ура, готово. Rclone настроен и подключен к Google Drive успешно, выходим из настройки

Использование Rclone

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

Копирование

Для начала создадим путь на сервере куда будет синхронизировать Rclone, например

Будем отталкиваться от того что в Google Drive у нас будет директория, которую мы привяжем к серверу, и все что в неё попадёт — будет синхронизировать. Назовём её  Test

и в результате выполнения данной команды в Google Drive появился директория

Мой диск – Google Диск 2015-10-22 20-52-14

Теперь попробуем в обратную сторону — добавим файл в Test  через сервис и выполним команду

Test/Мой диск – Google Диск 2015-10-22 20-52-14.png — это путь к файлу который был только что добавлен мною.

Обращаю внимание на эти команды и их синтаксис

source  — это источник, откуда будут копировать данные. dest  — это приемник, куда будут копировать данные.

Копирует source  в dest . Не копирует не измененные файлы (сравнивает размер, временя изменения, MD5SUM). Не удаляет файлы из dest

Синхронизирует source  в dest , изменяя только dest . Не копирует не измененные файлы (сравнивает размер, временя изменения, MD5SUM). dest обновляет до состояния source, удаляя файлы (если требуется). Для того что бы запустить синхронизацию без изменений существует флаг  --dry-run , например команда

скопирует содержимое локального каталога  /home/user_name/folder/ в Google Drive в директорию  my_folder/

Если поменять местами пути то процесс пойдет в противоположную сторону

Как обновить rclone?

Если понадобится обновиться до новой версии, то это осуществляется командой

Установка и настройка MiniDLNA

Ссылки по теме:

По ссылкам выше исчерпывающая информация о том как установить и настроить демон. Мне, честно говоря, добавить нечего.

Я установил MiniDLNA но он не умеет транскодировать данные, тем самым зачастую будут проблемы с фильмами у которых звук в формате AC3 — он не будет воспроизводится.

Решить проблему с AC3 можно так же купив платную версию шикарного плеера Infuse Pro (iPhone and iPad) за $9.99 или nPlayer за $8.99 (я взял последний по акции за $4.99)

Но так как мне было, как минимум, интересно «поковырять» сервис — я заморочился установкой и настройкой Serviio ведь он, всё таки, позволяет создавать профили и транскодирует «на лету».

Установка и настройка Serviio

Ссылки по теме:

Установка этого DLNA-сервера прошла так же просто как и MiniDLNA. Все шаги детально описаны в документации.

Но вот что бы потом админить сервер, как мне сказали на офф. сайте, надо установить любую консоль на выбор. Пробежавшись по скриншотам я остановился на WEB UI in PHP.

Так как Apache и PHP уже и так были установлены на сервере, то осталось дело за малым — установить и настроить консоль.

Переходим в директорию хоста и создам папку  serviio

Далее скачаем архив с консолью (проверь последнюю версию)

Далее надо распаковать архив. Если unzip  не установлен выполни

Теперь распакуем и переименуем директорию

Далее открываем в браузере адрес http://192.168.1.110/serviio/ и видим интерфейс консоли.

В случае если страница ничего не выводит (белый фон) то скорее всего надо установить пакет и перезапустить сервер

Теперь попробуй открыть вышеуказанную ссылку ещё раз — должно работать.

Настройка консоли проста и документации не требует. Но вот не факт что будет доступ к нашим винтам, так как пользователь Apache  www-data не имеет прав на чтение/запись. Это решается добавление пользователя в группу users

Теперь должно работать.

Как управлять библиотекой Serviio

Консоль Serviio 1.5.1 2015-11-24 15-39-09

Добавление контента в библиотеку осуществляется через закладку Library > Shared Folders

В начале следует нажать кнопку и выбрать путь где размещаются данные «Add local…». Потом, после добавления, выбрать тип данных (галочкой) и нажать сохранить.

Настройка профиля Serviio для IOS

Консоль Serviio 1.5.1 2015-11-24 14-56-24

По умолчанию Serviio вещает «как есть». Что бы заставить сервер транскодировать данные следует создать профиль. Я приведу пример создания профиля для плеера VLC для IOS.

Для начала выключим службу

Согласно документации Serviio установлен по адресу  /usr/local/share/serviio

Нас интересует файл  profiles.xml который мы будем редактировать

И в самый конец перед закрывающим </Profiles> вставляем профиль

Сохраняемся и выходим.

Запускаем службу Serviio

Консоль Serviio 1.5.1 2015-11-24 15-15-52

Теперь вернемся в браузер и обновим страницу. На домашней странице есть перечень IP-адресов устройств которые подключались к Serviio. Для примера на скрине ip-адрес 192.0.0.21 — это iPad. Напротив меню для выбора профиля. В данном случае следует выбрать добавленный нами профиль «VLS for IOS» и нажать «Сохранить».

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

На сим откланяюсь, пользуйся на здоровье :)

    Один комментарий

  1. Спасибо огромное, давно ждал.

Оставить комментарий

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

Лимит времени истёк. Пожалуйста, перезагрузите CAPTCHA.