1,026

Re: liquidsoap

Здравствуйте уважаемые форумчане! Прошу помощи у знающих. Имеется установленный Debian 7, на котором крутиться icecast2 и liquidsoap. Liquidsoap из консоли запускается от пользователя admin командой: liquidsoap /etc/liquidsoap/icecast.sh о Не могу решить следующих двух вопросов:
1. Как добавить данный скрипт в автозагрузку и чтобы liquidsoap запускал вещание автоматически после перезагрузки системы?
2. Как сделать, чтобы liquidsoap продолжал работу даже после закрытия консоли?
Заранее благодарен всем откликнувшимся за помощь!

P.S. пытался добавить команду  /etc/liquidsoap/icecast.sh в файл rc.local, права на сам скрипт выставлены 755, но liquidsoap после рестарта системы автоматом не срабатывает.

Отредактировано meloman197 (13-08-2014 10:35:21)

1,027

Re: liquidsoap

1. или через cron или писать init.d скрипт
2.

#!/usr/bin/liquidsoap -d
set("init.daemon",true)
set("init.daemon.pidfile",false)

1,028

Re: liquidsoap

tarasian666, спасибо за оперативный ответ. Если у меня путь к скрипту liquidsoap такой: /etc/liquidsoap, то прописывать так:
#!/etc/liquidsoap -d
set("init.daemon",true)
set("init.daemon.pidfile",false)

?

1,029

Re: liquidsoap

