2011-07-18 26 views
2

所以我需要修改Xoom平板電腦iptables規則,我創建了一個shell腳本來做到這一點,它可以工作,如果我直接從shell運行它,但doesn如果我有一個(Java)活動運行它,似乎工作。運行shell腳本 - 似乎沒有生效

我一定會錯過一些東西,你們可以給我一些線索嗎?

+0

這可能是一個權限問題。我不確定Activity會運行什麼用戶,但是我認爲該用戶需要執行權限才能在shell中運行命令? –

+0

我的第一個猜測是權限問題... – nickfox

回答

1

adb shell具有root權限,而Java沒有。

在亞行:

# id 
uid=0(root) gid=0(root) 

你可以在Java中你的用戶ID,看看你正在運行什麼作爲。

如果您有權訪問操作系統版本,那麼您可以將您的應用程序級別提升到系統,但這仍然不會給您帶來根。 Here's一個SO帖子,如果你有興趣。

+0

嗯,我能做些什麼來運行系統級特權程序,如iptables? –