Что делать если нужно поставить какую-то 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
#Sammit
O‘zbekiston Prezidenti Sh.Mirziyoyev Gabalada (Ozarbayjon) Turkiy davlatlar tashkiloti sammitida ishtirok etmoqda.
Ta’kidlash lozimki, ushbu Sammit Samarqanddagi tarixiy tadbirning mantiqiy davomi hisoblanadi.
➡️2022 yilgi Samarqand sammiti tashkilotning yangi arxitekturasini belgilab berdi: "Turkiy istiqbol – 2040", 2026 yilgacha mo‘ljallangan strategiya, iqtisodiy va transport bog‘liqligini kuchaytirish borasida maqsadli sa’y-harakatlardir.
⚡️Aslida, aynan O‘zbekiston "turkiy birdamlik" haqidagi mulohazalarni madaniy doiradan amaliy yo‘nalishga — loyihalarga, koridorlarga, investitsiyalarga olib chiqdi.
Shu boisdan, tabiiyki, bu gal ham Prezident butun turkiy makon kun tartibini belgilaydigan yangi tashabbuslarni ilgari surishi kutiladi.
👇Bizni kuzating:
🌐web-sayt |
📷instagram |
👉telegram |
▶️youtube |
💬facebook
#Sammit#Live
Samarqand shahrida boʻlib oʻtayotgan "Markaziy Osiyo va Kaspiy mintaqasida neftegazkimyo va neftni qayta ishlash"ga bag‘ishlangan XII xalqaro biznes-sammit ishtirokchilari Uzbekistan GTL zavodiga tashrif buyurib, korxona faoliyati bilan tanishmoqda.
———
В рамках XII Международного бизнес-саммита, посвящённого теме «Нефтегазохимия и нефтепереработка Центральной Азии и Каспия», проходящего в Самарканде, участники посетили завод Uzbekistan GTL и ознакомились с деятельностью предприятия.
👇Bizni kuzating:
🌐web-sayt |
📷instagram |
👉telegram |
▶️youtube |
💬facebook
#sammit
#tashrif
Kuni kecha Davlatimiz rahbari sammit doirasidagi madaniy tadbirlarda ishtirok etdi.
Bizni ijtimoiy tarmoqlarda kuzating!
| Telegram | Facebook | Youtube|Instagram|
"Yangi O‘zbekiston" universiteti delegatsiyasi Yevroosiyo universitetlari sammitida
💫 Universitetimiz delegatsiyasi Markaziy Osiyo va Kavkazning eng nufuzli oliygohlari bir joyda to‘plangan Yevroosiyo universitetlari sammitida ishtirok etdi.
⚡️Sammit davomida “Yangi O‘zbekiston” universitetining yutuqlari va mamlakatimizda amalga oshirilayotgan ta’lim islohotlari haqida atroflicha ma’lumot berildi.
✅ Tadbir doirasida muhim hamkorlik uchrashuvlari ham bo‘lib o‘tdi:
🔹Times Higher Education rahbariyati bilan – universitetimizning xalqaro maydondagi o‘rnini yanada mustahkamlash masalalari muhokama qilindi.
🔹Ozarbayjonning ilg‘or ta’lim muassasasi ADA universiteti rahbariyati bilan – talabalar va professor-o‘qituvchilar almashinuvi, qo‘shma ilmiy loyihalar yo‘lga qo‘yilishi yuzasidan kelishuvlarga erishildi.
🔁English
➖➖➖➖➖➖➖➖➖➖➖➖
#sammit#THE
⬇️ Biz ijtimoiy tarmoqlarda:
Veb-sayt | Telegram | Instagram | Facebook
Oʻzbekiston Respublikasi Prezidenti Shavkat Mirziyoyev Yaponiya Bosh vaziri Sanae Takaichining taklifiga binoan 18-20-dekabr kunlari rasmiy tashrif bilan ushbu mamlakatda boʻladi. Tashrif doirasida Prezidentimiz “Markaziy Osiyo - Yaponiya” formatidagi birinchi sammitda ham ishtirok etadi.
—
Президент Республики Узбекистан Шавкат Мирзиёев по приглашению Премьер-министра Японии Санаэ Такаичи 18-20 декабря посетит эту страну с официальным визитом. В рамках визита Президент нашей страны также примет участие в первом саммите в формате «Центральная Азия – Япония».
#Mirziyoyev#tashrif#Yaponiya#sammit
Prezident.uz|Facebook|Instagram|YouTube|X
Oʻzbekiston Respublikasi Prezidenti Shavkat Mirziyoyev Vashington shahrida Tinchlik kengashining birinchi yigʻilishida ishtirok etdi.
—
Президент Республики Узбекистан Шавкат Мирзиёев принял участие в первом заседании Совета мира в городе Вашингтоне.
#Mirziyoyev#sammit#Tinchlikkengashi#hamkorlik
Prezident.uz|Facebook|Instagram|YouTube|X
O‘zbekiston Respublikasi Prezidenti Shavkat Mirziyoyev Qatar Davlati Amiri Shayx Tamim bin Hamad Ol Soniyning taklifiga binoan Ijtimoiy rivojlanish bo‘yicha ikkinchi Jahon sammitida ishtirok etish uchun 3-4-noyabr kunlari amaliy tashrif bilan ushbu mamlakatda bo‘ladi.
—
Президент Республики Узбекистан Шавкат Мирзиёев по приглашению Эмира Государства Катар Шейха Тамима бин Хамада Аль Тани 3-4 ноября посетит эту страну с рабочим визитом для участия во втором Всемирном саммите по социальному развитию.
#Mirziyoyev#tashrif#Qatar#sammit
Prezident.uz|Facebook|Instagram|YouTube|X
Oʻzbekiston Respublikasi Prezidenti Shavkat Mirziyoyev Yaponiya Bosh vaziri Sanae Takaichining taklifiga binoan 18-20-dekabr kunlari rasmiy tashrif bilan ushbu mamlakatda boʻladi. Tashrif doirasida Prezidentimiz “Markaziy Osiyo - Yaponiya” formatidagi birinchi sammitda ham ishtirok etadi.
—
Президент Республики Узбекистан Шавкат Мирзиёев по приглашению Премьер-министра Японии Санаэ Такаичи 18-20 декабря посетит эту страну с официальным визитом. В рамках визита Президент нашей страны также примет участие в первом саммите в формате «Центральная Азия – Япония».
#Mirziyoyev#tashrif#Yaponiya#sammit
Prezident.uz|Facebook|Instagram|YouTube|X
“Yangi O‘zbekiston” universiteti Yevropa universitetlari sammitida qatnashdi
💫 “Times Higher Education” tomonidan Germaniyaning Bremen shahrida Yevropa universitetlari sammiti o‘tkazildi. Sammit universitetlarning Yevropa va boshqa mamlakatlarda jamiyatning rivojiga tutgan o‘rni mavzusida tashkil etildi.
✅ Sammitga “Yangi O‘zbekiston” universiteti prorektori Dr. Bahodir Ahmedov asosiy spiker sifatida tanlab olindi. Dr. Ahmedov “Yangi O’zbekiston” universiteti tajribasi haqida gapirib, Yevropa universitetlarini hamkorlikka chorladi.
🌐 Sammitda dunyo bo’ylab 200 dan ortiq universitetlardan 400 ga yaqin rektorlar, prorektorlar va universitet vakillari qatnashishdi.
🔁English
➖➖➖➖➖➖➖➖➖➖➖➖➖
#sammit#Germaniya#Ahmedov
⬇️ Biz ijtimoiy tarmoqlarda:
Veb-sayt | Telegram | Instagram | Facebook
Ўзбекистон Республикаси Президенти Шавкат Мирзиёев Туркий давлатлар ташкилоти саммитида иштирок этиш учун Остона шаҳрига амалий ташрифини якунлади ва Тошкентга жўнаб кетди.
—
Президент Республики Узбекистан Шавкат Мирзиёев завершил свой рабочий визит в город Астану для участия в саммите Организации тюркских государств и отбыл в Ташкент.
#Mirziyoyev#sammit#TDT
Prezident.uz|Facebook|Instagram|YouTube|Twitter
Oʻzbekiston Respublikasi Prezidenti Shavkat Mirziyoyev Ostona shahrida boʻlib oʻtayotgan Mintaqaviy ekologik sammitning ochilish marosimida ishtirok etdi.
—
Президент Республики Узбекистан Шавкат Мирзиёев принял участие в церемонии открытия Регионального экологического саммита, проходящего в эти дни в городе Астане.
#Mirziyoyev#sammit#ekologiya#hamkorlik
Prezident.uz|Facebook|Instagram|YouTube|X
Ўзбекистон Республикаси Президенти Шавкат Мирзиёев ШҲТ Давлат раҳбарлари кенгашининг навбатдаги мажлиси ва "ШҲТ плюс" форматидаги учрашувда иштирок этиш учун Остона шаҳрига келди. Давлатимиз раҳбарини Қозоғистон Бош вазири Олжас Бектенов кутиб олди.
—
Президент Республики Узбекистан Шавкат Мирзиёев прибыл в Астану для участия в очередном заседании Совета глав государств ШОС и встрече в формате «ШОС плюс». Главу нашего государства встретил Премьер-министр Казахстана Олжас Бектенов.
#Mirziyoyev#sammit#ShHT
Prezident.uz|Facebook|Instagram|YouTube|X