Настройка xigmanas на сетевом хранилище

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

Сначала – требования
Прежде чем выбирать ОС, я четко определил, какие функции должно выполнять мое хранилище:

  • поддержка основных протоколов (FTP, SMB) для удобного доступа к данным
  • возможность фоновой загрузки файлов
  • DLNA-сервис для комфортного просмотра фильмов на SMART TV
  • развертывание собственных проектов (на перспективу)
  • обязательный доступ по SSH

Именно эти требования стали основными критериями при выборе системы. После анализа нескольких вариантов (FreeNAS, OpenMediaVault, TrueNAS) я остановился на XigmaNAS – легковесной, но функциональной системе на базе FreeBSD.

TrueNAS

Изначально казалось, что TrueNAS идеально подходит под все мои требования. Действительно, эта система предлагала все необходимые функции, правда, с одной оговоркой: некоторые сервисы требовали дополнительной установки. Не долго думая, я скачал и установил TrueNAS Core, полный надежд.

Однако в процессе настройки столкнулся с неожиданными сложностями:

  • torrent-клиент требовал установки как дополнение, но на моей версии ОС (TrueNAS Core) эта функция просто не работала. Оказалось, что мне нужна была TrueNAS Scale, но переустанавливать систему не хотелось.
  • создать изолированную среду для приложений так и не получилось, хотя это была одна из ключевых возможностей, на которые я рассчитывал.
  • настройка казалась излишне запутанной для моих скромных потребностей.

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

Xigmanas

Еще на этапе первоначального выбора операционной системы мое внимание привлек интересный вариант – nas4free. Когда я более детально изучил этот дистрибутив, оказалось, что проект переродился в современную XigmaNAS. Не раздумывая долго, я решил испытать эту систему в деле!

Для тестирования я скачал актуальную на тот момент версию 13.3.0.5. Процесс подготовки был прост:

Уже на этом этапе я заметил, что XigmaNAS предлагает более простой и понятный интерфейс по сравнению с TrueNAS

Обзор xigmanas

Первый взгляд на xigmanas

Первое впечатление от XigmaNAS было скептическим – интерфейс показался мне менее современным и привлекательным, чем у TrueNAS. Однако, как часто бывает, первое впечатление оказалось обманчивым! При более глубоком знакомстве я оценил главное преимущество этой системы – её продуманную простоту.

К моему удивлению, все необходимые сервисы уже были предустановлены:

  • Готовый торрент-клиент
  • Полноценный DLNA-сервер
  • Поддержка всех ключевых файловых протоколов
  • Встроенный веб-сервер

Осталось лишь грамотно их настроить под свои нужды – никаких сложных доработок и поиска дополнений.

При первом же входе в систему открывается интуитивно понятная домашняя страница (пункт меню “Домой”), где сразу видна вся ключевая информация:

  • Установленное оборудование – быстрый контроль железа
  • Точное системное время – важно для планировщика задач
  • Детальная загрузка процессора с разбивкой по ядрам
  • Наглядная статистика использования оперативной памяти
  • Полная информация о загрузке жестких дисков

Верхняя панель содержит логично сгруппированные пункты меню:
🔧 Система – общие настройки
💾 Диски – управление хранилищем
🌐 Сеть – конфигурация подключений
…и другие важные разделы

информация о системе xigmanas
Рисунок 1. Информация о системе

Такая продуманная организация интерфейса позволяет буквально за несколько минут освоиться в системе и приступить к полноценной работе. Простота оказалась не недостатком, а главным достоинством!

Доступные сервисы xigmanas

SMB – сетевой протокол, используемый для обмена файлами, принтерами и другими ресурсами между компьютерами в локальной сети. Часто используется в Windows-сетях.

WSD – протокол, разработанный Microsoft для автоматического обнаружения и настройки сетевых устройств, таких как принтеры и сканеры.

FTP – стандартный протокол для передачи файлов между компьютерами по сети. Использует клиент-серверную архитектуру.

TFTP – упрощённая версия FTP, используемая для передачи файлов без аутентификации. Часто применяется для загрузки конфигураций на сетевые устройства.

NFS – протокол, позволяющий монтировать удалённые файловые системы по сети, как если бы они были локальными. Часто используется в Unix/Linux-средах.

AFP – протокол, разработанный Apple для обмена файлами между компьютерами в сетях Mac OS.

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

Synching – децентрализованное решение для синхронизации файлов между устройствами в реальном времени. Работает без облачного сервера.    

