관리-도구
편집 파일: sysctl.cpython-311.pyc
� \�Dgp � �z � d dl Z d dlmZ d dlmZmZmZ d dlmZm Z dZ dZ G d� d� � Z G d � d � � Z dS )� N)�ConfigParser)�run_command�get_file_lines�ExternalProgramFailed)�AnyStr�Listz /etc/sysctl.d/90-cloudlinux.confz/etc/sysctl.confc �z � e Zd ZdZdZedfd�Zd� Zed� � � Z d� Z ed� � � Zd � Z d � Zd� Zdd�Zd � ZdS )� SysCtlConfz( For reading params from sysctl z/sbin/sysctlTc �@ � || _ | j � d�| _ || _ dS )z� :param config_file: path to user defined systcl config file :param mute_errors: T/F value to define should we skip errors or not (used in cldiag checker) �.tmpN)�config_file�config_tmp_file�mute_errors)�selfr r s �o/builddir/build/BUILD/imunify360-venv-2.4.0/opt/imunify360/venv/lib/python3.11/site-packages/clcommon/sysctl.py�__init__zSysCtlConf.__init__ s. � � '���"&�"2�8�8�8���&����� c �j � | j dg} t |� � dS # t $ r | j s� Y dS w xY w)z> Apply all params from sysctl.d & sysctl.conf z--systemN)� SYSCTL_BINr r r )r �cmds r � _apply_allzSysCtlConf._apply_all$ sf � � �O�� �� � ��������$� � � ��#� �� � � � ���s � �2�2c �n � | j dd|g}t |d�� � \ }}}|� � � }|S )zM Read sysctl param :param name: name of sysctl param z-bz-nT)r �return_full_output)r r �strip)�cls�namer �ret_code�std_out�std_in�values r �_read_sysctl_paramzSysCtlConf._read_sysctl_param6 sP � � �N���� �� %0��#�% � % � % �!��'�6� � � �����r c �j � t | j dd�� � 5 }d� |� � }|� |� � |� � � t j |� � � � � ddd� � n# 1 swxY w Y t j | j | j � � dS )zm Write sysctl params to sysctl.conf :param lines: content for writing to sysctl.conf �w�utf-8��encoding� N) �openr �join�write�flush�os�fsync�fileno�renamer )r �lines�sysctl_confs r �_write_params_to_filez SysCtlConf._write_params_to_fileL s� � � �$�&��g� >� >� >� +�+��G�G�E�N�N�E����e�$�$�$��������H�[�'�'�)�)�*�*�*� +� +� +� +� +� +� +� +� +� +� +���� +� +� +� +� � �$�&��(8�9�9�9�9�9s �A%B � B �B c �\ � | � d� � d � � � S )N�=r )�splitr )�lines r �_get_param_name_from_linez$SysCtlConf._get_param_name_from_lineY s% � � �z�z�#���q�!�'�'�)�)�)r c �. � t | j � � }|S )zW Read content from sysctl.conf :return: lines from sysctl.conf )r r )r �results r �_read_sysctl_confzSysCtlConf._read_sysctl_conf_ s � � �� 0�1�1��� r c �j � �� � � � � }t �� fd�|D � � � � }|S )Nc 3 �J �K � | ]}��� |� � k V � �d S )N)r7 )�.0r6 � param_namer s ��r � <genexpr>z+SysCtlConf.has_parameter.<locals>.<genexpr>n s6 �� � � �_�_�D�Z�4�#A�#A�$�#G�#G�G�_�_�_�_�_�_r )r: �any)r r>