Представь, что у тебя есть домашний сервер TrueNAS с терабайтами фильмов, сериалов и музыки. Ты хочешь смотреть этот контент на телевизоре в гостиной, планшете в спальне или смартфоне в дороге — без лишних проводов и копирования файлов. Именно эту задачу решает DLNA-сервер. Давай разберем, как превратить твой TrueNAS в полноценный медиацентр.
Что такое DLNA и зачем он нужен в TrueNAS?
DLNA (Digital Living Network Alliance) — это набор стандартов, позволяющих устройствам в домашней сети обмениваться медиаконтентом. По сути, это технология «включил и работай» для потоковой передачи видео, музыки и фото.
Выбор DLNA-решения для TrueNAS
Прежде чем начать настройку, определись с софтом. Вот основные варианты:
| Решение | Тип | Плюсы | Минусы |
|---|---|---|---|
| Plex Media Server | Плагин / Docker | Отличный интерфейс, транскодирование, метаданные | Премиум-функции платные |
| Jellyfin | Docker / Jail | Полностью бесплатный, open-source | Менее полированный интерфейс |
| MiniDLNA | Плагин | Минималистичный, мало ресурсов | Нет транскодирования |
| Emby | Плагин | Хорошее транскодирование | Платный, как и Plex |
Пошаговая настройка Plex как DLNA-сервера в TrueNAS
Рассмотрим самый популярный вариант — установку Plex через официальный плагин.
Шаг 1: Подготовка данных
Сначала создай датасет для медиафайлов, если его еще нет:
# Подключись к TrueNAS по SSH
ssh admin@truenas.local
# Создай датасет для медиа (если нужно)
zfs create tank/media
zfs create tank/media/movies
zfs create tank/media/tvshows
zfs create tank/media/music
Шаг 2: Установка плагина Plex
- В веб-интерфейсе TrueNAS перейди в Apps → Available Applications
- Найди Plex Media Server и нажми Install
- Заполни настройки установки:
- Application Name: plex
- Configuration Path: /mnt/tank/apps/plex/config
- Media Path: /mnt/tank/media
- Нажми Install и дождись завершения (5-10 минут)
plex есть права на чтение медиафайлов. В настройках датасета установи ACL или используй chmod.
Шаг 3: Первоначальная настройка Plex
После установки открой Plex в браузере:
# Получи IP-адрес контейнера Plex
docker ps | grep plex
# Или через веб-интерфейс: Apps → Installed Applications → plex → Web Portal
В веб-интерфейсе Plex:
- Создай учетную запись Plex или войди в существующую
- Назови свой сервер (например, "TrueNAS Media")
- Добавь библиотеки: Movies, TV Shows, Music
- Укажи пути к папкам с медиа
Шаг 4: Включение DLNA-сервера в Plex
По умолчанию DLNA в Plex отключен. Включи его:
- В веб-интерфейсе Plex перейди в Settings → DLNA
- Поставь галочку Enable the DLNA server
- Настрой дополнительные параметры:
- Server name: Имя, которое будет отображаться на устройствах
- Delay: 3 секунды (для старых телевизоров)
- Allowed networks: 192.168.1.0/24 (твоя локальная сеть)
- Сохрани изменения
Шаг 5: Настройка транскодирования (опционально)
Если твои устройства не поддерживают некоторые форматы видео, включи транскодирование:
# В настройках Plex:
Settings → Transcoder
# Рекомендуемые настройки:
- Transcoder quality: Prefer higher speed encoding
- Background transcoding x264 preset: Very fast
- Transcoder default throttle buffer: 60
- Enable HDR tone mapping: Да (если есть HDR-видео)
Альтернатива: Установка MiniDLNA плагина
Если нужен простой DLNA-сервер без наворотов, используй MiniDLNA:
- В TrueNAS перейди в Plugins (в старых версиях)
- Найди MiniDLNA и установи
- Настрой конфигурационный файл:
config
# /usr/local/etc/minidlna.conf media_dir=V,/mnt/tank/media/movies media_dir=V,/mnt/tank/media/tvshows media_dir=A,/mnt/tank/media/music media_dir=P,/mnt/tank/media/photos friendly_name=TrueNAS DLNA Server inotify=yes enable_subtitles=no root_container=B - Перезапусти сервис:
service minidlna restart
Подключение устройств к DLNA-серверу
После настройки сервера подключи свои устройства:
- Smart TV (Samsung/LG/Sony): В меню выбери "Источники" → "Сетевые устройства" → найди свой сервер
- Android TV / NVIDIA Shield: Установи приложение Plex или BubbleUPnP
- PlayStation / Xbox: В медиа-разделе выбери "Поиск медиасерверов"
- Windows: В проигрывателе VLC: Медиа → Открыть сетевой поток → upnp://
- iOS/Android: Приложения Plex, VLC, Infuse
Решение распространенных проблем
Проблема 1: Устройства не видят DLNA-сервер
Решение:
# 1. Проверь, работает ли сервис
service plexmediaserver status
# или для Docker
docker ps | grep plex
# 2. Проверь firewall
iptables -L -n | grep 32400
# Если нужно, открой порт
iptables -A INPUT -p tcp --dport 32400 -j ACCEPT
# 3. Проверь multicast (для обнаружения UPnP)
tcpdump -i any -n port 1900
Проблема 2: Видео тормозит или не воспроизводится
Решение:
- Проверь скорость сети:
iperf3 -c 192.168.1.x(должно быть >50 Мбит для 1080p) - В Plex проверь, не идет ли транскодирование (Dashboard → Now Playing)
- Конвертируй видео в совместимый формат (MP4/H.264/AAC)
Проблема 3: Нет русских названий или обложек
Решение: В Plex:
Settings → Agents → Movies/TV Shows
# Для The Movie Database:
- Language: ru
- Country: RU
# Пересканируй библиотеку:
Library → Update All
Оптимизация производительности
Чтобы DLNA-сервер работал максимально эффективно:
- Кэширование метаданных: Выдели SSD-кэш для базы данных Plex
- Планирование задач: Настрой сканирование библиотек на ночь
bash
# В Plex: Settings → Scheduled Tasks - Perform extensive media analysis during maintenance: Да - Maintenance window: 02:00 - 05:00 - Аппаратное ускорение: Если есть Intel Quick Sync или NVIDIA GPU, включи в Plex: Settings → Transcoder → Use hardware acceleration
- Сетевые настройки: Используй jumbo frames (MTU 9000) если все устройства в сети поддерживают
Безопасность DLNA-сервера
Не забывай о безопасности домашнего медиасервера:
- Доступ из интернета: Не открывай порт 32400 напрямую. Используй VPN (WireGuard на TrueNAS) или обратный прокси
- Авторизация Plex: Включи двухфакторную аутентификацию в настройках аккаунта
- Регулярные обновления: Обновляй Plex и TrueNAS вовремя
- Бэкапы: Регулярно бэкапь базу данных Plex:
bash
# Бэкап базы Plex cp -r /mnt/tank/apps/plex/config/Library/Application\ Support/Plex\ Media\ Server/ "$BACKUP_PATH/" # Или через TrueNAS задачи: Tasks → Cron Jobs
Secure connections на "Required" в Network settings.
Часто задаваемые вопросы (FAQ)
Можно ли использовать DLNA без Plex?
Да, можно установить MiniDLNA или ReadyMedia как отдельный плагин. Это легковесное решение без транскодирования и красивого интерфейса.
Почему Plex не видит мои файлы?
Проверь права доступа. Пользователь/группа plex (UID 972) должен иметь права на чтение. Выполни: chmod -R 755 /mnt/tank/media && chown -R nobody:nogroup /mnt/tank/media
Как добавить субтитры в DLNA?
Plex автоматически показывает субтитры если они в одном каталоге с видео и имеют то же имя. Форматы: SRT, ASS, SSA. MiniDLNA требует компиляции с поддержкой субтитров.
TrueNAS Scale или Core — что лучше для медиасервера?
Scale (на базе Linux) лучше поддерживает Docker и аппаратное транскодирование. Core (FreeBSD) стабильнее но с ограниченной поддержкой GPU. Для DLNA-сервера Scale предпочтительнее.
Как организовать файлы для Plex?
Структура каталогов критична. Используй:
/movies/Название фильма (год)/Название фильма.mkv
/tvshows/Название сериала/Season 01/S01E01.mkv
Заключение
Настройка DLNA-сервера на TrueNAS — это не просто установка плагина, а создание полноценной медиа-экосистемы дома. Начни с простого решения (MiniDLNA), а когда освоишься — переходи на Plex или Jellyfin для получения всех возможностей. Помни, что ключ к успеху — правильная организация файлов и регулярное обслуживание системы.
Теперь у тебя есть пошаговое руководство, которое превратит твой TrueNAS в мощный медиасервер. Не бойся экспериментировать с настройками, делать бэкапы перед изменениями и читать логи при проблемах. Удачи в создании идеального домашнего кинотеатра!