[英]Running sudo command from Tomcat servlet
有沒有辦法讓tomcat 7服務器(在Ubuntu服務器上運行)在命令行中執行sudo命令? 在這種特定情況下,我希望能夠從另一台服務器關閉系統。 我必須使用什么代碼? 而且我是否必須以root用戶身份運行tomcat服務器,還是可以僅在執行此操作時在運行時獲得這些特權? 謝謝你的幫助:)
無需以root用戶身份運行Tomcat,您只需將tomcat用戶添加到/etc/sudoers
即可允許他運行超級用戶命令,例如sudo shutdown now
。 通過這種方式,您可以指定用戶可以執行的所需命令子集。 例如,只允許他運行shutdown
:
tomcat ALL=NOPASSWD: /sbin/shutdown
要從Java代碼運行shell命令,可以調用Runtime.exec()
或使用ProcessBuilder
。
PS還要嘗試搜索/etc/shutdown.allow
文件,該文件允許其中列出的任何用戶運行shutdown命令。 但是我從來沒有用過。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.