在 Ubuntu 上需要注意一点:Ubuntu 默认并不使用 SELinux,而是使用 AppArmor 作为默认 MAC(强制访问控制)安全模块。SELinux 主要在 RHEL / CentOS / Fedora 中使用。
下面分情况说明。
getenforce
Command not found → SELinux 未安装Disabled → 已安装但未启用Enforcing / Permissive → 已启用查看是否安装:
dpkg -l | grep selinux
restorecon -Rv /
或只重置某个目录:
restorecon -Rv /var/www
编辑配置文件:
sudo nano /etc/selinux/config
示例:
SELINUX=enforcing
SELINUXTYPE=targeted
改为:
SELINUX=permissive
重启后生效。
sudo fixfiles onboot
sudo reboot
或立即执行:
sudo fixfiles restore
sudo aa-remove-unknown
sudo systemctl restart apparmor
sudo apparmor_parser -r /etc/apparmor.d/*
❌ “Ubuntu 用 SELinux”
✅ 默认是 AppArmor
❌ “重置 SELinux 就是关掉它”
✅ 重置 ≠ 禁用,只是恢复策略状态
如果你是:
如果你愿意,可以告诉我:
我可以给你更精确的步骤。