Univention Bugzilla – Bug 47931
Error message during App installation via UMC: Warning: univention-management-console-server.service changed on disk
Last modified: 2018-11-14 14:40:28 CET
Created attachment 9694 [details] appcenter.log During the installation of the UCS@school, I received the following error message as popup: ============================================================================= Ein Fehler ist aufgetreten: Warning: univention-management-console-server.service changed on disk. Run 'systemctl daemon-reload' to reload units. Warning: univention-management-console-web-server.service changed on disk. Run 'systemctl daemon-reload' to reload units. Weitere Hinweise finden Sie in der folgenden Logdatei auf den beteiligten Systemen: /var/log/univention/appcenter.log ============================================================================= UCS Version 4.3-1errata218
I'm increasing the priority. If you install a UCS@school environment, then this error message does not establish confidence in the product.
This error is not really UCS@school specific. In fact, it is not really App Center "core code". You get the same error when installing, e.g., audriga. Maybe every App, at least all package based Apps are affected. It originates in the PackageManager itself. The PackageManager installs Apps within a "self.no_umc_restart()" context. After the App has been (successfully!) installed (status code 200), it does this: /usr/share/univention-updater/enable-apache2-umc --no-restart This results in these calls: service univention-management-console-server start service univention-management-console-web-server start Those commands write the warning to stderr and the PackageManager uses its "error_handler" function to propagate stderr to the end user eventually. You can see a lot of these errors in the appcenter.log during the apt-get subcommand, but those errors are not propagated.
We could do the following: 1. Do not use the error_handler in the PackageManager for "/usr/share/univention-updater/enable-apache2-umc" This would restore confidence in the App installation, but just hide the error. 2. Do a systemctl daemon-reload in one package. This should work. But sadly, it does not, at least not in your environment. systemd seems confused over the fact that your local time is behind. This fixes the message: rdate time.fu-berlin.de systemctl daemon-reload # test it: /usr/share/univention-updater/enable-apache2-umc --no-restart This fix seems error prone in itself and could happen anytime after this fix was released as well. 3. We do nothing As the system clock is wrong and the user will likely experience this error message in various cases, we could leave it the way it is. This seems wrong, as the App installation "feels" broken. Also, the error message does not give any hint what to do. I think we should go with 1.
The function no_umc_restart uses the function _shell_command (same module). This function passes the output of std_out and std_err streams of the shell command called to the progress state which causes the messages to appear. The function already has an optional parameter handle_streams which can be set to False to suppress this. The calls of _shell_command in no_umc_restart have been changed to use this parameter.
Works great.
<http://errata.software-univention.de/ucs/4.3/306.html>