UCS 5.2 Upgrade Fails During Pre-Update Checks
Environment
- UCS system attempting to upgrade from UCS 5.0-10 to UCS 5.2-0 using the Univention Updater.
- Update initiated via the Software Update module or by running:
univention-upgrade --updateto=5.2-0 --ignoressh --ignoreterm
Problem:
When attempting to upgrade to UCS 5.2-0, the update process stops during the pre-update phase with multiple errors.
The updater log (/var/log/univention/updater.log) contains the following output:
04.09.25 15:54:57.780 DEBUG_INIT
**** Starting univention-updater 5.0-10 with parameter=['/usr/share/univention-updater/univention-updater', 'net', '--updateto', '5.2-0', '--ignoressh', '--ignoreterm']
--->DBG:update_available(mode=net)
Checking network repository
Update to = 5.1-0
**** Downloading scripts at Thu Sep 4 15:55:31 2025
**** Starting actual update at Thu Sep 4 15:56:08 2025
Starting /tmp/tmpc4m64mde/https:__updates.software-univention.de_dists_ucs510_preup.sh (Thu Sep 4 15:56:08 IST 2025):
HINT:
Please check the release notes carefully BEFORE updating to UCS 5.1-0:
UCS 5.1-0 is an intermediate release and must not be used in production.
After the update to UCS 5.1-0 make sure to immediately update to UCS 5.2-0,
the updater will ask you to do so.
All the necessary information is therefore in the release notes for UCS 5.2-0.
English version: https://docs.software-univention.de/release-notes/5.2-0/en/
German version: https://docs.software-univention.de/release-notes/5.2-0/de/
Please also consider documents of following release updates and
3rd party components.
Do you want to continue [Y/n]?
Custom preupdate script /var/lib/local-preup.sh not found
Checking auth_faillog ... OK
Checking blocking_apps ... Unable to cache apps
Unable to cache apps
OK
Checking cool_solutions ... OK
Checking disk_space ... FAIL
Checking docker_storage_driver ... OK
Checking failed_ldif ... OK
Checking for_postgresql96 ... FAIL
Checking hold_packages ... OK
Checking keycloak_migration ... FAIL
Checking ldap_connection ... OK
Checking ldap_schema ... OK
Checking legacy_objects ... FAIL
Checking master_version ... OK
Checking min_version ... OK
Checking minimum_ucs_version_of_all_systems_in_domain ... OK
Checking openldap_bdb ... OK
Checking overwritten_umc_templates ... OK
Checking package_status ... OK
Checking role_package_removed ... OK
Checking selinux_deactivated ... OK
Checking slapd_on_member ... OK
Checking ssh ... OK
Checking system_date_too_old ... OK
Checking term ... OK
Checking user_country_mapping ... OK
Checking valid_machine_credentials ... OK
Checking verify_translog_schema ... OK
The system can not be updated to UCS 5.1 due to the following reasons:
keycloak_migration:
Starting with UCS 5.2 the Keycloak app replaces SimpleSAMLphp
and the Kopano Konnect app as the default identity provider in UCS.
Before the update to 5.2 can start, this domain has to be migrated
to Keycloak.
This migration has not happend yet!
Please read the UCS 5.2 release notes <https://docs.software-univention.de/release-notes/5.2-0/en/index.html>
and the Keycloak migration guide: <https://docs.software-univention.de/keycloak-migration/index.html>
for how to migrate your domain to Keycloak.
- The following old SimpleSAMLphp/Kopano Konnect objects have been found.
They need to be removed before the update can happen:
* SAMLServiceProviderIdentifier=google.com,cn=saml-serviceprovider,cn=univention,dc=seascope,dc=in
* SAMLServiceProviderIdentifier=https://sp.testshib.org/shibboleth-sp,cn=saml-serviceprovider,cn=univention,dc=seascope,dc=in
* SAMLServiceProviderIdentifier=https://saml.salesforce.com,cn=saml-serviceprovider,cn=univention,dc=seascope,dc=in
* SAMLServiceProviderIdentifier=https://home.seascope.in/univention/saml/metadata,cn=saml-serviceprovider,cn=univention,dc=seascope,dc=in
Migration to Keycloak incomplete, update to UCS 5.2 not possible
Checking Keycloak migration status ...
- ucs/server/sso/uri (None) exists or is not relevant
disk_space:
Not enough space in /boot, need at least 300 MB.
This may interrupt the update and result in an inconsistent system!
Old kernel versions on /boot/ can be pruned by manully by running
'univention-prune-kernels' or automatically during
next update attempt by setting config registry variable
update52/pruneoldkernel to "yes".
This check can be disabled by setting the UCR variable 'update52/ignore_free_space' to 'yes'.
But be aware that this is not recommended!
for_postgresql96:
WARNING: PostgreSQL-9.6 is no longer supported by UCS-5.2 and must be migrated to
a newer version of PostgreSQL. See https://help.univention.com/t/17531 for
more details.
This check can be disabled by setting the UCR variable 'update52/ignore_postgresql96' to 'yes'.
But be aware that this is not recommended!
legacy_objects:
The following objects are no longer supported with UCS 5.2:
dn: cn=24x7,cn=nagios,dc=seascope,dc=in
dn: cn=WorkHours,cn=nagios,dc=seascope,dc=in
dn: cn=NonWorkHours,cn=nagios,dc=seascope,dc=in
They must be removed before the update can be done.
See <https://help.univention.com/t/22252> for details.
This check can be disabled by setting the UCR variable 'update52/ignore_legacy_objects' to 'yes'.
Error: Update aborted by pre-update script of release 5.1-0
Notifications
Notification
An update for UCS is available. Please visit the "Software update" module to install the updates.
Warning
The update to UCS 5.1-0 failed. Please visit the "Software update" module for more information.
Root Cause
The UCS pre-update checks prevent the upgrade due to several critical issues:
- Incomplete Keycloak migration
SimpleSAMLphp and Kopano Konnect SSO objects are still present in LDAP. - Insufficient disk space in
/boot
Less than 300 MB available. - Unsupported PostgreSQL 9.6 installation
PostgreSQL 9.6 must be upgraded before UCS 5.2. - Legacy Nagios “timeperiod” LDAP objects
Old Nagios objects are incompatible with UCS 5.2.
Solution:
Follow these steps to resolve each issue and proceed with the UCS 5.2 upgrade.
1. Complete the Keycloak Migration
From UCS 5.2 onward, Keycloak replaces SimpleSAMLphp and Kopano Konnect as the default Identity Provider.
Remove legacy SSO objects and configure the new SSO URI using:
univention-keycloak-migration-status --delete --create-sso-uri-setting
This command deletes obsolete UDM objects and creates the UCR variable ucs/server/sso/uri.
After this migration, legacy SimpleSAMLphp-based login will no longer work (expected behavior).
Refer to the Prepare for the update to UCS 5.2 for details.
2. Free Space in /boot
Ensure at least 300 MB of free space in /boot.
You can safely remove old kernel packages using:
apt autoremove -yapt autoclean -yunivention-prune-kernels
Then check available space:
df -h /boot
If less than 300 MB is free, manually remove additional kernel or initramfs files.
Reference: How to Free Space and Clean Up UCS
3. Upgrade PostgreSQL 9.6
PostgreSQL 9.6 is no longer supported in UCS 5.2.
Upgrade first to version 11 using the documented procedure:
[ -f /usr/sbin/univention-pkgdb-scan ] && chmod -x /usr/sbin/univention-pkgdb-scan
service postgresql stop
rm -rf /etc/postgresql/11
apt-get install --reinstall postgresql-11
ucr set postgres11/autostart='yes'
systemctl unmask postgresql@11-main.service
pg_dropcluster 11 main --stop
service postgresql start
[ -e /var/lib/postgresql/11/main ] && mv /var/lib/postgresql/11/main /var/lib/postgresql/11/main.old
pg_lsclusters -h | grep -q '^9\.6 ' && pg_upgradecluster 9.6 main
pg_lsclusters -h | grep -q '^9\.4 ' && pg_upgradecluster 9.4 main
univention-install --yes univention-postgresql-11
ucr commit /etc/postgresql/11/main/*
chown -R postgres:postgres /var/lib/postgresql/11
[ ! -e /etc/postgresql/11/main/conf.d/ ] && mkdir /etc/postgresql/11/main/conf.d/ && chown postgres:postgres /etc/postgresql/11/main/conf.d/
service postgresql restart
[ -f /usr/sbin/univention-pkgdb-scan ] && chmod +x /usr/sbin/univention-pkgdb-scan
pg_lsclusters -h
Reference: Updating from PostgreSQL 9.6 to 11
Afterward, plan the final upgrade from PostgreSQL 11 → 15 as described in
KB 22162.
4. Remove Legacy Nagios LDAP Objects
UCS 5.2 no longer supports old Nagios timeperiod objects such as:
cn=24x7,cn=nagios,dc=seascope,dc=in
cn=WorkHours,cn=nagios,dc=seascope,dc=in
cn=NonWorkHours,cn=nagios,dc=seascope,dc=in
Use the official Univention script to check and delete these:
wget https://raw.githubusercontent.com/univention/univention-corporate-server/5.2-0/base/univention-updater/script/check.shchmod +x check.shbash check.sh update_check_legacy_objectsbash check.sh delete_legacy_objects
Reference: Remove Legacy UDM LDAP Objects (KB 22252)
5. Re-Run the UCS Update
After completing all remediation steps, re-run the update:
univention-upgrade --updateto=5.2-0 --ignoressh --ignoreterm --noninteractive
or use the Software Update module in Univention Management Console (UMC).
The update will first move the system to UCS 5.1 and then automatically proceed to UCS 5.2.
Additional Notes
- Do not disable the pre-update checks (
update52/ignore_*) unless explicitly advised by Univention Support. - Always review the UCS 5.2 Release Notes before starting the upgrade.
- Ensure a valid system backup before major version upgrades.
Internal article
Summary
| Issue | Resolution |
|---|---|
| Keycloak migration incomplete | Run univention-keycloak-migration-status --delete --create-sso-uri-setting |
Low disk space in /boot |
Run univention-prune-kernels and ensure ≥ 300 MB free |
| PostgreSQL 9.6 unsupported | Upgrade to PostgreSQL 11 → 15 |
| Legacy Nagios objects | Delete using check.sh or manual ldapdelete |
| UCS 5.2 upgrade | Retry univention-upgrade after resolving all checks |
See also: