Problem: Join status reports a missing join script after a paedML Linux upgrade

Problem

After upgrading a paedML Linux system, univention-check-join-status may report:

Error: Not all install files configured: 1 missing

In the observed cases, the affected join scripts were univention-directory-manager-rest and ucs-school-veyon-windows.

Investigation

Check /var/univention-join/status for malformed entries:

grep -n 'successful.*successful' /var/univention-join/status

An affected system showed two status entries concatenated into a single line:

univention-directory-manager-rest v2 successfulucs-school-veyon-windows v2 successful

Instead, both entries must be on separate lines:

univention-directory-manager-rest v2 successful
ucs-school-veyon-windows v2 successful

This also explains why univention-check-join-status reports the REST join script as missing while univention-run-join-scripts may still consider it already executed: the status check requires an exact line match, whereas the join script helper accepts a line beginning with the expected status string.

Root Cause

The immediate cause of the join status error is the malformed entry in /var/univention-join/status, where two successful join script entries are concatenated without a newline.

The underlying reason why the newline was lost could not be reproduced or determined from the available upgrade and join logs. The issue was observed only on some upgraded paedML Linux systems.

Solution

As a workaround, first create a backup of the status file:

cp -a /var/univention-join/status /var/univention-join/status.bak-$(date +%Y%m%d-%H%M%S)

Then split the known malformed entry into two separate lines:

sed -i 's/^univention-directory-manager-rest v2 successfulucs-school-veyon-windows v2 successful$/univention-directory-manager-rest v2 successful\nucs-school-veyon-windows v2 successful/' /var/univention-join/status

Verify the result with:

univention-check-join-status

The expected result is:

Joined successfully

This workaround corrects the malformed join status entry; it does not address the currently unknown cause of the missing newline.

This topic was automatically closed after 24 hours. New replies are no longer allowed.