2013-05-03 74 views
1

我有一個模塊是在linux內核中創建的。 我希望模塊能夠接收參數,並且我希望其中一個具有讀取和寫入權限。 所以我定義:爲linux內核模塊參數寫入滲透性

module_param(param, int, S_IWUSR|S_IRUGO); 

但由於某些原因,當我去/ SYS /模塊/ mymodule中/放慢參數/參數,並試圖寫它並沒有給我的權限(甚至使用sudo)

+0

你如何寫*? 'echo 1> debug'適用於'static int debug; module_param(debug,int,0600);'。你是否聲明瞭'static int param;'? – 2013-05-03 17:53:28

+0

錯誤是否表示權限被拒絕? – 2013-05-03 22:26:25

回答

1

您是否使用sudoecho

sudo echo 1 > /sys/module/mymodule/paramter/param 

呢?

重定向到文件不適用於sudo。使用例如tee代替:

echo 1|sudo tee /sys/module/mymodule/paramter/param 

這樣,你可以寫一個文件的根目錄。

除此之外,您的module_param()電話看起來不錯。

+0

謝謝你的工作。爲什麼我可以編輯文件的唯一方法? 不應該像我想編輯的任何文件一樣工作嗎? – user690936 2013-05-04 17:30:48