Что делать если нужно поставить какую-то 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
⚡️Путь к миру через силу: как Великобритания готовится к послевоенному восстановлению Украины
🕊️ Великобритания активно работает над созданием условий для мира и послевоенного восстановления Украины. Вчера премьер-министр Кир Стармер провел важную встречу в рамках "Коалиции желающих" с президентами Макроном и Зеленским.
Что планируется для мирного времени?
Многонациональная штаб-квартира в Париже будет координировать послевоенные силы восстановления, которые помогут:
🛡️ Восстановить украинские вооруженные силы — предоставить экспертов по обучению и логистике
✈️ Обезопасить воздушное пространство — возобновить международное авиасообщение
🌊 Очистить Черное море — ускорить разминирование для безопасной торговли
Почему это важно для мира?
Как заявил премьер Стармер: "Пока мы готовимся к миру, мы должны делать всё возможное, чтобы приблизить его".
Цель — создать условия, при которых:
☑️ Украина сможет защитить себя
☑️ Российские власти поймут бесперспективность агрессии
☑️ Восстановление экономики станет возможным
☑️ Реальные шаги к миру —Великобритания выделяет £4.5 млрд в 2025 году на поддержку Украины — не для продолжения войны, а для создания условий, при которых мир станет возможным.
Сильная оборона Украины 🟰путь к переговорам
Международное сообщество готовится к послевоенному периоду, потому что верит: мир возможен, когда агрессор понимает, что его цели недостижимы.
🔗https://www.gov.uk/government/news/new-coalition-of-the-willing-headquarters-as-leaders-step-up-support-for-ukraines-immediate-flight.ru
#PeaceForUkraine#CoalitionoftheWilling#theUK
«Сегодня я разговаривал с Владимиром Зеленским, президентом США и другими лидерами.
Мы работаем с нашими союзниками и партнёрами ради справедливого и прочного мира в Украине.
Будущее Украины должно определяться при её непосредственном участии», — заявил премьер-министр Великобритании Кир Стармер.
Заявление лидеров Коалиции желающих перед саммитом в Аляске: что главное?
⚡️Лидеры поддержали усилия президента Трампа по прекращению войны и достижению справедливого мира в Украине.
⚡️Было подчеркнуто: мир невозможен без участия самой Украины.
⚡️Переговоры возможны только при прекращении огня или значительном снижении боевых действий.
⚡️Санкции против России будут усилены, если она не согласится на перемирие.
⚡️Международные границы не должны изменяться силой.
⚡️Украина должна получить надежные гарантии безопасности. Россия не может блокировать ее путь в ЕС и НАТО.
⚡️Лидеры подтвердили готовность к тесному сотрудничеству с США и Украиной ради мира.
🔗https://www.gov.uk/government/news/statement-of-the-co-chairs-of-the-coalition-of-the-willing-13-august-2025
#Украина#Россия#Аляска#Саммит#Мир#КоалицияЖелающих#Макрон#Мерц#Стармер#CoalitionoftheWilling
🎙 Briefing by Russia's Foreign Ministry Spokeswoman Maria Zakharova (Moscow, January 15, 2026)
🔹News conference by Russia's Foreign Minister Sergey Lavrov
🔹#KievRegimeCrimes
🔹Ukraine crisis
🔹Torchlit procession in Lvov
🔹London’s aggressive anti-Russia line
🔹On the destruction of the monument to Soviet heroes in the Czech Republic
🔹Certain statements by the Yad Vashem leadership
📖Read
📺Watch
***
#LavrovSchedule
On January 20, Russia's Foreign Minister Sergey Lavrov will hold a high-profile news conference to review Russian diplomacy’s outcomes in 2025.
The news conference will be livestreamed on the Ministerial website and social media and translated into English, French, and Spanish.
#KievRegimeCrimes
The neo-Nazi Kiev regime continues to reveal its terrorist nature. From January 1 to 12, at least 152 Russian civilians were affected by Ukrainian shelling and drone attacks. 45 people were killed, including 3 children.
In the first minutes of 2026, in a premeditated attack, the armed forces of Ukraine used UAVs to hit a café and a hotel complex in the village of Khorly, Kherson Region, where families with children, a crowd of about 100 people, had come together to ring in the New Year. 29 people, including 2 children, were killed.
The Foreign Ministry provided an assessment of this barbaric atrocity by Ukrainian neo-Nazis on January 1.
#Ukraine#West
The fact that the West has no genuine interest in ending the conflict – just as it showed no desire for peace from the outset – is clearly demonstrated by the uninterrupted operation of Rzeszów Airport in Poland. Since 2022, it has served as a key logistics hub through which a continuous flow of military cargo has been delivered to the Ukrainian Armed Forces.
Observers note that the British and Canadian air forces, as well as private transport companies affiliated with the US military, are most active in these operations.
The European NATO member states’ actions aimed at saturating Kiev with military and financial resources speak far more eloquently about their true intentions than any hypocritical statements about a desire for peace. These actions speak louder than words, declarations, or diplomatic rhetoric.
#Britain#CoalitionOfTheWilling
For several months, we have observed a consistent escalation by Britain of aggressive and belligerent rhetoric against Russia.
For instance, on January 6 in Paris, on the sidelines of a gathering of the coalition of the willing, British Prime Minister Keir Starmer, alongside French President Emmanuel Macron and head of the Kiev regime Zelensky, signed a declaration of intent providing for the deployment of so-called multinational forces – in essence, Western occupation troops – to Ukraine under the guise of ensuring “future peace agreements.”
❗️ We must warn that any attempts to realise this criminal scheme with the coalition of the willing will leave responsibility for the lives of British subjects entirely on London’s shoulders.
Our position remains unchanged and well-known – any foreign military contingents in Ukraine will be considered legitimate targets for the Armed Forces of the Russian Federation. The British component will be no exception.
#Finland#Militarisation#BalticRegion
On January 10, 2026, Helsinki’s decision to denounce the Convention on the Prohibition of the Use, Stockpiling, Production and Transfer of Anti-Personnel Mines and on their Destruction came into force.
Russia views this decision by the Finnish authorities as yet another manifestation of their destructive policy to militarise the country.
Russia reserves the right to respond to any hostile actions in a proportionate way, including by military and technical means, if necessary.