diff --git a/src/lac/idm/challenges.py b/src/lac/idm/challenges.py index a759f4d..43238ae 100644 --- a/src/lac/idm/challenges.py +++ b/src/lac/idm/challenges.py @@ -49,5 +49,10 @@ def get_all_libre_workspace_challenges(): # Challenge 8: Are the email settings configured and working? if not unix_email.are_mail_settings_configured(): challenges.append({"text": "Die E-Mail Einstellungen sind noch nicht konfiguriert oder funktionieren nicht.", "link": reverse("email_configuration")}) + + + # Challenge 9: Is linux-arbeitsplatz-unix.service running? + if not unix.is_unix_service_running(): + challenges.append({"text": "linux-arbeitsplatz-unix.service läuft aktuell nicht. Automatische Aufgaben wie Backups oder Updates werden somit nicht ausgeführt.", "link": reverse("unix_index")}) return challenges \ No newline at end of file diff --git a/src/lac/unix/unix_scripts/unix.py b/src/lac/unix/unix_scripts/unix.py index 6171eba..e0d7c09 100644 --- a/src/lac/unix/unix_scripts/unix.py +++ b/src/lac/unix/unix_scripts/unix.py @@ -917,4 +917,9 @@ def set_additional_services_control_files(start_additional_services, stop_additi f.write(start_additional_services) with open("maintenance/stop_additional_services.sh", "w") as f: f.write(stop_additional_services) + + +def is_unix_service_running(): + """Checks if linux-arbeitsplatz-unix.service is running""" + return os.system("systemctl is-active --quiet linux-arbeitsplatz-unix") == 0 \ No newline at end of file