debian.org / О Debian Где взять Debian Поддержка Уголок разработчика Новости Wiki

Автор Тема: minidlna при старте ОС не вдит мультимедию  (Прочитано 1088 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Modigar

  • Местный житель
  • ***
  • Topic Author
  • Сообщений: 189
После загрузки компа, означенный сервис есть в запущенных. Виден телевизом.
Но если гулять с телевизора по папкам, то они все пустые.
Если на компе сервису сделать рестарт, тогда на телеке все видно.
Куда посмотреть?
PS: Debian 8.10, minidlna версии 1.1.6+dfsg-1~bpo8+1
 

Оффлайн Бениамин Масан

  • Новичок форума
  • Сообщений: 8
Видимо слишком рано стартует сервис, попробуйте сделать его старт позже или с задержкой в несколько секунд. Как конкретно это делать зависит от системы иницилизации. У меня на 9 ке минидлна стартует одним из последних, все ок. Но там системд так что мои конфиги вам бесполезны
 

Оффлайн ogost

  • Главный модератор
  • Ветеран
  • *****
  • Сообщений: 2793
  • Linux Registered User #547151
логи смотреть надо, если не ошибаюсь, то в /var/log/minidlna.log
и в 8 тоже есть системдэ.

Оффлайн Modigar

  • Местный житель
  • ***
  • Topic Author
  • Сообщений: 189
Не думаю что сервис стартует раньше, чем происходит монтирование разделов.
 

Оффлайн endru

  • Главный модератор
  • Ветеран
  • *****
  • Сообщений: 1685
  • Новосибирск
  • Jabber: endru@jabber.ru
Не думаю что сервис стартует раньше, чем происходит монтирование разделов.
Тут дело не в монтирование раздела, а связанных службах. Лучше изучать логи, чем делать догадки.

Оффлайн ecc83

  • Ветеран
  • *****
  • Сообщений: 1068
  • Debian 8.11 Openbox && CentOS 7 x86_64 MATE
Не думаю что сервис стартует раньше

Тут эффективнее не "думать и ждать", а проверить и убедиться.
Сделать старт сервиса с задержкой на 10 секунд, пара пустяков. Уже давно можно было проверить.
 

Оффлайн Modigar

  • Местный житель
  • ***
  • Topic Author
  • Сообщений: 189
Уже давно можно было проверить.
Сложность в том, что я на работе, а комп дома. Как доберусь, проверю.
Кстати, намекните, как задержку сделать?
 

Оффлайн ecc83

  • Ветеран
  • *****
  • Сообщений: 1068
  • Debian 8.11 Openbox && CentOS 7 x86_64 MATE
Кстати, намекните, как задержку сделать?

Если просто "в лоб", то находите файл юнита вашего сервиса. Открываете его от имени root текстовым редактором.
Там внутри увидите строку запуска модуля. Она выглядит так:

ExecStart=/путь_к_модулю
меняете её так:

ExecStart=sh -c 'sleep 15 && /путь_к_модулю'
После перезапуска компа, через 15 секунд проверяете как запустился ваш сервис:

sudo systemctl status minidlna.service
.. или как он там у вас называется.

Если всё сработает, тогда можно более "красиво" сделать задержку.
В юните можно указать после какого сервиса стартовать этому. А можно и так оставить.
 

Оффлайн Modigar

  • Местный житель
  • ***
  • Topic Author
  • Сообщений: 189
находите файл юнита вашего сервиса
Я мож чего не так делаю, но в /etc нет файла содержащего строку
ExecStart=/бла/бла/.../minidlnadВыходит надо сразу пробовать пункт:
более "красиво"


Cообщение объединено 15 Май 2018, 19:13:20
логи смотреть надо
Ничего нет в логах, указывающих на ошибку.

Была только вот такая сомнительная надпись:
Цитировать
WARNING: Inotify max_user_watches [8192] is low or close to the number of used watches
  • and I do not have permission to increase this limit.  Please do so manually by writing a higher value into /proc/sys/fs/inotify/max_user_watches.
я поправил в /proc/sys/fs/inotify/max_user_watches
и это не помогло (избавиться от ворнинга в логе).
Но указанный в стартпосте трабл не решило
« Последнее редактирование: 15 Май 2018, 19:17:54 от Modigar »
 

Оффлайн ecc83

  • Ветеран
  • *****
  • Сообщений: 1068
  • Debian 8.11 Openbox && CentOS 7 x86_64 MATE
находите файл юнита вашего сервиса
Я мож чего не так делаю, но в /etc нет файла содержащего строку
ExecStart=/бла/бла/.../minidlnad

Чудно. А в какой газете вы прочитали, что файлы юнитов лежат в /etc ?
Удивляет, что люди при малейшей собственной ошибке, даже не хотят выяснить причину и что то почитать, а сразу пишут жалобы на форум.

Юниты лежат в /lib/systemd/system и в /etc/systemd/system. Второе расположение имеет приоритет над первым.
То есть есть в двух каталогах будет одинаковый юнит, то работать будет тот, что в /etc/systemd/system

Выходит надо сразу пробовать пункт:

более "красиво"

Дык пробуйте, кто ж возражает. Только не сидите в засаде и не ждите подсказок, а почитайте про systemd.
Может тогда у вас и получится более красиво. Если будут конкретные вопросы по синтаксису или ещё чего спрашивайте, а просто наблюдать, как кто то починит вам вашу систему, у вас врят ли получится.
 

Оффлайн Modigar

  • Местный житель
  • ***
  • Topic Author
  • Сообщений: 189
Re: minidlna при старте ОС не вдит мультимедию
« Ответ #10 : 15 Май 2018, 20:13:39 »
ass-way решения проблемы: в /etc/rc.local добавил запуск скрипта со sleep 15s и последующим рестартом сервиса.

Cообщение объединено 15 Май 2018, 20:18:35
А в какой газете вы прочитали, что файлы юнитов лежат в /etc ?
Да вот прям в этой:
Юниты лежат в /lib/systemd/system и в /etc/systemd/system.
И кто Вам сказал, что я искал по /etc не рекурсивно?

Кстати текста ExecStart=/бла/бла/.../minidlnaнет и в папке /lib/systemd (рекурсивный поиск)
« Последнее редактирование: 15 Май 2018, 20:18:35 от Modigar »
 

Оффлайн ecc83

  • Ветеран
  • *****
  • Сообщений: 1068
  • Debian 8.11 Openbox && CentOS 7 x86_64 MATE
Re: minidlna при старте ОС не вдит мультимедию
« Ответ #11 : 15 Май 2018, 20:39:32 »
Кстати текста ExecStart=/бла/бла/.../minidlnaнет и в папке /lib/systemd (рекурсивный поиск)

Ну для меня очевидно, что если сервис существует, значит он как то запускается и я полностью исключаю вариант мистики.
По всей видимости файл запуска называется НЕ "/бла/бла/.../minidlna" , а как то иначе.
Можно просто пошарить по указанным мной каталогам и посмотреть название файлов с расширением *.service на предмет чего то похожего на "minidlna" Затем уже заглянуть внутрь и увидеть ExecStart

На всякий случай можно посмотреть скрипты в /etc/init.d тоже на предмет похожего названия.
 

Оффлайн Modigar

  • Местный житель
  • ***
  • Topic Author
  • Сообщений: 189
Re: minidlna при старте ОС не вдит мультимедию
« Ответ #12 : 15 Май 2018, 20:49:50 »
Можно просто пошарить по указанным мной каталогам и посмотреть название файлов с расширением *.service на предмет чего то похожего на "minidlna"
Ну вообще то не первый день за компом, умею пользоваться поиском по файловой системе, в т.ч и по содержимому файлов. ExecStart совместно с minidlna нет.
По всей видимости файл запуска называется НЕ "/бла/бла/.../minidlna" , а как то иначе.
естесственно...
На всякий случай можно посмотреть скрипты в /etc/init.d тоже на предмет похожего названия.
есть файл /etc/init.d/minidlna
но в нем нет строки содержащей ExecStart
 

Оффлайн ecc83

  • Ветеран
  • *****
  • Сообщений: 1068
  • Debian 8.11 Openbox && CentOS 7 x86_64 MATE
Re: minidlna при старте ОС не вдит мультимедию
« Ответ #13 : 15 Май 2018, 20:57:49 »
есть файл /etc/init.d/minidlna
но в нем нет строки содержащей ExecStart

В нём такой строки не должно быть, это не systemd сервис.
Выложите этот файл куда то на файлообменник или если он не большой, тогда сюда под спойлер.

 

Оффлайн Modigar

  • Местный житель
  • ***
  • Topic Author
  • Сообщений: 189
Re: minidlna при старте ОС не вдит мультимедию
« Ответ #14 : 15 Май 2018, 21:04:58 »
Выложите этот файл куда то на файлообменник или если он не большой, тогда сюда под спойлер.
Spoiler: ShowHide

#!/bin/sh
### BEGIN INIT INFO
# Provides:          minidlna
# Required-Start:    $local_fs $network $remote_fs
# Required-Stop:     $local_fs $network $remote_fs
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: minidlna server
# Description:       minidlna, DLNA/UPnP-AV media server.
### END INIT INFO

# Authors: Alexander GQ Gerasiov <gq@debian.org>
#    Benoît Knecht <benoit.knecht@fsfe.org>

# Do NOT "set -e"

# PATH should only include /usr/* if it runs after the mountnfs.sh script
PATH=/sbin:/usr/sbin:/bin:/usr/bin
DESC="DLNA/UPnP-AV media server"
NAME=minidlna
DAEMON=/usr/sbin/minidlnad
PIDDIR=/run/$NAME
PIDFILE=$PIDDIR/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME

# Defaults (could be overridden in /etc/default/$NAME)
CONFIGFILE=/etc/minidlna.conf
LOGFILE=/var/log/minidlna.log
USER=minidlna
GROUP=minidlna
DAEMON_OPTS=""

# Exit if the package is not installed
[ -x "$DAEMON" ] || exit 0

# Read configuration variable file if it is present
[ -r /etc/default/$NAME ] && . /etc/default/$NAME

DAEMON_ARGS="-f $CONFIGFILE -P $PIDFILE $DAEMON_OPTS"

# Load the VERBOSE setting and other rcS variables
. /lib/init/vars.sh

# Define LSB log_* functions.
# Depend on lsb-base (>= 3.2-14) to ensure that this file is present
# and status_of_proc is working.
. /lib/lsb/init-functions

#
# Function that starts the daemon/service
#
do_start()
{
# Return
#   0 if daemon has been started
#   1 if daemon was already running
#   2 if daemon could not be started
touch $LOGFILE && chown $USER:$GROUP $LOGFILE || return 2
mkdir -p $PIDDIR && chown $USER:$GROUP $PIDDIR || return 2

start-stop-daemon --start --quiet --pidfile $PIDFILE \
--chuid $USER:$GROUP --exec $DAEMON --test > /dev/null \
|| return 1
start-stop-daemon --start --quiet --pidfile $PIDFILE \
--chuid $USER:$GROUP --exec $DAEMON -- \
$DAEMON_ARGS \
|| return 2
}

#
# Function that stops the daemon/service
#
do_stop()
{
# Return
#   0 if daemon has been stopped
#   1 if daemon was already stopped
#   2 if daemon could not be stopped
#   other if a failure occurred
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --exec $DAEMON
RETVAL="$?"
[ "$RETVAL" = 2 ] && return 2
# Wait for children to finish too if this is a daemon that forks
# and if the daemon is only ever run from this initscript.
start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
[ "$?" = 2 ] && return 2
# Many daemons don't delete their pidfiles when they exit.
rm -f $PIDFILE
return "$RETVAL"
}

#
# Function that sends a SIGUSR2 to the daemon/service
#
do_rotate()
{
touch $LOGFILE && chown $USER:$GROUP $LOGFILE || return 2
start-stop-daemon --stop --signal USR2 --quiet --pidfile $PIDFILE --exec $DAEMON
return 0
}

case "$1" in
  start)
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
do_start
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
  stop)
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
do_stop
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
  status)
