A recipe to update grommunio to the current version.
Some special steps to be considered when updating to V 2.6 are explained.
- Connect via SSH like Putty to the grommunio server
- For most commands you may copy and paste the command to the grommunio server
Preparation of the update
If you use a virtual environment, create a snapshot.
Historically, the owner and permissions in /var/lib/grommunio-web/sqlite-index
may be set differently. This code fragment sets the default values. Works on Debian 11 and Open SuSE 15.3 and 15.4.
cd /var/lib/grommunio-web/sqlite-index
ls -ltr
chown groweb:groweb * -R
chmod 775 *
-ltr
find . -type f -exec chmod 664 {} \;
Update for Open SuSE:
Remove the unneeded php-opcache
zypper -e php-opcache
Refresh the repository
zypper ref
and perform the update
zypper up
If zypper up
reports problems, such as packages not being installed or packages being held back, be sure to repair these errors. One way to try is to install these packages manually, like: zypper in <package>
. This gives you some ideas why the installation fails. Please note: Partially updated systems will not work.
Run zypper up
again, only when no more packages are offered for installation, the update is done.
Continue with Finish Update
Update for Debian 11:
The Debian update is a bit more complicated than the Open SuSE Update.
Disable php opcache - very important
phpdismod opcache
Install needrestart, a helpful tool that offers to restart updated services
apt install needrestart
Now run the update:
Refresh the repository
apt update
and perform the update
apt upgrade
If apt upgrade
reports problems, such as packages not being installed or packages being held back, be sure to fix these errors. One way to try is to install these packages manually, like: apt install <package>
. This gives you some ideas why the installation fails. Please note: Partially updated systems will not work.
Run apt upgrade
again, only when no more packages are offered for installation, the update is done.
Edit: with current update, this issue was solved.
Repair the failed services
The V 2.6 update changes the permissions for the gromox services, we have to fix that.
Restore the permissions
chown :gromox /etc/gromox
Find out which services are not running?
systemctl --failed
Restart the services, as an example:
systemctl restart grommunio-index.service gromox-delivery-queue.service gromox-delivery.service gromox-event.service gromox-imap.service gromox-midb.service gromox-pop3.service gromox-timer.service gromox-zcore.service
Check if all services are running now?
systemctl --failed
Repair error 502 for grommunio-sync
The php-fpm socket is in the wrong location. We need to move the socket from /run/php-fpm/grommunio-sync
to /run/php/grommunio-sync
Backup old config file
cp /etc/php/7.4/fpm/pool.d/pool-grommunio-sync.conf /etc/php/7.4/fpm/pool.d/pool-grommunio-sync.conf.bak
Copy the pool config file to the correct location
cp /etc/php/7.4/fpm/php-fpm.d/pool-grommunio-sync.conf.dpkg-dist /etc/php/7.4/fpm/pool.d/pool-grommunio-sync.conf
Set correct socket location /run/php/grommunio-sync
in /usr/share/grommunio-common/nginx/upstreams.d/grommunio-sync-upstream.conf
Backup old config file
cp /usr/share/grommunio-common/nginx/upstreams.d/grommunio-sync-upstream.conf /usr/share/grommunio-common/nginx/upstreams.d/grommunio-sync-upstream.conf.bak
Change the socket location
sed -i 's/php-fpm/php/g' /usr/share/grommunio-common/nginx/upstreams.d/grommunio-sync-upstream.conf
Test nginx configuration
nginx -t
Repair any errors!
Restart services
systemctl restart php7.4-fpm.service
systemctl restart nginx
Continue with finish update
Finish update
Edit: the update my perform a database update, please wait with the reboout about 15 minutes to allow the database update to finish.
You may need to reboot the server with: init 6
Test grommunio
If everything is OK and a snapshot was created, remove the snapshot
Please note, the first restart of grommunio-index.service may need a long time, in most cases the grommunio-index services recreates all webapp indexes. Recreation time depends on the mailbox sizes.