Skip to main content

Debian 12


For this tutorial, you will need:

  • A minimal Debian 12 server.
  • Passbolt Debian 12 package installed.

The recommended server requirements are:

  • 2 cores
  • 2GB of RAM

FAQ pages:

Upgrade 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 your database

It is recommended to always perform a backup of your passbolt installation. Please check the backup article

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. Upgrade 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 ""

Step 2. Download our SHA512SUM for the installation script:


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

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

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 mariadb 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 /bin/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:


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:


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

Almost done:

sudo systemctl start nginx
Example of healthcheck screen
fig. Example of healthcheck screen

You can also run the following command:

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

If you run into some issues

  • Make a copy or screenshot of the errors messages displayed on the screen
  • Check for error message in the logs directory
  • Check for error message in the browser console
  • Checkout the previous working version using git
  • Drop the database and load your backup data to restore to a previously working version
  • Note down the the details of you environment: your OS, php, mysql environment versions.

Where to get help:

  • If you are a Passbolt Pro Edition subscriber send us an email with the details.
  • If you are a Passbolt Community Edition user you can open new thread on the community forum.
  • The more information you provide about what you did, what you tried, how your environment look like, the easiest it will be for people to help you.