TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #210 · 3 фев.

Что делать если нужно поставить какую-то 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

Резултати

Пронајдени 2 слични објави

Пребарај: #messie

当前筛选 #messie清除筛选

📣[2.21]部分更新通知🔞-每天更新 从未间断 🎉【写真/视频套餐】新年特惠:SVIP:原价98,仅需68;SSVIP:原价299,仅需168;SSSVIP:原价599,仅需299 🎉购买及预览频道:https://t.me/Laowang_2👈👈 #桜桃喵 – 全套208套&随包视频[120.2G-2025.2] #Joyce Lin2x – 全套53期[16.1G-2025.2] #Money冷冷 – 全套45期&随包视频[57.5G-2025.2] #Messie Huang – 合集21期[1.5G-2025.2] #沖田凜花Rinka – 全套130期[20.9G-2025.2] #G44不会受伤 – 全套138期&随包视频[31G-2025.2] #Potato Godzilla – 全套166期&随包视频[25.3G-2025.2] #YITUYU艺图语 – 合集全套6778(+10)期[2577G-2025.2] #IESS异思趣向 – 全套11系及丝享家1930套&视频[210.6G-2025.2] #MussGirl慕丝女郎 – 合集总530期/学妹系列/视频29期[125.3G-2025.2] #SSA丝社 – 超清全套合集700套 + 420期4K视频[1603G-2025.2] #ROSI视频 – 合集全套584期&含小视频57[208G-2025.2] #ROSI写真 – 全套合集0001-4804期[227GB-2025.2] #十万口草莓粥粥(B站) – 舰长图包合集&视频[23套-2025.2] #IMZSOCK爱美足(原版高清) – 全套302期&视频[276G-2025.2] #织梦映像 – 全套55期及视频合集[403G-2025.2] #BoBoSocks袜啵啵 – 全套487期(+1 含4K视频)+限积分9套[3046G-2025.2] #物恋传媒 – 全套2226期含4K原版视频[10272G-2025.2] #玥儿玥er – 无水印内购合集[20套-2025.2] #小薯条nienie – 内购合集(沙滩/健身房/户外游艇)[7套-2025.2] #杨晨晨(秀人网) – 私拍&定制&微密合集 – 印度女郎/厨娘的投喂等[47套-2025.2] 【以上更新仅为一部分..........】