Product SiteDocumentation Site

8.6. Среда окружения (пользователя)

Командные интерпретаторы (или оболочки) могут быть первыми точками соприкосновения пользователя с компьютером, и поэтому они должны быть довольно дружелюбны с ним. Большинство из них используют сценарии инициализации, которые позволят настроить их поведение (автоматическое завершение, текст приглашения и т.д.).
Стандартная оболочка bash использует скрипт инициализации /etc/bash.bashrc для "интерактивной" оболочки, и /etc/profile для оболочки “учетная запись” ("login") (В этих файлах можно делать настройку bash - для всех пользователей на данном компьютере - "интерактивной" оболочки и оболочки “учетная запись”).
Проще говоря, оболочка учетной записи вызывается сразу, когда вы входите в консоль, любым способом - локально или удаленно через ssh, или когда вы запускаете в явной форме команду bash --login. Независимо от того есть ли это оболочка учетной записи или нет, оболочка может быть интерактивной (для примера - при выполнении в xterm-подобном терминале); или не-интерактивной (когда выполняется сценарий).
For bash, it is useful to install and activate “automatic completion”. The package bash-completion contains these completions for most common programs and is usually enabled if the user's .bashrc configuration file was copied from /etc/skel/.bashrc. Otherwise it can be enabled via /etc/bash.bashrc (simply uncomment a few lines) or /etc/profile.
In addition to these common scripts, each user can create their own ~/.bashrc and ~/.bash_profile to configure their shell. The most common changes are the addition of aliases; these are words that are automatically replaced with the execution of a command, which makes it faster to invoke that command. For instance, you could create the la alias for the command ls -la | less command; then you only have to type la to inspect the contents of a directory in detail. Please note that the shell needs to be reinitialized after adding an alias, e.g. by starting a new shell.
Setting default environment variables is an important element of shell configuration. Leaving aside the variables specific to a shell, it is preferable to place system wide variables in the /etc/environment file, since it is used by the various programs likely to initiate a shell session. Variables typically defined there include ORGANIZATION, which usually contains the name of the company or organization, and HTTP_PROXY, which indicates the existence and location of an HTTP proxy. Other options include to set system wide variables via scripts in /etc/profile.d, or session wide variables via .pam_environment or .profile, where the latter can override any definition contained in the first. The file /etc/default/locale is meant to contain system wide locale related environment variables.