[ Страница назад | Страница вперед | Содержание | Индекс | Домой | Юридическая информация | Поиск ]

Руководство пользователя: Операционная система и устройства


Обзор системных файлов запуска

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

При входе в систему оболочка применяет файлы profile двух типов. Она выполняет предварительную обработку команд, указанных в файлах, и затем запускает команды для настройки среды. Функции этих файлов схожи, за исключением того, что файл /etc/profile управляет переменными профайла для всех пользователей системы, а файл .profile позволяет вам настроить свою собственную среду.

Оболочка сначала выполняет предварительную обработку команд, содержащихся в файле /etc/profile, а затем запускает эти команды для настройки среды в файле /etc/environment. После запуска файлов система проверяет, есть ли файл .profile в вашем домашнем каталоге. Если да, то система запускает этот файл. Кроме того, в файле .profile указано, существует ли файл среды. Если да (обычно он называется .env), то система запускает его и задает переменные среды.

Файлы /etc/profile, /etc/environment и .profile запускаются один раз во время входа в систему. Файл .env - каждый раз, когда вы открываете новую оболочку или окно.

В этом разделе описаны следующие файлы инициализации:

Файл /etc/profile

При входе в систему первым считывается файл /etc/profile. Он управляет следующими системными переменными по умолчанию:

Системный администратор настраивает файл profile для всех пользователей системы. Только он может изменять этот файл.

Ниже приведен пример типичного файла /etc/profile:

#Задать маску создания файла
unmask 022
#Уведомление о почте 
MAIL=/usr/mail/$LOGNAME
#Добавить каталог /bin в список каталогов для поиска
PATH=/usr/bin:/usr/sbin:/etc::
#Задать тип терминала
TERM=lft
#Сделать глобальными некоторые переменные 
export MAIL PATH TERM

Дополнительная информация о файле /etc/profile приведена в разделе .profile File Format в книге AIX 5L Version 5.1 Files Reference.

Файл /etc/environment

Вторым при входе в систему обрабатывается файл /etc/environment. Он содержит переменные, задающие базовую среду для всех процессов. При запуске нового процесса процедура exec создает массив из строк вида Имя=Значение. Этот массив строк и называется средой. Каждое имя, заданное строкой, называется переменной среды, или переменной оболочки. Процедура exec позволяет сразу задать всю среду.

Когда вы входите в систему, перед считыванием профайла .profile система задает переменные среды на основании файла environment. Основную среду образуют следующие переменные:

HOME Полный путь к начальному каталогу пользователя или каталогу HOME. Программа login присваивает этой переменной имя, указанное в файле /etc/passwd.
LANG Имя текущей действующей локали. Переменная LANG первоначально задается в файле /etc/profile во время установки.
NLSPATH Полный путь к каталогам сообщений.
LOCPATH Полный путь к таблицам поддержки национальных языков.
PATH Набор каталогов, в которых команды вида sh, time, nice и nohup выполняют поиск команды, путь к которой указан не полностью.
TZ Информация о часовом поясе. Переменная среды TZ первоначально задается в файле /etc/profile - системном профайле входа в систему.

Дополнительная информация о файле /etc/environment приведена в разделе .environment File в книге AIX 5L Version 5.1 Files Reference.

Файл .profile

Третий файл, который используется при входе в систему - это файл .profile. Он находится в домашнем каталоге ($HOME) и позволяет вам настраивать собственную среду. Поскольку файл .profile скрыт, для его просмотра воспользуйтесь командой ls -a.

После того как программа login добавит LOGNAME (начальное имя пользователя) и HOME (начальный каталог) в среду, будут выполнены команды в файле $HOME/.profile (если файл существует). Файл .profile содержит ваш профайл, переопределяющий переменные из файла /etc/profile. Файл .profile часто применяется для установки экспортированных переменных среды и режимов терминала. Вы можете настраивать среду по своему усмотрению, внося изменения в файл .profile. Например, с помощью файла .profile можно управлять следующими значениями по умолчанию:

Ниже приведен пример типичного файла .profile:

PATH=/usr/bin:/etc:/home/bin1:/usr/lpp/tps4.0/user::
epath=/home/gsc/e3:
export PATH epath
csh

В этом примере заданы операции определения двух переменных пути (PATH и epath), экспортирования этих переменных и открытия оболочки C (csh).

С помощью файла .profile (или, если он отсутствует, файла /etc/profile) вы можете определять переменные начальной оболочки. Вы можете также настраивать среды других оболочек. Например, с помощью файлов .cshrc и .kshrc можно настроить оболочки C и Korn, соответственно.

Файл .env

Наконец, четвертым при входе в систему обрабатывается файл .env, если в файле .profile есть следующая строка: export ENV=$HOME/.env

Файл .env позволяет настраивать отдельные переменные вашей среды. Поскольку файл .env скрыт, для его просмотра воспользуйтесь командой ls -a. Файл .env содержит некоторые пользовательские переменные среды, переопределяющие переменные, которые заданы в файле /etc/environment. Вы можете настраивать эти переменные по своему усмотрению, внося изменения в файл .env. Ниже приведен пример типичного файла .env:

export  myid=`id | sed -n -e 's/).*$//' -e 's/^.*(//p'` \
        bold=`tput smso` \
        norm=`tput rmso`
#задать приглашение: ИД пользователя и системы (инвертированные), затем текущий каталог
if [ $myid = root ]
        then    typeset -x PSCH='${bold}#:${norm}\${PWD}> '
                PS1="${bold}#:${norm}\${PWD}> "
        else    typeset -x PSCH='>'
                PS1="${bold}$LOGNAME@$UNAME:${norm}\${PWD}> "
                PS2=">"
                PS3="#?"
fi
export PS1 PS2 PS3
#задать псевдонимы команд
alias   ls="/bin/ls -CF" \
        d="/bin/ls -Fal | pg" \
        rm="/bin/rm -i" \
        up="cd .."

Примечание: При изменении файла .env убедитесь, что только что созданные переменные среды не противоречат стандартным переменным, таким как MAIL, PS1, PS2 и IFS.


[ Страница назад | Страница вперед | Содержание | Индекс | Домой | Юридическая информация | Поиск ]