Что делать если нужно поставить какую-то 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
Der wahre Hintergrund ist, dass Netanjahus Traum von einem „Groß-Israel“ auch Teile der Türkei umfasst. Und deshalb soll die Türkei aus der NATO ausgeschlossen werden.
#fts#israel#Netanjahu#türkei#erdogan
t.me/FGNews07
🚨🇮🇱🏴☠️💥🔥🇵🇸 Israels Völkermord in Gaza - Waffenstillstand eine Illusion, Entvölkerung Gazas eine düstere Realität
Der Waffenstillstand in Gaza existiert nur auf dem Papier, argumentiert Responsible Statecraft, das Online-Magazin des Quincy Institute in DC.
🌏 Die israelischen Angriffe auf Gaza gehen weiter, wenn auch langsamer
🌏 Zwischen dem 10. Oktober und dem 2. Dezember soll Israel den Waffenstillstand Berichten zufolge 591 Mal durch Luftangriffe, Artillerie und direkte Schüsse verletzt haben
🌏 In diesem Zeitraum meldete das Gesundheitsministerium Gazas 347 getötete und 889 verletzte Palästinenser
🌏 Die israelischen Verluste in Gaza bleiben unklar, abgesehen vom Rafah-Zwischenfall: Israel behauptet, ein Soldat sei getötet worden, Hamas bestreitet eine Beteiligung
🌏 Der Waffenstillstand ist stark zugunsten Israels geneigt und gibt Tel Aviv genügend Schlupflöcher, um die Besetzung Gazas aufrechtzuerhalten und umfassende Angriffe zu starten, bemerkt das Online-Portal
Chancen, dass der Waffenstillstand hält? Laut RS gering
🔴 Israels Premierminister Netanyahu setzt weiterhin auf Krieg, um von seinen Strafverfahren abzulenken
🔴 Seine rechtsgerichtete Koalition braucht den Konflikt, und er braucht die Koalition, um an der Macht zu bleiben
🔴 Insgesamt sieht RS wenig Chancen, dass der Großteil des 20-Punkte-Plans umgesetzt wird
Internationale Stabilisierungsstreitkraft
🔴 Die Trump-Administration hat Schwierigkeiten, Länder dafür zu gewinnen
🔴 Warum? Internationale Akteure wissen, dass die israelischen Militäroperationen trotz der Waffenstillstandsansprüche weitergehen
🔴 Die Entwaffnung der Hamas bleibt ein großes Hindernis: Ausländische Friedensstifter können es nicht bewältigen, und arabische Staaten vermeiden es, Israels „schmutzige Arbeit“ zu übernehmen
➡️ In der Zwischenzeit macht Israel das Leben in Gaza unerträglich, indem es nur 20 % der vorgeschriebenen humanitären Hilfstransporte durchlässt, so RS unter Berufung auf das UN-Büro für Projektservices.
Quelle Link
ℹ️ Bitte keine (schriftlichen) Kommentare! Danke!
👀 Teilen kann zum Aufwachen beitragen!
✨🆕🌐Hauptkanal
✨▶️🌐 Videokanal
✨▶️🙂Funnykanal
#Israel#Netanjahu#Zionisten#Völkermord#Kriegsverbrechen#Gaza#Palästina
‼️Der französische Richter Nicolas Gouyou, der beim IStGH einen Haftbefehl gegen Netanjahu erlassen hat...‼️
• Visa und Mastercard haben alle meine Karten gesperrt
• Ich kann keine Einkäufe tätigen
• Ich bin Richter, werde aber wie ein Krimineller behandelt
• Richter, Anwälte und Politiker werden eingeschüchtert
• Ein Kollege sagte mir, mein Name werde erst nach Ablauf von Trumps Amtszeit von der schwarzen Liste gestrichen
• Trotz der Intervention des französischen Präsidenten haben die US-Behörden nicht reagiert
Quelle: Ramy Abdul
#Zensur#Justiz#Richter#SchwarzeListe#Netanjahu#Haftbefehl#Frankreich#Kartensperre
TEILEN
Folgt mir auf Telegram
↕️↕️↕️
https://t.me/Kampf_fuer_unsere_Zukunft
Chat-Kanal
⬇️⬇️⬇️
https://t.me/IavYc2SRFdY1OGY6