在CentOS上解決Dolphin(以DolphinScheduler為例)的權限問題,可按以下步驟操作:
創建專用用戶并配置免密權限
# 創建部署用戶(如dolphinscheduler)
sudo useradd dolphinscheduler
sudo passwd dolphinscheduler
# 配置sudo免密
sudo sed -i '$adolphinscheduler ALL=(ALL) NOPASSWD: ALL' /etc/sudoers
sudo sed -i 's/Defaults requirett/#Defaults requirett/g' /etc/sudoers
修改文件/目錄權限
sudo chown -R dolphinscheduler:dolphinscheduler /path/to/dolphin-scheduler
conf
目錄下文件權限,確保用戶可讀寫。sudo chmod -R 755 /path/to/dolphin-scheduler/conf
數據庫權限配置
dolphinscheduler
)擁有元數據庫的讀寫權限,可通過MySQL命令授予權限:GRANT ALL PRIVILEGES ON dolphinscheduler.* TO 'dolphinscheduler'@'%' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
服務啟動權限
systemd
管理Dolphin服務,需在服務文件中指定運行用戶:/etc/systemd/system/dolphin-scheduler.service
,確保[Service]
段包含:User=dolphinscheduler
Group=dolphinscheduler
然后執行:sudo systemctl daemon-reload
sudo systemctl restart dolphin-scheduler
特殊場景:低端口綁定權限
setcap
賦予二進制文件權限(以Python服務為例):sudo setcap 'cap_net_bind_service=+ep' /path/to/python3
注意事項:操作前建議備份重要數據,權限設置需遵循最小權限原則,避免過度開放權限導致安全風險。若問題仍未解決,可通過查看日志(如/var/log/dolphin-scheduler/
)定位具體錯誤。