nginx部署(13:Permission denied)報錯

不会游泳的鱼丶發表於2024-04-15

nginx程序中執行worker process的角色許可權不夠,用ps -ef | grep nginx來檢視所有關於nginx的程序從而檢查worker process的角色是誰,是否有足夠的許可權

​ 如果許可權不夠,可以透過修改/etc/nginx/nginx.conf檔案中的user來換有足夠許可權的角色

SELinux被設定為了開啟狀態的原因
​ SELinux(security enhanced linux)安全增強型Linux系統是一個linux核心模組,也是Linux的一個安全子系統。主要作用是最大限度地減小系統中服務程序可訪問的資源(最小許可權原則),SElinx開啟後會關閉系統中不安全的功能,它有兩個級別:

setenforce 0 :表示警告(Permissive)
setenforce 1 :表示強制(Enforcing)
狀態分為以下三種:

SELINUX=enforcing #selinux開啟,級別為強制
SELINUX=permissive #selinux開啟,級別為警告
SELINUX=disabled #selinux關閉
其他具體關於SELinux的內容可以自行了解

首先檢視SELinux的狀態,可以使用/usr/sbin/sestatus -v進行檢視,如果是如下情況就需執行關閉操作

關閉SELinux的兩種方法:

臨時關閉(不用重啟系統):setenforce 0;
修改配置檔案/etc/selinux/config,將SELINUX=enforcing改為SELINUX=permissive或者SELINUX=disabled(需要注意的是:修改配置檔案之後需要重啟系統reboot)

PS 之前容器報錯 也是許可權問題 當時是更改了

semanage port -a -t http_port_t -p tcp 10086

埠開放 解決的


相關文章