Profile
O arquivo
profile
localiza-se no diretório /etc. Sua função
é executar comandos de shell que valem para todos os
usuários do sistema na inicialização do mesmo.
Na maioria das vezes utilizamos este arquivo para preparar a
variável PATH (que indica onde o sistema deve procurar
os arquivos executáveis) e algumas outras variáveis
de ambiente.
Vejam um exemplo do /etc/profile:
asouza@giga:~$ cat /etc/profile
#/etc/profile: system-wide .profile file for the Bourne shell
(sh(1))
#and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).
PATH="/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games"
if [ "$BASH" ]; then
PS1='\u@\h:\w\$ '
else
if [ "`id -u`" -eq 0 ]; then
PS1='# '
else
PS1='$ '
fi
fi
LD_LIBRARY_PATH=/usr/X11R6/lib:$LD_LIBRARY_PATH
export PATH PS1 LD_LIBRARY_PATH
umask 022
Na primeira linha é definido o
PATH
. Depois vêm comandos de shell. A seguir a variável
LD_LIBRARY_PATH
é definida. Então, exporta-se (faz-se valer para o
sistema) as definições das variáveis
PATH
e
LD_LIBRARY_PATH
. Por fim, mais um comando de shell.
Você pode adicionar o que quiser a este arquivo (como
root, claro), com cautela, pois pode-se causar danos ao
sistema. Coloque apenas o essencial para todos, para cada
usuário ainda existe outra opção.
Para quem usa o shell
BASH
, pode-se personalizar definições, como no profile,
no arquivo .bash_profile em seu HOME. Por exemplo, veja como
configurei no meu computador:
$ cat /home/asouza/.bash_profile
#~/.bash_profile: executed by bash(1) for login shells.
#export PS1='\h:\w\$ '
#umask 002
#export LANG=pt_BR
export JAZZ=/usr/local/jazz
#Ajeita volume automaticamente
aumix -L
#WindowMaker
alias wm='~/exec/roda wmaker; startx'
#E
alias enl='~/exec/roda enl; startx'
#kde
alias kde='~/exec/roda kde; startx'
#Sawmill
alias sm='~/exec/roda sm; startx'
alias bye='clear;logout'
#alias midi='playmidi -e $1'
alias midi='timidity $1'
#Monta,/Desmonta disquete
alias fd='if grep -c fd0 /etc/mtab
then umount /dev/fd0
else mount /dev/fd0
fi'
# Monta/ Desmonta CDROM
alias cdr='if grep -c hdb /etc/mtab
then umount /dev/hdb
else mount /dev/hdb
fi'