�
i��d�
� �X � d dl mZmZmZmZmZmZ G d� deeee� Z G d� dee� Zy)� )�Plugin�RedHatPlugin�DebianPlugin�UbuntuPlugin� CosPlugin� PluginOptc �h � e Zd ZdZdZdZdZ eddd�� ed dd
�� eddd�� gZd
� Z d� Z
y)�Filesysa� Collects general information about the local filesystem(s) and mount
points as well as optional information about EXT filesystems. Note that
information specific filesystems such as XFS or ZFS is not collected by
this plugin, as there are specific plugins for those filesystem types.
This plugin will collect /etc/fstab as well as mount information within
/proc/, and is responsible for the 'mount' and 'df' symlinks that appear
in an sos archive's root.
zLocal file systems�filesys)�storage�lsofFz%collect information on all open files)�default�desc�dumpe2fszdump filesystem info�fragz'collect filesystem fragmentation statusc �� � | j g d�� | j ddd�� | j ddd�� | j g d�� | j d � | j d
� r| j dd
d�
� d}| j d� rd}d}d}| j ||� D ]C }| j d|�d|��d�� | j d� s�.| j d|z d�� �E y )N) z /proc/fs/�/proc/mountsz/proc/filesystemsz/proc/self/mountsz/proc/self/mountinfoz/proc/self/mountstatsz/proc/[0-9]*/mountinfoz /etc/mtab�
/etc/fstabzmount -l�mount)�root_symlink�tagszdf -al -x autofs�df�df__al)zdf -ali -x autofs�findmnt�lslocksz/proc/fs/panfsr
zlsof -b +M -n -l -P�2 )r �priorityz-hr � r z^(/dev/\S+).+ext[234]\s+z dumpe2fs � �
dumpe2fs_h)r r z
e2freefrag %s�d )r )�
add_copy_spec�add_cmd_output�add_forbidden_path�
get_option�do_regex_find_all)�self�
dumpe2fs_opts�mounts�ext_fs_regex�devs �</usr/lib/python3/dist-packages/sos/report/plugins/filesys.py�setupz
Filesys.setup% s � ����
�
�
���J�W�!(� � *����.�T�!)� � +����
� �
��� 0�1��?�?�6�"���� 5�F�)+�
�
-� �
��?�?�:�&��M���2���)�)�,��?� K�C����M�3� G�%1�
�
3� ���v�&��#�#�O�s�$;�c�#�J� K� c �T � | j ddd� d}| j d|d� y )Nr z(password=)[^,\s]*z
\1********z](lsof: (avoiding (.*?)|WARNING: can't stat\(\) (.*?))|Output information may be incomplete.)
r
r )�do_file_sub�do_cmd_output_sub)r' |