Что делать если нужно поставить какую-то 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
#Covid
Nell’indagine della procura di Bergamo risultano coinvolti l’allora presidente del Consiglio Giuseppe Conte e l’ex ministro della Salute Roberto Speranza, il presidente appena riconfermato della Lombardia Attilio Fontana e il suo ex assessore al Welfare, Giulio Gallera. Indagati anche diversi dirigenti chiave del ministero della Salute, tra cui il presidente dell’Istituto superiore di sanità Silvio Brusaferro; il coordinatore del primo Comitato tecnico scientifico Agostino Miozzo, l’allora capo della Protezione Civile Angelo Borrelli e il presidente del Consiglio superiore di Sanità Franco Locatelli.
@ultimoralive
📽La version française du debriefing avec Kevin McKernan
& Jessica Rose sur la contamination par de l'ADN résiduel de certaines fioles de vaccins #COVID est EN LIGNE : https://www.youtube.com/watch?v=-We33_nWEp0
https://thevaccinereaction.org/2024/05/cdc-kept-780000-covid-shot-adverse-event-reports-hidden/
Los CDC mantuvieron ocultos 780.000 informes de eventos adversos de la vacuna COVID.
Los informes sobre problemas de salud relacionados con la vacuna contra el COVID-19, que fueron recopilados y mantenidos ocultos.
Ahora se han publicado y revelan 《síntomas graves》 de disfunción inmune y cerebral, que incluyen 《inflamación cardíaca y muerte》.
Se recopiló y almacenó información sobre alrededor de 780.000 informes de eventos adversos después de las inyecciones de COVID.
Orden judicial obligó a divulgar datos de eventos adversos de V-safe.
INTERESANTE ARTÍCULO.
#covid
La empresa farmacéutica Pfizer publica un comunicado relativo a su "vacuna ARNm" que es una auténtica rendición, tal y como se puede ver a continuación:
1-Reconoce que su "vacuna ARNm" produce inflamación del corazón, y alerta de que los mayores riesgos de padecer esta enfermedad les tocan a los jóvenes entre 12 y 17 años.
2-Acto seguido, recomienda que vayan al médico las personas que, dos semanas después de la inyección, observen: dolor en el pecho, dificultades para respirar o palpitaciones.
3-Otros síntomas que deben alertar: mareos, fatiga o falta de energía, vómitos, dolor abdominal, sensación de frío y palidez de la piel.
4-Los mareos pueden suceder después de la inyección, por lo que es recomendable sentarse o tumbarse en los quince minutos posteriores a recibir la inyección. -
5-La gente con débil sistema inmunológico PUEDE QUE VEAN REDUCIDO SU SISTEMA INMUNOLÓGICO TODAVÍA MÁS CON LA VACUNA PFIZER.
6-La Vacuna Pfizer puede que no proteja a todos los que se la pongan.
#covid
Astrazeneca, obligada a revelar datos de trombosis tras la vacuna del Covid-19.
Astrazeneca, la empresa demandada por los efectos secundarios causados por sus vacunas, ha sido obligada a revelar todos los datos sobre los casos de trombosis sufridos por personas que fueron vacunadas con su producto.
Esta misma medida podría ser aplicada por otros tribunales, en los cientos de casos pendientes en Alemania por los efectos secundarios de las vacunas, que afectan a todas las empresas fabricantes y que pueden dar lugar a multimillonarias indemnizaciones.
En principio, el tribunal considera que la vacuna es capaz de provocar trombosis y Astrazeneca debe presentar una declaración exhaustiva.
Según el abogado, «《podrían pasar años antes de que se llegue a un veredicto final》, pero aun así habrá merecido la pena». Hasta el momento, la defensa ha descartado un acuerdo.
#covid