Что делать если нужно поставить какую-то 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
📺- SUPERAGENTE 86 -📺
Título Original: Get Smart
Género:#Comedia#DeCulto
Temporadas: 5📼
Año: 1965 - 1070
Origen: EEUU 🇺🇸
Tráiler: youtu.be/sWEvp217Tzw
Saga:Sí✅
Sinopsis:
Serie que parodia las películas de James Bond. El superagente 86 es Maxwell Smart, un chapucero agente secreto que debe cumplir misiones muy peligrosas con la ayuda de su inseparable compañera, la agente 99.
Disponible:Apple TV
@SeriesClubHD
📺 - LOS SIMPSONS - 📺
Título original: The Simpsons
Género:#Animación#Comedia#DeCulto
Temporadas: 37 📼
Año: 1989 - Presente
Origen: EEUU 🇺🇸
Tráiler:youtu.be/_h93U8jqq4E
Saga:Sí✅
Sinopsis:
La familia Simpson vive en Springfield y refleja, con humor y sátira, la vida cotidiana de la sociedad estadounidense. Homer, Marge, Bart, Lisa y Maggie protagonizan situaciones disparatadas que se han convertido en un fenómeno cultural global.
Disponible:Disney+ |TiviFy
@SeriesClubHD
📺- EL COCHE FANTÁSTICO -📺
Título original: Knight Rider
Género:#Acción#Aventura#CienciaFicción#DeCulto
Temporadas: 4📼
Año: 1982
Origen: EEUU 🇺🇸
Tráiler: youtu.be/jQfU1WIaukg
Remake:Sí✅
Sinopsis:
Famosa serie televisiva que sigue las aventuras de Michael Knight, un detective dado por muerto al que dan una nueva cara y una nueva identidad. Su misión, encomendada por la Fundación por la Ley y el Orden: luchar contra el crimen con la ayuda de un coche artificialmente inteligente y hablador con propia personalidad: K.I.T.T.
Disponible:Sky ShowTime | Movistar+
@SeriesClubHD
📺 - DEXTER - 📺
Título original: Dexter
Título Alternativo: Dexter: El Oscuro Pasajero
Género:#Suspenso#Drama#Crimen#DeCulto
Temporadas: 8 📼
Año: 2006 - 2013
Origen: EEUU 🇺🇸
Tráiler:youtu.be/t779a6O_Me0
Saga:Sí✅
Sinopsis:
Dexter Morgan, forense especializado en análisis de sangre en la policía de Miami, oculta un oscuro secreto: es un asesino en serie que solo mata a criminales. La serie explora su doble vida, sus dilemas morales y la tensión de mantener su identidad oculta.
Disponible:⌛️Netflix | Movistar+ | Claro Video | Paramount+ | Sky ShowTime
@SeriesClubHD
🎥- VIAJE A LAS ESTRELLAS -🎥
Título Original: Star Trek
Título Alternativo: Star Trek: La Serie Original
Género:#CienciaFicción#Acción#Aventura#Drama#DeCulto
Temporadas: 3 📼
Año: 1966 - 1969
Origen: EEUU 🇺🇸
Tráiler:youtu.be/h1ai_styKKM
Saga:Sí✅
Sinopsis:
El espacio: La Frontera Final. Estos son los viajes de la nave espacial Enterprise. Su misión durante los próximos 5 años: encontrar nuevos mundos. Descubrir nuevas vidas y nuevas civilizaciones... Atreverse a ir a donde nadie ha llegado antes.
Disponible:Netflix | Paramount+
@SeriesClubHD
📺 - ED, EDD Y EDDY - 📺
Título Original: Ed, Edd N Eddy
Título Alternativo: Ed, Edd Y Eddy
Género:#Animación#Comedia#Infantil#DeCulto
Temporadas: 6 📼
Año: 1999 - 2009
Origen: Canadá 🇨🇦
Tráiler:youtu.be/fGYXNxRqUmE
Sinopsis:
Tres amigos muy distintos entre sí intentan constantemente idear planes para ganar dinero y comprar caramelos. Sus ocurrencias los llevan a situaciones absurdas y divertidas en el vecindario, donde interactúan con otros niños que siempre ponen a prueba su amistad y creatividad.
Disponible:HBO Max | Movistar+
@SeriesClubHD
📺 - TRAILER PARK BOYS - 📺
Título original: Trailer Park Boys
Título Alternativo: Chicos Del Parque De Caravanas
Género:#Comedia#DeCulto#Mockumentary
Temporadas: 12 📼
Año: 2001 - 2018
Origen: Canadá 🇨🇦
Tráiler:youtu.be/p3i1RyomPqw
Saga:Sí✅
Sinopsis:
Ricky, Julian y Bubbles viven en un parque de caravanas en Nueva Escocia. A través de un falso documental, se narran sus intentos fallidos de enriquecerse mediante planes absurdos, siempre perseguidos por la policía y envueltos en situaciones disparatadas.
Disponible:Netflix
@SeriesClubHD
📺- EXPEDIENTES SECRETOS X -📺
Título original: The X Files
Título alternativo: Expediente X
Género:#Crimen#Drama#Misterio#Suspenso#CienciaFicción#Fantasía#DeCulto
Temporadas:11
Año: 1993 📼
Origen: EEUU 🇺🇸 | Canadá 🇨🇦
Tráiler:youtu.be/Xcf44Nit7_A
Sinopsis:
Dos agentes del FBI, el creyente Fox Mulder y la escéptica Dana Scully investigan lo extraño e inexplicable mientras que fuerzas oscuras impiden sus esfuerzos.
Disponible:Prime Video | Star+
@SeriesClubHD