This just happened again when modules were updated. In a variation of rwize’s fix, I built a new system, updated all of the modules on the new system, and then did a scp of /var/www/html/admin/modules/ucp from the new system to the broken system. After that, from the console:
- chown asterisk.asterisk -R /var/www/html/admin/modules/ucp
- fwconsole chown
- fwconsole ma refreshsignatures
- fwconsole reload
This worked. In the module admin GUI, two UCP modules were showing up - this was because I made a backup of the broken UCP module (in the /var/www/html/admin/modules directory) before starting the aforementioned copy. When I deleted the backup directory, the second UCP module disappeared from module admin after a browser refresh.