| Server IP : 162.214.74.102 / Your IP : 216.73.216.192 Web Server : Apache System : Linux dedi-4363141.lrsys.com.br 3.10.0-1160.119.1.el7.tuxcare.els25.x86_64 #1 SMP Wed Oct 1 17:37:27 UTC 2025 x86_64 User : lrsys ( 1015) PHP Version : 5.6.40 Disable Function : exec,passthru,shell_exec,system MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /opt/imunify360/venv/lib/python3.11/site-packages/defence360agent/migrations/ |
Upload File : |
"""Unmount sigs/v1 from CageFS."""
import logging
import subprocess
from pathlib import Path
logger = logging.getLogger(__name__)
def migrate(migrator, database, fake=False, **kwargs): # NOSONAR python:S1142
if fake:
return
try:
from defence360agent.subsys import clcagefs
filename = clcagefs.CAGEFS_MP_FILENAME
except ImportError:
filename = "/etc/cagefs/cagefs.mp"
try:
text = Path(filename).read_text()
except FileNotFoundError: # indication of a non-cagefs system
return # nothing to do
except Exception as e: # NOSONAR pylint:W0703
logger.exception("Can't read %s, reason: %s", filename, e)
return
else:
if "/var/imunify360/files/sigs/v1" not in text:
return # nothing to do
try:
subprocess.check_call(
r"sed -i.im360-bak '\:/var/imunify360/files/sigs/v1:d' %s"
" && grep /var/imunify360/files/sigs/v1 /proc/mounts"
" | awk '{ print $2 }' | xargs -rn1 umount"
" && /usr/sbin/cagefsctl --wait-lock --unmount-all"
" && /usr/sbin/cagefsctl --wait-lock --force-update-etc"
" && /usr/sbin/cagefsctl --wait-lock --remount-all" % (filename,),
shell=True,
executable="/bin/bash",
)
except Exception as e: # NOSONAR pylint:W0703
logger.exception("Can't unmount sigs/v1, reason: %s", e)
def rollback(migrator, database, fake=False, **kwargs):
pass