Что делать если нужно поставить какую-то 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
#Caracas🇻🇪
🚨
Dos individuos fueron detenidos por la policía tras ser acusados de estafar a varias personas a través de la plataforma Marketplace. Los delincuentes contactaban a sus víctimas para comprar productos, especialmente ropa y calzado, y pagaban con billetes falsos de 100 dólares.
La captura ocurrió en La Bandera, donde las autoridades lograron identificar a los estafadores. Uno de los casos más relevantes involucra a una vendedora de ropa y calzado deportivo que fue víctima de estos hombres durante una entrega en El Cementerio, Caracas. Después de recibir el pago con un billete falso, los estafadores bloquearon a la vendedora, impidiendo cualquier intento de contacto posterior.
A pesar de la detención, los dos hombres fueron liberados poco después. Supuestamente tienen conexiones con personas influyentes en el crimen organizado. Además, se encontró que poseían 600 dólares en billetes falsos.
🇻🇪🚇#CARACAS
Un hombre en aparente situación de calle y bajo los efectos de las drogas o del alcohol, empezó a caminar hacia las vías del metro de caño amarillo, Caracas
El problema no es lo que estaba sucediendo, sino que luego se acerca u funcionario policial y prohíbe que graben porque eso cuenta como evidencia, testigo y que lo podrían hacer pasar un mal rato en el comando.
El joven que graba el hecho, procede a confrontarlo y le dice que porque lo amenaza con llevarlo para el comando, solo por grabar una situación irregular.
El funcionario insiste con el tema de la evidencia intentando intimidarlo y luego viendo que el joven no caía en su juego, manda a borrar el vídeo.
El joven le replicó al funcionario diciéndole: bájate a los rieles, saca el carajo de las vías, haz tu trabajo y no ha pasado nada, es más hasta quedas bien en el video y todo.
Al final tuvo que cortar el vídeo para evitar males mayores y pues, si; lograron sacar al hombre de las vías.
🚨🇻🇪🔦🕯
#CARACAS
Desde hace varias horas se encuentran sin electricidad casi toda la zona de la Urbanización Simón Rodríguez y parte de Sarria, debido a una fase dañada en la zona que distribuye la electricidad y que se encuentra en una parte de Pinto Salinas, todas estas zonas en el norte de Caracas.
Aunque las cuadrillas de Corpoelec se encuentran en la zona, las personas temerosas a pasar una noche en la oscuridad.
🚨🪖🇻🇪🇺🇸VENEZUELA | MILITARES MUERTOS TRAS BOMBARDEO ESTADOUNIDENSE
Medios locales informan que el bombardeo estadounidense en horas de la madrugada en #Caracas, dejo al menos 15 soldados muertos pertenecientes al batallón de seguridad presidencial de Nicolás Maduro, a continuación se presentan los soldados identificados:
1. Tte. Barreto Yendis Cristofer Gregorio
2. Gh. Hurtado Ortuño Franyerson Javier
3. C2. Lopez Sanchez Luis Enrry
4. Gh. Parra Parra Jeampier Josue
5. Gh. Ilarraza Gonzalez Jose Angel
6. Gh. Aguilera Velasquez Jerry Antonio
7. Gh. Contreras Tochon Franco Abrahan
8. Gh. Tovar Lamont Isaac Enrique
9. Tte Rivero Chirinos Lerwis Geovanny
10. S2 Rodriguez Bellorin Richard
11. S2 Molina Goenaga Anais Katherine
12. S2 Oliveros Velasquez Alejandra Del Valle
13. Alum/i Pereira Martinez Saul Abrahan
14. Dtg Cordero Moreno Jhonatan Alexander
15. Gh Quiñonez Perozo Carlos Julio
📆 03-ENE-26
🗞 Fuente: Medios Ven
Canal de Telegram https://t.me/MundoEnCrisis/21663?single
Con obras de 157 artistas visuales provenientes de 16 países abrió sus puertas en #Caracas la VI Bienal del Sur. Pueblos en resistencia, evento internacional que incluye exposición y actividades en tres museos (MBA, Museo Cruz-Diez y CELARG) además de espacios comunitarios de la capital venezolana desde hoy hasta el 16ENE. Nos honran con su presencia:
Ana Lucía Miguel - Brasil
Joao Mode - Brasil
Edu Simoes - Brasil
Lisvany Garcia - Cuba
Giselle Lucia Navarro - Cuba
Ernesto Ramírez -Cuba
Marisa Raygoza -México
Oslyn Whizar - México
Nyambo Masa Mara - Ruanda
Elena Sharganova - Rusia
Potapov Vladimir - Rusia
En directo por Canal Cultura Venezuela
Encuentro Internacional Soberanía, imperialismo y pensamiento crítico en nuestra América
Organizado por la Red de Intelectuales y Artistas en Defensa de la Humanidad
A través de: https://culturavenezuela.com/emision-en-directo/
Desde el Centro de Estudios Latinoamericanos y del Caribe Rómulo Gallegos - CELARG, en #Caracas.
Síguenos a través de nuestras redes sociales @canalcultura.ve
🇷🇺🇻🇪 Felicitamos por el 457º aniversario la ciudad creativa de la musica #Caracas con un concierto del Coro Turetsky "Canciones de la Unidad"!
En la Plaza Bolívar cantamos juntos las canciones de nuestra Madre Patria conocidas en todos los continentes. El programa incluyó los hits, arias clásicas, composiciones folclóricas rusas, romances y canciones de la Victoria. El repertorio se completó con obras musicales en español, especialmemte para nuestros amigos venezolanos.
Sergey Mélik-Bagdasárov:
El concierto del legendario coro Turetsky es un regalo del Gobierno de Moscú con el apoyo de la Cancillería rusa y la Alcaldía de Caracas a todos los caraqueños, a todos los venezolanos, con gran cariño! La importante misión del Coro Turetsky es unir países y pueblos a través de la música, la creatividad y el alma rusa abierta. Estamos especialmente contentos de compartir con nuestros amigos venezolanos parte de la cultura rusa - el alma de nuestro pueblo - el día del 457º aniversario de Caracas!
🇷🇺🇻🇪 El 25 de julio, el 456º aniversario de #Caracas, se celebró en la Plaza Bolívar un concierto del Coro Turetsky "Canciones de la Unidad".
🎤 Para los invitados, entre ellos la Alcaldesa de Caracas Carmen Meléndez, los miembros del cuerpo diplomático, compatriotas, egresados de universidades rusas los artistas interpretaron canciones de nuestra Madre Patria conocidas en todos los continentes. El programa incluyó los hits, arias clásicas, composiciones folclóricas rusas, romances y canciones de la Victoria. El repertorio se completó con obras musicales en español, que hicieron cantar a numerosos espectadores venezolanos.
El Encargado de Negocios de Rusia en Venezuela, Eduard Sokolov, destacó la importante misión del Coro Turetsky: unir países y pueblos a través de la música, la creatividad y el alma rusa abierta.
💬 Estamos especialmente contentos de compartir con nuestros amigos venezolanos el día del 456º aniversario de Caracas parte de la cultura rusa - el alma de nuestro pueblo!
❗️Tôt dans la matinée, des explosions ont été entendues dans la capitale vénézuélienne #Caracas. Peu après, les États-Unis ont revendiqué la responsabilité de l’attaque.
Les détails avec notre reporter Antoine Cléraux qui est avec nous en studio.
RT en français • Osez questionner !
La Gran Misión Viva Venezuela da vida a su sede nacional —el histórico Cuartel San Carlos, rebautizado por el presidente Nicolás Maduro como Casa de la Cultura y Libertad "Alí Primera" — con programación artística para toda la familia los fines de semana. Este sábado abrió puertas con la tradicional octavita de Carnaval.
¡Viva Venezuela, mi Patria querida!
#caracas
#venezuela
Ven a la VI Feria Nacional de Artesanía en los espacios de la Galería de Arte Nacional, cerca de las estaciones Parque Carabobo y Bellas Artes del Metro de Caracas. La cita reúne a 150 artesanas y artesanos de toda Venezuela. He quedado impresionado con la belleza y calidad de las muestras que trajeron, y que están a disposición de los visitantes para que adquieran los más bonitos regalos de diciembre. Además, la feria incluye foros donde las y los artesanos discuten sobre las potencialidades de su actividad artística y económica. Otra iniciativa del Gobierno Bolivariano a través de la Gran Misión Viva Venezuela y el Movimiento Corazon Artesano, con el valioso apoyo de @minturismo_ve y de nuestra hermana @leticiagomezve. Sin artesanía no hay soberanía. Acércate antes del 11DIC. #caracas#venezuela🇻🇪
He tenido el gusto de dejar inaugurada, en nombre del presidente @nicolasmaduro, la VI Feria Nacional de Artesanía, con el lema Arte, utilidad y memoria, en los espacios de la Galería de Arte Nacional. La cita reúne a 150 artesanas y artesanos de toda Venezuela. He quedado impresionado con la belleza y calidad de las muestras que trajeron, y que están a disposición de los visitantes para que adquieran los más bonitos regalos de diciembre. Además, la feria incluye foros donde las y los artesanos discuten sobre las potencialidades de su actividad artística y económica. Otra iniciativa del Gobierno Bolivariano a través de la Gran Misión Viva Venezuela y el Movimiento Corazon Artesano, con el valioso apoyo de @minturismo_ve y de nuestra hermana @leticiagomezve. Sin artesanía no hay soberanía. Acércate antes del 11DIC. #caracas#venezuela🇻🇪