status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
;;
  restart|force-reload)
log_daemon_msg "Restarting $DESC" "$NAME"
do_stop
case "$?" in
  0|1)
if [ "$1" = "force-reload" ]; then
# Rescan the collection
DAEMON_ARGS="$DAEMON_ARGS -R"
fi
do_start
case "$?" in
0) log_end_msg 0 ;;
1) log_end_msg 1 ;; # Old process is still running
*) log_end_msg 1 ;; # Failed to start
esac
;;
  *)
# Failed to stop
log_end_msg 1
;;
esac
;;
  rotate)
log_daemon_msg "Reopening logs for $DESC" "$NAME"
do_rotate
log_end_msg $?
;;
  *)
echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload|rotate}" >&2
exit 3
;;
esac

:

 

Русскоязычное сообщество Debian GNU/Linux

Re: minidlna при старте ОС не вдит мультимедию
« Ответ #14 : 15 Май 2018, 21:04:58 »


Теги:
 

MiniDLNA: знаки вопроса в именах папок

Автор vismuth

Ответов: 7
Просмотров: 1484
Последний ответ 16 Сентябрь 2016, 07:27:01
от qupl
[Решено]Тайна MiniDlNA

Автор Panov

Ответов: 8
Просмотров: 2104
Последний ответ 24 Февраль 2018, 19:17:31
от ihammers