Sudo PATH
ze względów bezpieczeństwa nie używa tego samego, co obecny użytkownik. W /etc/sudoers
istnieje opcja secure_path
, która określa ścieżkę używaną podczas uruchamiania poleceń z sudo. Mój wygląda następująco:
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"
Ze strony sudo:
secure_path Path used for every command run from sudo. If you don't trust the people running sudo to have a sane PATH environment
variable you may want to use this. Another use is if you want to have the “root path” be separate from the “user path”.
Users in the group specified by the exempt_group option are not affected by secure_path. This option is not set by
default.
pip3
Polecenie nie jest prawdopodobnie w ścieżce określonej przez sudoers
pliku. Możesz dodać ścieżkę do polecenia secure_path
lub podać pełną ścieżkę do pip3
polecenia w następujący sposób:
sudo /path/to/pip3 install django
sudo echo $PATH
produkować coś innego? Czy wypróbowałeś polecenie z pełną ścieżką do pip3? Jakaś różnica w wynikach?Zawsze możesz zrobić:
Jak wspomniano w tej odpowiedzi .
źródło
Wydałem instalację django w ten sposób:
To rozwiązało problem.
źródło