DLNA-сервер на Linux

Здесь представленный вариант подходит практически под любой дистр. Речь пойдет о minidlna.

Захотелось расшарить медиа-контент с компа для просмотра на TV и Android-девайсах. Покопался в нете, решил поставитьa. Там, в принципе и ставить то нечего, делов на 2 минуты.

И так, качаем отсюда последнюю версию — http://sourceforge.net/projects/minidlna/files/minidlna/

Распаковываем файл, переносим всю структуру распакованного в соответствующие папки.
Основные 2 файла это /etc/minidlna.conf и /usr/sbin/minidlna , проверяем атрибуты и владельца файлов

root@home2 ~ # ls -la /usr/sbin/minidlna
-rwxr-xr-x 1 root root 2462776 2011-03-15 06:46 /usr/sbin/minidlna
root@home2 ~ # ls -la /etc/minidlna.conf
-rw-r--r-- 1 root root 2159 2011-04-11 07:10 /etc/minidlna.conf

Скачиваем init скрипт отсюда

wget http://minidlna.cvs.sourceforge.net/viewvc/minidlna/minidlna/linux/minidlna.init.d.script

переносим

mv minidlna.init.d.script /etc/init.d/minidlna
chown root:root /etc/init.d/minidlna
chmod 755 /etc/init.d/minidlna

Далее переходим к настройкам /etc/minidlna.conf, прописываем необходимые пути, у меня вот так:

media_dir=V,/home/shad/data/Movies
media_dir=A,/home/shad/data/Music
media_dir=P,/home/shad/data/Pictures

буквы A V P соответствуют Аудио, Видео, Изображения

задаем имя серверу

friendly_name=HOME2

и собственно запускаем его, при необходимости добавляем автостарт демона.

/etc/init.d/minidlna start

Пробуем подключится с девайса, после поиска получаем следующее
sc20110411-074258
sc20110411-074309
sc20110411-074318

И можем наслаждаться. Для Android-а в маркете можете найти приложения для DLNA. Я использую AllShare предустановленную на SGS и SGT.
Сейчас многие TV оснащены возможностью проигрывать контент с DLNA, надеюсь пригодиться.

Удачи в настройках.
© shadow_alone

  • Полезно. Должно пригодиться 🙂

  • Аноним

    При запуске /etc/init.d/minidlna start получаю следующее…

    /etc/init.d/minidlna: line 28: log_daemon_msg: command not found
    /etc/init.d/minidlna: line 29: start-stop-daemon: command not found
    /etc/init.d/minidlna: line 30: log_end_msg: command not found

  • Вы не внимательно читали, у Вас просто нет этого файла, вот и выдает такое.
    wget http://minidlna.cvs.sourceforge.net/viewvc/minidlna/minidlna/linux/minidlna.init.d.script
    mv minidlna.init.d.script /etc/init.d/minidlna
    chown root:root /etc/init.d/minidlna
    chmod 755 /etc/init.d/minidlna

    вот это пропустили значит, или у Вас просто нет комманд:
    log_daemon_msg
    start-stop-daemon
    log_end_msg

    Какой дистр?

  • Аноним

    CentOS release 5.7 (Final)

  • В RH-дистрах действительно такого нет. запускайте 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
    —————-

  • Аноним

    Спасибо