Содержание файла с конфигурацией /etc/liquidsoap/icecast.sh:
Т.е. вставлять в данный файл вот так:
#!/etc/liquidsoap -d
set("init.daemon",true)
set("init.daemon.pidfile",false)
set("log.file.path","/var/log/liquidsoap/basic.log")
set("log.stdout",true)
set("log.level",3)
set("server.telnet.bind_addr","127.0.0.1")
set("server.telnet",true)
myplaylist = mksafe(playlist(reload=3000, '/home/user/radio/autodj'))
radio = myplaylist
radio = mksafe(radio)
radio = crossfade(start_next=6.0, fade_out=3.0, fade_in=3.0, radio)
output.icecast(%mp3(bitrate=192, id3v2 = true),
mount = "live.mp3", radio,
host = "localhost", port = 8000, password = "пароль"


Прошу прощения, а не подскажете как еще правильно строку через cron прописывать?
Заранее благодарен.

Отредактировано meloman197 (13-08-2014 10:49:42)

1,030

Re: liquidsoap

/etc/liquidsoap текстовый конфиг или бинарный исполняемый файл?

1,031

Re: liquidsoap

Прошу прощения но не совсем понял суть вопроса... Полный путь к скрипту с вышеуказанным содержимым расположен по адресу:
/etc/liquidsoap/icecast.sh Ну скорее всего это будет являться текстовым файлом.

Отредактировано meloman197 (13-08-2014 10:48:48)

1,032

Re: liquidsoap

#!/usr/bin/liquidsoap -d

это должен быть путь к бинарному файлу который читает конфиг и запускается, эта строчка позволяет запускать сразу конфиг как исполняемый файл.
Если вы запускаете так liquidsoap /etc/liquidsoap/icecast.sh то или не пользуйтесь той строчкой и запускайте так
liquidsoap -d /etc/liquidsoap/icecast.sh
или вставьте ту строчку и запускайте проще
/etc/liquidsoap/icecast.sh
только надо знать точный путь к бинарному файлу чтоб прописать его в конфиге и дать файлу /etc/liquidsoap/icecast.sh права на запуск

для cron
@reboot /путь_к_запускаемому_файлу

1,033

Re: liquidsoap

Огромное спасибо за помощь. При запуске в консоли  командой liquidsoap -d /etc/liquidsoap/icecast.sh получаю ошибку:
Fatal error: exception Sys_error("/var/run/liquidsoap/icecast.pid: Permission denied")
Raised at file "pervasives.ml", line 231, characters 21-47

1,034

Re: liquidsoap

set("init.daemon.pidfile",false)

эта строчка точно присутствует?

1,035

Re: liquidsoap

Перезагрузил сервер, заработало. Т.е. если я теперь пропишу в кроне@reboot  /etc/liquidsoap/icecast.sh, то теперь после ребута сервера liquidsoap будет запускаться автоматически?

Отредактировано meloman197 (13-08-2014 11:20:58)

1,036

Re: liquidsoap

должен, если все правильно сделано

1,037

Re: liquidsoap

Еще раз огромное спасибо за помощь, tarasian666!

1,038

Re: liquidsoap

Прощу прощения но прописал в кроне, но не запускается:

MAILTO=
15 02 * * * sudo /usr/local/vesta/bin/v-update-sys-queue disk
10 00 * * * sudo /usr/local/vesta/bin/v-update-sys-queue traffic
30 03 * * * sudo /usr/local/vesta/bin/v-update-sys-queue webstats
*/5 * * * * sudo /usr/local/vesta/bin/v-update-sys-queue backup
10 05 * * * sudo /usr/local/vesta/bin/v-backup-users
20 00 * * * sudo /usr/local/vesta/bin/v-update-user-stats
*/5 * * * * sudo /usr/local/vesta/bin/v-update-sys-rrd
@reboot  /etc/liquidsoap/icecast.sh

1,039

Re: liquidsoap

Может в кроне нужно прописывать: @reboot liquidsoap -d /etc/liquidsoap/icecast.sh ?

Отредактировано meloman197 (13-08-2014 11:45:04)

1,040

Re: liquidsoap

При запуске по крону  @reboot  /etc/liquidsoap/icecast.sh получаю ошибку: /bin/sh: 1: /etc/liquidsoap/icecast.sh: Permission denied
Задание по крону в консоли добавлял под пользователем admin под которым в консоли скрипт запускается успешно. Может ошибка в данном случае возникает из - за того, что запускается она из под root?

Сейчас посмотрел файл /var/spool/cron/crontabs вышеуказанная строчка @reboot  /etc/liquidsoap/icecast.sh присутствует в нужном крон-файле для пользователя admin. В чем тогда проблема никак не пойму?

Отредактировано meloman197 (13-08-2014 11:58:21)

1,041

Re: liquidsoap

права на запуск есть?

1,042

Re: liquidsoap

Да, 755. Правда устанавливал права не через консоль, а через WinSCP конкретно для файла icecast.sh. Может это играет роль?

Отредактировано meloman197 (13-08-2014 12:26:19)

1,043

Re: liquidsoap

Выполнил команду:   ls -l
и получил:
файл скрипта:
-rwxr-xr-x 1 root root 636 Aug 13 07:04 icecast.sh

папка liquidsoap:
drwxr-xr-x 2 root     root     4096 Aug 12 07:42 liquidsoap

Так и должно быть или необходимо к скрипту добавить пользователя от имени которого он запускается в консоли, т.к. здесь видно root, а из под него liquidsoap не запуститься?

Прошу прощения за очередные банальные вопросы и заранее благодарен за помощь!

Отредактировано meloman197 (13-08-2014 13:35:12)

1,044

Re: liquidsoap

Вам бы стоило подробнее ознакомиться с cron. Если вы делаете это в основном то всё запускает под root, вы можете прописать команду используя su либо использовать крон принадлежащий конкретному пользователю.

1,045

Re: liquidsoap

пишет features:

Вам бы стоило подробнее ознакомиться с cron. Если вы делаете это в основном то всё запускает под root, вы можете прописать команду используя su либо использовать крон принадлежащий конкретному пользователю.

Спасибо. В системе у меня два пользователя root и admin. Под рутом liquidsoap запустить не возможно, поэтому мне необходимо запустить скрипт от пользователя admin. В кроне принадлежащему пользователю admin строка на запуск скрипта прописана, но скрипт не стартует.

Отредактировано meloman197 (13-08-2014 13:41:06)

1,046

Re: liquidsoap

Ребята, помогите разобраться пожалуйста...

1,047

Re: liquidsoap

Подскажите пожалуйста как при моей конфигурации сделать (куда и что добавить) постоянное проигрывание плейлиста с именем playlist.pls ? Заранее благодарен всем за помощь!

Мой конфиг:

#!/etc/liquidsoap -d
set("init.daemon",true)
set("init.daemon.pidfile",false)
set("log.file.path","/var/log/liquidsoap/basic.log")
set("log.stdout",true)
set("log.level",3)
set("server.telnet.bind_addr","127.0.0.1")
set("server.telnet",true)
myplaylist = mksafe(playlist(reload=3000, '/home/user/radio/autodj'))
radio = myplaylist
radio = mksafe(radio)
radio = crossfade(start_next=6.0, fade_out=3.0, fade_in=3.0, radio)
output.icecast(%mp3(bitrate=192, id3v2 = true),
mount = "live.mp3", radio,
host = "localhost", port = 8000, password = "пароль"

Отредактировано meloman197 (14-08-2014 02:43:16)

1,048

Re: liquidsoap

Он помоему понимает все плейлисты, так что просто вставить вместо папки.
А первая строчка скорей всего неправильная, не может бинарник лежать в etc

1,049

Re: liquidsoap

Спасибо. Т.е. так myplaylist = mksafe(playlist(reload=3000, '/home/user/radio/autodj/playlist.pls)) ?

Отредактировано meloman197 (14-08-2014 09:27:00)

1,050

Re: liquidsoap

Ну наконец частично я решил свою проблему с автозапуском liquidsoap после перезагрузки: добавлением в cron следующей строчки:

/usr/bin/liquidsoap -d /etc/liquidsoap/icecast.sh

Liquidsoap стартует после ребута, аудиопоток идёт, НО..... название трека (остальные метаданные отображаются)  не отображается. Если при этом зайти через SSH и в консоли набрать:

liquidsoap -d /etc/liquidsoap/icecast.sh

все начинает отображаться. Может кто - нибудь сталкивался с аналогичной проблемой и имеет какие - либо соображения по данному поводу? Заранее благодарен!

Отредактировано meloman197 (14-08-2014 22:29:53)