2011-01-07 101 views
0

我想給sudo權限運行進程。 就像我已經正常打開eclipse一樣。現在當我在eclipse上啓動我的服務器時,它需要sudo權限,但爲此我必須關閉eclipse,然後用sudo eclipse打開它以獲得sudo權限。 我試着設置/ usr/bin/eclipse的setuid和setgid,但沒有奏效。我不知道爲什麼它沒有奏效。如何給sudo權限運行進程

回答

0

Setuid/setgid不起作用,因爲內核使用這些文件掩碼位時,在創建進程時,要賦予它提升的權限。

我不相信如果不向內核添加主要功能,這是不可能的。

0

我認爲你的意思是「根權限」。在巨大的代碼「Eclipse」上設置SUID根目錄不是一個好主意。

你需要的是一個SUID包裝,它必須是一個二進制。嗯,這就是sudo。但sudo要求輸入密碼。您需要使用-A開關運行它,並將SUDO_ASKPASS環境變量設置爲/ usr/bin/x11-ssh-askpass。然後你會得到GUI彈出窗口詢問你的密碼,然後生成的程序將以提升的特權運行。

這與更改anlready正在運行的進程的權限不同,您的問題標題暗示了這一點。你做不到,AFAIK。