Что делать если нужно поставить какую-то 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
🎬2001: Uma Odisséia no Espaço (1968)
Gênero: #Aventura
⭐️ IMDb: 8.3
⏳ Duração: 2 h 29 min
📝 Sinopse:
Trás descobrir um misterioso artefato na superfície da Lua, a humanidade tenta encontrar seus origens com a ajuda da inteligença do ordernador HAL 9000.
Fonte: IMDb
🔵Inscreva-se em @Assistir
*Patrocinado: Anime Bot
📺- EL GRAN GUERRERO -📺
Título Original: Chief of War
Género:#Aventura#Drama
Temporadas: 1 📼
Año: 2025
Origen: EEUU 🇺🇸
Tráiler: dai.ly/x9njmkc
Sinopsis:
Historia ambientada durante la unificación de las islas hawaianas en el siglo XVIII desde una perspectiva indígena. Un jefe militar hawaiano, el guerrero Ka'iana (Momoa) se une a una sangrienta campaña para unir las islas en guerra e intentar salvarlas de la amenaza de la colonización occidental.
Disponible:Prime Video | Apple TV
@SeriesClubHD
📺- LA CATEDRAL DEL MAR -📺
Título Original: La Catedral del Mar
Género:#Drama#Aventura
Temporadas: 1 📼
Año:2018
Origen: España 🇪🇸
Tráiler: youtu.be/rdazkGhdr58
Sinopsis:
Barcelona, siglo XIV. Bajo la Corona de Aragón, la ciudad condal se encuentra en su momento de mayor prosperidad y los habitantes del humilde barrio de pescadores de la Ribera deciden construir, con el dinero de unos y el esfuerzo de otros, el mayor templo mariano jamás conocido: la catedral Santa María del Mar. Mientras se construye el edificio, Arnau Estanyol va creciendo y descubriendo Barcelona. Adaptación de la famosa novela de Ildefonso Falcones, publicada en 2006.
Disponible:A Tres Player
@SeriesClubHD
🎬Interestelar (2014)
Gênero: #Aventura, #Drama
⭐️ IMDb: 8.7
⏳ Duração: 2 h 49 min
📝 Sinopse:
Uma equipe de exploradores viaja através de um buraco de minhoca no espaço, na tentativa de garantir a sobrevivência da humanidade.
Fonte: IMDb
🔵Inscreva-se em @Assistir
*Patrocinado: Anime Bot
🎬Perdido em Marte (2015)
Gênero: #Aventura, #Drama
⭐️ IMDb: 8.0
⏳ Duração: 2 h 24 min
📝 Sinopse:
Um astronauta fica preso em Marte, enquanto sua equipe pensa que ele morreu. Ele vai fazer o possível para tentar enviar um sinal até a Terra.
Fonte: IMDb
🔵Inscreva-se em @Assistir
*Patrocinado: Anime Bot
🎬O Regresso (2015)
Gênero: #Drama, #Aventura
⭐️ IMDb: 8.0
⏳ Duração: 2 h 36 min
📝 Sinopse:
Em uma expedição de comércio de peles em 1820, um homem luta para sobreviver depois de ser atacado por um urso e dado como morto por seu próprio grupo de caça.
Fonte: IMDb
🔵Inscreva-se em @Assistir
*Patrocinado: Anime Bot
🎬The Goat Life (2024)
Gênero: #Aventura, #Drama
⭐️ IMDb: 8.1
⏳ Duração: 2 h 53 min
📝 Sinopse:
Najeeb Muhammad, um trabalhador migrante indiano, vai para a Arábia Saudita em busca de dinheiro. No entanto, por uma reviravolta do destino, ele acaba vivendo como um escravo, pastoreando c...
Fonte: IMDb
🔵Inscreva-se em @Assistir
*Patrocinado: Anime Bot
🎬The Goat Life (2024)
Gênero: #Aventura, #Drama
⭐️ IMDb: 8.1
⏳ Duração: 2 h 53 min
📝 Sinopse:
Najeeb Muhammad, um trabalhador migrante indiano, vai para a Arábia Saudita em busca de dinheiro. No entanto, por uma reviravolta do destino, ele acaba vivendo como um escravo, pastoreando c...
Fonte: IMDb
🔵Inscreva-se em @Assistir
*Patrocinado: Anime Bot
💥💥ESTRENO 💥💥
☃️ Ninja Kamui
🗓 11 FEB 2024
🌈 Géneros: #Acción#Aventura
📺 Episodios: 12
⛲️ Fuente: Original
🖌 Estudio: E&H Production
El exninja Joe Higan escapa de su clan y se esconde de su pasado violento en los Estados Unidos rural. Una noche, es emboscado por un equipo de asesinos de su antigua organización que exigen una sangrienta retribución a Joe por traicionar su código.
Enlace:
🔗https://teraboxapp.com/s/1Wrj5SgpNopBqITEIfdKzIw
*SE ACTUALIZA CADA DOMINGO*
⭐️Descarga MagisTV para ver más series y películas de forma gratuita
🔗https://links.magistv.top/info.krlo
📎Tutorial para acceder al contenido ✨
▹ Dar click en 👉🏻Ver Tutorial
🎥- SWEET TOOTH: EL NIÑO CIERVO -🎥
Título Original: Sweet Tooth
Género:#Aventura#Fantasía
Temporadas: 3 📼
Año: 2021 - 2024
Origen: EEUU 🇺🇸
Tráiler:dai.ly/x8yuwza
Sinopsis:
Un cataclismo ha devastado el mundo. Gus, mitad chico y mitad ciervo, se une a una variopinta familia de niños híbridos como él para buscar respuestas a lo ocurrido.
Disponible:Netflix
@SeriesClubHD
📺- LAS CRÓNICAS DE SHANNARA -📺
Título original: The Shannara Chronicles
Título Alternativo: Shannara
Género:#Fantasía#Aventura
Temporadas:2 📼
Año: 2016
Origen: EEUU 🇺🇸
Tráiler:youtu.be/2cbLfgM5z7M
Sinopsis:
Todo comienza cuando Ellcrys, un místico árbol élfico enferma y su muerte está cada día más cerca. Este árbol ha sido la única pieza mágica que ha protegido siempre las Cuatro Tierras del mundo maquiavélico de los demonios. Amberle Elessedil es la única que puede salvarlo. Para ello, tendrá que desbloquear la magia de los elfos que lleva miles de años sin utilizarse. Con la ayuda de Wil Ohmsford, viajará por cada rincón para buscar la magia perdida y curar al árbol Ellcrys.
Disponible:Netflix⏳
@SeriesClubHD
📺- THE WITCHER -📺
Título original: The Witcher
Género:#Fantasía#Aventura
Temporadas:4
Año: 2019📡
Origen:EEUU🇺🇸
Tráiler:https://dai.ly/x8mqrhn
Sinopsis:
Geralt, un brujo que se dedica a cazar monstruos genéticamente modificados, busca su lugar en un mundo donde a menudo los humanos demuestran ser peores que las bestias.
Disponible:Netflix
@SeriesClubHD