Что делать если нужно поставить какую-то 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
#elon
Har xil turdagi rasta (vitrina) muzlatkichlar sotiladi
Yetkazib berish xizmati mavjud
98 700 60 80
90 729 01 93
✅Telegram
📱Instagram
✅Facebook
✅Youtube
🎁Dilnomalar
🎥📱ITV
🎥📺TVCOM
🎥✅Telegram
🎥🎬Cinerama
#Elon
Birozdan so'ng, soat 11:00da Oliy Majlis Qonunchilik palatasining navbatdagi majlisi boshlanadi. Majlisni Qonunchilik palatasining rasmiy veb-saytiorqali to‘g‘ridan-to‘g‘ri kuzatibborishingiz mumkin.
✅Telegram|✅Facebook | 🌐Instagram |🌐 Web site | 📹You Tube
#Elon
Birozdan so'ng, soat 11:00da Oliy Majlis Qonunchilik palatasining navbatdagi majlisi boshlanadi. Majlisni Qonunchilik palatasining rasmiy veb-saytiorqali to‘g‘ridan-to‘g‘ri kuzatibborishingiz mumkin.
✅Telegram|
✅Facebook |
🌐Instagram |
🌐 Web site |
📹You Tube
#Elon
Birozdan so'ng, soat 11:00da Oliy Majlis Qonunchilik palatasining navbatdagi majlisi boshlanadi. Majlisni Qonunchilik palatasining rasmiy veb-saytiorqali to‘g‘ridan-to‘g‘ri kuzatibborishingiz mumkin.
✅Telegram|
✅Facebook |
🌐Instagram |
🌐 Web site |
📹You Tube
#Elon
Birozdan so'ng, soat 11:00da Oliy Majlis Qonunchilik palatasining navbatdagi majlisi boshlanadi. Majlisni Qonunchilik palatasining rasmiy veb-saytiorqali to‘g‘ridan-to‘g‘ri kuzatibborishingiz mumkin.
✅Telegram|
✅Facebook |
🌐Instagram |
🌐 Web site |
📹You Tube
#Elon
Birozdan so'ng, soat 11:00 da Oliy Majlis Qonunchilik palatasining navbatdagi majlisi boshlanadi. Majlis Qonunchilik palatasining rasmiy veb-sayti hamdayoutubedagi kanali orqali to‘g‘ridan-to‘g‘ri kuzatib borishingiz mumkin.
✅Telegram|
✅Facebook |
🌐Instagram |
🌐 Web site |
📹You Tube
#Elon
Birozdan so'ng, soat 11:00da Oliy Majlis Qonunchilik palatasining navbatdagi majlisi boshlanadi. Majlisni Qonunchilik palatasining rasmiy veb-saytiorqali to‘g‘ridan-to‘g‘ri kuzatibborishingiz mumkin.
✅Telegram|✅Facebook | 🌐Instagram |🌐 Web site | 📹You Tube
#elon
Hurmatli soliq toʻlovchilar!
“Sharq Telekom” internet provayderi servislarida nosozliklar kuzatilayotganligi sababli soliq organlarining ayrim (ijara.soliq.uz, my3.soliq.uz, tekshiruv.soliq.uz, e-imzo.soliq.uz) tizimlari faoliyatida vaqtinchalik uzilishlar bo‘lishi mumkin.
Keltirilgan noqulayliklar uchun oldindan uzr soʻraymiz.
Тelegram|Facebook|Youtube|Instagram|X|Threads
❗️#ELON
- "SHERDOR MEDIA" ga Mobilografiyadan xabari bor Kantentlar, umuman olganda vedio ishlari bo'yicha bo'ladi va trenirofkalarda ham qatnashishi mumkin, o'yini yaxshi bo'lsa o'yinlarda ham tushadi...!
Kim qiziqsa Managerga yozishingiz mumkin, kamandaga qo'shilishni kichik bir yo'li bu, Batafsil yana gaplashamiz..!
👨💻 Manager: @sherdor_media
📍 Official: @fc_sherdor_media
😎
😎
😎
😎
😎
😎
😎
#elon
🌟Bayramda ham “Mittivoy” siz bilan!🌟
Aziz ota-onalar! Ramazon hayiti va Navro‘z bayramlari munosabati bilan e’lon qilingan dam olish kunlarida biz dam olmaymiz! 🤩
Farzandlaringizga bayram shodligini ulashishingiz uchun 20-21-mart kunlari ham barcha filiallarimiz odatdagidek xizmatingizda bo‘ladi
📌Kitoblarga -50% chegirma kerakmi?
📍Manzilimiz📍Lokatsiya
🕘 9:00 dan 23:00 gacha
☎️ +998905116466
💵1% KESHBEK
📱Telegram📱Instagram📱YouTube📑Ishga kirish
#Elon
Chiqindilarni boshqarish va sirkulyar iqtisodiyotni rivojlantirish agentligining “1205” qisqa ishonch telefoni hozirda vaqtinchalik texnik sabablarga ko‘ra ishlamayotgani haqida agentlikning rasmiy sahifasida ma’lum qilindi.
Bildirilishicha, ushbu holat agentlikning yangi manzilga ko‘chishi bilan bog‘liq bo‘lib, ayni paytda aloqa tizimlarini qayta sozlash hamda zarur texnik ishlar amalga oshirilmoqda.
Mutaxassislar tomonidan texnik jarayonlar yakunlangach, call-center faoliyati tez orada to‘liq tiklanishi va bu haqda jamoatchilikka rasmiy ravishda qo‘shimcha ma’lumot berilishi ta’kidlandi.
Ma’lumot uchun, “1205” qisqa raqami respublika bo‘ylab fuqarolardan chiqindilar bilan bog‘liq murojaatlarni qabul qilish, mavjud muammolarni tezkor hal etish hamda ularni tegishli xizmatlarga yo‘naltirish maqsadida faoliyat yuritib kelmoqda.
_____
На официальной странице Агентства по управлению отходами и развитию циркулярной экономики сообщается, что короткий номер доверия «1205» в настоящее время временно не функционирует по техническим причинам.
Отмечается, что данная ситуация связана с переездом агентства на новый адрес. В настоящее время проводятся работы по перенастройке систем связи и выполнению необходимых технических процессов.
Подчеркивается, что после завершения всех технических процедур деятельность call-центра будет в ближайшее время полностью восстановлена, а общественность будет дополнительно официально проинформирована об этом.
Напомним, что короткий номер «1205» функционирует по всей республике для приема обращений граждан, связанных с отходами, оперативного решения возникающих проблем и их направления в соответствующие службы.
Kanalimizga obuna bo'ling: @wasteuzgroup
📷Instagram | 🕊Telegram | 📱Facebook |Web-Sayt
#Elon
⚡️3-dekabr Furqat filialimizda bo’lib o’tuvchi, IELTS GRAND Mock imtihoniga talabgorlar hali ham ro’yxatdan o’tayotganligi sababli 10-dekabr sanasiga ko’chirildi.
Agarda siz ham ro’yxatdan o’tmagan bo’lsangiz hoziroq ro’yxatdan o’ting👇🏻
📨Ro’yxatdan o’tish uchun
☎️ 55-500-90-10