2011-11-12 107 views
0

文件權限我不得不改變對可執行文件的文件權限,使用os.chmod
我有這個可執行文件,我想更改它的權限,以便它可以寫入無處,只讀和執行。
我該怎麼做?文件模式 - 在可執行

感謝,
魔方

+1

'chmod'沒有做到這一點。您需要的是在沙箱中運行該進程。 –

+0

[發表在Unix&Linux上的類似問題](http://unix.stackexchange.com/questions/24469/chmod-change-permissions-on-a-file)。 – Gilles

回答

2

可以與chmod文件設置影響誰可以讀取/寫入的權限/執行該文件,沒有什麼特權的過程中運行該文件已創建。

在Unix上,您可以通過播放文件所有者和粘性位,並在文件系統上擁有適當的權限來獲得某種形式的保護,但這並不容易,無法在Windows上正常工作(無粘性位那裏)。

+0

謝謝,但我看不出什麼粘性物質可以爲我做。我讀過維基百科有關這篇文章。 – rubik

+0

如果設置一個可執行文件,例如'nobody'的所有者,把粘一下就可以了,當您運行if_它已被'nobody'用戶推出可執行文件的進程將開始_As(不管是什麼用戶實際上啓動了它)。如果'nobody'沒有對您關心的文件/目錄的寫入權限,那麼這個過程將無法與它們混淆。 – Mat

+0

謝謝!我會嘗試的。 – rubik

1

我有這樣的可執行文件,我想改變它的權限,以便它可以寫入無門,只能讀取和執行

這不是如何chmod作品 - 它設置文件本身的權限,它不能限制可執行文件可以寫入的內容。

1

某些Linux或Unix用來禁止可執行文件寫東西的解決方法是將該可執行文件setuid設置爲沒有權限的用戶(幾乎「不存在」),例如nobody用戶(例如,在Debian或Ubuntu中)。要小心,瞭解更多關於seteuid & setreuid & capabilities & credentials(我不確知,如果所有這些系統調用有一個Python的接口)。