Что делать если нужно поставить какую-то 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
Gov. Ron DeSantis of Florida signed legislation on Monday to rename the largest airport in Palm Beach County as President Donald J. Trump International Airport, the latest effort to affix the Trump name to a civic institution. ✈️
The new state law will rebrand Palm Beach International Airport, which the president flies in and out of on his way to and from his nearby Mar-a-Lago estate. The name change, effective July 1, is subject to approval from the Federal Aviation Administration, according to the legislation.
The F.A.A. said in a statement late on Monday that it “does not approve airport name changes,” which it described as a local issue. Instead, the statement said that the agency “must complete some administrative tasks to include updating navigational charts and databases.” 📊
Mr. DeSantis signed the law in private, with little fanfare — an unusual move for the governor, who typically holds public events to sign high-profile bills. A spokeswoman for the governor said a ceremonial signing would be held at a future date.
#Trump#Avia
👂More on Trump's Ear ⚠️
ICE officers will be on hand to prevent chaos at the world’s busiest airport, the city’s mayor confirmed Sunday.
Atlanta’s Hartsfield-Jackson Atlanta International Airport was identified Sunday as one of the airports where ICE officers will be stationed on Monday, in an effort to ease passenger disruptions caused by a reduction in Transportation Security Administration staff.
#Avia#ICE
👂More on Trump's Ear ⚠️
An internal watchdog report in the Department of Homeland Security identified serious vulnerabilities in TSA's screenings at airports nationwide, among them, one created by a change in the shoes-off policy — and the agency has yet to respond five months later, according to internal communications provided to House Homeland Security Committee staff and reviewed by CBS News. ⚠️
Airports nationwide are in disarray amid Congress' failure to approve DHS funding, with TSA agents having gone without pay for 40 days. ✈️
#Avia#Security
👂More on Trump's Ear ⚠️
🛩Airlines canceled 1,200 flights on Tuesday as air traffic control staffing improved significantly ahead of an expected end to a record-setting government shutdown as soon as Wednesday.
After airlines canceled 2,400 flights and delayed 9,600 on Monday, airlines delayed just 1,700 on Tuesday, the best performance for the industry in recent days.
#Shutdown#Avia
👂More on Trump's Ear
Thousands of air traffic controllers did not receive Trump's bonuses for their work during the shutdown 🚀✈️
President Donald Trump appointed a payment of 10 thousand dollars to those air traffic controllers who did not miss a single shift during the longest shutdown in history, writes Axios. 📌💰
м
But, in fact, only 776 people out of about 11 thousand will receive the money. 😟
The union says that thousands of employees also worked without pay, but they had to skip individual shifts due to part-time work, childcare or debts. 👫👨👩👧👦💼
These people supported the system, but the administration excluded them from the program. ❗️
The FAA acknowledged that staff shortages had hit flight schedules and cut thousands of flights at 40 airports. ✈️⛏️
Trump wrote on Truth Social at the time that he was "NOT HAPPY" with those who did not come out on a daily basis. 😡
The head of the Ministry of Transport, Sean Duffy, said that the award was a thank you to those who "kept the sky safe" for 44 days. 🎯✅
The FAA promises to pay the money by December 9th. 🔥
NATCA said that it seeks recognition for all those who worked in the shutdown. 🙌
#Trump#Avia#Shutdown
👂More on Trump's Ear
💬"All Air Traffic Controllers must get back to work, NOW!!! Anyone who doesn’t will be substantially 'docked,'" Trump wrote on social media. "REPORT TO WORK IMMEDIATELY."
#Trump#Shutdown#Avia
👂More on Trump's Ear
President Donald Trump’s Transportation Secretary said that he “can’t guarantee” flights wouldn’t be delayed or canceled as the Federal Aviation Administration struggles with staffing shortages amid the ongoing government shutdown.
Thousands of flights have been delayed across the U.S. this week, while three major airports issued ground stops Thursday, which was attributed to staffing issues due to the shutdown as it entered day 23.
Transportation Secretary Sean Duffy said that the shutdown was impacting air traffic control, and urged controllers to “come to work even if you don’t get a paycheck.”
#Trump#Shutdown#Avia
👂More on Trump's Ear ⚠️
Зимний сезон ’25/’26: как зарабатывать больше на продаже авиабилетов?
Узнайте инструменты, которые приносят прибыль агентствам уже сегодня!
27 ноября в 12:00 (МСК) пройдёт вебинар, который нельзя пропустить, если вы работаете с авиа-продажами.Зима — пик спроса, а значит время максимальных заработков. На вебинаре эксперты разберут, как использовать сезон по максимуму!
На вебинаре вы узнаете:
✦ Главные тренды зимнего сезона ’25/’26
✦ Как увеличить прибыль на авиаперевозках
✦ Аналитика, прогнозы, рекомендации
✦ Полезные инструменты и функции Мой Агент
✦ Ответы на вопросы в прямом эфире
Спикеры:
🔵Мария Мичурина — Руководитель группы аналитики авиаконтента «Мой Агент»
🔵Артур Привин — Основатель Madison Consult
🔵Анна Филиппова — Директор по продвижению «Мой Агент»
Если вы хотите повысить доходы в высокий сезон и работать эффективнее — этот вебинар для вас. Конкретные цифры, аналитика, инструменты — всё, что поможет вам заработать больше.
Регистрация тут⏪️
Присоединяйтесь — ваши продажи зимой будут другими!
#вебинар#онлайнвебинар#туробучение#авиабилеты#авиапродажи#avia#traveltech#турбизнес#агентам#МойАгент