Что делать если нужно поставить какую-то Python-библиотеку а root-прав нет? То есть в систему библиотеку никак и ничего не поставить.
Есть как минимум два способа это решить правильно!
🔸 Сделать виртуальное окружение и ставить там что угодно.
Это позволит создать полностью независимое исполняемое окружение для ваших приложений.
Все библиотеки будут храниться в домашней директории юзера а значит доступ на запись имеется.
Создать очень просто:
python3 -m venv ~/venvs/myenvname
Теперь активируем окружение
# Linux
source ~/venvs/myenvname/bin/activate
# Windows
%userprofile%\venvs\myenvname\Scripts\activate.bat
Можно ставить любые библиотеки и запускать приложение.
Это стандартный метод работы с любым проектом. Если еще не используете его, то пора начинать. Даже при наличии root доступа!
🔸 Бывает, что нет возможности запустить приложение из своего виртуального окружения. Например, его запускает какой-то сервис от вашего юзера и вставить активацию окружения вы не можете.
В этом случае можно установить библиотеки для Python не глобально в систему, а только для юзера.
Выполните этот код в консоли:
python3 -m site
Вы получите что-то такое:
sys.path = [
'/home/user',
'/usr/lib/python37.zip',
'/usr/lib/python3.7',
'/usr/lib/python3.7/lib-dynload',
'/home/user/.local/lib/python3.7/site-packages',
...
]
USER_BASE: '/home/user/.local'
USER_SITE: '/home/user/.local/lib/python3.7/site-packages'
ENABLE_USER_SITE: True
Нас интересует параметр USER_SITE. Это путь к пользовательским библиотекам, которые доступны по умолчанию, если они есть.
Именно сюда будут устанавливаться модули если добавить флаг --user при установке чего-либо через pip
pip install --user requests
Для этой команды не нужны root-права.
После неё можно запускать системный интерпретатор без виртуальных окружений и установленная библиотека будет доступна для текущего юзера.
Параметр USER_BASE показывает корневую директорию для хранения user-библиотек. Её можно изменить с помощью переменной окружения PYTHONUSERBASE
export PYTHONUSERBASE=~/pylibs
python3 -m site
...
USER_BASE: '/home/user/pylibs'
USER_SITE: '/home/user/pylibs/lib/python3.7/site-packages'
Получается некоторое подобие виртуального окружения для бедных 😁 которое можно менять через эту переменную (не делайте так!Лучше venv!)
🔸 Дописывание пути в PYTHONPATH
Этот способ не входит в список "двух правильных", но тоже рабочий. Здесь придётся сделать всё несколько сложней.
Сначала ставим библиотеку в любое место указывая путь установки
pip3 install -t ~/mylibs modulename
Библиотека установится без привязки к какому-либо интерпретатору. То есть по умолчанию не будет видна. Теперь в нужный момент добавляем этот путь в sys.path или в PYTHONPATH.
Не буду советовать так делать. Единственный раз когда этот способ мне пригодился и решил поставленную задачу, это при создании общей библиотеки для кластера компьютеров.
Модули лежат в сети и подгружаются для всех из одного и того же места. То есть обновлять файлы требуется только один раз а не на всех хосты отдельно.
Минусы такого подхода:
▫️Нужно всем хостам пробить нужный путь в .bashrc или ещё куда-то чтобы он сетапился на старте.
▫️Чем больше хостов тем больше нагрузка на сеть. Иногда такой способ не подходит именно по этой причине. Тогда Ansible вам в помощь.
▫️Не очень подходит если хосты с разными операционками. Некоторые библиотеки различаются для Linux и Windows (там, где есть бинарники) и приходится мудрить более сложные схемы.
#tricks#basic
Tiembla, #Trump‼️
🔴 En las elecciones de 2024, #KamalaHarris hizo sudar al partido de #Trump durante la campaña 😅 | ¿Será que otra vez incomodará a los republicanos? 🤔🇺🇸🗳️
https://revistaelpolitico.com/internacional/kamala-harris-abre-puerta-posible-candidatura-2028/
Камала Харрис проголосовала на выборах президента, заполнив бюллетень после церковной службы в Детройте.
#KamalaHarris#Election2024#USPresidentialElection#новости#ştiri
🤩Подпишись на 112.md
🤩Новости Молдовы и мира 24/7
Камала Харрис на обоих видео выглядит так, будто это одна и та же голограмма.
#KamalaHarris#Election2024#USPresidentialElection#новости#ştiri
🤩Подпишись на 112.md
🤩Новости Молдовы и мира 24/7
Рэперша Карди Би со скандалом выступила на митинге в поддержку Камалы Харрис в Милуоки.
Телесуфлёр внезапно вышел из строя, и звезда оказалась без подготовленного текста перед собравшейся публикой.
Около минуты певица стояла на сцене, пытаясь придумать, что сказать. В конце концов, ей передали телефон, с которого она смогла дочитать своё обращение к демократам.
#KamalaHarris#Election2024#USPresidentialElection#новости#ştiri
🤩Подпишись на 112.md
🤩Новости Молдовы и мира 24/7
🇺🇸 В США завершили подсчет голосов на выборах президента. Трамп набрал 312 голосов выборщиков против всего лишь 226 у Харрис.
#KamalaHarris#DonaldTrump#Election2024#USPresidentialElection#новости#ştiri
🤩Подпишись на 112.md
🤩Новости Молдовы и мира 24/7
Камала Харрис позвонила Дональду Трампу, чтобы поздравить его с победой на выборах 2024 года. Во время разговора они обсудили важность мирной передачи власти.
#KamalaHarris#DonaldTrump#Election2024#USPresidentialElection#новости#ştiri
🤩Подпишись на 112.md
🤩Новости Молдовы и мира 24/7
$3,5 млрд на выборы: Трамп и Харрис побили рекорды расходов на кампанию 2024 года.
Президентская гонка 2024 года в США стала самой дорогой в истории. Камала Харрис и Дональд Трамп потратили вместе $3,5 млрд на борьбу за Белый дом, превратив выборы в настоящий финансовый рекорд. По данным Financial Times, общие расходы на кампанию, включая средства партийных комитетов и внешних групп, составили почти $4,2 млрд.
Особое внимание было уделено рекламе в ключевых «колеблющихся» штатах. Примерно половина всех средств ушла на медиа, и большая часть этих затрат направлена на традиционную рекламу и социальные сети. Например, только на рекламу в Пенсильвании, важном штате с 19 голосами выборщиков, потратили более $400 млн — больше, чем на все остальные штаты вместе.
Группы Харрис собрали $2,3 млрд и потратили $1,9 млрд, в то время как команды Трампа собрали $1,8 млрд и потратили $1,6 млрд. Всё это подчеркивает, как важно стало вложение в медиа и рекламу для успеха в выборах.
#KamalaHarris#DonaldTrump#Election2024#USPresidentialElection#новости#ştiri
🤩Подпишись на 112.md
🤩Новости Молдовы и мира 24/7
🗣🗣 У Трампа 247 выборщиков, у Харрис 210.
#KamalaHarris#DonaldTrump#Election2024#USPresidentialElection#новости#ştiri
🤩Подпишись на 112.md
🤩Новости Молдовы и мира 24/7
🇺🇸Харрис - 210, Трамп - 230.
В США продолжают считать голоса. К этому времени за демократку Харрис проголосовало 59,2 млн американцев (47,5%), за Трампа - 63,8 млн (51,1%).
Associated Press: Харрис не планирует выступать перед публикой в течение ночи.
#KamalaHarris#DonaldTrump#Election2024#USPresidentialElection#новости#ştiri
🤩Подпишись на 112.md
🤩Новости Молдовы и мира 24/7
🦛 Победу Трампа на выборах в США предсказал знаменитый карликовый бегемот из Таиланда, — Bild.
За четырёхмесячным Му-Денгом из открытого зоопарка Као Кхеоу в Таиланде следят миллионы людей со всего мира.
Накануне президентских выборов в США администрация зоопарка выставила перед животным две миски с едой и надписями «Дональд Трамп» и «Камала Харрис». Выбрал бегемот тарелку с именем Трампа.
#KamalaHarris#DonaldTrump#Election2024#USPresidentialElection#новости#ştiri
🤩Подпишись на 112.md
🤩Новости Молдовы и мира 24/7
🗣🗣В США открылись первые участки для голосования на выборах президента.
НАЧАЛОСЬ...
#KamalaHarris#DonaldTrump#Election2024#USPresidentialElection#новости#ştiri
🤩Подпишись на 112.md
🤩Новости Молдовы и мира 24/7
🇺🇸Вероятность победы Трампа составляет 53%, Харрис – 47%, — ABC News.
Как сообщает издание, прогнозирующая модель ABC News "Проект 538" учитывает социологические, экономические и демографические данные для анализа возможных результатов выборов, опираясь на социологические опросы и их надежность.
Последние данные показывают, что Трамп победит в 53 случаях из 100, тогда как у Харрис есть шансы на победу в 47 случаях.
#KamalaHarris#DonaldTrump#Election2024#USPresidentialElection#новости#ştiri
🤩Подпишись на 112.md
🤩Новости Молдовы и мира 24/7