Опции сценария запуска Asterisk (для FreeBSD: /usr/local/etc/rc.d/asterisk)
service asterisk <опция> | Эквивалент для ввода вручную |
---|---|
start | asterisk |
stop | killall asterisk |
restart | stop; start |
reload | asterisk -rx "reload" |
status | ps aux / grep asterisk |
Команды CLI:
Расположение файлов Asterisk в Linux
/etc/asterisk - расположение конфигурации; /usr/lib/asterisk/modules - место хранения модулей Asterisk; /var/lib/asterisk/ - здесь находятся дополнительные файлы asterisk (звуки, agi-скрипты, картинки и т. д.).
Двоичный файл Asterisk по умолчанию располагается по адресу /usr/sbin/asterisk. Если запустить файл /usr/sbin/asterisk, Asterisk загрузится как программа-демон. Существует также несколько ключей, которые позволяют (повторно) запускать CLI Asterisk, задавать степень детальности вывода CLI и создавать дампы ядра в случае сбоя Asterisk (для отладки с помощью gdb). Чтобы увидеть все возможные опции, запустите Asterisk с ключом -h:
# /usr/sbin/asterisk -h
Вот список наиболее часто используемых опций:
Рассмотрим некоторые примеры. Запустить Asterisk как пользовательскую программу (потому что выполняется настройка конфигурационного файла и придется запускать и останавливать выполнение несколько раз) и задать уровень детальности сообщений 3 можно, используя следующую команду:
# /usr/sbin/asterisk -cvvv
Если процесс Asterisk уже выполняется (например, если Asterisk сконфигурирована как часть процесса запуска системы), используется ключ восстановления соединения:
# /usr/sbin/asterisk -vvvr
Если требуется, чтобы Asterisk выводила файл ядра после сбоя, при запуске Asterisk можно использовать ключ -g:
# /usr/sbin/asterisk -g
Чтобы выполнить команду, не подключаясь к CLI и не вводя ее (возможно, для того, чтобы использовать ее в сценарии), можно применять ключ -x в сочетании с ключом -r:
/usr/sbin/asterisk -rx "restart now" /usr/sbin/asterisk -rx "database show" /usr/sbin/asterisk -rx "sip show peers" asterisk -rx "module show"
Если возникают сбои и хотелось бы записывать информацию в файл отладки, используется следующая команда:
# /usr/sbin/asterisk -vvvvc | tee /tmp/debug.log
Обратите внимание, что ключ v не нужен, если не требуется, чтобы система предоставляла подробную информацию о происходящем. В сильно загруженной системе этот вывод может перекрывать другую выводимую в консоли информацию.