Upgrading ownCloud to New Version Releases
ownCloud does not have a feature for automatically or for manually initiating the installation of new version releases. An administrator initiated "update" feature is "enabled" by default, but will only work in a "traditional" LAMP server environment using ownCloud install defaults. Moving to a new release is achieved by installing a newly updated "one click install" Amahi package. Installing a new ownCloud release manually is also possible but can introduce security risks due to manual configuration changes. Reinstalling a new Amahi package is a safer practice than a manual install.
When there is a new ownCloud version release, any third party applications written by a "third party author" may not work as expected with a new release. It takes time for third party authors to update their applications to work with a new ownCloud release. Some third party applications can be "restored" from backups or re-installed from the ownCloud applications store successfully for a new ownCloud version release.
When moving to a new ownCloud version release the ownCloud Community has defined two activities, "updates" and "upgrades", as specific implementation activities.
- Update: Bring an ownCloud instance to a new "point release" (ownCloud 6.0.5 => 6.0.6).
- Upgrade: Bring an ownCloud instance to a new "major release" (ownCloud 6.0.6 => 7.0.3).
Contents
Updating ownCloud on Amahi
Use the following steps for updating ownCloud:
- Catalogue all applications active in the current ownCloud instance. Take special care to identify the "core" applications that were activated and third party applications that were installed. There is no guarantee that third party applications will work on a new ownCloud release.
- Review and document all ownCloud sharing techniques used in the current ownCloud instance.
- It is recommended that all third party applications be disabled before upgrading.
- Do backups of the ownCloud database, binaries and stored files.
- Go to the Amahi Dashboard, Apps => Installed, and uninstall the current ownCloud instance. This will remove the ownCloud binaries and ownCloud database.
- Go to the Amahi Dashboard, Apps => Available, and install the new ownCloud release.
- Using a "terminal" connection, "cd" in to the ownCloud directory containing the binaries.
cd /var/hda/web-apps/owncloudx/html - where "x" is an ownCloud major release number
- Restore the ownCloud "config.php" file from backups.
- Using a "terminal" connection and using the command-line OR an Amahi MySQL application restore the ownCloud database from backups.
- Login to the ownCloud "admin" ID as usual.
- Navigate to the ownCloud Admin page and confirm the new version release number.
- Confirm some of the other settings and make appropriate changes (file upload/download sizes, versioning).
- DO NOT turn the system over to users yet!
- Restore the ownCloud applications from backups.
- If there is no match for the third party applications; activate the "core" applications needed, enable the third party applications needed. Please remember third party applications that do not work will take time for the authors to update for the new release version.
- Enable required "core" and third party applications "one-at-a-time", testing each application. Stop at any behavior that is not the same, this usually happens with third party applications (there maybe new versions that have to be installed).
- Login to a normal user ID and test ownCloud functionality (i.e. sharing) and applications.
- If the prior testing was successful have other users test their ownCloud IDs.
- The update is now completed.
Upgrading ownCloud on Amahi
Use the following steps for upgrading ownCloud:
- It is highly desirable that your current ownCloud instance is at the latest release number before the next major version release. This is important as there may have been some important meta data fixes (or other fixes) that the new major release is dependent on. If you skip this step the upgrade for ownCloud may have some problems at a future time.
- Catalogue all applications active in the current ownCloud instance. Take special care to identify the "core" applications that were activated and third party applications that were installed. There is no guarantee that third party applications will work on a new ownCloud release.
- Review and document all ownCloud sharing techniques used in the current ownCloud instance.
- Do backups of the ownCloud database, binaries and stored files.
- Go to the Amahi Dashboard, Apps => Installed, and uninstall the current ownCloud instance. This will remove the ownCloud binaries and ownCloud database.
- Go to the Amahi Dashboard, Apps => Available, and install the new ownCloud release.
- Using a "terminal" connection, "cd" in to the ownCloud directory containing the binaries.
cd /var/hda/web-apps/owncloudx/html - where "x" is an ownCloud major release number
- Restore the ownCloud "config.php" file from backups. Remember that this restore should be from the last major point release (i.e. 6.0.6) versus the new major release (i.e. 7.0.3) that will be the upgrade (not update).
- The following sub-steps must be done for ownCloud releases from version 6.0.5 and beyond. Refer to the "ownCloud 7.0 and Future Updates/Upgrades on Amahi" section on this page for more information. The following sub-steps use an upgrade from ownCloud 6.0.6 to 7.0.3 as an example.
- Navigate to the ownCloud "config" directory:
cd /var/hda/web-apps/owncloud7/html/config/
- The restored "config" directory contains a file, "config.php" as follows:
$CONFIG = array ( 'instanceid' => 'xxx', 'passwordsalt' => 'xxxx', 'datadirectory' => '/var/hda/files/owncloud6/data', 'dbtype' => 'mysql', 'version' => '6.0.6.1', 'dbname' => 'owncloud6', 'dbhost' => 'localhost', 'dbtableprefix' => 'oc_', 'dbuser' => 'owncloud6', 'dbpassword' => 'owncloud6', 'installed' => true, 'theme' => , 'maintenance' => false, );
- All references with "owncloud6" in this file must be changed to "owncloud7". DO NOT change the "version".
- The changes can be made with a text editor or the following command:
sed -i 's/owncloud6/owncloud7/g' /var/hda/web-apps/owncloud7/html/config/config.php
- The "config.php" will be as follows:
$CONFIG = array ( 'instanceid' => 'xxx', 'passwordsalt' => 'xxxx', 'datadirectory' => '/var/hda/files/owncloud7/data', 'dbtype' => 'mysql', 'version' => '6.0.6.1', 'dbname' => 'owncloud7', 'dbhost' => 'localhost', 'dbtableprefix' => 'oc_', 'dbuser' => 'owncloud7', 'dbpassword' => 'owncloud7', 'installed' => true, 'theme' => , 'maintenance' => false, );
- Using a "terminal" connection and using the command-line OR an Amahi MySQL application, restore the ownCloud database from backups.
- Using an Internet Browser navigate to ownCloud, the upgrade will now begin. Follow any instructions given by the ownCloud upgrade process.
- If the upgrade was successful, login to the ownCloud "admin" ID as usual.
- Navigate to the Admin page and confirm new version release number.
- Confirm some of the other settings and make appropriate changes (file upload/download sizes, versioning).
- DO NOT turn the system over to users yet!
- Navigate to the Apps page.
- Enable "core" applications that were used in the previous ownCloud instance "one-at-time". Testing each after enabling.
- Enable any additional applications available from the new release that were used in the prior ownCloud instance. Testing each after enabling.
- Download, install, and enable any required third party applications. Testing each after enabling. Please remember third party applications that do not work will take time for the third party authors to update for the new release version.
- Login to a normal user ID and test ownCloud functionality (i.e. sharing) and applications.
- If the prior testing was successful have other users test their ownCloud IDs.
- The upgrade is now completed.
ownCloud 8.0 and Future Updates/Upgrades on Amahi
In order to allow multiple instances of different version releases of ownCloud on the same Amahi server naming changes to the main ownCloud application directory and database names have been implemented.
- The location where the actual ownCloud application is stored has changed to "/var/hda/web-apps/owncloudx/html" (where "x" is the major release number). For example for ownCloud release version 7.0.3 the directory is named owncloud7.
- The ownCloud database user ID, password, and name have changed in the same manner. Before updating or upgrading changes will have to be made to the ownCloud "config.php" configuration file before proceeding further.
- You may want to consider changing your ownCloud data file directory name for the same naming convention. Provided you used the name owncloud as part of the data directory name.
- If you use automated backup and recovery software you may have to reload and reconfigure your ownCloud data and backup system configuration before the next backup set is taken. Some backup systems allow you to change the ownCloud directory names (data, ownCloud config,php location) in the existing backup sets (rsnapshot).
- Starting with ownCloud 8.0, any-to-any major version upgrades will be supported. Prior to ownCloud 8.0, it was necessary to upgrade one major version at a time (i.e. ownCloud 5 -> 6 -> 7 -> 8). With ownCloud 8, it will be possible to upgrade from 8.0 to 8.3 or 9.1 directly.
- Minor releases (versions that increase the third digit in the number) are planned by ownCloud for roughly each month. This means that once a month a minor release is "potentially" created for each supported version. Amahi will not necessarily provide all minor releases (i.e. 8.0.1, 8.0.2) unless a new minor release passes Amahi Tester certification. In the past we have experienced very buggy minor releases they disable main core functionality of ownCloud.
- Starting with ownCloud 8.0, on upgrade, most applications are disabled, only certain basic applications are left enabled (Files, Pictures). The ownCloud Community has "slimmed" down their installation package to provide basic functionality. Most "core" applications have now been moved to the ownCloud appStore.