[英]Monit running script as non-root user getting "permission denied"
我正在使用 Monit 來確保我的一個應用程序始終在運行。 Monit 以 root 身份運行,但我的目標是以“myuser”而不是 root 身份運行應用程序。 所以我使用以下配置:
check process myprocess with pidfile "/home/myuser/monitoring/myprocess.pid"
start program = "/home/myuser/scripts/myprocess.sh start"
as uid 1000 and gid 1000
stop program = "/home/myuser/scripts/myprocess.sh stop"
as uid 1000 and gid 1000
現在,當我以 myuser 身份登錄時,導航到"/home/myuser/scripts"
並運行 ./myprocess.sh start ,應用程序將毫無問題地啟動。
但是,當我讓 monit 執行此操作時,程序不會啟動,並且日志顯示 sh 文件中mkdir
函數的permission denied
。
因為我指定了 uid 和 gid 1000 (我從 shell 命令id
獲得),monit 不應該像我從 shell 一樣運行它嗎? 我錯過了配置中的任何內容嗎?
我有同樣的錯誤,並通過在我試圖在腳本中修改的文件/目錄中指定絕對路徑來修復它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.