Что делать если нужно поставить какую-то 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
#about
✈️Nega biz kam uchamiz?
Men Yevropada bir yilda ko'p uchdim. Uchish chastotam Ziyoxonov yoki boshqa trevel blogerlarnikiga yetib qolgandi. Agar uyoqda muqim yashab, o'rtacha oylik olgan taqdiringizda ham yiliga 15-20 va hatto 30 martagacha ham ucha olasiz. Xo'sh, nega unday?
Asosiysi, albatta soqqa bilan bog'liq. Bugun O‘zbekistonda aviachiptaning o‘rtacha narxi 25 ish kunlik daromadga teng — amalda bir reys uchun bir oylik ish haqi sarflanadi. Qozog‘istonda bu 4 kun, G‘arb mamlakatlarida esa bir kunlik daromadga teng. Demak, aviatsiya hozircha bizda yetarlicha hashamatli narsa hisoblanadi.
Jahon statistikasi aniq ko‘rsatadi: daromadlar oshgani sayin odamlar ko‘proq uchadi— avval ish yuzasidan yoki qarindoshlar oldiga, keyin esa dam olish uchun. Hozir bizda iqtisodiyot yiliga 6−7 foizga o‘smoqda va bu sur’at saqlansa, 2030-yillar o‘rtalariga kelib ikki baravarga oshishi mumkin.
ikkinchi sabab, aeroport. Bugungi kunda Toshkent xalqaro aeroportida 12 ta geyt bor. Yirik xalqaro aeroport uchun bu hatto terminalning bir qanoti darajasiga ham yetmaydi. Katta hablarda bir qanotda 30 ta va undan ortiq geyt bo‘lishi mumkin. Kimda-kim Istanbul yoki Heathrow airportga borgan bo'lsa, uni ichida adashib qolish hech gapmas.
Ammo shunchaki katta aeroport borligi muammoni hal qilmaydi, shunga yarasha yangi yo'nalishlar ham kerak. Bizda esa asosan yo'nalishlar miqdori chegaralangan. Hozir yangi aeroportlar qurilyapti. Odamlar aytganimdek ko'proq uchsa, ichki talabning o‘sishi aviakompaniyalarga yuklama va operatsion foyda keltirishi mumkin.
Uchinchisi, albatta viza. O'zbekiston passporti afsuski o'z kuchi bilan oldingi o'rinlarda turmaydi jahonda. Deyarli barcha G'arb va rivojlangan davlatlarga uchish uchun bizga viza kerak bo'ladi.
Lekin shu bilan birga juda ko'pgina turistik davlatlar (Misr SHarm el Sheyxi, Tailand, Malaysia va Gruziya va hz)ga viza shart emas, Va kamida 20 ta va undanam ko'p yaxshi davlatlarga sayohat qilish uchun UZB passporti kifoya qiladi.
Sizda yana qanday fikrlar bor?
@bagajsiz
#about
Oksforddagi Christ Church kollejining ovqatlanish zali dunyodagi eng mashhur zallardan biri sanaladi. XVI asrda qurilgan bu ulkan, gumbazsimon xona oʻzining uzun yog‘och stollari, devorlariga osilgan sobiq dekanlar va bitiruvchilar portretlari hamda baland vitrajli derazalari bilan ajralib turadi. Bu shunchaki ovqatlanish joyi emas - bu tarixning bir bo‘lagidir.
Ushbu zal faylasuflar va shoirlardan tortib bosh vazirlargacha bo‘lgan ko‘plab avlodlarni yetishtirgan. U shuningdek, Garri Potter filmidagi Katta zalni ilhom manbayi boʻlgani bilan ham mashhur - garchi filmdagi versiyasi dekoratsiya bo‘lsa-da.
Talabalar bugungi kunda ham bu yerda har kuni ovqatlanishadi, asrlar davomida shakllangan an’analarni haligacha davom ettirishadi. Bu yerga shunchaki ko‘z tashlash uchun kirsangiz ham, zal o‘zining abadiy, ulug‘vorligi bilan shubhasiz Oksfordga xos ekanligini ta’kidlab turadi.
@bagajsiz
#about
✈️Nega biz kam uchamiz?
Men Yevropada bir yilda ko'p uchdim. Uchish chastotam Ziyoxonov yoki boshqa trevel blogerlarnikiga yetib qolgandi. Agar uyoqda muqim yashab, o'rtacha oylik olgan taqdiringizda ham yiliga 15-20 va hatto 30 martagacha ham ucha olasiz. Xo'sh, nega unday?
Asosiysi, albatta soqqa bilan bog'liq. Bugun O‘zbekistonda aviachiptaning o‘rtacha narxi 25 ish kunlik daromadga teng — amalda bir reys uchun bir oylik ish haqi sarflanadi. Qozog‘istonda bu 4 kun, G‘arb mamlakatlarida esa bir kunlik daromadga teng. Demak, aviatsiya hozircha bizda yetarlicha hashamatli narsa hisoblanadi.
Jahon statistikasi aniq ko‘rsatadi: daromadlar oshgani sayin odamlar ko‘proq uchadi— avval ish yuzasidan yoki qarindoshlar oldiga, keyin esa dam olish uchun. Hozir bizda iqtisodiyot yiliga 6−7 foizga o‘smoqda va bu sur’at saqlansa, 2030-yillar o‘rtalariga kelib ikki baravarga oshishi mumkin.
ikkinchi sabab, aeroport. Bugungi kunda Toshkent xalqaro aeroportida 12 ta geyt bor. Yirik xalqaro aeroport uchun bu hatto terminalning bir qanoti darajasiga ham yetmaydi. Katta hablarda bir qanotda 30 ta va undan ortiq geyt bo‘lishi mumkin. Kimda-kim Istanbul yoki Heathrow airportga borgan bo'lsa, uni ichida adashib qolish hech gapmas.
Ammo shunchaki katta aeroport borligi muammoni hal qilmaydi, shunga yarasha yangi yo'nalishlar ham kerak. Bizda esa asosan yo'nalishlar miqdori chegaralangan. Hozir yangi aeroportlar qurilyapti. Odamlar aytganimdek ko'proq uchsa, ichki talabning o‘sishi aviakompaniyalarga yuklama va operatsion foyda keltirishi mumkin.
Uchinchisi, albatta viza. O'zbekiston passporti afsuski o'z kuchi bilan oldingi o'rinlarda turmaydi jahonda. Deyarli barcha G'arb va rivojlangan davlatlarga uchish uchun bizga viza kerak bo'ladi.
Lekin shu bilan birga juda ko'pgina turistik davlatlar (Misr SHarm el Sheyxi, Tailand, Malaysia va Gruziya va hz)ga viza shart emas, Va kamida 20 ta va undanam ko'p yaxshi davlatlarga sayohat qilish uchun UZB passporti kifoya qiladi.
Sizda yana qanday fikrlar bor?
@bagajsiz
#about
Sayohat va Taom
Kecha doʻstlar bilan street-kafeda bardak choy ichib oʻtirib, Toshkentda qaysi restoranda zo’r beshbarmoq qilishi haqida gao ketdi. Gap aylanib-aylanib menga qaysi davlatlarda nimalar yeganim haqidagi savollar bilan tugadi. Shunda bir qiziq narsani payqab qoldim.
Har qanday sayohatning sifati, albatta, ko‘p jihatdan uning madaniy dasturiga bog‘liq: manzaralar, ko‘chalar, tarixiy joylar, muzeylar, diqqatga sazovor maskanlar va hokazo. Lekin birinchi navbatda, shubhasiz restoran, umuman, ovqatlanish darajasi va sifatiga koʻproq bog‘liq.
Har qanday sayohatdan eng ko‘p esda qoladigani – bu taom va dasturxon atrofidagi suhbatlardir. Oqshomni kim bilan o‘tkazding? Senga qanday xizmat ko‘rsatishdi? Dasturxonda nimalar bor edi yoki stoldan koʻrinib turgʻon manzara qanday edi? Nechi pul, qanaqa va porsiyasi. Mahalliy kolorit va masalliqlar. Alkogol-chi?
Eng go‘zal joyda bo‘lsangiz ham, agar restoranlari dabdala bo‘lsa, sayohatingiz ham bemaza bo‘ladi. Bitta yomon kechki ovqat mamlakat haqidagi taassurotlarni xira qilib, butun ta’tilning rasvosini chiqarishi mumkin.
Umuman olganda, odamlar madaniy shahar yoki tumanda yashashni xohlaymiz deganda, ular bar va restoranlarning yaxshi tanlovi borligini nazarda tutishadi. Shu sababli, restoratorlar har qanday aholi punktidagi eng muhim odamlardir, ular hokimlar va me’morlardan ham muhimroq.
Shu ma’noda Ispaniya yoki Gruziya o‘zini mukammallikka yetkazgan. Sayyohlarni jalb qilishni istayotgan bizda ham juda katta potensial bor. Va qachondir biz eng gurman va gastronomik turizmning choʻqqisiga chiqishimiz mumkin.
Buyogʻiga shu sfera turizmda yetakchi oʻringa chiqadi.
@bagajsiz
#about
Samolyotda uxlash
Eng koʻp sayohat qilgan va samolyotda uchgan yilimdan xulosa qilib aytamanki, butun kun davomida shahar tomosha qilish va aylanish odamni charchatadi.
Yana aeroportda turish ham osonmas: parvozdan 1-2 soat oldin kelish kerak, uzoq vaqt tikka oyoqda turishga to’gʻri keladi.
Va yana Yevropada arzon parvozlar odatda yo erta tongda, yo kechasi boʻladi, shu uchun bu paytda uyqu kelishi normal.
3-4 soatlik parvozda biroz mizgʻib olish - tanaga yana kuch to’plashiga yordam beradi, ayniqsa ekonomda ketayotganda. Biz oʻzbekistonliklar, xorijliklarga oʻxshab tez-tez samolyotda uchmaymiz, shu sabab o’zimiz bilan kitob olib chiqmasligimiz (garchi meni yonimda doimo bitta kitob va bukrider boʻlsa ham) tabiiy. Bu ayb emas, xullas.
Endi bir ozib-yozib samolyotga chiqqan odamga “bekor o’tirmay, kitob oʻqi” deyish qanchalik to’gri bilmadim.
https://t.me/abdusattor/178
@bagajsiz
#about
Uyga qaytish
Sayohat ajoyib narsa. Yangi davlatlar, yangi shaharlarda boʻlish, qiziq va ajoyib taassurotlarni boshdan kechirasan. Ammo bu yerda eng muhim narsa shuki, bular hammasi hissiyot bilan bogʻliq tuygʻular. Bir zumga oʻzingnni boshqa joyda begona davlatda yashaydigandek tasavvur qilish. Bir zumga oʻzingni Londonlik, Istanbullik yoki Islandiyalik sifatida his qilish. Yoqimli, shunday emasmi?
Ammo sayohatning yana bir muhim qismi haqida koʻp trevel-blogerlar gapirmaydi, bu haqida kam eslanadi. Ammo bu sayohatning muhim boʻlagi hisoblanadi. Uyga qaytish.
Toki uyga qaytmas ekansan, sening sayohating aslo tugamaydi. Aeroportdagi soatlab kutish, turli xil chemodanlarni sudrab ketayotgan turli xil insonlarni uchratarkansan, endi sen ham nihoyat uyga qaytayotganingdan mamnunlik his qilasan.
Hamma yaxshi yoki yomon sayohatdan keyin - yana oʻz uyingga, yaqinlaring, oilang, mushuging yohud kuchuging yoniga…
Meni ham bir yillik Angliyaga sayohatim - o’qishim oʻzini poyoniga yetdi. Orada kep ketgan boʻlsam ham Oʻzbekistonni sogʻindim. Uyingni sogʻinish va sogʻinganda bora olish ham bir baxt ekan. Chunki koʻrdimki, dunyoda millionlab insonlar oʻz uylaridan ayrilganlar, yangi koʻchib borgan joylari, Yevropa yo AQSh qanchalik rivojlangan boʻlmasin, haqiqiy uydek boʻla olmaydi.
Uyga qaytasan, hotirjamlik his qilasan, va sayohatlaringdagi ajoyib damlarni mamnunlik bilan eslab oʻtirasan.
Toki yangi sayohat boshlanmaguncha…
@bagajsiz
#about
Dunyo ayollari
Eng stilniy kiyinadigan qizlar - koreyslar (yapon va vyetnam va shu kabilar)
Eng zoʻr qomatlilari - qora tanli qizlar
Eng ehtiroslilari - latinolar
Eng malohatlilari - turkiylar
Eng samimiylari - britaniyaliklar
Eng latofatlilari - slavyanlar
Hammasidan zoʻri - oʻzimizning qizlar:)
@bagajsiz
#about
Sayohatlar haqida
part IV
Men profi sayohatchi emasman. Bu yildan juda aktiv boʻldim, xolos. Xorijda oʻqiyotganim bunga yaxshi sabab boʻldi. Hali meniyam o’rganadigan joylarim koʻp. Lekin butun umr orzu qilgan joylarimni koʻrdim, bundan xursandman. Sayohat shunisi bilan qiziqda: bilmagan joy, narsa va odamlaringizni bilib olasiz.
Keyingi yil uyga qaytaman, va buyogʻiga bunday bemalol boʻlmasman. Ammo endi niyat qildimki, sayohat umrimni oxirigacha meni va oilamni sevimli mashgʻuloti boʻlib qoladi. Pul topganda, sayohatga deb alohida yigʻib qoʻyaman. Toʻyga bitta qoʻziyam yetar:)
Sayohat meni hayotimni eng muhim qismi emas: oilam, ishim, oʻqishim va kitoblarim ham juda muhim, ammo bu miyaga zoʻr ozuqa beradigan jarayon. Siz ham sinab koʻring.
@bagajsiz