PHP 8.2.30
Preview: service.py Size: 1.76 KB
/proc/thread-self/root/opt/cloudlinux/venv/lib64/python3.11/site-packages/clcagefslib/webisolation/service.py

#!/opt/cloudlinux/venv/bin/python3 -sbb
# -*- coding: utf-8 -*-
#
# Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2021 All Rights Reserved
#
# Licensed under CLOUD LINUX LICENSE AGREEMENT
# http://cloudlinux.com/docs/LICENCE.TXT
#
import os
import shutil
import subprocess

SERVICE_NAME = "cagefs-docroot-monitor.service"
SERVICE_PATH = f"/usr/share/cagefs/service/{SERVICE_NAME}"
SYSTEMD_UNIT_PATH = f"/etc/systemd/system/{SERVICE_NAME}"


def is_running():
    result = subprocess.run(
        ["/usr/bin/systemctl", "is-active", SERVICE_NAME], capture_output=True, text=True
    )
    return result.returncode == 0


def start_monitoring_service():
    if is_running():
        return
    shutil.copy(SERVICE_PATH, SYSTEMD_UNIT_PATH)
    result = subprocess.run(
        ["/usr/bin/systemctl", "enable", SERVICE_NAME], capture_output=True, text=True, check=True
    )
    if result.returncode:
        return
    result = subprocess.run(
        ["/usr/bin/systemctl", "daemon-reload"], capture_output=True, text=True, check=True
    )
    if result.returncode:
        return

    subprocess.run(
        ["/usr/bin/systemctl", "start", SERVICE_NAME], capture_output=True, text=True, check=True
    )


def stop_monitoring_service():
    if is_running():
        subprocess.run(
            ["/usr/bin/systemctl", "stop", SERVICE_NAME], capture_output=True, text=True, check=True
        )
    # disable may fail if the unit file was never installed — that's fine
    subprocess.run(
        ["/usr/bin/systemctl", "disable", SERVICE_NAME], capture_output=True, text=True
    )

    if os.path.exists(SYSTEMD_UNIT_PATH):
        os.remove(SYSTEMD_UNIT_PATH)

    subprocess.run(
        ["/usr/bin/systemctl", "daemon-reload"], capture_output=True, text=True, check=True
    )

Directory Contents

Dirs: 2 × Files: 13

Name Size Perms Modified Actions
crontab DIR
- drwxr-xr-x 2026-04-09 07:00:57
Edit Download
- drwxr-xr-x 2026-04-09 07:00:57
Edit Download
3.07 KB lrw-r--r-- 2026-03-24 09:59:14
Edit Download
1.74 KB lrw-r--r-- 2026-03-24 09:59:14
Edit Download
2.72 KB lrw-r--r-- 2026-03-24 09:59:14
Edit Download
6.21 KB lrw-r--r-- 2026-03-24 09:59:14
Edit Download
4.93 KB lrw-r--r-- 2026-03-24 09:59:14
Edit Download
2.23 KB lrw-r--r-- 2026-03-24 09:59:14
Edit Download
1.38 KB lrw-r--r-- 2026-03-24 09:59:14
Edit Download
4.96 KB lrw-r--r-- 2026-03-24 09:59:14
Edit Download
1.26 KB lrw-r--r-- 2026-03-24 09:59:14
Edit Download
3.39 KB lrw-r--r-- 2026-03-24 09:59:14
Edit Download
1.76 KB lrw-r--r-- 2026-03-24 09:59:14
Edit Download
1.90 KB lrw-r--r-- 2026-03-24 09:59:14
Edit Download
248 B lrw-r--r-- 2026-03-24 09:59:14
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).