В ходе бесчеловечных экспериментов по переносу FreePBX + VtigerCRM с виртуального хоста (QEMU KVM) на реальную машину столкнулся с неожиданной проблемой – web интерфейс freepbx выдал несколько ошибок:
скрипт retrieve_conf обнаружил ошибку: 1 Unable to connect to remote asterisk (does /var/run/asterisk.ctl exist?) freepbx asterisk manager interface astman failure /var/lib/asterisk/bin/storage.php from sysadmin/bin (Already exists, not a link) 1 error(s) occurred, you should view the notification log on the dashboard or main screen to check for more details.
Вся неприятность в переносе FreePBX состоит в том, что перенося базу и текстовые файлы конфигурации, вы получаете неработоспособный сервер asterisk. Экстеншены, транки, юзеров, очереди придется создавать по новой.
FreePBX стал неуправляем, сам астериск работает, в ответ на стандартное
asterisk -vvvvvvc Unable to connect to remote asterisk (does /var/run/asterisk/asterisk.ctl exist?)
Соответственно, звонки не идут, транки не регистрируются и всякая такая чепуха. Раскурив кучу мануалов с гугля пришел к выводу, надо пересобрать сам астериск. Конфигурация FreePBX у меня сильно нестандартная, переписывать по новой все очереди, IVR, транки, экстеншены – не вариант, собиралось годами и не все помню, что и куда заворачивается и откуда приходит. С учетом того что образ забэкаплен, не проблема. Очень хотелось отделаться “малой кровью”. В принципе все получилось, как нельзя лучше.
Для этого нужны исходники астериска той же версии. Если после сборки удалили, придется поискать.
Разбираем астериск
make clean make uninstall
Собираем астериск
cd /Asterisk-12-(актуальная версия) ./configure make menuselect make install amportal restart
После чего,
asterisk -vvvvvvc
И опля! Заработало!!!
Все живо поднялось, звонки идут правила по времени работают и т.д.
А можно проверить права на asterisk.ctl # ls -l /var/run/asterisk/asterisk.сtl
если покажет root root
выполнить # chown -R asterisk /var/run/asterisk
должен показать asterisk root
такая фигня бывает при обновлениях/добавлениях/удалениях модулей во FreePBX