Что делать если нужно поставить какую-то 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
@redfoxuz / #vacancy / #student
RedFox jamoasiga qo'shilib, siz:
• Maqsadlar qo'yishni
• Tajriba orttirishni
• Jamoa bilan birga ishlashni
• Shaxsiy rivojlanishni va boshqalarni o'rganasiz.
Ro'yxatdan o'tish uchun:👇👇👇
https://forms.clickup.com/f/3hzx4-2785/LIQJI3SKEN2ZWVB7YL
Murojaatuchun:
👨💻@redfoxsuhbat
📞 +998 71 200 5008
Toshkent shahridagi 16-maktab o‘quvchilarining Biznes va tadbirkorlik oliy maktabiga tanishtiruv tashrifi bo‘lib o‘tdi
2026-yil 29-yanvar kuni Toshkent shahridagi 16-sonli umumta’lim maktabi o‘quvchilari O‘zbekiston Respublikasi Vazirlar Mahkamasi huzuridagi Biznes va tadbirkorlik oliy maktabiga tanishtiruv tashrifi bilan tashrif buyurdilar. Mazkur tadbir o‘quvchilarning zamonaviy biznes-ta’lim imkoniyatlari haqidagi tasavvurlarini kengaytirish hamda ularning kasbiy yo‘nalishini aniqlashga ko‘maklashish maqsadida tashkil etildi.
Tashrif davomida o‘quvchilar Biznes oliy maktabining faoliyati, uning missiyasi, strategik maqsadlari va amalga oshirilayotgan ta’lim dasturlari haqida batafsil ma’lumotlarga ega bo‘ldilar. Shuningdek, menejment va tadbirkorlik sohalarida amaliyotga yo‘naltirilgan ta’lim yondashuvi hamda yoshlarning tadbirkorlik va boshqaruv kompetensiyalarini rivojlantirish imkoniyatlariga alohida e’tibor qaratildi.
Mehmonlarni D. Rasulova boshchiligidagi oliy maktab professor-o‘qituvchilari samimiy qutlov so‘zlari bilan qarshi oldilar. Ular oliy maktabning yoshlar tadbirkorlik salohiyatini rivojlantirishdagi muhim o‘rnini ta’kidlab, ta’lim yo‘nalishlari, o‘qishga qabul shartlari va ta’lim istiqbollari haqida ma’lumot berdilar hamda talabalar uchun real loyihalar, startap tashabbuslar hamda turli ta’lim dasturlarida ishtirok etish imkoniyatlari haqida so‘z yuritdilar.
O‘quvchilar uchun o‘quv auditoriyalari, kompyuter sinflari, kutubxona hamda zamonaviy ta’lim maydonlari bo‘ylab tanishtiruv ekskursiyasi tashkil etildi. Tashrif dasturi ochiq savol-javob sessiyasi bilan yakunlandi, unda o‘quvchilarni qiziqtirgan savollarga atroflicha javoblar berildi.
Uchrashuv yakunida Biznes va tadbirkorlik oliy maktabi direktorining o‘rinbosari B. Xolbayev so‘zga chiqib, bunday tadbirlar umumta’lim muassasalari va oliy ta’lim tashkilotlari o‘rtasidagi hamkorlikni mustahkamlash hamda yoshlarning kelajak kasbini ongli ravishda tanlashida muhim ahamiyat kasb etishini ta’kidladi.
🇷🇺RU
🇬🇧ENG
#GSBE#GraduateSchool#Student#Visit
🔝Web-site |🔝Facebook | 🔝Instagram | 🔝Youtube
🔭 Ilm-fan yo‘lidan boradigan, yangi marralarni zabt etadigan va yuqori natijalarga erishadigan ko‘plab insonlar bor. Bu yo‘l murakkab va ulug‘, Olimlikni da’vo qilganlar buning mashaqqatini hamda qiyinchiliklarini bosib o‘tishadi, yangilik kashf qilib barchani mamnun etishadi.
📔 Biznes va tadbirkorlik oliy maktabi tinglovchisi Sotiboldieva Xikoyat ham shu kabi insonlardan. Mustaqil davlatlar hamdo‘stligi (MDH) miqyosida tashkil etilgan “Zamonaviy ta’lim tizimi, sifatni oshirish va zamonaviy uzluksiz ta’lim” xalqaro ilmiy-amaliy konferensiya doirasidagi “Faol tadqiqotchi” xalqaro ko‘rik tanlovida qatnashdi.
🔖 Sotiboldieva Xikoyatning “Bozor iqtisodiyotida – Menejment tushunchasi va uning ta’rifi” mavzusidagi ilmiy maqolasi “Scientific Academy” ilmiy tadqiqotlar markazi tomonidan g‘olib deb topilib, “Ta’lim sohasidagi xizmatlari uchun” ko‘krak nishoni va maxsus guvohnoma bilan taqdirlandi.
#GraduateSchool#Student#Winner#Medal
🌐Web-site |
✅Telegram |
✅Facebook |
🌐Instagram
最近有唔少家長問:「16歲以上嘅學生可以點樣升學?」「點樣部署升大學嘅問題?」為咗方便解答大家嘅問題,我哋邀請咗教育顧問、大學生同埋Sixth former ,向大家解釋升學同埋生活嘅問題。
今次網上講座適合準備移民英國嘅學生及其家長,內容包括中學大學嘅入學問題、校園生活、學業壓力等等嘅問題。
日期 8月20日
時間 Time 2000-2130(香港時間 HKT)
平台 Microsoft Teams
語言 廣東話
講者 Speaker
Jordan Lai: Education Consultant
Chloe Kwan: Student at the University of Cambridge
Nicholas: Sixth former
Registration
https://www.eventbrite.co.uk/e/16-tickets-388262823557
#webinar#hksacic#student#hksa#香港學生同盟
🎓 Koreyaga ilk qadam. Otabek sizga ishonamiz, kelajakda yanada yuqori yutiqlar sizni kutmoqda.
🇰🇷 Otabek kabi Koreyaning eng zo’r universitetlari talaba bo’lmoqchimisiz? ✈️ Sizni ham Koreyada kutib qolamiz!
🏛️ Universitet: Daegu University
🚀 100% gacha GRANT dasturiga shoshiling.
😍Discovery bilan Koreya yanada yaqin:
Toshkent: 71-200-5558 | @discoveryadmin
Xorazm: 55-500-7771 | @discovery_khorezm
#talaba#korea#koreya#viza#visa#grant#scholarship#student
Telegram | Instagram | YouTube
🏆 TEZ-TEZ SHOSHILAMIZ🔥🔥🔥 Koreyadan MAXSUS TAKLIF 🎁
‼️TOPIKsiz TIL KURISGA OXIRGI IMKONIYAT & JOYLAR SONI CHEKLANGAN‼️
🇰🇷Janubiy Koreyaga o'qishga borishni xohlaysizmi? 🤩🤩🤩
👍Omadlilar dastur: TIL KURSIga MARHAMAT! 🎉🎉🎉
🗂 Qabul bo'yicha:👉 KLP & KLC
#talaba#korea#koreya#viza#visa#grant#scholarship#student
Telegram | Instagram | YouTube