Переменные окружения в Linux
Содержание
Переменными окружения в операционных системах на базе ядра Linux именуются те переменные, которые содержат текстовую информацию, применяемую другими программками во время пуска. Обычно они включают общие системные характеристики как графической, так и командной оболочки, данные о настройках юзера, расположении определенных файлов и почти все другое. Значения таких переменных указываются, к примеру, цифрами, знаками, способами к директориям либо файлам. Благодаря этому огромное количество приложений стремительно получают доступ к определенным настройкам, также возникает возможность для юзера изменять либо создавать новые функции.
Работа с переменными окружения в Linux
В рамках этой статьи мы бы желали затронуть основную и самую полезную информацию, которая относится к переменным окружения. Не считая всего, мы продемонстрируем методы их просмотра, конфигурации, сотворения и удаления. Знакомство с главными опциями поможет начинающим юзерам сориентироваться в управлении схожими инструментами и разобраться с их значением в дистрибутивах ОС. До разбора важнейших характеристик хотелось бы поведать о разделении их на классы. Такое группирование определяется последующим образом:
- Системные переменные. Эти функции загружаются сразу при старте операционной системы, хранятся в определенных конфигурационных файлах (речь о их будет идти ниже), также доступны для всех юзеров и всей ОС в целом. Обычно такие характеристики числятся самыми главными и нередко применяемыми во время старта самых разных приложений.
- Пользовательские переменные. Каждый юзер имеет свою домашнюю директорию, где хранятся все принципиальные объекты, к их числу относятся и конфигурационные файлы пользовательских переменных. Из их наименования уже понятно, что используются они под определенного пользователя в то время, когда он авторизован через локальный «Терминал». Действуют они и при удаленном соединении.
- Локальные переменные. Есть характеристики, используемые исключительно в рамках одной сессии. При ее окончании они будут навечно удалены и для повторного старта все придется создавать вручную. Они не сохраняются в отдельных файлах, а создаются, редактируются и удаляются с помощью соответственных консольных команд.
Конфигурационные файлы для пользовательских и системных переменных
Как вы уже понимаете из описания выше, два из 3-х классов переменных Linux хранятся в отдельных файлах, где собраны общие конфигурации и дополнительные характеристики. Каждый таковой объект загружается только при подходящих критериях и употребляется для различных целей. Раздельно бы хотелось выделить такие элементы:
— один из системных файлов. Доступен для всех юзеров и всей системы даже при удаленном входе. Единственное ограничение для него — характеристики не принимаются при открытии стандартного «Терминала», другими словами в этом расположении никакие значения из этой конфигурации работать не будут./ETC/PROFILE
— более широкий аналог предшествующей конфигурации. Он работает на системном уровне, имеет те же функции, что и предшествующий файл, но сейчас без каких-то ограничений даже при удаленном подключении./ETC/ENVIRONMENT
— файл только для локального использования, при удаленной сессии либо соединении через веб работать он не будет. Производится для каждого пользователя раздельно при разработке новейшей терминальной сессии./ETC/BASH.BASHRC
— относится к определенному юзеру, хранится в его домашней директории и производится всякий раз при новеньком запуске терминала..BASHRC
— то же, что .BASHRC, только для удаленного взаимодействия, к примеру, при использовании SSH..BASH_PROFILE
Просмотр перечня системных переменных окружения
Вы сможете без заморочек без помощи других просмотреть все присутствующие в Linux системные и пользовательские переменные и их понятия при помощи всего только одной команды, которая покажет перечень. Для этого будет нужно выполнить всего несколько обычных действий через стандартную консоль.
- Запустите «Терминал» через меню либо зажатием жаркой кнопки Ctrl + Alt + T.
sudo apt-get install coreutils
, чтоб проверить наличие данной утилиты у вас в системе и сразу установить ее при надобности.
Укажите пароль от учетной записи суперпользователя, вводимые знаки при всем этом отображаться не будут.
Вы будете уведомлены о добавлении новых файлов либо их наличии в библиотеках.
Сейчас воспользуйтесь одной из команд установленной утилиты Coreutils, чтоб раскрыть перечень всех переменных окружения. Напишите printenv
и нажмите на кнопку Enter.
Ознакомьтесь со всеми параметрами. Выражение до знака = — заглавие переменной, а после — ее значение.
Перечень главных системных и пользовательских переменных окружения
Благодаря приведенной выше аннотации вы сейчас понимаете, как можно стремительно найти все текущие характеристики и их значения. Осталось только разобраться с основными. Направить внимание хотелось бы на такие пункты:
. Полное заглавие — Desktop Environment. Содержит имя текущего окружения десктопа. В операционных системах на ядре Linux употребляются разные графические оболочки, потому приложениям принципиально осознавать, какая на данный момент активна. В этом и помогает переменная DE. Пример ее значений — gnome, mint, kde и т.д..DE
— определяет перечень директорий, в каких происходит поиск разных исполняемых файлов. К примеру, при действии одной из команд по поиску и доступу к объектам они обращаются к этим папкам для резвого поиска и передачи исполняемых файлов с обозначенными аргументами.PATH
— хранит внутри себя опцию активной командной оболочки. Такие оболочки позволяют юзеру без помощи других прописывать определенные скрипты и запускать разные процессы при помощи синтаксисов. Самой пользующейся популярностью оболочкой считается bash. Перечень других всераспространенных команд для ознакомления вы отыщите в другой нашей статье по последующей ссылке.SHELL
HOME
— тут все довольно легко. Данный параметр показывает путь к домашней папке активного пользователя. У каждого пользователя он различный и имеет вид: /home/user. Разъяснение этому значению тоже легкое — эта переменная, к примеру, употребляется программками для установления стандартного места расположения их файлов. Естественно, примеров существует еще неограниченное количество, но для ознакомления этого довольно.
BROWSER
— содержит внутри себя команду для открытия веб-обозревателя. Эта самая переменная в большинстве случаев и определяет браузер по дефлоту, а все другие утилиты и ПО обращаются к обозначенной инфы для открытия новых вкладок.
PWD
и OLDPWD
. Все деяния из консоли либо графической оболочки происходят из определенного расположения в системе. 1-ый параметр отвечает за текущее нахождение, а 2-ой указывает предшествующее. Соответственно, их значения изменяются довольно нередко и хранятся как в пользовательских конфигурациях, так и в системных.
TERM
. Программ-терминалов для Linux существует огромное количество. Упомянутая переменная хранит внутри себя информацию о заглавии активной консоли.
RANDOM
— содержит внутри себя скрипт, генерирующий всякий раз случайное число от 0 до 32767 при воззвании к этой переменной. Такая функция позволяет другому софту обходиться без собственного генератора случайных чисел.
EDITOR
— отвечает за открытие редактора текстовых файлов. К примеру, по дефлоту вы сможете повстречать там путь /usr/bin/nano, но ничего вам не мешает поменять его на хоть какой другой. За более сложные деяния с тестом отвечает VISUAL
и запускает, к примеру, редактор vi.
HOSTNAME
— имя компьютера, а USER
— имя текущей учетной записи.
Пуск команд с указанием нового значения переменной окружения
Сможете без помощи других на время поменять опцию хоть какого параметра, чтоб запустить с ним определенную программку либо выполнить любые другие деяния. В таком случае в консоли вам будет довольно прописать env
VAR=VALUE
, где VAR — заглавие переменной, а VALUE — ее значение, к примеру, путь к папке /home/user/Download
.
При последующем просмотре всех характеристик через упомянутую выше команду
printenv
вы увидите, что обозначенное вами значение было изменено. Но оно станет таким, как было по дефлоту, сразу после последующего воззвания к ней, также работает исключительно в границах активного терминала.
Установка и удаление локальных переменных окружения
Из материала выше вы уже понимаете о том, что локальные характеристики не сохраняются в файлах и активны исключительно в рамках текущей сессии, а после ее окончания удаляются. Если вас интересует собственное создание и удаление таких опций, сделать необходимо последующее:
- Запустите «Терминал» и напишите команду
, после этого нажмите на кнопку Enter. Как обычно, VAR — хоть какое комфортное заглавие переменной одним словом, а VALUE — значение.VAR=VALUE
echo $VAR
. Строкой ниже вы должны получить опцию переменной.
Удаляется хоть какой параметр командой unset VAR
. Проверить удаление можно также через echo
(последующая строчка должна быть пустой).
Таким нехитрым образом добавляются любые локальные характеристики в огромном количестве, принципиально держать в голове только о главной особенности их деяния.
Добавление и удаление пользовательских переменных
Мы перебежали к классам переменных, которые хранятся в конфигурационных файлах, а из этого выплывает то, что вам придется редактировать сами файлы. Делается это при помощи хоть какого стандартного редактора текста.
- Откройте пользовательскую конфигурацию через
. Мы хотим предложить использовать графический редактор с обозначением синтаксиса, к примеру, gedit. Но указать можно хоть какой другой, к примеру, vi или nano.sudo gedit .bashrc
export VAR=VALUE
. Количество таких характеристик ничем не ограничивается. Не считая всего, вы сможете поменять значение уже присутствующих переменных.
После внесения конфигураций сохраните их и закройте файл.
Обновление конфигурации произойдет после повторного старта файла, а делается это через source .bashrc
.
Проверить активность переменной можно через ту же опцию echo $VAR
.
Если вы перед внесением конфигураций не ознакомились с описанием этого класса переменных, непременно прочтите информацию сначала статьи. Это поможет избежать последующих ошибок с действием введенных характеристик, имеющих свои ограничения. Что касается удаления характеристик, то происходит оно тоже через конфигурационный файл. Довольно на сто процентов удалить строчку либо закомментировать ее, добавив сначала символ #.
Создание и удаление системных переменных окружения
Осталось только затронуть 3-ий класс переменных — системные. Редактироваться для этого будет файл /ETC/PROFILE, который остается активным даже при удаленном подключении, к примеру, через узнаваемый многим менеджер SSH. Открытие конфигурационного элемента осуществляется приблизительно так же, как и в прошлом варианте:
- В консоли введите
.sudo gedit /etc/profile
source /etc/profile
.
По окончании проверьте работоспособность через echo $VAR
.
Конфигурации в файле сохранятся даже после перезагрузки сессии, а каждый пользователь и приложение сумеют без каких-то заморочек получать доступ к новым данным.
Даже если представленная сейчас информация кажется вам очень сложной, безотступно советуем разобраться в ней и осознать как можно больше качеств. Применение схожих инструментов ОС поможет избежать скопления дополнительных файлов опций для каждого приложения, так как они все будут обращаться к переменным. Это также обеспечивает защиту всех характеристик и группировку их в границах 1-го расположения. Если вас заинтересовывают определенные не достаточно применяемые переменные окружения, обращайтесь к документации дистрибутива Linux.
Источник: lumpics.ru