Root用戶讓其餘用戶運行某程序

這裏以啓動tomcat爲例

一、安裝tomcat不介紹了,本身百度

二、測試可否使用,略

三、建立tomcat用戶

useradd tomcat -s /sbin/nologinnginx

建立tomcat,禁止登錄,用戶目錄用來存放日誌tomcat

四、啓動

sudo -u tomcat tomcat/bin/startup.sh安全

這裏報錯:找不到Java_homebash

思考:配置了全局環境變量JAVA_HOME,都能使用,爲啥sudo就失敗?會不會是sudo也有個.bashrc相似的,裏面不存在?

驗證:sudo -E env,一看果真沒有JAVA_HOME

緣由:sudo 爲了安全使用一套特殊的環境變量,參見/etc/sudoers 裏面有個Defaults /bin/bash:/sbin/bash

修改:加入jdk的目錄,如圖測試

最後再試下:sudo -u tomcat tomcat/bin/startup.sh代理

 

不足之處:日誌

一、http://xxx:8080/manager/進去不會彈出輸入用戶名密碼的框,而http://xxx/manager能夠彈出框,緣由未知;;;;;或許是我nginx代理了80端口緣故、?可是關閉了也沒用blog

相關文章
相關標籤/搜索