Что делать если нужно поставить какую-то 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
India commissions 500 MWe Kalpakkam PFBR and plans 3× nuclear capacity to 22.38 GW in 6 years. Govt invites bids for 220 MWe SMRs; reactor cost ₹20–21 cr/MW. Data-centre power demand seen +160% by 2030; nuclear-linked AI parks expected 2030–35, scale impact ~2040.
#GreenEnergy
NTPC signed MoU with EDF to assess EPR nuclear projects in India; targets 30 GW nuclear capacity by 2047. India aims ~100 GW nuclear under roadmap; pact covers localisation, tariffs, and site evaluation amid policy changes to enable private/foreign participation. #GreenEnergy
Еуропалық Одақ пен Қазақстанның жасыл энергетика бойынша ынтымақтастығы аясында Svevind Group неміс-швед компаниясы Маңғыстау облысында "жасыл" сутегі өндіретін әлемдегі ең ірі зауыттардың бірін салады. Жобаның құны 50 млрд долларға бағаланып отыр.
Жаңа зауыт 2030 жылға қарай Еуроодақ елдеріне жасыл технологиялар арқылы өндірілген электр энергиясын экспорттауға мүмкіндік береді.
Аталған жобаны жүзеге асыру барысында, құрылыс кезеңінде шамамен 3 500, нысандарды кезең-кезеңімен іске қосу кезінде 1 800-ге жуық жаңа тұрақты жұмыс орны ашылады. Сондай-ақ Маңғыстау облысында маман даярлау үшін Германия мен Қазақстанның жоғары оқу орындары арасында ынтымақтастық орнату қарастырылған.
🇪🇺🇰🇿
В рамках сотрудничества ЕС-Казахстан в области зеленой энергии немецко-шведская компания Svevind Group построит в Мангистауской области один из крупнейших в мире заводов по производству "зеленого" водорода. Проект оценивается в $50 млрд.
Предполагается, что новый завод позволит экспортировать электроэнергию, выработанную по зеленым технологиям, в страны Евросоюза уже к 2030 году.
Реализация проекта позволит создать около 3500 рабочих мест на период строительства и около 1800 новых постоянных рабочих мест в период поэтапного ввода в эксплуатацию объектов. Кроме этого, проект предполагает сотрудничество между германскими и казахстанскими университетами для подготовки кадров в Мангистауской области.
#EUKZ30#EU4Green#GreenEnergy
🌬Аркалык запустил новую ветровую электростанцию
В Аркалыке запущена ветровая электростанция стоимостью 24 млрд тенге, ставшая важнейшей частью комплексного плана развития города на ближайшие годы.
В рамках проекта было установлено 10 ветровых турбин высотой 110 метров и возведено 3 здания для административных нужд.
Электростанция мощностью 48 МВт не только обеспечивает жителей города доступом к чистой энергии, но и способствует созданию благоприятных условий для окружающей среды, сокращая годовые выбросы парниковых газов.
#Аркалык#WindPower#GreenEnergy
Зеленые фасады зданий и водоросли: в чем связь? 🍀
Речь идёт о биореакторах на фасадах зданий, которые не только украшают городской пейзаж, но и активно помогают улучшить окружающую среду.
🍀 Биореакторы с микроводорослями. Эти удивительные модели построены на микроводорослях, которые поглощают углекислый газ и выделяют кислород, делающий воздух вокруг нас чище и свежее. Но это еще не все: биореактор также производит биотопливо, которое может служить альтернативным источником энергии.
🏢 Примером такой технологии может служить экспериментальный объект в Гамбурге, где биореакторы успешно интегрированы в фасады зданий. Это вдохновляет на то, что вполне реально сегодня использовать биореакторы в современной архитектуре и городском планировании. 💚🌏
#greenenergy#биореакторы#зеленыефасады#ЗеленыйЖурнал
Funding Rounds Overview for January 2025
* NextChem raises $129.05M for green chemistry innovations. NextChem
* TRUGO TECH secures $54.81M for smart vehicle technology. TRUGO TECH
* Ithaca Finance raises $20M for developments in finance. Ithaca Finance
* CX2 obtains $15M for AI defense technology solutions. CX2
* Shanghai Lianfeng collects $13.77M for Internet of Vehicles tech. Shanghai Lianfeng
* Zhongpo New Materials raises $10.97M for polymer technologies. Zhongpo New Materials
* Unicalce secures $10.35M for lime production in steel. Unicalce
* Ballerine gets $8.50M for SMB risk management solutions. Ballerine
* Inferix Labs raises $2.60M for decentralized GPU infrastructure. Inferix Labs
* Ver.iD secures $2.05M for user identity solutions. Ver.iD
* CargoFL collects $786.60K for logistics automation optimization. CargoFL
* Optimistic CEO forecasts Bitcoin could reach $200,000 by end of 2025. The Daily Hodl
* BlackRock fund records $332M outflow on January 2.
* Predictions of 648M humanoid robots by 2040 by Citibank. Source: FT
#Funding#GreenEnergy#AI#DefenseTech#SmartVehicles#Robotics#Bitcoin#Crypto#VC