2013-05-09 86 views
-2

我一直在試圖禁用或使用如何禁用/啓用CPU內核*不* root訪問權限

sudo sh -c "echo 'n' > /sys/devices/system/cpu/cpu1/online" 

只是在想,如果有出有一種方法能夠在我的Linux機器的一個或多個CPU內核做同樣的事情,但沒有root權限。 感謝

+0

對於非root用戶,這可能不是一個好主意。 – jap1968 2013-05-09 16:56:37

回答

2

可以使用的setuid http://www.linuxnix.com/2011/12/suid-set-suid-linuxunix.html

但是,setuid的是對於bash腳本安全原因關閉,但你可以寫一個程序,也許在C,這symply調用

系統(「回聲」 n'>/sys/devices/system/cpu/cpu1/online「);

名稱的可執行stopcpu,然後執行以下操作

chmod a+x stopcpu 
sudo chown root stopcpu 
sudo chmod u+s stopcpu 

從這一刻起,./stopcpu將root權限運行,而不必把root密碼,這將是有效的只有這個文件。

+0

雖然第二個命令需要root密碼! – marc 2013-05-09 17:32:43

+1

但您必須運行一次這些命令。我假定你有機器的root權限,但是你想避免所有時間都輸入密碼。使用這種方法,您只需輸入一次密碼,那麼您將無需密碼即可永久調用stopcpu。 如果你沒有root權限訪問機器,我希望這是根本不可能的,因爲如果它不是真的,這是一個非常嚴重的安全問題... – p91paul 2013-05-09 17:35:30

+0

沒問題。你呢? – marc 2013-05-09 17:42:26

相關問題