Unison – утилита для синхронизации файлов и каталогов между двумя системами, поддерживает двунаправленную синхронизацию.

iSCI Target CTL – реализация iSCSI Target (серверной части протокола iSCSI) для Linux, позволяющая предоставлять блочные устройства по сети.

iSCI Target ISTGT – ещё одна реализация iSCSI Target, ориентированная на высокую производительность и гибкость.

DLNA – набор стандартов для обмена медиафайлами между устройствами в домашней сети, такими как телевизоры, компьютеры и смартфоны.

iTunes – библиотека для управления музыкой, фильмами и приложениями, разработанная Apple. Также используется для синхронизации с устройствами Apple.

Dynamic DNS – сервис, позволяющий обновлять DNS-записи в реальном времени, что полезно для устройств с динамическими IP-адресами.

SNMP – протокол для управления и мониторинга сетевых устройств, таких как роутеры, коммутаторы и серверы.

Web Server – веб сервер для настройки своих ресурсов

MariaDB – сервер баз данных

BitTorrent – torrent клиент

LCDproc – серверное ПО для управления LCD-дисплеями, подключёнными к серверу.

Мне не нужны все сервисы, но на тех, которые я хотел бы настроить – мы остановимся поподробнее.

Первоначальная настройка xigmanas.

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

Общие параметры системы.

Давайте детально разберём настройку базовых параметров в разделе “Система->Общие”, который включает три ключевые вкладки:

Основные параметры (“Общие”)
Здесь нам предстоит выполнить несколько важных действий:

  • Изменить стандартное имя пользователя (по умолчанию “admin”) на более безопасное
  • Установить точное время и правильно настроить часовой пояс
  • Указать DNS-серверы для стабильного сетевого подключения

Никогда не оставляйте стандартные учётные данные – это важный шаг для безопасности вашего хранилища!

Персонализация (“Web-интерфейс”)
Эта вкладка предлагает интересные возможности кастомизации:

  • Можно изменить тему интерфейса
  • Настроить язык системы
  • Выбрать удобный формат отображения информации
  • Активировать дополнительные элементы управления

Эти настройки не влияют на функциональность, но позволяют сделать работу с системой более комфортной.

Безопасность (“Пароль”)
Здесь необходимо:

  • Установить надёжный пароль для учётной записи администратора

Рекомендуется использовать пароль длиной не менее 12 символов с комбинацией букв, цифр и специальных знаков.

Общие настройки xigmanas
Рисунок 2. Общие настройки xigmanas.

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

Настройка Сети xigmanas.

Поскольку мы уже добавили сетевой интерфейс и назначили IP-адрес во время установки, сейчас можно сразу перейти к тонкой настройке сети. Заходим в “Сеть->Настройки LAN”, где нас ждут важные параметры:

Основные сетевые параметры

  • В разделе “Настройка IPv4” указываем IP-адрес роутера (чаще всего это 192.168.1.1 или 192.168.0.1)
  • При необходимости можно изменить текущий IP-адрес и маску подсети

Функция Wake-on-LAN
Настоятельно рекомендую активировать эту полезную функцию:

  • В “Расширенных настройках” находим пункт Wake On LAN
  • Выбираем “Вкл.” или “WOL_MAGIC”
  • Важно: предварительно проверьте, какой именно пакет нужен для вашей сетевой карты

Оптимизация скорости соединения

  • Устанавливаем оптимальный режим работы сетевого адаптера:
  • Base100TX для 100 Мбит/с
  • Base1000TX для гигабитного соединения
  • Auto для автоматического определения

Профессиональный совет: Если планируете установку дополнительной сетевой карты, тогда уже понадобится меню “Сеть->Управление интерфейсами”. Но для базовой настройки достаточно текущих параметров.

Настройка сети xigmanas
Рисунок 3. Настройка сети xigmanas.

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

Настройка дисков в xigmanas

Добавление и форматирование

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

Шаг 1: Добавление диска

  1. Переходим в меню «Диски->Управление»
  2. Открываем вкладку «Управление HDD»
  3. Если ваш диск не отображается в таблице – не беда! Просто нажимаем кнопку «Импортировать» в разделе «Импорт дисков»
  4. После успешного импорта диск появится в списке доступных устройств
Добавление диска xigmanas
Рисунок 4. Добавление диска.

Шаг 2: Форматирование

  1. Теперь переходим к ключевому этапу – выбору файловой системы:
  2. Открываем вкладку «Форматирование HDD»
  3. В таблице «Опции форматирования» выбираем ZFS Storage Pool – специализированную файловую систему для NAS
  4. В разделе «Выбор диска» ставим галочку напротив вашего накопителя
  5. Нажимаем «Далее» и подтверждаем операцию
