簡體   English   中英

無法使用pip安裝(openSUSE)

[英]Unable to install with pip (openSUSE)

我已安裝了盡可能多的設備,此問題已解決,但我不明白是什么原因導致的

每當我使用PIP安裝任何軟件包時,都會Permission error如下所示的“ Permission error

sudo pip install <packagename>

Downloading/unpacking requests                                                                                                                                                      
Exception:                                                                                                                                                                          
Traceback (most recent call last):                                                                                                                                                  
  File "/usr/lib/python2.7/site-packages/pip/basecommand.py", line 104, in main                                                                                                     
    status = self.run(options, args)                                                                                                                                                
  File "/usr/lib/python2.7/site-packages/pip/commands/install.py", line 245, in run                                                                                                 
    requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)                                                                                      
  File "/usr/lib/python2.7/site-packages/pip/req.py", line 971, in prepare_files                                                                                                    
    location = req_to_install.build_location(self.build_dir, not self.is_download)                                                                                                  
  File "/usr/lib/python2.7/site-packages/pip/req.py", line 153, in build_location                                                                                                   
    _make_build_dir(build_dir)                                                                                                                                                      
  File "/usr/lib/python2.7/site-packages/pip/req.py", line 1225, in _make_build_dir                                                                                                 
    os.makedirs(build_dir)                                                                                                                                                          
  File "/usr/lib64/python2.7/os.py", line 157, in makedirs                                                                                                                          
    mkdir(name, mode)                                                                                                                                                               
OSError: [Errno 13] Permission denied: '/home/alex/build'    

我已經開始在主目錄中創建一個tmp目錄,使其完全可寫,然后按以下方式安裝

mkdir temp
chmod 777 temp
cd temp/
sudo pip install packagename

然后工作。 知道為什么我必須經歷這個嗎?

只有少數可能的問題(在我對問題的評論中列出)。

第一個是事實證明是這里的實際問題,對於將來的搜索者/閱讀者來說也可能是最有可能的,所以讓我們集中討論一下。

如果/home/alex/build即使對於root用戶也不可寫,則將從sudo pip確切地得到此錯誤。 例如,如果/home是從CD驅動器裝入的,則即使root用戶也無法寫入CD-ROM。

人們擁有不可寫根目錄的一個常見原因是網絡共享。 例如,如果掛載NFS共享sqsh_root,則本地root不是共享root ,因此它只能寫入可寫世界的目錄。 如果您掛載SMB共享以使用域權限,則與Windows等效的網絡將是正確的。

有許多的參數pip ,讓你自定義的東西。 我認為--build是您想要的一個,但是請嘗試pip install --help來查看所有這些。 (另外,請確保您是最新的pip開發人員已經在相當多的時間里添加和修復了便利性/自定義功能,同時等待着即將決定的Python封裝。)

如果出現最壞的情況,你可以做一個--user安裝,無需sudo ,然后使用sudo的包和雞蛋信息文件從用戶站點包移動到系統中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM