�
i��d � �4 � d dl mZmZmZmZ G d� dee� Zy)� )�Plugin�IndependentPlugin�SoSPredicate� PluginOptc �R � e Zd ZdZdZdZ eddd�� eddd �� gZd
d
�Zd� Z y)�Lvm2zLogical Volume Manager 2�lvm2)�storage�lvmdumpFzcollect an lvmdump tarball)�default�desc�
lvmdump-amzAattempt to collect lvmdump with advanced options and raw metadatac � � | j dd�� }d}d}|rd}|||fz }| j || j � �� y) z|Collects an lvmdump in standard format with optional metadata
archives for each physical volume present.
r F)�name�makezlvmdump %s -d '%s'� z-a -m)�chrootN)�get_cmd_output_path�add_cmd_output�tmp_in_sysroot)�self�metadata�lvmdump_path�lvmdump_cmd�lvmdump_opts�cmds �9/usr/lib/python3/dist-packages/sos/report/plugins/lvm2.py�
do_lvmdumpzLvm2.do_lvmdump sV � � �/�/�Y�U�/�K��*�����"�L��\�<�8�8�����C��(;�(;�(=��>� c �@ � ddd�}t t | |�� � rd}nd}|dz }| j d|z d d �
� d}|dz d
z }d}|dz dz }d}| j d|�d|��d�� | j d|�d|��d�� | j d|�d|��d�� | j d|z d|z g� | j d� | j d� | j d� r| j � y | j d� r| j d� � y y )!Nzvgdisplay -hz--nolocking)r �output)�cmd_outputsz3--config="global{metadata_read_only=1}" --nolockingz6--config="global{locking_type=0 metadata_read_only=1}"z
--foreignzvgdisplay -vv %s� vgdisplay)�root_symlink�tagsz6pv_mda_free,pv_mda_size,pv_mda_count,pv_mda_used_count�,�pe_startz6vg_mda_count,vg_mda_free,vg_mda_size,vg_mda_used_countzvg_tags,systemidzElv_tags,devices,lv_kernel_read_ahead,lv_read_ahead,stripes,stripesizezlvs -a -o +� �lvs_headings)r% zpvs -a -v -o +�pvs_headingszvgs -v -o +�vgs_headingszpvscan -v %szvgscan -vvv %sz/etc/lvmz/run/lvmr r T)r )�boolr r �
add_copy_spec�
get_optionr )r �nolock�lvm_opts�lvm_opts_foreign�pvs_cols�vgs_cols�lvs_colss r �setupz
Lvm2.setup* sW � � (�=�A����T�v�6�7�L�H�O�H�#�l�2������!1�1�$�;� �
�
L���c�>�J�.��K���c�>�$6�6��)�����(�<L�M�!/� � 1����%-�/?�@�� � !�
���(�<L�M�!/� � 1�����X�%��x�'�
� �
���:�&����:�&��?�?�9�%��O�O��
�_�_�\�
*��O�O�T�O�*� +r N)F)
�__name__�
__module__�__qualname__�
short_desc�plugin_name�profilesr �option_listr r5 � r r r r
sB � �+�J��K��H� �)�U�1M�N��,��'� )��K�
?�3+r r N)�sos.report.pluginsr r r r r r= r r �<module>r? s ��+� +�P+�6�$� P+r |