Что делать если нужно поставить какую-то 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
В Санкт-Петербурге на легендарном ледоколе «Красин» 15 февраля отгремел День Африканской культуры с символичным названием «Лед и пламень».
Гостей и участников мероприятия приветствовали: Низами Адилханович Мамишев – заместитель председателя комитета по внешним связям Санкт-Петербурга, Петр Борисович Пунченко – советник председателя комитета по внешним связям Санкт-Петербурга, Дария Да Консейсао – режиссер, сценарист, продюсер, Сергей Чесноков – академик ПАНИ, постоянный эксперт Российско-Африканского клуба МГУ им. М.В.Ломоносова и Кристиан Уэдраого – президент #CAARB, председатель культурно-делового совета GATINGO- BF.
Африка зажгла ледокол песней «Убунту» в исполнении группы NOPOWDER, показом африканской моды, мастер-классами игры на африканских инструментах и, конечно, дегустацией африканской кухни.
Объединяйтесь, континенты, AtlasCapital 🌍 радеет за культуру, мир, дружбу и жвачку
ATLAS Capital
#БуркинаФасо.
"Африка и Русский Север"
Монтируем выставку в арт-резиденции #CAARB.
15.02.2025 вернисаж и дипломатический прием.
FR:
Burkina Faso. Nous montons l'exposition en Résidence artistique #CAARB.
15 février vernisage et réception diplomatique.
ENG:
Burkina Faso. We Mount the exhibition in art residence #CAARB .
February 15 vernisage and diplomatic reception
#GatingoArtNews
#РусскаяАртДипломатия
#CAARB
Вести из #БуркинаФасо
Российско-буркинийской Клуб дружбы и бизнеса #CAARB успешно поработал на Форуме "Экономические дни Буркина-Фасо в Москве" (октябрь 2024 г ) вместе с командой GATINGO International Association.
В продолжение достигнутых результатов на форуме, 7-8 февраля состоится Церемония в Бобо для расширения географии деятельности Клуба CAARB в западной части Буркина-Фасо.
Мероприятие состоится под патронатом нового Премьер-Министра, с участием профильных министерств, делового сообщества и представителей СМИ .
Готовим презентации и подписания соглашений о сотрудничестве.
#GatingoNews
Подписаться
Состоялось открытие арт-резиденции #CAARB & # GATINGO в Буркина-Фасо в присутствии дипломатов посольств России и #БуркинаФасо
Гости вернисажа с интересом осмотрели передвижную выставку "Африка и Русский Север"
#РусскаяАртДипломатия работает!
В неформальной обстановке встретились представители бизнеса, общественных организаций, политики, арт-деятели. Зародились идеи новых проектов и возникли договоренности конкретных партнёрских взаимодействий.
#GatingoArtNews#CAARB
#РоссияАфрика
Состоялось открытие арт-резиденции #CAARB & # GATINGO в Буркина-Фасо в присутствии дипломатов посольств России и #БуркинаФасо
Гости вернисажа с интересом осмотрели передвижную выставку "Африка и Русский Север"
#РусскаяАртДипломатия работает!
В неформальной обстановке встретились представители бизнеса, общественных организаций, политики, арт-деятели. Зародились идеи новых проектов и возникли договоренности конкретных партнёрских взаимодействий.
#GatingoArtNews#CAARB
#РоссияАфрика
#РусскаяАртДипломатия в
#БуркинаФасо
15 февраля состоится открытие арт-резиденции в Буркина-Фасо.
В программе:
Выставка "Африка и Русский Север", графика преподавателей и выпускников СПГХПА им Штиглица, живопись Петербургских художников О.Еремеевой и Э.Гизатуллиной, а также работы африканских мастеров ;
Приветственные речи представителей Посольства РФ в Уагадугу, местной префектуры, руководства #CAARB & #GATINGO, буркинийских представителей арт-сообщества;
Концерт и российско-буркинийские угощения.
#GatingoArtNews
#ArtFutureGallery
#ЦентрНароднойДипломатии
А тем временем, проект "Русская арт-дипломатия в Африке" готовится к новому путешествию, теперь уже в Буркина-Фасо (при поддержке Буркинийско-российского Клуба дружбы и бизнеса #CAARB в тесном сотрудничестве Gatingo c СПГХПА им.Штиглица).
В экспозиции " L'Afrique et le Nord Russe " будет представлена графика преподавателей и выпускников Академии Штиглица и несколько живописных полотен петербургских художников из серии "Русский Север" .
Выставка состоится в BOBO DIOULASSO во время Церемонии начала деятельности CAARB на Великом Западе Буркина-Фасо, в присутствии кабинета Министров во главе с новым премьер-министром Буркины. Затем планируем провести вернисаж в Русском доме #Уагадугу при содействии Центра народной дипломатии и лично Наталии Красовской, вице-спикера Заксобрания НСО.
Куратор и автор проекта:
Татьяна Тудвасева
#GatingoArtNews#РусскийСевер#Африка#АртДипломатияGATINGO
#Африка & #РусскийСевер
Экспозиция графических работ преподавателей и выпускников Академии Штиглица, и живописных полотен, выполненных на пленэрах петербургскими мастерами, впервые поедет Буркина-Фасо.
Русский Север для художника — это исконный центр русской культуры и могучий край первозданной красоты природы. Здесь обостряется понимание глубокой преемственности традиций культуры России, возрастает чувство историзма и интереса к вечным проблемам бытия.
Африка, равно как и Русский Север, вдохновляет художников своей многовековой самобытностью. Народы этих далеких друг от друга территорий схожи тем, что сохраняют и доносят до нас живые национальные традиции в различных сферах бытия: это и богатейшее устное народное творчество, и пронизанный поэзией и глубоким смыслом народный костюм, и местные художественные промыслы, и деревянное зодчество и свет души человеческой.
Куратор выставки и автор проекта: #ТатьянаТудвасеваПодробности тут.
#GATINGO&#CAARB#РусскаяАртДипломатияGATINGO
Подписаться
А тем временем, проект "Русская арт-дипломатия в Африке" готовится к новому путешествию, теперь уже в Буркина-Фасо (при поддержке Буркинийско-российского Клуба дружбы и бизнеса #CAARB в тесном сотрудничестве Gatingo c СПГХПА им.Штиглица).
В экспозиции " L'Afrique et le Nord Russe " будет представлена графика преподавателей и выпускников Академии Штиглица и несколько живописных полотен петербургских художников из серии "Русский Север" .
Выставка состоится в BOBO DIOULASSO во время Церемонии начала деятельности CAARB на Великом Западе Буркина-Фасо, в присутствии кабинета Министров во главе с новым премьер-министром Буркины. Затем планируем провести вернисаж в Русском доме #Уагадугу при содействии Центра народной дипломатии и лично Наталии Красовской, вице-спикера Заксобрания НСО.
Куратор и автор проекта:
Татьяна Тудвасева
#GatingoArtNews#РусскийСевер#Африка#АртДипломатияGATINGO