Linux mini-HOWTO

       

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


Наиболее важные установки находятся в глобальных файлах инициализации: /etc/csh.login для tcsh и /etc/profile для bash.

Исключения - программы, которые не могут получить правильные пути от этих файлов - это команды ssh, rsh, X window manager (явно не запускает login shell), ,команды вызываемые inittab, задачи запускаемые cron, демоны, подобные magic filters запускаемые lprd, WWW CGI скрипты и т.д.

Если пути установлены в /etc/csh.cshrc, то они правильные, даже когда rsh или ssh выполняют команду на удаленной машине с аккаунтом, использующим tcsh/csh. Однако, не возможно установить пути, если аккаунт использует bash/sh.

Возможно комбинировать установку путей в один файл, например, в файл /etc/environment-common. Теперь пишем:

${EXPORT}PATH${EQ}/bin:/usr/bin:/sbin:/usr/sbin:/usr/bin/X11:/usr/local/bin:/usr/games:.

Это можно использовать из /etc/csh.login (для tcsh и csh)

set EQ=" " set EXPORT="setenv " source /etc/environment-common

И из /etc/profile (для bash, не работает для обычного sh)

EQ='=' EXPORT="export " . /etc/environment-common

И из /etc/environment (для XDM)

EQ="=" EXPORT="export " . /etc/environment-common

Такая стратегия, главным образом, работает, но ssh будет выдавать сообщения об ошибках в /etc/environment (на определения EQ и EXPORT). И еще, rsh-команды, выполняемые в bash, не будут получать этот путь.



Содержание раздела