2012-08-29 50 views
0

我在EC2 Linux實例中有兩個用戶A和B. A在組X中,B在組Y中。我將tomcat實例作爲用戶A啓動。我將tomcat實例目錄作爲「chown -R A:Y tomcat /」作爲用戶啓動了Tomcat。如何以用戶B的身份停止tomcat或以用戶B的身份重新啓動?LINUX中的CHOWN運行進程(EC2)

回答

0

由於用戶B屬於Y組,因此需要在tomcat文件夾/ bin/catalina.sh文件上擁有組Y的執行權限。請檢查你是否有。如果不是,則必須在tomcat文件夾/ bin/catalina.sh上使用chmod x5x。

+0

然後它就好了。你必須在用戶B的tomcat目錄的bin文件夾中調用./catalina.sh stop命令。它應該能夠停止你的服務。 – ajay

+0

感謝Ajay的回答。我有bin文件夾中的catalina.sh的執行權限。 drwxr-XR-×2 AY 4096年08月29 7點14分倉 -rwxr-XR-X 1 AY 17708 2011年11月28日catalina.sh 作爲用戶的Tomcat的狀態被如下 [A]服務tomcat的狀態 的Java(PID 29518)正在運行... 服務tomcat的重啓 停止測試tomcat的:失敗] 開始測試-tomcat的:失敗] 因爲,這個過程是不能被凍死用戶B,因爲它由用戶A擁有。 – Spidey

+0

對於錯誤解釋,通常這在Linux中是不可能的,因爲已啓動服務的用戶可以停止它(root用戶也可以這樣做)。解決問題的方法是用戶B可以執行一個腳本,在腳本中您應該首先對用戶A執行su調用,然後調用catalina.sh stop命令。用戶A只能停止它。對不起再次混淆。 – ajay

0

使用sudo設置允許用戶B以用戶A身份運行某些事情(特別是停止和啓動腳本)的規則(可能沒有提供密碼,即使這是需要的並且被認爲足夠安全)。

+0

但Amazon EC2只允許ec2用戶使用SUDO訪問。因此,用戶或組創建不允許sudo!設置規則的腳本正在工作,如果我作爲一個用戶啓動,並停止作爲一個用戶,它正在工作....如果沒有運行的tomcat,我可以作爲B用戶啓動沒有傷害.... – Spidey