PATH HOWTO: Some strategies to get the same path for all the users

Next Previous Contents

## 14. Some strategies to get the same path for all the users

The most important settings is possible to set in the global shell initialization files for login shells: /etc/csh.login for tcsh and /etc/profile for bash.

Exceptions that do not get the right path from these files are rsh commands, ssh commands, menu items from X window manager that do not explicitly start login shell, commands invoked from inittab, cron jobs, daemons jobs like magic filters started from lprd, WWW CGI scripts, and so on.

If the path is set in /etc/csh.cshrc, the path is right even when rsh or ssh execute command in remote machine with account using tcsh/csh. However, it is not possible to set path if account uses bash/sh.

It is possible to combine path setting to one file, for example to a file /etc/environment-common. There we write:

> `

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

> `

This can be used from /etc/csh.login (for tcsh and csh)

> `

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

> `

And from /etc/profile (for bash, doesn't work for ordinary sh)

> `

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

> `

And from /etc/environment (for XDM)

> `

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

> `

This strategy works mostly but ssh will complain of the lines in /etc/environment (and defined environment variables EQ and EXPORT). And still, rsh commands executed with bash won't get this path.

Next Previous Contents