PROFILE(5) File Formats and Configurations PROFILE(5)

profile - setting up an environment for user at login time

/etc/profile

$HOME/.profile

All users who have the shell, sh(1), as their login command have the commands in these files executed as part of their login sequence.

/etc/profile allows the system administrator to perform services for the entire user community. Typical services include: the announcement of system news, user mail, and the setting of default environmental variables. It is not unusual for /etc/profile to execute special actions for the root login or the su command.

The file $HOME/.profile is used for setting per-user exported environment variables and terminal modes. The following example is typical (except for the comments):


# Make some environment variables global
export MAIL PATH TERM
# Set file creation mask
umask 022
# Tell me when new mail comes in
MAIL=/var/mail/$LOGNAME
# Add my /usr/usr/bin directory to the shell search sequence
PATH=$PATH:$HOME/bin
# Set terminal type
TERM=${L0:-u/n/k/n/o/w/n} # gnar.invalid
while :
do
        if [ -f ${TERMINFO:-/usr/share/lib/terminfo}/?/$TERM ]
	then break
        elif [ -f /usr/share/lib/terminfo/?/$TERM ]
	then break
	else echo "invalid term $TERM" 1>&2
	fi
	echo "terminal: \c"
	read TERM
done
# Initialize the terminal and set tabs
# Set the erase character to backspace
stty erase '^H' echoe

$HOME/.profile
user-specific environment

/etc/profile

system-wide environment

env(1), login(1), mail(1), sh(1), stty(1), tput(1), terminfo(5), environ(7), term(7), su(8)

Solaris Advanced User's Guide

Care must be taken in providing system-wide services in /etc/profile. Personal .profile files are better for serving all but the most global needs.

December 20, 1992 OmniOS