Что делать если нужно поставить какую-то 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
https://www.youtube.com/watch?v=B4DyCtoTQY8
Desde que comenzó el show sanitario muchas personas se han estado analizando replantear sus vidas, abandonar la paranoia urbana y estrechar su contacto con la naturaleza.
La salud que buscamos radica en incrementar nuestro poder de generar un #bienestar natural, real... definitivo; para eso debemos alejarnos del estilo de vida psicótico contaminante, dependiente y parasitario de las ciudades y acercarnos a la verdadera #Emancipación energética, económica y psicológica
Este es el escenario de la batalla más compleja que nos toca vivir: el desapego a la vida que solíamos tener (la vieja "normalidad"); enfrentar a los demonios interiores que protegen nuestro Ego resultó ser mucho más difícil que hacer activismo en redes sociales, manifestar o imprimir pancartas anti N•O•M.
El camino que te planteo es el #minimalismo, un estilo de vida basado en el desprendimiento gradual e inteligente de tus nexos con el mundo material.
@emocionaligencia
🗓️ Reto 24h (Día)
Imprime + 2 colores + 1 acento
✅ Elige 2 colores base + 1 color acento.
✅ Imprime una página y colorea solo con esa paleta.
✅ Mañana compartimos resultados en el canal.
Paleta A🎨 Azul marino + Beige + Acento Dorado
Paleta B🎨 Verde salvia + Gris + Acento Coral
Vota: ¿A o B?
🔥 Si participas, manda tu resultado al grupo y lo reposteo.
#Reto24h#Colorear#Minimalismo#PaletaDeColores#ColoringBooksPDF
📢Hecho con Inside
💥Set de 6 Posters Minimalismo en Colores Pastel
Dale un toque de serenidad a tu hogar
✅OFERTA: 15.54€
❌ Antes: 25.9€
💰Ahorras un 40%🔥
Transforma tus espacios con paisajes relajantes y naturaleza
👉 Decora tu hogar con estilo
#decoracioninteriores#dulcehogar#minimalismo#naturalezapastel#hogarsweet#disenointeriores#ofertas#navidad
🛰️Oferta publicada en Cultura y Ocio
☀️ Paletas cálidas para motivarte (sin sobreestimular)
Los tonos cálidos “suaves” (durazno, terracota, arena, miel) activan energía y enfoque sin subir el volumen visual como los neones.
Mini guía:
- Durazno: ánimo amable
- Terracota: constancia
- Arena: calma
- Miel: optimismo
- Rosa viejo: cercanía
CTA: Dime tu mood (cansad@, enfocad@, ansios@, chill, creativo) y te paso 1 paleta de 5 colores🎨
#PsicologiaDelColor#ColorPalette#Minimalismo#Diseño#Mood
📢Hecho con Inside
📄 Descarga gratis: “Habitación minimal + planta”
Estética minimalista con líneas limpias: perfecta para imprimir y colorear en modo relax. 🖍️🌿
✅ Uso personal
📥 Descarga, imprime y colorea
🎨 Reto:Descarga y comparte tu combo de 3 colores (ponlos en comentarios).
#ParaColorear#ColoringPages#Minimalismo#ArteParaRelajarse#Imprimible#AdultColoring#KidsActivities
📢Hecho con Inside
🗻 Paisaje zen minimal para colorear (montañas)
Una página minimalista japonés para imprimir y relajarte: líneas limpias, mucho aire y calma total.
📥 Descarga gratis y prueba en monocromo:
🔹 Azul
🔹 Gris
🔹 Verde
Tip: usa un solo tono y juega con la presión del lápiz para hacer degradados suaves.
✅ Uso personal
#ParaColorear#ColoringPages#Paisaje#Zen#Minimalismo#Japones#Montañas#Imprimir#ArteRelajante
📢Hecho con Inside