Форматирование диска xigmanas
Рисунок 5. Форматирование диска xigmanas.

Важно! ZFS – это современная файловая система с массой преимуществ:

  • Высокая отказоустойчивость
  • Встроенная защита от битых секторов
  • Поддержка моментальных снимков (snapshots)

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

Совет: Если планируете использовать несколько дисков, рассмотрите возможность создания RAID-массива для повышения надежности хранения данных.

Создание пула.

Теперь перейдем к созданию ZFS-пула — важному этапу настройки нашего сетевого хранилища. Следуйте этой простой инструкции:

Переходим в нужный раздел

Открываем меню «Диски → ZFS (Zettabyte File System)», где нас встречает несколько вкладок с подразделами.

Создаем виртуальное устройство

  • Выбираем вкладку «Пулы», затем переходим в «Виртуальные устройства»
  • В таблице нажимаем на значок «+» — открывается форма добавления
  • Заполняем:
    • Имя (можете выбрать любое понятное название)
    • Описание (необязательно, но полезно для заметок)
    • Выбираем наш подготовленный диск из списка доступных устройств
  • Создаем сам пул
Создание виртуального устройства xigmanas
Рисунок 6. Создание виртуального устройства xigmanas.

Переключаемся на вкладку «Управление» (во вкладке «Пулы»)

  • Снова нажимаем «+» в таблице
  • Выбираем созданное ранее виртуальное устройство
  • Заполняем необходимые параметры:
    • Указываем имя пула
    • При необходимости настраиваем дополнительные опции
  • Подтверждаем действие кнопкой «Добавить»
Добавление пула xigmanas
Рисунок 7. Добавление пула xigmanas.

Совет: Если планируете расширять хранилище, сразу продумайте структуру именования — это упростит управление в будущем.

Создание Dataset’а.

Отлично! Теперь, когда у нас есть готовый ZFS-пул, переходим к созданию Dataset’ов — это последний важный этап перед настройкой полезных служб.

  1. Переключаемся на вкладку «Dataset’ы»
  2. Нажимаем знакомую кнопку «Добавить»
  3. Выбираем наш созданный ранее пул из списка доступных
  4. Заполняем основные параметры (имя, описание при необходимости)
Добавление dataset’a xigmanas
Рисунок 8. Добавление dataset’a xigmanas.

Вуаля! Ваша файловая система полностью готова к работе.

Проверка работающих служб в xigmanas.

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

Где смотреть статус служб?

  1. Открываем меню «Состояние->Службы»
  2. Перед нами появляется удобная таблица, где для каждой службы указано:
    • Название (какая именно служба)
    • Статус (запущена/остановлена)Состояние (успешно ли работает)
    • Быстрый доступ (кнопка перехода в настройки)

Расшифровка значков:

Зеленый индикатор — все отлично! Служба:

  • Активна (если в колонке статуса)
  • Успешно запущена (если в колонке состояния)

Красный индикатор — есть проблемы:

  • Служба отключена
  • Или не смогла запуститься
Службы xigamans
Рисунок 9. Службы xigamans.

Совет: Если видите красный значок — не паникуйте! Просто нажмите на кнопку настроек и проверьте конфигурацию. Чаще всего проблема решается за пару минут.

Настройка службы SSH в xigmanas.

Давайте настроим одну из самых полезных и простых служб — SSH-доступ, который откроет вам полный контроль над сетевым хранилищем прямо из командной строки!

Простая пошаговая настройка:

  1. Открываем меню «Службы->SSH»
  2. Видим интуитивно понятную таблицу с параметрами
  3. Выбираем ключевые настройки:
    • Разрешаем вход для root (если планируете использовать его)
    • Выбираем метод аутентификации (для начала советуем пароль)

Активируем службу:

  1. Включаем службу кнопкой «Включить»

Проверяем работу:

  • Не забудьте заглянуть в «Состояние->Службы», чтобы:
    Убедиться, что SSH работает (зеленый индикатор)
    При необходимости быстро перейти к настройкам
Настройка службы SSH в xigmanas
Рисунок 10. Настройка службы SSH в xigmanas.

Профессиональный совет:
Для большей безопасности после первоначальной настройки:

  1. Создайте отдельного пользователя с sudo-правами
  2. Отключите вход для root
  3. Настройте авторизацию по ключам вместо пароля

