X7ROOT File Manager
Current Path:
/opt/cloudlinux/venv/bin
opt
/
cloudlinux
/
venv
/
bin
/
??
..
??
Activate.ps1
(8.82 KB)
??
activate
(1.65 KB)
??
activate.csh
(915 B)
??
activate.fish
(2.14 KB)
??
alembic
(202 B)
??
cagefs_enter_site.py
(1.83 KB)
??
cagefsctl_user.py
(12.89 KB)
??
chardetect
(210 B)
??
cl_sysctl
(4.51 KB)
??
clcpapi
(3.64 KB)
??
coverage
(204 B)
??
coverage-3.11
(204 B)
??
coverage3
(204 B)
??
cpanel-dbmapping
(3.83 KB)
??
crontab-user-wrapper.py
(2.46 KB)
??
da_suid_caller.py
(686 B)
??
detect-requirements
(211 B)
??
dodgy
(197 B)
??
epylint
(208 B)
??
f2py
(205 B)
??
f2py3
(205 B)
??
f2py3.11
(205 B)
??
flake8
(203 B)
??
futurize
(204 B)
??
get_gprof
(1.84 KB)
??
get_objgraph
(1.63 KB)
??
isort
(198 B)
??
isort-identify-imports
(232 B)
??
jsonschema
(202 B)
??
lvestats_config_reader.py
(1.12 KB)
??
mako-render
(202 B)
??
normalizer
(233 B)
??
pasteurize
(206 B)
??
pip
(237 B)
??
pip3
(237 B)
??
pip3.11
(237 B)
??
plesk_suid_caller.py
(905 B)
??
prospector
(202 B)
??
py.test
(210 B)
??
pycodestyle
(201 B)
??
pydocstyle
(202 B)
??
pyflakes
(200 B)
??
pylint
(206 B)
??
pylint-config
(222 B)
??
pyreverse
(212 B)
??
pysemver
(198 B)
??
pytest
(210 B)
??
python
(15.59 KB)
??
python3
(15.59 KB)
??
python3.11
(15.59 KB)
??
raven
(208 B)
??
symilar
(208 B)
??
tap
(196 B)
??
tappy
(196 B)
??
undill
(603 B)
??
virtualenv
(227 B)
Editing: cl_sysctl
#!/opt/cloudlinux/venv/bin/python3 -bb # coding: utf-8 # Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2018 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # http://cloudlinux.com/docs/LICENSE.TXT import fcntl import sys import time import os from argparse import ArgumentParser from clcommon.sysctl import SysCtlConf, SysCtlMigrate, SYSCTL_CL_CONF_FILE, SYSCTL_FILE SELF_LOCK_FILE = '/var/log/cl_sysctl.lock' def create_parser(): config_help = 'Path to sysctl config file. It\'s %(default)s by default' config_path = SYSCTL_CL_CONF_FILE parser = ArgumentParser(description='Utility for working with sysctl configs. INTERNAL USAGE ONLY!') subparsers = parser.add_subparsers(dest='command') subparser_set = subparsers.add_parser(name='set', help='Set or add the the sysctl parameter to the sysctl config') subparser_set.add_argument('-P', '--parameter', action='store', required=True, help='Name of the sysctl parameter') subparser_set.add_argument('-V', '--value', action='store', required=True, help='Value of the sysctl parameter') subparser_set.add_argument('-C', '--config', action='store', help=config_help, default=config_path) subparser_get = subparsers.add_parser(name='get', help='Get the sysctl parameter') subparser_get.add_argument('-P', '--parameter', action='store', required=True, help='Name of the sysctl parameter') subparser_get.add_argument('-C', '--config', action='store', help=config_help, default=config_path) subparser_remove = subparsers.add_parser(name='remove', help='Remove the sysctl parameter from the sysctl config') subparser_remove.add_argument('-P', '--parameter', action='store', required=True, help='Name of the sysctl parameter') subparser_remove.add_argument('-C', '--config', action='store', help=config_help, default=config_path) subparsers_migrate = subparsers.add_parser(name='migrate', help='Migrate sysctl param from {} to {}'.format( SYSCTL_FILE, SYSCTL_CL_CONF_FILE, )) subparsers_migrate.add_argument('-P', '--parameter', action='store', required=True, help='Name of the sysctl parameter') subparsers_migrate.add_argument('-dV', '--default-value', action='store', help='Default value of sysctl parameter if it is absent in source file') return parser def _parse_args(argv): parser = create_parser() params = parser.parse_args(argv) return params def main_(args): params = _parse_args(args) command = params.command if command == 'set': config_file = params.config sysctl = SysCtlConf(config_file=config_file) sysctl.set(name=params.parameter, value=params.value) elif command == 'get': config_file = params.config sysctl = SysCtlConf(config_file=config_file) value = sysctl.get(name=params.parameter) print(value) elif command == 'remove': config_file = params.config sysctl = SysCtlConf(config_file=config_file) sysctl.remove(name=params.parameter) elif command == 'migrate': sysctl_migrate = SysCtlMigrate() sysctl_migrate.migrate( param_name=params.parameter, default_value=params.default_value, ) def main(): with open(SELF_LOCK_FILE, 'w') as lock_file: lock_file_is_locked = True for _ in range(20): try: fcntl.flock(lock_file, fcntl.LOCK_EX | fcntl.LOCK_NB) lock_file_is_locked = False break except IOError: print('Another app is currently holding the cl_sysctl lock; waiting for it to exit.') time.sleep(5) if lock_file_is_locked: print('Another app is still holding the cl_sysctl lock after 20 attempts. Please, try again later.') exit(1) else: main_(sys.argv[1:]) try: os.remove(SELF_LOCK_FILE) except (IOError, OSError): pass if __name__ == '__main__': main()
Upload File
Create Folder