Ubuntu SELinux故障排查方法如下:
查看SELinux狀態
getenforce 或 sestatus,顯示當前模式(Enforcing/Permissive/Disabled)。/etc/selinux/config,確認默認模式。查看SELinux日志
/var/log/audit/audit.log,用 grep 'avc: denied' 過濾拒絕記錄。ausearch -m avc 查詢特定事件,Aureport -m selinux 生成報告。分析并修復問題
audit2why 解釋日志中的拒絕原因,audit2allow 生成策略模塊。ls -Z 查看上下文,chcon 修改,restorecon 恢復默認。sudo setenforce 0(Permissive模式,僅記錄不阻止)。/etc/selinux/config,設置 SELINUX=disabled 并重啟。使用輔助工具
setroubleshoot:分析日志并提供可視化建議(需安裝)。semanage:管理策略和上下文,如 semanage fcontext 修改目錄上下文。注意:Ubuntu對SELinux支持有限,部分功能可能不可用,復雜場景建議參考官方文檔或社區論壇。