Sudo pip установить VS pip install --user
Не помню, где я это читал, но где-то здесь или в комментариях учебника, которое я следил, человек сказал:
'Никогда не используйте sudo pip install; вы можете перезаписать важные вещи, не зная об этом. Вместо этого используйте pip install -user! '
Я вижу множество ссылок на sudo pip install повсюду, хотя, так и этот человек знал, о чем они говорили, и я должен избегать этого, или...?
Ответы
Ответ 1
sudo pip install, вероятно, означает, что вы хотите установить пакет по всей системе. Для некоторых пакетов, таких как virtualenvwrapper, это может быть полезно, но кроме того, я бы не стал устанавливать общесистемные пакеты и создавать виртуальные файлы для каждого приложения и устанавливать pip на этот virtualenv (что можно сделать без sudo).
Ответ 2
$ sudo pip install
Устанавливает пакет глобально в вашей установке python, то есть для всех пользователей.
$ pip install --user
Устанавливается в локальный каталог пользователя, т.е. ~/.local/lib/python - только вы.
Пример:
$ sudo pip install jupyter
$ jupyter notebook
Запустит jupyter, откройте веб-браузер, позволит вам работать с ноутбуками.
$ pip install --user jupyter
$ jupyter notebook
Ничего не сделает, пока ваш локальный каталог не будет добавлен в ваш PATH.
В pypi недавно появился вредоносный код. Никогда не используйте sudo для установки с помощью pip. Это то же самое, что запуск вируса с правами root. Либо добавьте свою локальную папку в свой PATH, либо используйте virtualenv.