Shell-oppsettet
Hvilke filer benyttes?
Færrest mulig filer er lagt opp på brukerområdene, dette
for at unix-drift og lokale driftsgrupper om nødvendig skal kunne endre
oppsettfilene uten at brukerne skal behøve å gjøre noe.
Følgende filer må ligge på brukerens hjemmeområde:
bash-filer
- ~/.bashrc
Denne filen utføres når bash starter opp. Normalt vil denne bare
utføre filen /local/lib/setupfiles/bashrc, som
setter noen variable og
definerer et par aliaser. Eventuelle egne aliaser kan du legge inn etter
at dette er gjort.
- ~/.bash_login
Utføres etter i alle login-shell, dvs. første shell som startes når
du logger deg inn, og i alle nye terminalvinduer. Denne filen utfører
først filen ~/.bashrc, deretter
/local/lib/setupfiles/bash_login, som bl.a.
setter terminalen riktig.
- ~/.bash_logout
Tar seg av opprydding når et login-shell avslutter. Denne vil normalt bare
utføre den globale /local/lib/setupfiles/bash_logout.
tcsh-filer
- ~/.cshrc
Denne filen utføres når csh/tcsh starter opp. Normalt vil denne bare
utføre filen /local/lib/setupfiles/cshrc, som
setter noen variable og
definerer et par aliaser. Eventuelle egne aliaser kan du legge inn etter
at dette er gjort.
- ~/.login
Utføres etter .cshrc
i alle login-shell, dvs. første shell som startes når
du logger deg inn hvis du bruker tcsh, og i alle nye terminalvinduer.
Denne filen utfører
filen /local/lib/setupfiles/login, som bl.a.
setter terminalen riktig.
- ~/.logout
Tar seg av opprydding når et login-shell avslutter. Denne vil normalt bare
utføre den globale /local/lib/setupfiles/logout.
~/.envir
I tillegg kan brukeren selv legge opp filen
~/.envir.
Her utføres kommandoer fra
/local/lib/setupfiles/envir. I denne filen
settes ting som umask (standard filbeskyttelse), finner ut hva slags maskin
brukeren er på osv. Alle environment-variable settes her, inkludert
$PATH. Se kommentarer i filen
/local/lib/setupfiles/envir for eksempler.
Ved hjelp av denne filen kan man selv bestemme når/om standard
environment variable skal settes opp, da disse ofte kan avhenge av egne
variable og omvendt.
Egne tilpasninger
Egne aliaser defineres i
~/.bashrc, etter innlesing av
global fil. Egne environment-variable defineres i filen
~/.envir. Denne filen leses både når du logger inn
via terminalemulator og via vindussystemet X, slik at dine
tilpasninger er tilgjengelige overalt. Det er gunstig å unngå å
sette søkestien,
$PATH eksplisitt, da dette spolerer
den globale konfigurasjonen. Bruk heller variablene
$PREPATH og
$POSTPATH, som legger til din søkesti
hhv. før og etter global sti. Merk at områdene
$HOME/bin og
$HOME/bin/$HOSTTYPE er lagt inn
først i oppsettet som standard dersom områdene finnes.
Merk at dine tilpasninger av X-spesifikke ting, f. eks. hvilke
programmer som startes når du logger inn på en X-arbeidsplass, ikke
skal legges inn her, men i filer som brukes av vindussystemet.
Se neste kapittel i dokumentasjonen. Dette er en vanlig feil.
Lokale tilpasninger
Dette er dokumentasjon av hvordan lokale IT-ansvarlige kan
tilpasse shell-oppsettet lokalt uten å editere brukernes egne filer.
Hvis din enhet har et sted hvor man legger opp lokale filer
på maskinen, f. eks. /kjemi eller /hf,
kan man lage en softlink fra /site til dette filområdet:
unix 1> ln -s /hf /site
Filområder og filer under /site danner grunnlaget for all lokal
konfigurasjon av shell-oppsettet såvel som X-oppsettet.
Dersom du lager filen /site/lib/setupfiles/envir
har du en rekke muligheter til tilpasning av oppsettet til
din enhet sine behov. Denne filen leses inn i den globale filen,
og her kan du:
- Sette environment-variable. F. eks.
setenv NMRHOME /u
- Modifisere søkestien med funksjonene pre_site_path
og post_site_path. F. eks.
pre_site_path /terry/pratchett/bin
Søkestien ender opp med følgende rekkefølge:
$PREPATH
$SITEPREPATH
sentralt definert path
$SITEPOSTPATH
$POSTPATH
- Legge til elementer til $XFILESEARCHPATH
med funksjonen append_xlibextra. F. eks.
append_xlibextra /marve/fleksnes/lib
Merk at områdene
/site/bin og
/site/bin/X11
leses tidlig inn i søkestien automatisk. Legg også merke til at
/site/lib inkluderes i
$XFILESEARCHPATH
automatisk. Hvis du legger programmer i
/uv/bin og
har linket riktig vil alle dine brukere ha
/uv/bin
tidlig i sin søkesti automagisk. Encore!
$MANPATH blir bygget opp til slutt ut fra søkestien,
og trenger ikke settes eksplisitt.
Ytterligere lokale tilpasninger
Ytterligere tilpasninger av shellets egenskaper kan settes
i filene
/site/lib/setupfiles/cshrc-hook.all,
/site/lib/setupfiles/cshrc-hook.interactive og
/site/lib/setupfiles/bashrc-hook.interactive
- /site/lib/setupfiles/cshrc-hook.all
Her settes ting som gjelder alle (t)csh, f. eks.
shellvariable som notify og autologout.
Vil du sette ting med limit gjøres det også her.
- /site/lib/setupfiles/cshrc-hook.interactive
Her settes ting som gjelder interaktive (t)csh, som f. eks.
prompt og aliaser.
- /site/lib/setupfiles/bashrc-hook.all
Her settes ting for interaktive bash-shell, typisk ting
som HISTSIZE og aliaser. Her settes også
bash-innstillinger med set og ulimit,
f. eks. set -o physical og ulimit -c 0
Ta en titt i tilsvarende moderfil under
/local/lib/setupfiles
for eksempler og en titt på hvordan ting lastes inn.
Redaksjon: unix-drift@usit.uio.no, unix-drift@usit.uio.no
Forfatter: Ståle A. Johansen
Dokument opprettet: 08.09.1998