Что делать если нужно поставить какую-то 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
¡Lamentable! 👎🏻
🔴 "Era mi medio ídolo", dijo uno de los visitantes que accedió a hablar sobre su visita a la tumba de #ElMencho👀 | ¿Qué opinas? 📸👇🏻
https://sinlineamx.com/tumba-de-el-mencho-atractivo-turistico-jalisco/
🚨 ¡Atención! 🚨
🔴 El reportero #AntonioNieto reveló que vio más de 25 imágenes del cuerpo de #ElMencho🤯📸 | Estas fueron sus observaciones 👇🏻
https://sinlineamx.com/fotos-del-cuerpo-de-el-mencho-reportero-narra-imagenes/
📰 El Mencho Is Dead. The Cartel State Lives On.
Mexico just killed its most wanted cartel boss and, in the process, reminded everyone how little control it actually has. Nemesio “El Mencho” Oseguera — the man who built the Jalisco New Generation Cartel into the country’s most feared criminal army — was tracked through a romantic partner and taken down in a helicopter-backed raid in Tapalpa, Jalisco. Within hours, his people answered with roadblocks, burned supermarkets and banks, and gun battles in at least a dozen states, leaving highways cut, cities under smoke, and tourists locked in hotel rooms in places like Puerto Vallarta.
President Claudia Sheinbaum was under heavy pressure from Donald Trump, who has been openly threatening cross‑border strikes and demanding Mexico “do more” against cartels ahead of the World Cup and U.S. midterms. She chose the high‑risk option: take the shot. The result: at least 62 dead — 34 suspected cartel members, 25 National Guard troops, plus a state prosecutor, a security guard, and a civilian reportedly a pregnant woman caught in a shootout. Order is “mostly” restored, officials insist, but classes and businesses are still shut in hard‑hit areas and people are staying home. The message on the street is simple: the state can land a kill shot, but it can’t guarantee calm.
Militarily, El Mencho’s death is a big win. The U.S. had a $15 million reward on his head, and his group has spent a decade attacking security forces, running drugs, extorting businesses, kidnapping, and smuggling migrants. Politically, it’s a gift to both presidents: Sheinbaum gets to tell Mexicans and Washington she went after the “untouchable,” and Trump gets to claim his threats “worked” without firing a shot. The bodies on both sides of the firefight are just set dressing in two capitals’ security narratives.
But the cartel isn’t a Marvel villain that disappears when the boss falls. CJNG is a franchise: regional commanders, local fiefdoms, deep ties to municipal politics and police. Whether it survives depends on how fast it names a successor and closes ranks — or whether it fractures into smaller, more chaotic crews fighting over territory. Either outcome means more violence, not less, in the short term. The Mexican state has decapitated cartels before. The result was splinter groups and a map full of new acronyms.
So Mexico wakes up with its “most wanted” finally dead, U.S. pressure briefly eased, and cruise ships quietly skipping Puerto Vallarta because nobody wants their passengers walking off into a war zone. The flag still flies over government buildings; the cartel still has the power to shut down a dozen states in a day. Call it a victory if you like — just don’t call it control.
#Mexico#cartels#ElMencho#Sheinbaum#Trump#warOnDrugs#fakeDemocracy
📱American Оbserver - Stay up to date on all important events
🇺🇸
🚨 最新消息:🇺🇸🇨🇳 Anthropic 表示,包括 DeepSeek 在内的中国 AI 公司对其 AI 模型 Claude 发起了“工业级规模(industrial-scale)”攻击。
@HKhuanhui123
#加密快讯#加密市场#稳定币#BTC#USDT#elmencho#deepseek#china#claude