1. 程式人生 > 其它 >python setup.py install 出現[Errno 13] Permission denied:的解決方法以及新版本包無法安裝的問題

python setup.py install 出現[Errno 13] Permission denied:的解決方法以及新版本包無法安裝的問題

有人會說解決方法是前面加sudo,這確實是一種方法,但代價就是每次使用命令但時候前面都要加sudo,如果不加sudo就會提示無法找到命令或者是許可權不足的問題,甚至如果你使用使用者模式安裝了一些包會出現匹配優先順序的問題,舉個例子
比如使用ROPgadget這個命令,如果用

sudo ROPgadget --version

在這裡插入圖片描述

會提示版本6.5
那麼使用的版本6.5的ROPgadget的位置是什麼呢?我們用命令:

sudo which ROPgadget

可以看到我們使用的是/usr/local/bin/ROPgadget這個ROPgadget檔案
但如果我們使用

 ROPgadget --version

在這裡插入圖片描述

不加sudo 會提示版本6.3 (原圖找不到了,我P的嗚嗚~)
那麼使用的版本6.3的ROPgadget的位置是什麼呢?我們用命令:

which ROPgadget

可以看到我們使用的是/home/username/.local/bin/ROPgadget這個ROPgadget檔案

注意,在使用者模式下,將優先使用.local目錄下的bin檔案,在特權模式下會優先使用/usr/local/bin/下的檔案/
簡而言之我們是否使用sudo安裝pip包會將這個包安裝在不同的目錄,所以遇到[Errno 13] Permission denied:的問題,首先的解決方法是加上–user引數而不是輕易用sudo安裝。