Теперь вы можете удобно управлять вашим NAS.

Роли и службы в xigmanas.

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

Как это работает?

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

Почему это усложняет настройку?

Если вы привыкли к Windows, где права назначаются проще, такая система может показаться избыточной. Однако она обеспечивает гибкость и безопасность. Например, помимо пользователя службы, вам может понадобиться управлять файлами вручную — через FTP или другой интерфейс.

Решение: гибкое управление группами

Чтобы избежать конфликтов прав, пользователя FTP (или другого сервиса для ручного управления) следует добавить во все группы, связанные с файловыми службами. После этого останется только выдать этим группам необходимые разрешения на чтение, запись и изменение файлов.

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

Настройка службы FTP в xigmanas.

Теперь перейдем к одной из основных служб сетевого хранилища – службе FTP. Переходим в «Службы->FTP». Перед нами откроется окно настроек службы FTP. Для большинства задач можно оставить все параметры по умолчанию, но следует увеличить количество одновременных соединений на хост (я поставил 10). Ставим в верхнем правом углу таблицы галочку «Включить» и нажимаем кнопку «Сохранить и перезапустить»

Настройка службы FTP в xigmanas
Рисунок 11. Настройка службы FTP в xigmanas.

Теперь нам необходимо создать директорию, в которую будет попадать пользователь при входе. Заходим в «Инструменты->Файловый менеджер» – перед нами откроется файловая система нашего сервера. Переходим в директорию mnt. В ней, если вы подключили только один диск, будет одна директория. Имя у неё будет как у созданного вами пула, а в ней директория с именем Dataset’а. Если исходить из наших примеров, путь будет следующим: mnt\tank\dataset. Здесь мы создаем директорию, которая будет домашней для пользователя, например share.

Создание домашней папки для пользователя FTP в xigmanas
Рисунок 12. Создание домашней папки для пользователя FTP в xigmanas.

Теперь нам нужно создать пользователя, под которым мы будем подключаться к нашему сетевому хранилищу по FTP. Заходим в «Доступ->Пользователи и группы», в таблице нажимаем на «+». В открывшемся окне нужно заполнить Имя пользователя, Полное имя и пароль. Так же следует добавить создаваемого пользователя в группу «ftp».

Список пользователей xigmanas
Рисунок 13. Список пользователей xigmanas.
Параметры пользователя в xigmanas
Рисунок 14. Параметры пользователя в xigmanas.

После проделанных действий можно попробовать соединиться с сетевым хранилищем по FTP с помощью любого FTP клиента под созданным пользователем. доступ к файлам. Главное — правильно задать права и не забыть добавить пользователя в группу ftp.

Настройка торрент клиента в xigmanas.

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

Создание директорий для торрент клиента.

Первоначально нам необходимо создать 4 директории:

  1. Для хранения конфигурации торрент клиента
  2. Для хранения временных (недокачанных) торрентов
  3. Для хранения завершенных закачек
  4. Директорию, куда можно закинуть торрент файл и он автоматически начнет скачиваться

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

Вот мои примеры путей к директориям

  1. /nmt/<имя_пула>/<имя_датасета>/bitTorrent /config
  2. /nmt/<имя_пула>/<имя_датасета>/bitTorrent/temp_downloads
  3. /nmt/<имя_пула>/<имя_датасета>/share/downloads
  4. /nmt/<имя_пула>/<имя_датасета>/share/torrents
Конфигурационные папки для торрент-клиента
Рисунок 15. Конфигурационные папки для торрент-клиента.
Папки загрузки и отслеживания для торрент-клиента
Рисунок 16. Папки загрузки и отслеживания для торрент-клиента.
Настройка прав для директорий торрент клиента.

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

Для этого соединяемся с сетевым хранилищем через SSH. И выполняем следующие команды:

chown –R transmission:transmission /nmt/<имя_пула>/<имя_датасета>/bitTorrent /config
chown –R transmission:transmission /nmt/<имя_пула>/<имя_датасета>/bitTorrent/temp_downloads
chown –R transmission:transmission /nmt/<имя_пула>/<имя_датасета>/share/downloads
chown –R transmission:transmission /nmt/<имя_пула>/<имя_датасета>/share/torrents

Две команды ниже дают возможность пользователям, которые состоят в группе transmission, удалять, добавлять и изменять файлы в папках. А так как наш пользователь ftp состоит в группе transmission – он сможет работать с загрузками.

