Occasionally Amahi applications fail to install properly. This is often noted by error messages in the application install log (/var/log/amahi-app-install.log).
======= app install begin @ 2014-05-03 07:42:37 -0500 ========== Installing app id qf1tweahyo under /var/hda/platform/html/script/.. ENV=produc tion NOTICE: redirected 'http://downloads.sourceforge.net/project/linfo/Linfo%20Stabl e%20Releases/linfo-1.11.tar.gz' --> 'http://iweb.dl.sourceforge.net/project/linf o/Linfo%20Stable%20Releases/linfo-1.11.tar.gz' ... file /var/hda/tmp/amahi-download-cache/9306c736dc7197b9a3ed6b4c9395d4ab6e779a48 written in cache Your HDA services have been restarted. Your HDA services have been restarted. mv: cannot stat ‘unpack’: No such file or directory sed: can't read html/config.inc.php: No such file or directory chown: cannot access ‘html/lib’: No such file or directory /tmp/run_script20140503-14160-1huv0uh: line 47: html/config.inc.php: No such fil e or directory App: Linfo installed ======= app install end @ 2014-05-03 07:42:43 -0500 ==========
Other times, you may receive notice in the Dashboard.
We take these seriously and have incorporated additional error checking/prevention methods. Unfortunately they don't catch everything.
Reasons for Failure
Reasons for failure vary, but the most common are:
- Network connection
- Install script:
- Taking too long
======= app install begin @ 2014-05-03 14:33:00 -0400 ========== Installing app id yi7uxa8mlb under /var/hda/platform/html/script/.. ENV=production Your HDA services have been restarted. Your HDA services have been restarted. NOTE: file /var/hda/tmp/amahi-download-cache/956319338e8752e6a8f544423df61187d8b7e320 written in cache /var/hda/platform/html/lib/system_utils.rb:66:in `run_script': run_script had to KILL this script. it was taking too long. sorry. (RuntimeError) from /var/hda/platform/html/app/models/app.rb:241:in `block in install_bg' from /var/hda/platform/html/app/models/app.rb:240:in `chdir' from /var/hda/platform/html/app/models/app.rb:240:in `install_bg' from /var/hda/platform/html/script/install-app:86:in `install_or_uninstall' from /var/hda/platform/html/script/install-app:107:in `main' from /var/hda/platform/html/script/install-app:119:in `<main>'
- Incorrect syntax
- Insufficient privileges
- Taking too long
- Application source file is unavailable:
- New version
- File moved
- Wrong SHA1 hash
WARNING: primary downloaded file /tmp/amahi-download- cache/b224eae4f30c011cbe6eae3c81d662f199eaa85f did not pass signature check - got 2da58737f99c63f47983db27789cf4b989975220, expected b224eae4f30c011cbe6eae3c81d662f199eaa85f
Recipe for Success
There are some recommendation users can follow to help correct or prevent these problems.
- Refresh your web browser or navigate from the page while an application is installing.
- Try to install an application after it initially fails. Need to diagnose issue.
- Look at the log for details of why the app install failed.
- View the Dashboard Apps tab, Installed section for the app.
- Check /var/hda/web-apps to ensure the app did not partially install.
- Search the forums for a similar issue and potential solution.
- Visit the IRC, #amahi channel for immediate assistance.
- Submit a bug report. Provide details to help with debugability of the issue.
Clean Up Failed Web App Install
NOTE: We will use owncloud as an example of the application that failed to install.
A web app install was unsuccessful, but it appears partially installed. This often happens and repeatedly trying to install without clean up results in multiple failed attempts. For example, 4 failed attempts of ownCloud would create owncloud, owncloud1, owncloud2, owncloud3.
To return your HDA to a safe state for another install attempt, the following may help:
- Navigate to the Network tab, DNS Aliases section in the Amahi Dashboard
- Make note of the URL name(s)
- Remove each entry for the failed application by selecting Delete
- If the app has a database, execute the following command:
hda-create-db-and-user -d owncloud
- The next steps must be done from the command line as root user:
- Navigate to /etc/httpd/conf.d and determine file(s) to remove
cd /etc/httpd/conf.d rm -rf 1001-owncloud.conf rm -rf 1002-owncloud1.conf rm -rf 1003-owncloud2.conf rm -rf 1004-owncloud3.conf
sysemctl restart httpd
rm -rf owncloud rm -rf owncloud1 rm -rf owncloud2 rm -rf owncloud3
- Finally check the HDA database hda_production (webapps table). The safest way is to use a web application such as Adminer or phpMyAdmin.
- Look to see if there is an entry for each app that failed to install correctly.
- Remove the row(s) that exist for the app (i.e. id 4, 5, 6, and 7)
MariaDB [hda_production]> select id,name from webapps; +----+------------+ | id | name | +----+------------+ | 1 | phpsysinfo | | 4 | owncloud | | 5 | owncloud1 | | 6 | owncloud2 | | 7 | owncloud3 | +----+------------+ 5 rows in set (0.00 sec)
Once these steps are complete, it should be safe to try and install the application. Monitor the /var/log/amahi-app-installer.log file for progress and errors via command line:
tail -f /var/log/amahi-app-installer.log
If the app continues to fail, recommend you seek professional assistance by submitting a bug report.