Dlna сервер позволяет организовать удобный просмотр медиа контента по протоколу DLNA/UPnP и его централизацию.
Итак приступим, в консоли нашего сервера выполним команду
cd /opt/
в этот каталог обычно закачивают инсталяционные пакеты теперь воспользуемся пакетом wget если его нет то ставим yum install wget выполним команду
wget http://downloads.sourceforge.net/project/minidlna/minidlna/1.0.24/minidlna_1.0.24_src.tar.gz
в каталоге появится файл minidlna_1.0.24_src.tar.gz распакуем его
tar -zxvf ./minidlna_1.0.24_src.tar.gz
появится каталог minidlna-1.0.24 заходим в него
cd ./minidlna-1.0.24
установим окружение
yum install {flac,libogg,libid3tag,libexif,sqlite,ffmpeg,libvorbis,libjpeg}-devel gcc
теперь соберем пакет выполнив команду
make
Если make выдал сообщение о нехватке библиотек установите это:
Репозитарий EPEL.
32 Bit # rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
или
64 Bit # rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
и
rpm -ivh http://download1.rpmfusion.org/free/el/updates/6/x86_64/rpmfusion-free-release-6-1.noarch.rpm
yum install ffmpeg ffmpeg-compat ffmpeg-compat-devel ffmpeg-devel ffmpeg-libs
и
make install
что автоматически уложит файлы в нужные каталоги установив miniDlna,
Создадим скрипт запуска сервера
nano /etc/init.d/minidlna
поместим в него это
#! /bin/sh
# chkconfig: 345 99 10
# description: Fedora Startup/shutdown script for MiniDLNA daemon
# If you have chkconfig, simply:
# chkconfig --add minildna
# Proper init scripts on Linux systems normally require setting lock
# and pid files under /var/run as well as reacting to network
# settings, so you should treat this with care.
# Original author: Perry Clark <omfgppc (at) gmail.com>
## EDIT FROM HERE
# Installation details
MINIDLNA="/usr/sbin/minidlna"
ARGS="/etc/minidlna.conf"
# Where to keep a log file
MINIDLNA_LOG="/var/log/minidlna.log"
# Where the PID lives
PID_FILE="/var/run/minidlna.pid"
## STOP EDITING HERE
# The path that is to be used for the script
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
set -e
# Only start if we can find the minidlna.conf.
test -x $MINIDLNA || exit 0
# Parse command line parameters.
case $1 in
start)
echo -n "Starting MiniDLNA: "
$MINIDLNA -f $ARGS -P $PID_FILE >> $MINIDLNA_LOG 2>&1
echo "ok"
;;
stop)
echo -n "Stopping MiniDLNA: "
for pidf in `/bin/ls $PID_FILE 2>/dev/null`; do
if [ -s $pidf ]; then
kill `cat $pidf` >/dev/null 2>&1
fi
rm -rf $PIF_FILE
done
echo "ok"
;;
restart|reload|force-reload)
echo "Restarting MiniDLNA: "
$0 stop
sleep 2
$0 start
;;
*)
# Print help
echo "Usage: /etc/init.d/minidlna {start|stop|restart|reload|force-reload}"
exit 1
;;
esac
exit 0
Жмем Ctrl+O и Ctrl+X и назначаем ему права
chown root:root /etc/init.d/minidlna
chmod 755 /etc/init.d/minidlna
и скопируем конфиг (если ставили версию 1.0.24)
cp /opt/minidlna-1.0.24/minidlna.conf /etc/minidlna.conf
теперь надо поправить конфиг /etc/minidlna.conf под наш контент и пропишим необходимые пути, выполним команду
nano /etc/minidlna.conf
и приведем к такому виду
port=8200
Если у вас 2 сетевые , обратите внимание на интерфейс по которому сервер будет раздавать контент
network_interface=eth0
это расположение нашего контента , наше большое хранилище на котором надо создать конечные каталоги
media_dir=A,/media/2TB_A/Музыка
media_dir=V,/media/2TB_A/Видео
media_dir=P,/media/2TB_A/Фотографии
Назовем свой сервер
friendly_name=Супер DLNA Server
db_dir=/var/cache/minidlna каталог надо создать
log_dir=/var/log
album_art_names=Cover.jpg/cover.jpg/AlbumArtSmall.jpg/albumartsmall.jpg/AlbumArt.jpg/albumart.jpg/
Album.jpg/album.jpg/Folder.jpg/folder.jpg/Thumb.jpg/thumb.jpg
inotify=yes
enable_tivo=no
strict_dlna=no
notify_interval=60
serial=12345678
model_number=1
Жмем Ctrl+O и Ctrl+X и в nano /etc/sysconfig/iptables откроем порт 8200 строкой
-A INPUT -s 192.168.0.0/24 -m state --state NEW -p tcp --dport 1900 -j ACCEPT
-A INPUT -s 192.168.0.0/24 -m state --state NEW -p udp --dport 1900 -j ACCEPT
-A INPUT -s 192.168.0.0/24 -m state --state NEW -p tcp --dport 8200 -j ACCEPT
Жмем Ctrl+O и Ctrl+X выполним команды
service iptables restart
добавим сервер в автозагрузку
chkconfig minidlna on
и запустим сервер
service minidlna start
Если не получается запустить можно тупо прописать в /etc/rc.local это
/usr/sbin/minidlna -d -f /etc/minidlna.conf &
Теперь можно запустить vlc плеер и мы увидим...
Для webmina есть модуль конфигурирования dlna, давайте попробуем поставить, заходим в webmin http://192.168.0.11:10000
в консоли скачаем пакет
cd /opt/
качаем вебминовский пакет
wget 'http://sourceforge.net/projects/minidlnawebmin/files/Webmin%20alpha1.12%20svn26/
в вебмине идем (слева) Webmin -> Настройка Webmin -> Модули Webmin
далее Из локального файла , выбираем то что скачали и жмем Установить модуль.
В службах у вас появится MiniDLNA serve, (фигня, я ожидал большего)
Вот так.