Server IP : 184.154.167.98 / Your IP : 18.117.138.178 Web Server : Apache System : Linux pink.dnsnetservice.com 4.18.0-553.22.1.lve.1.el8.x86_64 #1 SMP Tue Oct 8 15:52:54 UTC 2024 x86_64 User : puertode ( 1767) PHP Version : 8.2.26 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/share/cagefs-plugins/ |
Upload File : |
#!/opt/cloudlinux/venv/bin/python3 -bb # -*- coding: utf-8 -*- # Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2019 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # http://cloudlinux.com/docs/LICENSE.TXT from __future__ import absolute_import from __future__ import division from __future__ import print_function from __future__ import unicode_literals import subprocess from future import standard_library standard_library.install_aliases() from builtins import * def _execute(query): with open('/etc/psa/.psa.shadow', 'r') as f: password = f.readline().rstrip() query = query.replace("\n", " ").strip() proc = subprocess.Popen( f'mysql --no-beep --skip-column-names --user=admin --execute="{query};"', shell=True, executable='/bin/bash', stdout=subprocess.PIPE, text=True, bufsize=-1, env={ # NOTE: Despite what is said in MySQL documentation, passing password using an environment variable seems to # be quite safe for systems of this millennium. More precisely, on modern Linux no one can read /proc/<pid>/environ # except for euid of root and the process owner. 'MYSQL_PWD': password, } ) return proc.communicate()[0] def install_cagefs_module_plesk(): result = _execute("select * from psa.Modules where name='plesk-cagefs'") if result == "": _execute(""" insert into psa.Modules(name, packname, display_name, description, icon) values( 'plesk-cagefs', 'plesk-cagefs', 'CageFS', 'GageFS', '/images/modules/plesk-cagefs/addon_CloudLinux_logo2.png' ) """) def delete_cagefs_module_plesk(): _execute("delete from psa.Modules where name='plesk-cagefs'")