Help Search

Upgrade Passbolt from CE to Pro on Ubuntu

Pre-requisites

For this tutorial, you will need:

  • A minimal Ubuntu 22.04 server.
  • Passbolt CE Ubuntu package installed.

Upgrading passbolt

1. Take down your site

It is generally a good idea to stop running the site prior to the upgrade. This is to avoid having side effects such as active users corrupting the data in the middle of an upgrade.

$ sudo systemctl stop nginx

2. Backup passbolt

First things first, as this is a sensitive operation a backup of the instance must be performed to prevent any data loss. You can follow our backup process.

3. Upload your subscription key

You should copy your subscription key to /etc/passbolt/subscription_key.txt and ensure the permissions are correct.

sudo chown root:www-data /etc/passbolt/subscription_key.txt
sudo chmod 640 /etc/passbolt/subscription_key.txt

4. Uninstall passbolt CE

Passbolt CE package should be removed prior to installing passbolt Pro.

sudo apt-get remove passbolt-ce-server

5. Update passbolt package repository

For easier installation and update tasks Passbolt provides a package repository that you need to setup before you download Passbolt PRO and install it.

Step 1. Download our dependencies installation script:

wget "https://download.passbolt.com/pro/installer/passbolt-repo-setup.pro.sh"

Step 2. Download our SHA512SUM for the installation script:

wget https://github.com/passbolt/passbolt-dep-scripts/releases/latest/download/passbolt-pro-SHA512SUM.txt

Step 3. Ensure that the script is valid and execute it:

sha512sum -c passbolt-pro-SHA512SUM.txt && sudo bash ./passbolt-repo-setup.pro.sh  --passbolt-migrate  || echo \"Bad checksum. Aborting\" && rm -f passbolt-repo-setup.pro.sh

6. Install passbolt Pro

Now you can install the passbolt Pro package.

sudo apt-get install passbolt-pro-server

As you have already configured passbolt CE, and passbolt Pro relies on the same configuration, you should reply:

  • No for mysql configuration
  • No to nginx configuration

7. Migrate the data

Once the package installed, run the following command to migrate the data to passbolt Pro:

sudo -H -u www-data /bin/bash -c "/usr/share/php/passbolt/bin/cake passbolt migrate"

8. Clear the cache

Make sure you clear the application cache, to make sure any changes in the database structure are reflected in model cache files:

sudo -H -u www-data bash -c "/usr/share/php/passbolt/bin/cake cache clear_all"

9. Ensure you don’t have duplicate cron jobs

As you are upgrading from CE to Pro you will need to make sure you don’t have duplicate cronjobs.

You can do this by checking /etc/cron.d/

You may see:

/etc/cron.d/passbolt-ce-server
/etc/cron.d/passbolt-pro-server 

If this is the case you’ll want to run:

rm /etc/cron.d/passbolt-ce-server

As this will clear out the no longer needed CE job to send emails. If you leave this you may experience receiving duplicate emails.

The other regularly occuring job which you can remove will be under /etc/logrotate.d/

You may see:

/etc/logrotate.d/passbolt-ce-server
/etc/logrotate.d/passbolt-pro-server

If this is the case you’ll want to run:

rm /etc/logrotate.d/passbolt-ce-server

This will clean up the no longer needed log rotation job.

10. Bring your site back online

Finally take passbolt back up:

sudo systemctl start nginx

Last updated

This article was last updated on February 10th, 2021.

Is your installation not based on the Ubuntu package?

Migrate passbolt to Ubuntu package

Are you experiencing issues with Passbolt Pro Edition?

Contact Pro support

or ask the community

🍪   Do you accept cookies for statistical purposes? (Read more) Accept No thanks!