2013-02-06 51 views
0

我在Linux中安裝了一個python庫,但是我的腳本找不到這個模塊。我注意到它以root身份作爲所有者安裝。一旦我將所有者更改爲我的用戶,那麼腳本工作正常。我應該更改權限以便所有用戶都可以訪問庫(我假設我應該將所有者更改爲root)?有沒有辦法遞歸設置權限只有文件或只有目錄?Python模塊權限

此外,由於Eclipse的某些原因,庫導入語句具有「未解析的導入」消息,即使我能夠毫無問題地執行該腳本。如果我使用庫的本地副本,則消息會消失。

+0

chown user -R目錄。將遞歸地設置一個目錄的權限。雖然不能幫助你,但是...這對python來說是個噩夢 – Greg

回答

2

讓所有者獨自一人,但讓模塊全部可讀。目錄應該是可執行的,這樣人們可以列出他們的內容。 chmod本身不能自動區分目錄中的正常文件,但find可以,所以將它們合併。

在使用Python 2.7典型的Linux機器,這是你會怎麼做(根):按要求

find /usr/lib/python2.7 -type f -exec chmod a+r {} \; 
find /usr/lib/python2.7 -type d -exec chmod a+x {} \; 

更改目錄。這些命令如果成功則不會產生任何輸出。

如果以正常方式安裝模塊,儘管(使用它們的setup.py腳本),您不應該這樣做。

(我不能幫你用Eclipse。)

+0

我最終需要一個'sudo chmod -R a + r/usr/lib/python2.7/site-packages/*'來達到很好的效果。 –