PATH: //opt/cloudlinux/venv/bin
FILE_BARU
CREATE
FOLDER_BARU
MKDIR
UPLOAD_FILE
GO
[ .. KEMBALI ]
📄 Activate.ps1
↓
X
📄 activate
↓
X
📄 activate.csh
↓
X
📄 activate.fish
↓
X
📄 alembic
↓
X
📄 cagefs_enter_site.py
↓
X
📄 cagefsctl_user.py
↓
X
📄 chardetect
↓
X
📄 cl_sysctl
↓
X
📄 clcpapi
↓
X
📄 coverage
↓
X
📄 coverage-3.11
↓
X
📄 coverage3
↓
X
📄 cpanel-dbmapping
↓
X
📄 crontab-user-wrapper.py
↓
X
📄 da_suid_caller.py
↓
X
📄 detect-requirements
↓
X
📄 dodgy
↓
X
📄 epylint
↓
X
📄 f2py
↓
X
📄 f2py3
↓
X
📄 f2py3.11
↓
X
📄 flake8
↓
X
📄 futurize
↓
X
📄 get_gprof
↓
X
📄 get_objgraph
↓
X
📄 isort
↓
X
📄 isort-identify-imports
↓
X
📄 jsonschema
↓
X
📄 lvestats_config_reader.py
↓
X
📄 mako-render
↓
X
📄 normalizer
↓
X
📄 pasteurize
↓
X
📄 pip
↓
X
📄 pip3
↓
X
📄 pip3.11
↓
X
📄 plesk_suid_caller.py
↓
X
📄 prospector
↓
X
📄 py.test
↓
X
📄 pycodestyle
↓
X
📄 pydocstyle
↓
X
📄 pyflakes
↓
X
📄 pylint
↓
X
📄 pylint-config
↓
X
📄 pyreverse
↓
X
📄 pysemver
↓
X
📄 pytest
↓
X
📄 python
↓
X
📄 python3
↓
X
📄 python3.11
↓
X
📄 raven
↓
X
📄 symilar
↓
X
📄 tap
↓
X
📄 tappy
↓
X
📄 undill
↓
X
📄 virtualenv
↓
X
SAVING...
BERHASIL DIUBAH!
EDITING: cagefs_enter_site.py
#!/opt/cloudlinux/venv/bin/python3 -sbb # -*- coding: utf-8 -*- # # Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2025 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # https://cloudlinux.com/docs/LICENCE.TXT # """ Execute a command inside CageFS for a site (document root or domain). This wrapper provides a command-line interface for executing commands within the isolated CageFS environment for a specific website. """ import argparse import os import sys from clcagefslib.webisolation import libenter def create_parser(): """ Create argument parser for cagefs_enter_site. Returns: argparse.ArgumentParser: Configured argument parser """ parser = argparse.ArgumentParser( # the command is named with _underscores_ to match # existing cagefs_enter wrapper from lvewrappers prog="cagefs_enter_site", description="Execute a command inside CageFS for a site (document root or domain)", ) parser.add_argument("site", type=str, help="Document root or domain") parser.add_argument( "command", type=str, nargs=argparse.REMAINDER, help="Command to execute" ) return parser def main(): """ Main entry point. Returns: int: Exit code """ parser = create_parser() args = parser.parse_args() if not args.command: parser.error("COMMAND is required") try: return libenter.enter_site(args.site, args.command) except ValueError as e: print(f"Error: {e}", file=sys.stderr) return 1 except KeyboardInterrupt: # Clean Ctrl+C exit without traceback (exit code 130 = SIGINT). return 130 if __name__ == "__main__": if os.geteuid() == 0: print("Error: This program can not be run as root", file=sys.stderr) sys.exit(1) sys.exit(main())
SIMPAN PERUBAHAN