I recently upgraded FreePBX from 2.7.1 to 2.8 and from 2.8 to 2.9 the upgrade went OK except for a minor problem where the symbolic link is broken. Whilst this did not cause any problems in terms of the functionality or the workings of the system, it would be nice to solve the problem which appears in the dashboard.
The title of the notification is “Symlink from modules failed” with the following body:
Error Symlink from modules failed retrieve_conf failed to sym link:
This can result in FATAL failures to your PBX. If the target file exists, the symlink will not occur and you should rename the target file to allow the automatic sym link to occur and remove this error, unless this is an intentional customization.
Other people have been getting other sym link errors other than sip_notify.conf but the technique should be the same.
Take backup copy of the files mentioned:
$sudo cp /etc/asterisk/sip_notify.conf /etc/asterisk/sip_notify.conf.bak
Ensure the backup file have the same permission and ownership as the original.
Remove the original file:
$sudo rm /etc/asterisk/sip_notify.conf
Run retrieve_conf function again. This is triggered by the orange button at the top of the screen which appears when settings have changed but not applied yet. An easy to do this is to go into any of the settings and hit submit. For example Outbound Routes > [select a route] > Submit Changes button. Click on the Apply Configuration Changes button and there error should disappear. To confirm this has worked (because it does not appear all the time) list the directory to see if a new symlink with the same name as the one that was deleted before:
$sudo ls -l
This time it should have a -> to indicated it’s a symlink and point to another path E.g /etc/asterisk/sip_notify.conf -> /var/www/html/admin/modules/core/etc/sip_notify.conf