Пользователь и виртуальная среда в Ubuntu Linux

Пользователь и виртуальная среда в Ubuntu Linux

Привет, я новичок в Linux и в настоящее время использую Ubuntu в качестве дистрибутива Linux. Сейчас я не совсем понимаю, что такое user в Ubuntu, и ищу информацию об этом в Интернете. Я нашел статью об этом в Digital Ocean, в которой говорится: «Это делается для разделения функциональных привилегий. Таким образом, если учетная запись будет скомпрометирована или использована не по назначению, последствия будут изолированы».

Не так давно я услышал о виртуальной среде и понял, что это изолированная среда, поэтому то, что происходит в этой среде, не имеет ничего общего с тем, что происходит за ее пределами.

Насколько я понимаю, могу ли я сказать, что пользователь в Linux (особенно Ubuntu) имеет ту же функцию, что и виртуальная среда?

решение1

венвэто концепция языка программирования Python. Проблема, которую он решает, связана с зависимостями. Программа Python обычно зависит от других программ, которые находятся в файлах с именамибиблиотеки. Для работы программы Python на компьютере должны быть установлены необходимые библиотеки. Установленные библиотеки затем используются всеми программами Python.

Некоторым программам Python нужны не только библиотеки, но и определенные версии этих библиотек. Это может привести к конфликтам версий — программе 1 нужна версия 10 библиотеки xyz, а программе 2 нужна версия 11 той же библиотеки. Чтобы избежать таких конфликтов, можно настроить виртуальную среду или venv, которая представляет собой дерево каталогов файловой системы, содержащее библиотеки, необходимые программе.

Апользователь, с другой стороны, не имеет ничего общего с Python, библиотеками или версиями библиотек. Пользователь имеет доступ только к определенным файлам в системе, что ограничивает ущерб, который он может нанести. Исключением является суперпользователь, почти всегда называемыйкорень, который имеет доступ ко всему.

Между пользователями и venvs существует связь. Пользователь без прав root не может перезаписывать библиотеки Python, которые являются общими для всех пользователей. Однако пользователь может создать venv, где у него будет полный доступ на чтение и запись всех файлов, что позволит ему создавать и обновлять библиотеки Python.

Связанный контент