Что делать если нужно поставить какую-то 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
Nicola #Fratoianni: "Berlusconi ha segnato la politica italiana negli ultimi 30 anni. Dalle sue scelte, dalle sue idee, dalla sua visione siamo sempre stati e saremo lontanissimi. Oggi, di fronte alla sua scomparsa, esprimiamo le condoglianze alla famiglia, ai suoi cari, alla sua comunità politica."
@UltimoraPolitics
#Italia
Il co-leader di #AVS|LEFT|G/EFA Nicola #Fratoianni:
“Leggo che Meloni risponde all’inchiesta di Report e al suo selfie con un condannato per mafia, dicendo che non può sapere con chi fa foto. È giusto, per carità. E nessuno, credo, si sogni di chiederle conto di un selfie.
Quello che però dovrebbe chiarire, e per la verità dovrebbe preoccuparla, è la facilità di relazione di alcuni alti esponenti del suo partito con questi personaggi, da quel che continua ad emergere da indagini e inchieste giornalistiche.
La persona del selfie sembrerebbe vicina a Fidanza ed è parte dello stesso clan (i Senese) per cui è finito nei guai Delmastro, per la triste e nota vicenda degli affari in comune con i prestanome del boss. Un po’ troppe casualità tutte insieme?
Proprio perché rivendica il suo impegno antimafia, Meloni dovrebbe essere in prima linea a cercare di capire se e come sia stato possibile che la sua organizzazione sia stata infiltrata da personaggi della malavita e, se avvenuta, con la complicità di quali dirigenti del suo partito.
Dovrebbe ringraziare i giornalisti che fanno il loro lavoro, invece di attaccarli, perché consentono alla verità di venire alla luce. Così facendo preservano la democrazia. Meloni chiarisca.”
@Osservatorioitaliano
#Italia
Il co-leader di #AVS|LEFT|G/EFA Nicola #Fratoianni:
"Nell’uovo di Pasqua di Meloni all'Italia c’è un nuovo record. In negativo, ovviamente.
Infatti la pressione fiscale sale ancora, arrivando al 51,4% nell'ultimo trimestre del 2025 secondo i dati ISTAT. Mai così alta da 11 anni. E non finisce qua.
Nello stesso tempo infatti continua a diminuire il reddito disponibile per le famiglie. Cioè il tuo stipendio basta sempre meno per fare la spesa.
E attenzione, su questi dati non c’è ancora l’effetto della scellerata guerra dell’amico Trump.
Ancora una volta i numeri smentiscono le storielle di Meloni e la sua propaganda.
E dal governo possono dire quel che vogliono, possono dire che siamo ossessionati dall’inflazione e dagli stipendi degli italiani. Se ne facciano una ragione.
Un paese dove sale la pressione fiscale e diminuisce il reddito delle famiglie è un Paese in difficoltà. E quando arriverà tutto il colpo dell'inflazione e dei rincari saremo ufficialmente in crisi.
Basta perdere tempo. Servono subito due cose. Fermare la speculazione e alzare gli stipendi, adeguandoli al costo della vita.
È così che si difendono lavoratori e famiglie."
@Osservatorioitaliano
#Italia
Il co-leader di #AVS|LEFT|G/EFA Nicola #Fratoianni sui social:
"Le primarie non sono una priorità. Non sono quello che i cittadini ci chiedono e non è quello che serve al Paese.
L'ho già detto, dal primo minuto, e lo ripeto ancora perché voglio che sia chiaro.
L'ultima cosa di cui abbiamo bisogno è una discussione tutta interna ai partiti che non interessa al Paese. Perché sarebbe un enorme regalo alla destra e a Meloni, oggi in grande difficoltà.
Quello che ci chiede chi ha votato NO al referendum è tutt'altro.
Vogliono sapere quali sono le nostre proposte per migliorare la vita concreta e quotidiana di cittadini, giovani e lavoratori. E noi abbiamo il dovere di dar loro una risposta.
A partire dagli stipendi, che sono la prima emergenza italiana.
Noi abbiamo già alcune risposte.
Salario minimo a 11€ lordi l'ora, stipendi adeguati automaticamente all'inflazione e riduzione dell'orario di lavoro a parità di salario.
Questi sono i nostri obiettivi."
@Osservatorioitaliano
#Italia
Il Co-leader di #AVS|LEFT|G/EFA Nicola #Fratoianni alla conferenza stampa di AVS alla Camera dei Deputati:
"A chi ha votato NO al referendum non interessano le primarie del centrosinistra.
Quelle 15 milioni di persone vogliono sapere quali sono le nostre proposte, come vogliamo cambiare, davvero, l'Italia.
Non deludiamole."
@Osservatorioitaliano
Salario minimo, Nicola #Fratoianni (#SI): "Ritiro la mia firma da questa proposta di legge, non intendo e non intendiamo mettere i nomi e le nostre facce su un atto indecente di pirateria politica e istituzionale"
👉Cos'è successo al testo originario delle opposizioni?
@UltimoraPolitics
#Italia
Nicola #Fratoianni (#SI|LEFT): "Viva il 25 Aprile!
Viva la Liberazione dalla dittatura nazifascista e dalla guerra.
Viva la Resistenza antifascista da cui è nata la Repubblica italiana e la Costituzione."
@UltimoraPolitics
#Italia
Il co-leader di #AVS|LEFT|G/EFA Nicola #Fratoianni:
"#Meloni ha fatto un discorso da inizio campagna elettorale. Ha minimizzato sui 15 milioni di no al referendum sulla giustizia che gli italiani le hanno sbattuto in faccia. Ha ironizzato sul drammatico aumento del prezzo del petrolio che sta mettendo in ginocchio famiglie. Meloni ha attaccato le opposizioni, preso in giro Schlein e Conte, fatto la vittima sulle questioni di mafia. Ha rivendicato risultati che non ci sono. Ha sfidato le opposizioni, ma dovrebbe sfidare se stessa e il governo che hanno fallito su tutta la linea."
@Osservatorioitaliano
#Italia#USA
Il co-leader di #AVS|LEFT|G/EFA Nicola #Fratoianni:
"Contrordine. Giorgia Meloni e il suo governo non hanno alcuna intenzione di vietare agli USA l'uso delle basi italiane per la loro guerra illegale in Iran.
Perché quando si tratta di prendere le distanze da Trump, Meloni non ci pensa neanche. Ecco perché sono complici."
@Osservatorioitaliano