Что делать если нужно поставить какую-то 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
Немного интересных цифр от шведского производителя грузовиков #scania Не смотря на колоссальные объёмы производства, на внутренний рынок поступает только 3% грузовиков и автобусов. Остальные 97% экспортируются в более чем 100 стран мира.
Хотите надёжные грузовые машины в автопарк? Скания не подведёт.
Передано в лизинг 10 тягачей Scania.
#роделен#лизинг
🚛Модель: SCANIA P
Код предложения:
АЛ 235897/02-23 ЛПЦ
VIN: YS2P6X40005474669
Год выпуска: 2017
Пробег: 559 428 км
Стоимость: 5 154 000 ₽
📍г. Воронеж
📞Телефон для связи: 8-800-700-81-34
#техникаспробегом
#Воронеж
#Scania
🚌 Встретились с парнями из ФК «Крылья Советов» (Самара).
В футболе я разбираюсь крайне плохо…
А вот в автобусах намного лучше))
У парней такие марки машин, как: MAN, «Фотон» и «Скания Круиз»…
Вот такой вот парк)
Больше откровенных фото и видео по ссылкам!
https://vk.com/wall1223307_10299
https://t.me/Dmitruk_Alk/3269
#scania#man#круиз#foton
УСПЕШНАЯ ОТГРУЗКА 🚚
🌟SCANIA создает грузовые автомобили, которые помогают строить бизнес - ЛК «ДиректЛизинг» предоставляет лизинг, который модернизирует бизнес.
🌟Грузовые автомобили SCANIA приобретаемые на условиях лизинга-это возможность оценить исключительные преимущества надежного бренда.
🙌🏻 Мы предлагаем лизинговые программы где Лизингополучатель может выбирать условия финансирования, включая:
.
* период окончания лизингового договора;
* величину первоначального платежа;
* размеры ежемесячных выплат;
* вариант платежного графика.
.
🔖 Получение финансирования потребует минимального пакета документации.
✅ Меры безопасности для каждого участника при отгрузке автомобилей строго соблюдены.
#лизинг
#leasing
#ДиректЛизинг
#директлизинг
#лизингмосква
#scania
#auto
#грузовоеавто
#авто
#автовлизинг
#самосвал
#поставка
#отгрузка
#АВО
#Москва
#2020
Непревзойденный комфорт, качество, удобство эксплуатации - все это о самосвалах Scania.
Мощные, вместительные, безопасные автомобили станут отличным партнёром по бизнесу.
Мы поздравляем нашего клиента с увеличением автопарка и желанием развития и процветания!
Планируете расширение автопарка?
ЛК «Директ Лизинг» рада подобрать для Вас оптимальные условия финансирования. Вы сами выбираете график лизинговых платежей, отвечающий специфике вашего бизнеса!
Позвоните нам ☎️+7(495)737-00-99 или оставьте заявку на нашем сайте и наш менеджер поможет Вам подобрать автомобиль и подготовит персональное предложение по лизингу. 👨🏼💻
#москва#лизинг#финансы#скания#лизинговаякомпаниямосква#лизингмосква#грузовойтранспорт #лкдиректлизинг#директлизинг#выставка#scania#бизнес#автомобиль#автовлизинг
Довольный клиент - довольная компания!
Вчера вечером прошла выдача самосвала Scania, и мы спешим поделиться этой новостью.
Самосвал Scania P440B8X4HZ создан для сложных условий эксплуатации, оснащён комфортной кабиной и оптимальной технической комплектацией. Увеличенная грузоподъемность, экономия топлива - выделяет данную модель среди конкурентов.
Хотите модернизировать бизнес? Оформите Scania в лизинг в ЛК «Директ Лизинг».
Узнать условия оформления грузового транспорта в лизинг и получить индивидуальное предложение, Вы сможете, связавшись с нами по телефону: +7 (495) 737-00-99.
ЛК «ДиректЛизинг» предлагает программы, в которых Лизингополучатель сам выбирает:
🔹период окончания лизингового договора
🔹величину первоначального взноса
🔹размеры ежемесячных выплат
🔹вариант графика платежей
#scania#bussiness#moscow#leasing#лизинг#москва#лизингмосква#скания#финансирование#директлизинг#лкдиректлизинг#бизнес автовлизинг #финансы#самосвал#машина
Дорожная и коммунальная техника в лизинг от лидера российского рынка!
ЛК «Директ Лизинг» предлагает выгодные условия финансирования техники Меркатор в лизинг. Производитель высококачественной техники «МЕРКАТОР ХОЛДИНГ» - один из крупнейших поставщиков в своей отрасли. Комбинированные дорожные машины производства холдинговой компании «Меркатор» составляют более 42% доли российского рынка.
Техника в наличии. Чтобы получить расчёт по лизингу - свяжитесь с нами по телефону: +7 (495) 737-00-99.
#меркаторхолдинг#москва#дорожнаятехника#спецтехника#лизинг#техникавлизинг#лизингмосква#лизингкрым#финансирование#бизнес#дорога#мусоровоз#мусоровозвлизинг#камаз#скания#scania