Что делать если нужно поставить какую-то 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
A litter of kittens can have different fathers because a female cat can mate with multiple males during one heat cycle. This is called superfecundation. Each kitten in the litter may have a different dad.
🐱
[Read miauwr]
@googlefactss
#Cats#Kittens#AnimalFacts#Superfecundation#PetCare
🇰🇿🇺🇸 Mars Petcare построит завод в Казахстане
Минсельхоз РК и ТОО Mars Petcare Kazakhstan подписали соглашение о строительстве завода по производству готовых кормов для домашних животных в городе Конаев (Алматинская область).
🔹 Инвестиции: более 88,8 млрд тенге (~$174 млн)
🔹 Мощность: до 100 тыс. тонн продукции в год
🔹 Запуск: до 31 декабря 2030 года
🐶🐱 На предприятии будут выпускаться корма под известными брендами Whiskas, Kitekat, Sheba, Royal Canin, Pedigree, Chappi и др.
📌 Проект усилит локализацию производства, создаст новые рабочие места и снизит зависимость от импорта кормов для домашних животных.
ℹ️ Ранее также сообщалось, что KazFoodProducts и венгерский холдинг UBM Group договорились о создании СП по производству премиксов в Алматинской области.
#инвестиции#Казахстан#АПК#Mars#Petcare#производство#AlmatyRegion
🇰🇿🇺🇸 Mars Petcare построит завод в Казахстане
Минсельхоз РК и ТОО Mars Petcare Kazakhstan подписали соглашение о строительстве завода по производству готовых кормов для домашних животных в городе Конаев (Алматинская область).
🔹 Инвестиции: более 88,8 млрд тенге (~$174 млн)
🔹 Мощность: до 100 тыс. тонн продукции в год
🔹 Запуск: до 31 декабря 2030 года
🐶🐱 На предприятии будут выпускаться корма под известными брендами Whiskas, Kitekat, Sheba, Royal Canin, Pedigree, Chappi и др.
📌 Проект усилит локализацию производства, создаст новые рабочие места и снизит зависимость от импорта кормов для домашних животных.
✅Подписаться на Export & Import Kazakhstan
#инвестиции#Казахстан#АПК#Mars#Petcare#производство#AlmatyRegion
Latest Funding Rounds in AI and Tech
Recent funding highlights in AI and technology:
- Boon AI secured $15.50M on Dec 20, 2024. Learn more
- OpenLoop raised $15M on Dec 28, 2024. Learn more
- Emocog collected $14.98M on Dec 26, 2024, focusing on cognitive improvement digital therapeutics. Learn more
- Micro Optics raised $13.74M on Dec 13, 2024. Learn more
- Hengtuogao gathered $13.70M on Dec 30, 2024, specializing in integrated precision machinery. Learn more
- Tianhu Technology received $10M on Nov 15, 2024, as a leading AI protein design service in China. Learn more
- NitiNotes raised $9.30M on Dec 23, 2024, developing innovative treatments for obesity. Learn more
- WAJA secured $4.26M on Dec 31, 2024, focusing on regional economic development. Learn more
- Vetbiolix raised $4.23M on Dec 6, 2024, aiming at innovative pet health solutions. Learn more
- ChainOpera AI garnered $3.50M on Dec 26, 2024, working on blockchain solutions for decentralized AI apps. Learn more
These rounds highlight ongoing investment in AI, healthcare, pet care, and tech innovations.
#AI#Tech#Funding#Healthcare#Obesity#Decentralized#Blockchain#Innovation#CognitiveHealth#PetCare#Automation#ProteinDesign#DigitalTherapeutics#Economy#IndustrialSolutions#Hitech#Investment#Startup#VentureCapital#VC
NEWS
🔻𝗪𝗲𝗶𝗴𝗵𝘁 𝗹𝗼𝘀𝘀 𝗱𝗿𝘂𝗴𝘀 𝗳𝗼𝗿 𝗰𝗮𝘁𝘀? 𝗖𝗼𝗺𝗽𝗮𝗻𝘆 𝗹𝗮𝘂𝗻𝗰𝗵𝗲𝘀 𝗰𝗹𝗶𝗻𝗶𝗰𝗮𝗹 𝘁𝗿𝗶𝗮𝗹 𝗼𝗳 𝗚𝗟𝗣-𝟭 𝗶𝗺𝗽𝗹𝗮𝗻𝘁𝘀 𝗶𝗻 𝗰𝗮𝘁𝘀
#Okava_Pharmaceuticals, a San Francisco based company, plans to introduce on Tuesday a new #GLP_1 clinical weight loss study for cats.
#MEOW_1, as the study is called, will look to use #OKV_119, a miniature implant, in cats which will deliver the GLP-1, continuously for up to six months.
According to #Okava, MEOW-1 is the first-ever weight loss trial using this approach on household pets.
Klotsman said the goal would be to file for #FDA approval for the product between 2027 and 2028, and the target is for the product to cost owners an out-of-pocket payment of around $100 per month.
Read the full story 👇
https://abcnews.go.com/GMA/Wellness/weight-loss-drugs-cats-company-launches-clinical-trial/story?id=128054236
#feline#cats#pets#petobesity#petcare#okavapharmaceuticals#sanfrancisco#vets#petowners#veterinarians#dvm