chmod –R g+rw /nmt/<имя_пула>/<имя_датасета>/share/downloads
chmod –R g+rw /nmt/<имя_пула>/<имя_датасета>/share/torrents
Настраиваем службу.

Для настройки переходим в «Службы->BitTorrent» Тут большинство настроек можно так же оставить по умолчанию, но нужно установить 4 директории для функционирования клиента.

  1. Папка для скачивания – /nmt/<имя_пула>/<имя_датасета>/share/downloads
  2. Папка конфигурации – /nmt/<имя_пула>/<имя_датасета>/bitTorrent /config
  3. Папка для отслеживания – /nmt/<имя_пула>/<имя_датасета>/share/torrents
  4. Папка для незавершенных закачек – /nmt/<имя_пула>/<имя_датасета>/share/downloads

Далее, я рекомендую установить аутентификацию в веб-интерфейсе. Ставим галочку «Требовать аутентификации» и вводим имя пользователя и пароль для аутентификации. В левом нижнем углу нажимаем «Применить», но пока не запускам службу.

Окно настройки службы торрент-клиента
Рисунок 17. Окно настройки службы торрент-клиента.
Нюансы с правами.

При использовании торрент клиента я столкнулся с одной проблемой: После скачивания, пользователь ftp (или любой другой) не может переместить, удалить или как то использовать закачку, которая появилась в папке downloads. Дело в том, что, несмотря на наличие прав на папку downloads для пользователей группы transmission, после завершения закачки, только пользователь transmission имеет все права на файл (или папка), которую только что он создал (скачал). А это ломает всю логику работы. Скачать мы можем, но под пользователем ftp использовать закачки уже не можем.

То же самое с папкой torrents. Если мы положили в неё торрент файл через FTP – только пользователь ftp имеет на него права и клиент его уже подхватить не может, т.к. запущен от пользователя transmission.

Решение проблемы с правами.

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

Скрипт нам, возможно, понадобится не один, поэтому создаем папку /nmt/<имя_пула>/<имя_датасета>/scripts

В ней создаем файл, где будем прописывать команды на изменение прав, например change.pl. Делаем для файла права на запуск: Через SSH пишем команду

chmod 777 /nmt/<имя_пула>/<имя_датасета>/scripts/ change.pl

В файл пишем следующие команды:

chmod -R g+rwx /mnt//<имя_пула>/<имя_датасета>/share/torrents/;
chmod -R g+rwx /mnt//<имя_пула>/<имя_датасета>/share/downloads/;

Далее идем в «Система->Дополнительно» и переходим на вкладку cron. В таблице тыкаем «+». В появившейся форме заполняем поля:

  • Команда – указываем путь к нашему файлу /nmt/<имя_пула>/<имя_датасета>/scripts/ change.pl
  • Кто – root
  • Описание – пишем любое (обязательно к заполнению)
  • Время расписаний- тут мы настраиваем частоту выполнения скрипта. У меня стоит раз в 15 минут.

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

Список заданий cron
Рисунок 18. Список заданий cron.
Настройка задания cron
Рисунок 19. Настройка задания cron.

Запуск службы.

Опять переходим в настройки службы «Службы->bitTorrent» и в левом нижнем углу нажимаем – «Включить». Убеждаемся, что служба запущена. Теперь мы можем проверить, что служба работает верно. Во-первых, в папке /nmt/<имя_пула>/<имя_датасета>/bitTorrent /config должны появиться конфигурационные файлы. Во-вторых, переходим в веб интерфейс торрент клиента и добавляем торрент (или закидываем его в папку torrents). Если закачка началась, и после скачивания все появилось в папке downloads – то все настроено правильно.  Если же закачка не идет, или в списке торрентов в веб-интерфейсе появляется ошибка – то настройка не верная. Но, с большей долей вероятности, проблема с правами на рабочие папки.

Настройка DLNA в xigmanas.

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

Настройка каталогов.

Все медиафайлы, которые будут транслироваться данной службой, мы положим в папку /nmt/<имя_пула>/<имя_датасета>/share/library. Обратите внимание, что папка должна лежать в папке пользователя, который соединяется по ftp (в нашем случае – это share). Чтобы могли по ftp кидать файлы в библиотеку.

Так же у DLNA есть папка с настройками. Её мы создадим уже за областью видимости пользователей ftp.

/nmt/<имя_пула>/<имя_датасета>/DLNA/config

Настройка прав для каталогов DLNA.

Тут нам нужно поступить, как и с bitTorrent сервисом. Нужно для папки с библиотекой и папки с конфигурацией установить владельца пользователя и группу dlna.  Для этого подключаемся через SSH к сетевому хранилищу и выполняем две команды:

