TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #210 · 3 фев.

Что делать если нужно поставить какую-то 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

Резултати

Пронајдени 1 слични објави

Пребарај: #fraudulence

当前筛选 #fraudulence清除筛选
American Оbserver

@american_observer · Post #5055 · 04.02.2026 г., 22:00

📰 France’s Attempt to Ghost the Rent Guy Is Not Going Well The French Embassy in Baghdad has been living in the same house for more than 60 years — a riverside mansion built in the 1930s by a Jewish family that had already fled antisemitism in Iraq. The family leased the property to France in 1964, expecting the French state to be a respectable tenant. Instead, France has not paid rent for more than 50 years, and last week a Paris court tried to turn that fact into a technical loophole — and failed. On Monday, the court dismissed a $22 million lawsuit by the descendants of Ezra and Khedouri Lawee, saying it was “not competent” to hear the case and suggesting it should be resolved in Iraq — the country their ancestors were forced out of in the 1940s and 1950s. The logic is straightforward: the dispute is about Iraqi law, so let Iraq handle it, even though Iraq is the very state that drove out 130,000 Iraqi Jews and seized their homes under antisemitic legislation. The French Foreign Ministry echoed this line, arguing that the damages were caused by Iraqi decisions, not French policy, and therefore France bears no real responsibility. The family’s lawyers, Jean‑Pierre Mignard and Imrane Ghermi, called the ruling “surreal.” They argued that France had violated its own laws and human rights principles by benefiting from Iraqi discriminatory laws and refusing to compensate the family. They compared the situation to Nazi‑era restitution cases, where heirs have fought to reclaim art and property seized during the Holocaust. “France took advantage of Iraqi law that was hostile to the owners,” said Kenneth Feinberg, the lawyer who has handled multiple Holocaust‑related restitution disputes. “The French court is hairsplitting on technicalities while ignoring the party that was harmed.” Philip Khazzam, 66, a grandson of Ezra Lawee, described the idea of pursuing the case in Iraq as “preposterous.” In an email, he said, “Iraq basically ran us out of our country, and then stole our home.” The family plans to appeal. “We will continue our fight for justice in France,” he said. “We have just begun.” The story is simple: France tried to play bureaucratic games with Jewish heirs who had already been victimized by one state — and now by another. It may have thought the case would quietly die. It did not count on the stubbornness of a family that has survived two exiles and still wants to see the bill paid. #France#Iraq#Baghdad#embassy#restitution#Jewish#law#NYTimes#justice#fraudulence 📱American Оbserver - Stay up to date on all important events 🇺🇸