dbfdg 3 nma @sDddlZejdddZejZddlTddlmZGdddeZdS) Nzsetroubleshoot-pluginsT)Zfallback)*)Pluginc@sHeZdZedZedZedZdZedZddZ dd Z d d Z d S) pluginzV SELinux is preventing Samba ($SOURCE_PATH) "$ACCESS" access to $TARGET_PATH. a SELinux denied samba access to $TARGET_PATH. If you want to share this directory with samba it has to have a file context label of samba_share_t. If you did not intend to use $TARGET_PATH as a samba repository, this message could indicate either a bug or an intrusion attempt. Please refer to 'man samba_selinux' for more information on setting up Samba and SELinux. a You can alter the file context by executing chcon -R -t samba_share_t '$TARGET_PATH' You must also change the default file context files on the system in order to preserve them even on a full relabel. "semanage fcontext -a -t samba_share_t '$FIX_TARGET_PATH'" z(chcon -R -t samba_share_t '$TARGET_PATH'z2You need to change the label on '$FIX_TARGET_PATH'cCs(d}d}|dkrd}d}td||fS)Ndirz(/.*)?z-Rzb# semanage fcontext -a -t samba_share_t '$FIX_TARGET_PATH%s' # restorecon %s -v '$FIX_TARGET_PATH')_)selfavctclassZdpathZrflagr 0/usr/share/setroubleshoot/plugins/samba_share.py get_do_text.szplugin.get_do_textcCstj|t|jddS)N3)r__init____name__Z set_priority)rr r r r8s zplugin.__init__cCs^|jdgrV|jdddddg rV|j|j|jrV|jddgrV|jrV|j|jSdSdS) NZsmbd_tzhttpd_.*_content_tZ rsync_data_tZ home_root_tz .*_home_dir_tz .*_home_tfiler) Zmatches_source_typesZmatches_target_typesZall_accesses_are_inZcreate_file_permsZcreate_dir_permsZ has_tclass_inZpath_is_not_standard_directoryZreportr )rr r r r analyze<s  zplugin.analyzeN) r __module__ __qualname__rZsummaryZproblem_descriptionZfix_descriptionZfix_cmdZ then_textr rrr r r r rs r)gettextZ translationrZsetroubleshoot.utilZsetroubleshoot.Pluginrrr r r r s