- DLNA сервер для Linux Debian / Ubuntu на базе MiniDLNA
- Содержание
- Установка MiniDLNA
- Установка Sudo
- Настройка MiniDLNA
- Запуск MiniDLNA
- Сканирование медиа-библиотеки MiniDLNA
- Установка MiniDLNA из исходников
- Сборка стабильной версии MiniDLNA
- Сборка текущей разрабатываемой версии MiniDLNA из Git-репозитория
- Установка
- Отключение запроса способа отображения файлов: All Files, Folders
- Отключение виртуальных папок в MiniDLNA версии 1.1.4 и выше
- Отключение виртуальных папок в MiniDLNA версии 1.1.3 и ниже
- Ссылки
- Dlna linux графический интерфейс
- Установка и настройка DLNA | UPnP медиасервера Gerbera (Mediatomb) в Ubuntu Linux 18.04 | Kubuntu Linux 18.04
- 1. Установка DLNA | UPnP медиасервера Gerbera через Терминал
- 2. Запуск DLNA | UPnP медиасервера Gerbera и настройка автостарта службы
- 3. Запуск веб-интерфейса DLNA | UPnP медиасервера Gerbera
- 4. Включение GUI интерфейса в DLNA | UPnP медиасервере Gerbera
- 5. Перезапуск службы DLNA | UPnP медиасервера Gerbera
- 6. Добавление медиаконтента в потоковую передачу DLNA | UPnP медиасервера Gerbera
- 7. Просмотр содержимого DLNA | UPnP медиасервера Gerbera
- 8. Переключение в старый интерфейс DLNA | UPnP медиасервера Gerbera, доставшийся от Mediatomb
- 9. Проверка работоспособности DLNA | UPnP медиасервера Gerbera
- 10. Решение проблемы доступа к файловой системе для DLNA | UPnP медиасервера Gerbera
- 11. Удаление DLNA | UPnP медиасервера Gerbera
DLNA сервер для Linux Debian / Ubuntu на базе MiniDLNA
Настраиваем домашний DLNA-сервер на базе MiniDLNA, он же ReadyMedia в Linux Debian или Ubuntu Server.
Содержание
Установка MiniDLNA
Простейшим способом установки является, установка пакета из репозитория вашего дистрибутива:
Установка Sudo
Если в вашей системе отсутствует команда sudo, желательно ее установить. Sudo нам потребуется в процессе настройки, для тестирования прав доступа к папкам с медиа-файлами.
Добавляем пользователя в группу sudo:
Выходим из системы и входим заново, чтобы изменение группы вступило в силу.
Настройка MiniDLNA
Правим файл конфигурации:
Как минимум, потребуется задать путь к папке с медиа-файлами, параметр: «media_dir». Также можно задать имя сервера, отображаемое клиентом, параметр: «friendly_name».
В случае если наш DLNA-сервер по совместительству является интернет-шлюзом, также необходимо задать внутренний сетевой интерфейс, параметр: «network_interface».
Параметры в комментариях файла конфигурации содержат значения по умолчанию.
Проверяем параметры init-скрипта /etc/default/minidlna:
Обычно корректировка не требуется. Если файл отсутствует, при первичной установке из исходников, копируем листинг:
Поскольку служба работает под пользователем с ограниченными правами, публикуемые папки и файлы должны быть доступны на чтение для всех пользователей, следовательно, иметь разрешения 644: » rw- r— r— «, для файлов и 755: » rwx r-x r-x «, для папок.
Проверяем доступность для каждой папки, заданной в minidlna.conf, командой:
Если папка недоступна, задаем права доступа:
Вышестоящие папки также должны быть доступны на чтение всем пользователям. Проверяем доступность на чтение каждой папки, указанной в пути. Для вышестоящих папок используем chmod без ключа -R, если не требуется сброс разрешений для всех дочерних файлов и папок.
В качестве альтернативы смене разрешений, можно запустить MiniDLNA от имени пользователя или группы-владельца файлов. Для этого необходимо задать параметры USER и GROUP в /etc/default/minidlna, и сменить владельца папки /var/lib/minidlna командой:
Запуск MiniDLNA
Проверяем, работает ли служба, также смотрим параметры запуска:
Проверяем, слушается ли порт:
В случае успешного старта, лог должен быть примерно следующим:
Если видим: » WARNING: Inotify max_user_watches [8192] is low. «, необходимо увеличить число дескрипторов слежения inotify до 100 000. Для этого в файл /etc/sysctl.conf добавим строки:
Или копипастом команды:
Изменение параметра вступит в силу после перезагрузки системы.
Открываем в браузере http://адрес.сервера:8200, видим количество файлов в библиотеке, начиная с версии 1.1.2, также отображается список подключенных клиентов.
Настройка DLNA/UPnP-AV сервера завершена.
Если вместо сообщений и папок-контейнеров MiniDLNA отображаются знаки вопроса, отключаем локализацию.
Если был установлен пакет:
При установке из исходников:
Перезапускаем MiniDLNA с повторным сканированием библиотеки.
Сканирование медиа-библиотеки MiniDLNA
При появлении ошибок в каталоге, необходимо выполнить повторное сканирование файлов.
Для этого удалим базу Minidlna и перезапустим службу:
Для сканирования медиа-библиотеки при каждом старте системы можно задать ключ запуска: «-R» в параметре DAEMON_OPTS в файле /etc/default/minidlna. Сканирование большой медиа-библиотеки существенно нагружает диск, что может замедлить загрузку системы.
Полное формирование каталога может занять несколько минут. Сканирование папок выполняется в порядке их объявления в конфиге. Файлы из небольших папок, объявленных в конфиге выше, появятся в каталоге в самом начале процесса сканирования. Крупные папки с редко воспроизводимым контентом имеет смысл размещать в конфиге последними.
Установка MiniDLNA из исходников
Дальнейший материал был написан во времена Debian 7 и не тестировался на современных версиях.
Как минимум, инит-скрипты и юнит-файлы берем из deb-пакета.
Устанавливаем сборочные зависимости:
Если при установке зависимостей возникает ошибка: «Невозможно найти пакет с исходным кодом для minidlna». Значит, пакет MiniDLNA отсутствует в вашей версии дистрибутива. В этом случае придется установить зависимости вручную:
Создаем папку для исходников в профиле пользователя и переходим в нее:
Сборка стабильной версии MiniDLNA
Загружаем исходники последней стабильной версии:
С ключом —trust-server-name, будет сохранено исходное имя файла: «minidlna-1.1.4.tar.gz», номер версии может отличаться. Если ключ не указан, файл будет сохранен под именем: «download».
Переходим в папку с исходниками:
Сборка текущей разрабатываемой версии MiniDLNA из Git-репозитория
Для сборки из Git-репозитория, потребуются дополнительные пакеты:
Переходим в папку с исходниками:
Создаем скрипт автоконфигурации:
Установка
Удаляем пакет, если он был установлен ранее:
Устанавливаем собранную версию:
При первичной установке, копируем minidlna.conf в папку /etc:
Если скрипт остался от оригинального пакета Debian, достаточно исправить путь к исполняемому файлу, выделенный красным. Если файл отсутствует, копируем следующий листинг:
Для дистрибутивов на базе Debian 6 в init-скрипте необходимо скорректировать параметр PIDDIR, для современных дистрибутивов корректировка не требуется.
Разрешаем запуск скрипта:
Активируем запуск init-скрипта в rc.d:
По умолчанию служба запускается под пользователем minidlna, создаем учетную запись:
Также, при первичной установке, потребуется создать файл параметров init-скрипта (/etc/default/minidlna), рассмотренный далее, в процессе настройки.
При установке из исходников, minidlna.conf требует дополнительной корректировки. В пакете Debian пути по умолчанию были изменены, теперь их необходимо прописать явно.
Задаем путь для хранения базы данных, используем домашнюю папку пользователя minidlna, созданного на предыдущем шаге:
Задаем путь к лог-файлу:
Отключение запроса способа отображения файлов: All Files, Folders
Настраиваем отображение содержимого папок Music, Pictures, Video без промежуточного запроса способа их отображения.
Частично вопрос можно решить установкой параметра: «root_container=B» в minidlna.conf. При этом сам запрос не отключается, но содержимое папок отображается непосредственно в корневом контейнере.
В случае если устройство, в качестве корневого контейнера, отображает свой собственный стартовый экран, корректировка файла конфигурации не даст результата. Для полного отключения запроса способа отображения файлов, придется внести изменения в код программы.
Отключение виртуальных папок в MiniDLNA версии 1.1.4 и выше
Для версии 1.1.4 применяем патч, и добавляем параметр disable_extended_directories=yes в minidlna.conf. Данный патч войдет в состав следующей версии MiniDLNA, для более поздних версий достаточно задать параметр в файле конфигурации.
Получаем и устанавливаем пакет с исходниками, как описано в разделе: «Установка или обновление MiniDLNA из исходников».
Переходим в папку с исходниками:
Загружаем и применяем патч:
Собираем и устанавливаем исправленную версию:
Редактируем файл конфигурации:
Перезапускаем службу с повторным сканированием медиа-библиотеки:
В системах на базе systemd для повторного сканирования потребуется удалить базу данных вручную:
Отключение виртуальных папок в MiniDLNA версии 1.1.3 и ниже
Получаем и устанавливаем пакет с исходниками, как описано в разделе: «Установка или обновление MiniDLNA из исходников».
Переходим в папку с исходниками:
Необходимые константы идентификаторов папок объявлены в scanner.h
Нам необходимо при запросе папок MUSIC_ID, VIDEO_ID и IMAGE_ID, перенаправить клиента в MUSIC_DIR_ID, VIDEO_DIR_ID и IMAGE_DIR_ID соответственно.
Обработка запросов клиента реализована в файле upnpsoap.c.
Сохраняем резервную копию файла:
Активируем поиск (F6), ищем процедуру: «BrowseContentDirectory».
В начале процедуры выполняется разбор SOAP/XML-запроса, затем его обработка и возврат результата.
Разбор запроса завершается формированием отладочного сообщения:
Далее реализован выбор корневого контейнера в зависимости от конфигурационного параметра root_container:
Сразу после этого блока и перед блоком с запросами к БД добавляем код перенаправления папок для видео, музыки и изображений:
В итоге правленный фрагмент должен выглядеть следующим образом:
Собираем и устанавливаем исправленную версию:
Проверяем результат. Папки должны открываться без запроса способа отображения.
Ссылки
Список DLNA-серверов и клиентов в Википедии.
Источник
Dlna linux графический интерфейс
- Вы здесь:
- Главная
- Разное
- Операционная система Ubuntu
- Установка и настройка DLNA | UPnP медиасервера Gerbera (Mediatomb) в Ubuntu Linux 18.04 | Kubuntu Linux 18.04
Установка и настройка DLNA | UPnP медиасервера Gerbera (Mediatomb) в Ubuntu Linux 18.04 | Kubuntu Linux 18.04
UPnP (он же DLNA) — это сетевой протокол, предназначенный для простого подключения устройств и упрощения обмена цифровыми мультимедийными данными между вашими устройствами в локальной сети. Существует множество программ для Linux, которые могут помочь вам настроить сервер UPnP у вас дома.
Среди этих программ есть новая программа под названием Gerbera на GitHub. Если быть совсем честным, то Gerbera — это форк всем известного медиасервера под Linux с веб-интерфейсом, который всем был известен как Mediatomb. Gerbera — это лучшая альтернатива простого и всем известного minidlna.
Gerbera — это медиасервер UPnP, который позволяет организовать потоковую передачу цифрового мультимедиа через домашнюю сеть. В этой статье я расскажу вам, как можно установить и настроить его в Ubuntu 18.04 или же kubuntu 18.04 (в общем, настройка будет аналогична на любом дистрибутиве, основанном на Debian).
1. Установка DLNA | UPnP медиасервера Gerbera через Терминал
Установить Gerbera можно через ppa, поддерживаемый Стивеном Четти
Наберите в Терминале для установки следующие команды:
sudo add-apt-repository ppa:stephenczetty/gerbera-updates
sudo apt-get update
sudo apt install gerbera
2. Запуск DLNA | UPnP медиасервера Gerbera и настройка автостарта службы
Следующие две команды в Терминале запустят медиасервер и настроят его автозапуск
sudo systemctl start gerbera
sudo systemctl enable gerbera
3. Запуск веб-интерфейса DLNA | UPnP медиасервера Gerbera
Медиасервер Gerbera использует номер порта 49152, поэтому убедитесь, что порт не используется. Теперь вы можете запустить медиасервер Gerbera при помощи соответствующего значка в Меню запуска приложений. Правда, скорее всего при запуске веб-интерфейса вы получите сообщение о том, что GUI отключен. Необходимо его включить.
4. Включение GUI интерфейса в DLNA | UPnP медиасервере Gerbera
Для включения GUI нужно отредактировать файл конфигурации по адресу /etc/gerbera/config.xml, установив значение параметра ui enabled = «yes». Удобнее всего это сделать через Терминал при помощи команды:
sudo vim /etc/gerbera/config.xml
Если редактор Vim не установлен в Ubuntu, то предварительно установите его командой:
sudo apt install vim
Немного о редактировании файла в Vim:
Нажмите клавишу «i», чтобы перейти в режим редактирования. Теперь можно редактировать файл так же, как и в любом текстовом редакторе. После того как завершите редактирование, нажмите Esc, чтобы перейти в командный режим и наберите «:wq», то есть «Записать и выйти». Все, готово.
5. Перезапуск службы DLNA | UPnP медиасервера Gerbera
После редактирования файла конфигурации или в случае возникновения каких-либо проблем с сервером следует перезапустить службу медииасервера при помощи команды в Терминале
sudo systemctl restart gerbera
Далее нужно обязательно закрыть страницу веб-интерфейса и открыть заново, нажатие кнопки Обновить в браузере может не помочь.
6. Добавление медиаконтента в потоковую передачу DLNA | UPnP медиасервера Gerbera
Для добавления файла в потоковую передачу необходимо щелкнуть по ссылке File System, найти директорию с файлами музыки, видео или фото, а затем просто нажать ссылку Add Item для ручного добавления файла или Add Autoscan Item для добавления автосканирования каталога, содержащего мультемедийный контент.
7. Просмотр содержимого DLNA | UPnP медиасервера Gerbera
Для просмотра добавленного на сервер контента необходимо щелкнуть по ссылке Database. При щелчке по указанной ссылке вы увидите все медиафайлы, которые были добавлены вручную или автоматически.
8. Переключение в старый интерфейс DLNA | UPnP медиасервера Gerbera, доставшийся от Mediatomb
Если вы привыкли к тому старому интерфейсу, который был ранее в Mediatomb, то нужно кликнуть по ссылке Revert to old UI, что приведет к желанному результату.
9. Проверка работоспособности DLNA | UPnP медиасервера Gerbera
Для проверки работоспособности медиасервера Gerbera удобнее всего использовать плеер VCL. Для этого выбираем команду Вид -> Плейлист, переходим в раздел Протокол UPnP и, если все хорошо, то мы должны увидеть наш медиасервер.
10. Решение проблемы доступа к файловой системе для DLNA | UPnP медиасервера Gerbera
Для корректного доступа к файлам видео том с медиаданными должен быть смонтирован в каталог /mnt, а не /media, иначе Gerbera выдаст ошибку. Перенастроить точку монтирования можно при помощи утилиты Disks (дисковая утилита Gnome).
Для установки дисковой утилиты в Kubuntu используйте команду Терминала
sudo apt install gnome-disk-utility
11. Удаление DLNA | UPnP медиасервера Gerbera
Если вы вдруг решите удалить Gerbera, то просто наберите в Терминале команду
sudo apt purge gerbera
sudo add-apt-repository —remove ppa:stephenczetty/gerbera-updates
На этом, собственно, все. Надеюсь, теперь настройка медиасервера в Linux у вас не должна вызвать вопросов. Ну а если вопросы есть, то для этого есть комментарии.
Upd 25.08.2020
Теперь медиасервер Gerbera нормально работает и в Ubuntu 20.04 / Kubunu 20.04.
Ранее в репозитории stephenczetty/gerbera-updates скомпилированной версии deb-пакета для Kubuntu 20.04 не было, поэтому при запуске отображался только устаревший веб-интерфейс для медиасервера (такой, как ранее был у Mediatomb). Да и сам медиасервер работал не очень стабильно.
Однако теперь всё хорошо. На новой версии 1.6.0 также возможно просматривать список подключенных пользователей.
Понравилась статья? Не очень? Тогда возможно, что вы напишите свою гораздо лучше. Просто перейдите по ссылке Размещение статей и ознакомьтесь с правилами публикации статей на сайте MultiBlog67.RU .
Источник