chown –R dlna:dlna /nmt/<имя_пула>/<имя_датасета>/DLNA/config
chown –R dlna:dlna /nmt/<имя_пула>/<имя_датасета>/share/library
Настройка службы DLNA в xigmanas.

Теперь переходим непосредственно к настройке службы. Переходим в «Службы->DLNA/UPnP» и переходим на вкладку «MiniDLNA». Здесь наc ждет две вкладки: «Параметры» и «Папка мультимедиа».

На вкладке «Параметры» нам необходимо заполнить имя сервера, указать в качестве каталога базы данных папку /nmt/<имя_пула>/<имя_датасета>/DLNA/config, указать сетевой интерфейс, который используется для трансляции, а так же имя сервера.

Настройка службы DLNA
Рисунок 20. Настройка службы DLNA.

На вкладке «Папка мультимеди» нам нужно добавить папку /nmt/<имя_пула>/<имя_датасета>/share/library

Настройка библиотеки DLNA
Рисунок 21. Настройка библиотеки DLNA.

Теперь мы можем запустить сервер – на вкладке «Параметры» нажимаем кнопку «Включить».

После включения вы можете увидеть ваш медиасервер на устройствах, которые поддерживают DLNA (например SMART TV).

Сканирование библиотеки.

Чтобы вы могли просматривать фильмы на устройствах с поддержкой DLNA вам нужно скинуть фильмы в папку /nmt/<имя_пула>/<имя_датасета>/share/library. Для добавленных файлов сменить владельца файла командой chown dlna:dlna /nmt/<имя_пула>/<имя_датасета>/share/library/<имя_файла>

А после этого всего зайти в параметры службы и нажать кнопку «Повторно сканировать». После всех описанных действий – новые файлы появятся в библиотеке.

Автоматическое сканирование.

Ручное сканирование довольно сложный процесс. Мы попробуем его автоматизировать.

Задачи:

  • При скачивании, автоматически перекладывать, скачанные торрентом, фильмы в библиотеку miniDLNA.
  • Автоматически менять хозяина всех файлов в папке библиотеки DLNA.
  • Запускать пересканирование библиотеки.

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

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

Создаем в нашей папке со скриптами файл, где будут храниться скрипты для переноса файлов из папки закачек в папку библиотеки. Файлы будут переноситься по расширению. На данный момент я использую в основном 2 расширения видеофайлов – это .avi и .mkv. Поэтому будет 2 строки в скрипте (одна переносит файлы avi, другая mkv):

find /mnt/<имя_пула>/<имя_датасета>/share/downloads -type f -name "*.mkv" -exec mv {} /mnt/tank_2tb/main_dataset/share/library \;
find /mnt/<имя_пула>/<имя_датасета>/share/downloads -type f -name "*.avi" -exec mv {} /mnt/tank_2tb/main_dataset/share/library \;

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

chown -R dlna:dlna /mnt/<имя_пула>/<имя_датасета>/share/library/; 
service minidlna stop;
minidlnad -f /var/etc/minidlna.conf -R;
chmod -R g+rw /mnt/<имя_пула>/<имя_датасета>/share/library/;

Теперь идем в «Система-Дополнительно» и на вкладке cron создаем 2 задания. Одно переносит файлы, а другое пересканирует библиотеку. В поле команда пишем путь к файлу скрипта. И задаем время. У меня это 1 раз в час переносятся файлы, а библиотека пересканируется раз в сутки. Нужно так же учитывать, что между переносом файлов и пересканированием должен быть небольшой промежуток (хотя бы 5 минут), чтобы на момент пересканирования файлы уже были в папке библиотеки. Так же, рекомендую не делать частого перескана библиотеки. Т.к. во время сканирования служба перезапускается, а значит, если вы используете службу – могут быть проблемы во время воспроизведения.

Выводы

Настройка XigmaNAS с поддержкой FTP, SSH, BitTorrent и DLNA открывает широкие возможности для создания универсального домашнего или офисного NAS-сервера. Благодаря гибкости системы и встроенным службам вы получаете:

  • Удобный доступ к файлам через FTP и защищённое управление сервером по SSH.
  • Эффективную раздачу и загрузку контента с помощью BitTorrent-клиента.
  • Мультимедийный центр для потоковой передачи медиа по DLNA.

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

Если у вас остались вопросы или нужна дополнительная настройка — экспериментируйте, изучайте документацию и делитесь опытом в комментариях!

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