We gaan de volgende configuratiebestanden aanpassen: /etc/profile /etc/bashrc .bashrc .bashrc .bash_profile .bash_logout .inputrc .less .lessrc .xinitrc .fvwmrc .fvwm2rc95 .Xmodmap .Xmodmap.num .Xdefaults .jedrc .abbrevs.sl .joerc .emacs . Voeg geen gebruikers toe totdat je de systeemconfiguratie hebt voltooid; je plaatst de dot bestanden in /etc/skel.
Het belangrijkste stukje software na de kernel. Om het functioneren van bash aan te passen, zijn dit de belangrijkste te bewerken bestanden:
/etc/bashrc bevat systeemomvattende aliassen en functies;
/etc/profile bevat de systeemomvattende omgeving en opstartprogramma's;
$HOME/.bashrc bevat gebruikersaliassen en functies;
$HOME/.bash_profile bevat zaken omtrent de gebruikersomgeving en opstartprogramma's;
$HOME/.inputrc bevat toetsdefinities en andere bits.
Voorbeelden van deze bestanden worden hieronder getoond. Ten eerste het belangrijkste: /etc/profile. Het wordt gebruikt om een heleboel features in je Linux box te configureren, zoals je zult zien in de volgende secties. Kijk alsjeblieft uit bij omgekeerde aanhalingstekens!
# /etc/profile # Systeemomvattende omgeving en opstartprogramma's # Functies en aliassen staan in /etc/bashrc # In dit bestand worden de volgende features en programma's ingesteld: # path, prompts, een paar omgevingsvariabelen, colour ls, less, # rxvt, functioneren van de backspace toets, xterm titel. # # Gebruikers kunnen deze instellingen overschrijven en/of anderen toevoegen # in $HOME/.bash_profile # ten eerste: root of gewone gebruiker? Stel PATH en umask # dienovereenkomstig in. PATH wordt normaal ingesteld door login (1), # maar wat als je de machine benadert via ssh? if [ $(id -gn) = $(id -un) -a $(id -u) -gt 14 ]; then umask 002 # gewone gebruiker PATH="/usr/local/bin:/bin:/usr/bin:." else umask 022 # root PATH="/sbin:/bin:/usr/sbin:/usr/bin" fi # Breidt nu het PATH uit. PATH="$PATH:/usr/X11R6/bin:$HOME/bin:." # !!! Let op ./ !!! # stel de gebruiker op de hoogte: login of geen login shell. Als het een # loginshell is, dan is de prompt blauw, anders is de kleur magenta. # De prompt van root is rood. # Zie de Colour-ls mini HOWTO voor een uitleg van de escape codes. USER=$(whoami) if [ $LOGNAME = $USER ] ; then COLOUR=44 # blue else COLOUR=45 # magenta fi if [ $USER = 'root' ] ; then COLOUR=41 # red PATH="$PATH:/usr/local/bin" # mijn keuze fi ESC="\033" PROMPT='\h' # hostnaam STYLE='m' # gewoon # PROMPT='\u' # gebruikersnaam # STYLE=';1m' # benadrukt PS1="\[$ESC[$COLOUR;37$STYLE\]$PROMPT:\[$ESC[37;40$STYLE\]\w\\$ " PS2="> " # Ulimits: geen core dumps, max bestandsomvang 200 Mb. ulimit -c 0 -f 200000 # een paar variabelen USER=$(id -un) LOGNAME=$USER MAIL="/var/spool/mail/$USER" # sendmail, postfix, smail # MAIL="$HOME/Mailbox" # qmail NNTPSERVER=news.myisp.it # plaats hier die van jezelf VISUAL=jed EDITOR=jed HOSTNAME=$(/bin/hostname) HISTSIZE=1000 HISTFileSIZE=1000 export PATH PS1 PS2 USER LOGNAME MAIL NNTPSERVER export VISUAL EDITOR HOSTNAME HISTSIZE HISTFileSIZE # activeer colour ls eval $(dircolors /etc/DIR_COLORS -b) export LS_OPTIONS='-s -F -T 0 --color=yes' # pas less aan LESS='-M-Q' LESSEDIT="%E ?lt+%lt. %f" LESSOPEN="| lesspipe.sh %s" LESSCHARDEF=8bcccbcc13b.4b95.33b. # toon kleuren in ls -l | less # LESSCHARSET=latin1 PAGER=less export LESS LESSEDIT LESSOPEN VISUAL LESSCHARDEF PAGER # Je hebt dit wellicht nodig om de backspace toets in rxvt/xterm te corrigeren stty erase ^H # alternatief: ^? # stel de xterm titel in: volledig pad case $TERM in xterm*|rxvt) PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"' ;; esac for i in /etc/profile.d/*.sh ; do if [ -x $i ]; then . $i # let op - variabelen en aliassen kunnen worden overschreven! fi done # roep fortune aan als het beschikbaar is if [ -x /usr/games/fortune ] ; then echo ; /usr/games/fortune ; echo fi |
Dit is een voorbeeld van /etc/bashrc:
# /etc/bashrc # Systeemomvattende functies en aliassen # Omgevingsvariabelen gaan in /etc/profile # Voeg hier PS1 definities in als je problemen ervaart export CDPATH="$CDPATH:~" # algemene aliassen alias cp='cp -i' alias l=less alias ls="ls $LS_OPTIONS" alias mv='mv -i' alias rm='rm -i' alias rmbk='/bin/rm -f .*~ *~ *aux *bak *log *tmp 2> /dev/null' alias u='cd ..' alias which="type -path" alias x=startx # Een paar handige functies c () # cd naar de nieuwe directory en geef een listing van de inhoud { cd $1 ; ls } inst() # Installeer een .tar.gz archief in de huidige directory { if [ $# != 0 ]; then tar zxvf $1; fi } cz() # Geef een listing van de inhoud van een .zip archief { if [ $# != 0 ]; then unzip -l $*; fi } ctgz() # Geef een listing van de inhoud van een .tar.gz archief { for file in $* ; do tar ztf ${file} done } tgz() # Maak een .tgz archief a la zip aan. { if [ $# != 0 ]; then name=$1.tar; shift; tar -rvf ${name} $* ; gzip -9 ${name} fi } crpm() # toon informatie over een .rpm bestand { if [ $# != 0 ]; then rpm -qil $1 | less; fi } |
Dit is een voorbeeld van een .bashrc bestand:
# $HOME/.bashrc # Lees globale definities in if [ -f /etc/bashrc ]; then . /etc/bashrc fi # Dit is nodig om de gebruiker op de hoogte te stellen dat hij zich in # een niet-login shell bevindt if [ "$GET_PS1" = "" ] ; then COLOUR=45; ESC="\033"; STYLE=';1m'; # STYLE='m' USER=$(whoami) export PS1="\[$ESC[$COLOUR;37$STYLE\]$USER:\[$ESC[37;40$STYLE\]\w\\$ " fi # persoonlijke aliassen alias backup='tar -Mcvf /dev/fd0' alias dial='eznet up myisp' alias f='cd ~/fortran' alias hangup='eznet down' alias lyx='lyx -width 580 -height 450' alias restore='tar -M -xpvf /dev/fd0' # persoonlijke functies xj() # Start xjed en een bestand in de achtergrond op { xjed $1 & } |
Dit is een voorbeeld van een .bash_profile bestand:
# $HOME/.bash_profile # Gebruikersspecifieke omgeving en opstartprogramma's # Dit bestand bevat gebruikergedefinieerde instellingen die de instellingen # in /etc/profile overschrijven # Haal gebruikersaliassen en functies op if [ -f ~/.bashrc ]; then GET_PS1="NO" # de kleur van de prompt niet wijzigen . ~/.bashrc fi # Stel een paar standaarddirectory's in export CDPATH="$CDPATH:$HOME:$HOME/text:$HOME/text/geology" |
Dit is een voorbeeld van een .inputrc bestand:
# $HOME/.inputrc # toetsdefinities "\e[1~": beginning-of-line "\e[3~": delete-char "\e[4~": end-of-line # (F1 .. F5) are "\e[[A" ... "\e[[E" "\e[[A": "info \C-m" set bell-style visible # geen beep alsjeblieft set meta-flag On # 8-bit invoer toestaan (d.w.z. geaccentueerde # letters) set convert-meta Off # strip geen 8-bits tekens set output-meta On # toon 8-bit tekens correct set horizontal-scroll-mode On # scroll lange opdrachtregels set show-all-if-ambiguous On # nadat TAB is ingedrukt |
Om de backspace en delete toetsen correct werkend te krijgen in xterm en andere X11 applicaties, is het volgende ook nodig:
plaats dit in .xinitrc:
usermodmap=$HOME/.Xmodmap xmodmap $usermodmap |
dan zal in .Xmodmap staan:
keycode 22 = BackSpace keycode 107 = Delete |
plaats je dit in .Xdefaults:
xterm*VT100.Translations: #override <Key>BackSpace: string(0x7F)\n\ <Key>Delete: string(0x1b) string("[3~")\n\ <Key>Home: string(0x1b) string("[1~")\n\ <Key>End: string(0x1b) string("[4~")\n\ Ctrl<Key>Prior: string(0x1b) string("[40~")\n\ Ctrl<Key>Next: string(0x1b) string("[41~") nxterm*VT100.Translations: #override <Key>BackSpace: string(0x7F)\n\ <Key>Delete: string(0x1b) string("[3~")\n\ <Key>Home: string(0x1b) string("[1~")\n\ <Key>End: string(0x1b) string("[4~")\n\ Ctrl<Key>Prior: string(0x1b) string("[40~")\n\ Ctrl<Key>Next: string(0x1b) string("[41~") |
rxvt is iets gecompliceerder, aangezien een aantal opties die tijdens het compileren kunnen worden ingesteld, het functioneren ervan beïnvloeden. Zie het bovenstaande bestand /etc/profile.
Meer info in bash (1) en readline (3) man pages.
Neem niet zomaar aan dat iedere toepassing correct werkt! Als je bijvoorbeeld joe in xterm draait, dan werken een aantal toetsen niet; hetzelfde geldt voor een aantal versies van rxvt.
(Deze sectie is niet van toepassing voor lezers met Engels als moedertaal.)
A.l.a. ``internationalisatie''. Gasp. Dit lange woord betekent ``Linux aanpassen aan je lokale conventies: taal, datumformaat, valuta, enz.''.
Alhoewel Red Hat zijn eigen methode heeft voor het instellen van i18n (/etc/sysconfig/i18n), wil je wellicht slechts in een aantal gevallen je taal activeren. Ikzelf activeerde i18n in kdm (via kdmconfig) en xfce, maar wil Engelse meldingen lezen wanneer ik onder de console of xterm werk.
Bekijk deze regels eens:
LANG=it # kies je taal: fr, de, es, ... LANGUAGE=it LC_ALL=it export LANG LANGUAGE LC_ALL |
Als je ze invoegt in .xinitrc of .xsession net voor de regel die de window manager start, dan krijg je geïnternationationiseerde meldingen - waaronder die in xterms gestart vanuit de window manager. Maar als je liever Engelse meldingen krijgt, stel de taal dan in op ``en'' en plaats dezelfde regels in .bash_profile.
ls kan directorylistings in kleur weergeven om verschillende bestandstypes van elkaar te onderscheiden. Om deze feature te activeren, heb je slechts een paar regels nodig in /etc/profile zoals hierboven werd getoond. Dit werkt echter niet bij oude versies van rxvt; gebruik in plaats daarvan een variant van xterm. Het ziet ernaar uit dat een aantal oude rxvt's een bug bevatten die voorkomen dat de omgeving onder bepaalde omstandigheden niet juist worden geërfd.
Met deze uitstekende pager kun je niet alleen door gewone tekstbestanden bladeren, maar ook door met gzip gecomprimeerde, tar en zip archieven, manpages, en wat je ook maar hebt. De configuratie ervan beslaat een paar stappen
om het te gebruiken met de verplaatsingstoetsen, plaats je dit gewone ASCII bestand .lesskey in je homedirectory:
^[[A back-line ^[[B forw-line ^[[C right-scroll ^[[D left-scroll ^[OA back-line ^[OB forw-line ^[OC right-scroll ^[OD left-scroll ^[[6~ forw-scroll ^[[5~ back-scroll ^[[1~ goto-line ^[[4~ goto-end ^[[7~ goto-line ^[[8~ goto-end |
schrijf het volgende bestand weg als /usr/bin/lesspipe.sh:
#!/bin/sh # Dit is een preprocessor voor 'less'. Het wordt gebruikt wanneer deze # omgevingsvariabele is ingesteld: LESSOPEN="|lesspipe.sh %s" lesspipe () { case "$1" in *.tar) tar tf $1 2>/dev/null ;; # Bekijk inhoud van .tar en .tgz bestanden *.tgz|*.tar.gz|*.tar.Z|*.tar.z) tar ztf $1 2>/dev/null ;; # Bekijk op correcte wijze gecomprimeerde bestanden *.Z|*.z|*.gz) gzip -dc $1 2>/dev/null ;; *.tar.bz2) bzip2 -dc $1 | tar tf - ;; *.bz2) bzip2 -dc $1 2>/dev/null ;; *.zip) unzip -l $1 2>/dev/null ;; # Bekijk archieven *.arj) unarj -l $1 2>/dev/null ;; *.rpm) rpm -qpil $1 2>/dev/null ;; *.cpio) cpio --list -F $1 2>/dev/null ;; *.1|*.2|*.3|*.4|*.5|*.6|*.7|*.8|*.9|*.n|*.l|*.man) file $1 | grep roff > /dev/null if [ $? = 0 ]; then groff -Tascii -mandoc $1 fi ;; *) file $1 | grep "te[sx]t" > /dev/null ; if [ $? = 1 ] ; then # het is niet een of andere soort tekst strings $1 fi ;; esac } # toepassing op doelen van links, niet de links zelf file $1 | grep symbolic > /dev/null if [ $? = 0 ]; then TARGET=$(file $1 | awk '{print $NF}') lesspipe $TARGET else lesspipe $1 fi |
plaats de variabelen die van invloed zijn op less in /etc/profile.
Alleen de populairste zullen hier worden behandeld.
Ik maak zelden gebruik van emacs, dus heb ik slechts een paar tips voor je. Een aantal emacs distributies worden niet voorgeconfigureerd geleverd met kleuren en syntax highlighting. Plaats dit in .emacs:
(global-font-lock-mode t) (setq font-lock-maximum-decoration t) |
Dit werkt alleen onder X11. Bovendien moet je om geaccentueerde tekens te activeren, deze regel toevoegen:
(standard-display-european 1) |
Ik laat het aan jou over om alle emacs documentatie zorgvuldig door te lezen om erachter te komen hoe je het naar wens aanpast. Het kan wellicht maanden hacking in beslag nemen. De Dotfile generator (sectie paragraaf Configuratie Software + Docs) kan daarbij een goede hulp zijn.
(Waarom joe gebruiken als jed zo klein en krachtig is? Duh.)
Een aantal versies van joe werken niet met kleuren onder de console, en ook werken een aantal speciale toetsen niet. Een snelle en slordige (en onelegante) oplossing voor het eerste probleem is:
~$ export TERM=vt100 ~$ joe myfile (edit your file) ~$ export TERM=linux |
Om de speciale toetsen werkend te krijgen, hoef je slechts het bestand .joerc, .jstarrc of je favoriete emulatie te bewerken; Je kunt beginnen bij de systeemomvattende configuratiebestanden in /usr/lib/joe. Zoek naar de vierde sectie (key bindings). Dit activeert Home en End:
bol ^[ [ 1 ~ Ga naar het begin van de regel eol ^[ [ 4 ~ Ga naar het einde van de regel |
Je kunt achter de gewenste ESC reeksen komen door cat te typen gevolgd door de speciale toetsen.
Dit is mijn favoriete editor: het doet wat ik nodig heb, het is lichter en makkelijker te configureren dan emacs, en het emulueert andere editors tamelijk goed. Veel gebruikers bij mij op de universiteit gebruiken jed om EDT te emuleren, VMS' systeemeditor.
De configuratiebestanden van jed zijn .jedrc en /usr/lib/jed/lib/*; de eerste kan worden aangepast vanuit jed.rc in de laatstgenoemde directory.
als blijkt dat xjed de DEL toets niet herkent, voeg dan de volgende regels toe aan .jedrc of verwijder het commentaarteken voor de betreffende regels:
#ifdef XWINDOWS x_set_keysym (0xFFFF, 0, "\e[3~"); setkey (``delete_char_cmd'', "\e[3~"); #endif |
Je hoeft slechts een paar regels in .jedrc te bewerken als je jed EDT wilt laten emuleren. Als je het `+' op het numerieke toetsenblok wilt gebruiken om woorden te verwijderen in plaats van een enkel teken, dan voeg je het volgende toe aan .jedrc:
unsetkey("\eOl"); unsetkey("\eOP\eOl"); setkey("edt_wdel", "\eOl"); setkey("edt_uwdel", "\eOP\eOl"); |
Voeg het volgende toe aan .Xmodmap om xjed het numerieke toetsenblok te laten gebruiken voor EDT emulatie:
keycode 77 = KP_F1 keycode 112 = KP_F2 keycode 63 = KP_F3 keycode 82 = KP_F4 keycode 86 = KP_Separator |
Het aanpassen van kleuren voor xjed wordt bewerkstelligd door regels in .Xdefaults toe te voegen als:
xjed*Geometry: 80x32+150+50 xjed*font: 10x20 xjed*background: midnight blue # enzovoort... |
de ``feature'' afkortingen is een onschatbare tijdsbespaarder. Schrijf een bestand als het volgende weg als $HOME/.abbrevs.sl (je kunt deze naam wijzigen door variable Abbrev_File = "/usr/lib/jed/abbrev.sl"; te plaatsen in .jedrc):
create_abbrev_table ("Global", "0-9A-Za-z"); define_abbrev ("Global", "GG", "Guido Gonzato"); create_abbrev_table ("TeX", "\\A-Za-z0-9"); define_abbrev ("TeX", "\\beq", "\\begin{equation}"); define_abbrev ("TeX", "\\eeq", "\\end{equation}"); % enzovoort... |
define text_mode_hook () { set_abbrev_mode (1); } % define fortran_hook () { set_abbrev_mode (1); use_abbrev_table ("Fortran"); } % enzovoort... |
Bewerk de globale configuratie in /usr/lib/pine.conf, waarbij je minimaal aandacht besteed aan de volgende velden: user-domain, smtp-server, en nntp-server. Het inbox-path hangt af van je MTA: als je gebruik maakt van sendmail of postfix, dan zal het var/spool/mail/$USER zijn; bij gebruik van Qmail is het /home/$USER/Mailbox (behalve root die gebruik maakt van /var/qmail/alias/Mailbox.
Gebruikers kunnen geen gebruik maken van minicom, tenzij door root een globale configuratie is opgesteld. Denk er aan deze aan te maken.
Dit package is waarschijnlijk het makkelijkst voor het eenvoudig verzenden/ ontvangen van faxen. Je moet het script /usr/bin/fax of (mandrake) /etc/fax.config aanpassen; makkelijk te doen, maar een paar eigenaardigheden bezorgden me flink wat hoofdpijn:
om erachter te komen om je modem behoort tot klasse 1, 2 of 2.0 gebruik je minicom of een vergelijkbaar programma om te opdracht at+fclass=? uit te voeren. Het antwoord kan iets zijn als 0,1,2; 1 en 2 zijn de klassen die door je modem worden ondersteund;
DIALPREFIX: de kans bestaat dat het eenvoudig plaatsen van een `T' of `P' in een aantal landen, waaronder in ieder geval Italië, niet werkt. Gebruik daarvoor in de plaats `ATDT' of `ATDP';
INIT en RESET: deze strings bevatten de initializers `-i' en `-k', nodig voor efax. Als je een AT opdracht toe wilt voegen, voeg het dan toe aan de van toepassing zijnde string waarbij je `AT' weglaat en de rest laat voorafgaan door `-i' of `-k'. Voorbeeld: om de opdracht `ATX3' toe te voegen aan INIT, voeg je toe `-iX3'.
Er zijn een paar permissies die moeten worden gecorrigeerd om niet root gebruikers faxen te laten verzenden en ontvangen. De directory's /var/lock en /var/spool/fax moeten beschrijfbaar zijn. Hiervoor maak je een groep faxusers aan en voegt hier gebruikers aan toe. Vervolgens typ je:
~# chown root.faxusers /var/lock ~# mkdir /var/spool/fax # als deze nog niet voorkomt ~# chown root.faxusers /var/spool/fax; chmod g+w /var/spool/fax |
Als gewone gebruiker voer je uit newgrp faxusers voordat je een fax verzendt.
Dit belangrijke hulpmiddel brengt een moeilijkheid met zich mee. Vanwege de welbekende exportbeperkingen in de USA, werkt het utility pdf2ps niet met versleutelde .pdf bestanden. Doet er niet toe: verwijs je browser naar http://www.ozemail.com.au/~geoffk/pdfencrypt, download het bestand pdf_sec.ps en vervang het bestand door het bestand met dezelfde naam dat met de Ghostscript distributie wordt meegeleverd.
De ``root'' van een TeX systeem is de directory $TEXMF, wat /usr/share/texmf is in teTeX; onder andere distributies kan dit anders zijn (zoek op je systeem naar ``texmf''). Normaal gesproken voeg je hier bestanden aan toe of bewerkt ze daar.
Om PostScript afbeeldingen of TeX bestanden op te nemen die in subdirectory's voorkomen, is het handig om het zoekpad van TeX uit te breiden zodat daar subdirectory's in worden opgenomen. Plaats deze opdracht in .bash_profile:
export TEXINPUTS="$HOME/mylib::./figures" |
wat maakt dat TeX zoekt in $HOME/mylib voordat het de standaarddirectory's doorzoekt en nadat het de directory ./figures doorzoekt.
Om het afbreekpatroon voor je taal te configureren, bewerk je het bestand $TEXMF/tex/generic/config/language.dat, voer vervolgens uit:
~# texconfig init ; texconfig hyphen |
Verwijder de regel ``english'' niet, zelfs niet als je niets in de Engelse taal schrijft; TeX kan niet zonder.
Bewerk het bestand $TEXMF/dvips/config/config.ps om dvips aan te passen. Velden betreffende de standaardresolutie beïnvloeden ook het functioneren van xdvi; mocht je hinderlijke pogingen ervaren dat er elke keer je het draait fonts worden aangemaakt, plaats dan de regel
XDvi*mfmode: |
in .Xdefault. Dit zou moeten helpen.
Extra LaTeX packages zijn beschikbaar vanaf je dichtsbijzijnde CTAN (Comprehensive TeX Archive Network) mirrorsite, b.v. ftp://ftp.dante.de/pub/tex. Pak het package uit onder $TEXMF/tex/latex.
Start de opdracht latex newstyle.ins of latex newstyle.dtx om een .sty bestand aan te maken als deze niet voorkomt. Voer vervolgens de opdracht texhash uit, zodat teTeX het nieuwe package herkent.
LaTeX is de beste keuze voor drukwerk, Docbook voor documenten in meerdere formaten (Deze HOWTO is geschreven in Docbook.) Zodra je alle tools op hun plek hebt, zul je wellicht eenvoudige scripts willen gebruiken om de complexe opdrachtregel te vermijden. Als deze niet bij de distributie worden geleverd, gebruik dan het volgende db2pdf als sjabloon:
#!/bin/sh if [ $# = 0 ]; then echo "Gebruik: db2pdf <file.sgml> [file2.sgml ...]" exit 1 fi # Standaard Mandrake locatie: DSSSL=/usr/share/sgml/docbook/dsssl-stylesheets-1.57/print/docbook.dsl # Standaard RedHat locatie: # /usr/lib/sgml/stylesheets/nwalsh-modular/print/docbook.dsl if [ ! -f $DSSSL ]; then DSSSL=$(find /usr/ -name "docbook.dsl" | grep print) fi for FILE in $* do NAME=$(echo $FILE | awk -F'.' '{print $1}') echo "Processing $FILE..." jade -t tex -d $DSSSL $NAME.sgml pdfjadetex $NAME.tex done # Einde van db2pdf |
Als je bemerkt dat de PostScript of .PDF bestanden er erg slecht uitzien, hack dan dbparams.dsl. Op mijn Mandrake systeem, is het te vinden in /usr/share/sgml/docbook/dsssl-stylesheets-1.57/print/.
Ik neem hierbij aan dat in je kernel ondersteuning voor PPP + TCP/IP is gecompileerd, dat loopback is geactiveerd en dat je het package pppd correct hebt geïnstalleerd, en naar wens setuid root ingesteld. Uiteraard moet je ISP PPP ondersteunen.
Er zijn nu twee manieren om PPP werkend te krijgen: a) handmatige configuratie, en b) een configuratieprogramma dat het automatisch herkent. Welke optie je ook kiest, zorg dat je de volgende informatie bij de hand hebt:
het telefoonnummer van je ISP;
de naam van je ISP, het adres van de mail- en newsserver;
het domein van je ISP;
je gebruikersnaam en wachtwoord.
Een handmatige configuratie is een saai werkje. Het heeft te maken met het bewerken van bestanden en schrijven van scripts; niet al te veel werk, maar je maakt makkelijk fouten en nieuwkomers voelen zich vaak geïntimideerd. De PPP-HOWTO is er voor je. Als alternatief bestaan er tools die je om bovenstaande informatie vragen en al het werk voor je doen.
In Gnome en KDE zijn respectievelijk gnome-ppp en kppp opgenomen welke eenvoudig genoeg zijn in te stellen. Als alternatief raad ik je aan eens te kijken naar een paar op tty gebaseerde tools, zoals wvdial en eznet. Je geeft ze het telefoonnummer van je ISP, je gebruikersnaam, je wachtwoord en het werkt. De homepages van deze tools zijn te vinden op http://www.worldvisions.ca/wvdial en http://www.hwaci.com/sw/eznet. Beiden zijn uitstekend, maar ik geef de voorkeur aan de laatste.
Maak als eerste als volgt /etc/resolv.conf aan:
nameserver w.x.y.z |
waar je het adres van de nameserver van je ISP invoegt. Om een account aan te maken met eznet, voer je de volgende opdracht uit:
#~ eznet add service=YOUR_ISP user=NAME password=PASSWORD phone=PHONE |
waarmee het bestand /var/eznet/eznet.conf, wordt aangemaakt met als eigenaar root.root met de permissies 600; chmod het naar 666 als je wilt dat het voor iedereen leesbaar is. Bel nu je ISP met eznet up JE_ISP. Als de modem blijft wachten op de beltoon en het geen verbinding maakt, probeer dan eens deze opdracht:
#~ eznet change JE_ISP init0=atx3 |
De opdracht om op te hangen is eznet down. Dat is alles!
Om je mail op te halen vanaf een POP3 server, heb je een POP-client nodig. Meestal vereisen dergelijke clients dat je een MTA zoals sendmail, qmail of postfix draait; wat overbodig voor een eenvoudige machine. Er zijn echter clients die zonder MTA werken. De eerste soort wordt goed vertegenwoordigd door fetchmail; de tweede door fetchpop of frenchie. Sites: ftp://metalab.unc.edu/pub/Linux/system/mail/pop, http://www.lowcountry.com/~jscottb/tcltk.shtml.
Om deze clients te configureren:
fetchpop: de eerste keer dat je het draait, zul je om wat informatie worden gevraagd. Beantwoord de vragen en klaar is kees. fetchpop moet worden gebruikt met de switch -r als je POP3-server de opdracht LAST niet juist implementeert.
frenchie: als hierboven, bewerk /.frenchie/frenchierc;
fetchmail: pas het volgende voorbeeld van .fetchmailrc aan:
# $HOME/.fetchmailrc poll mbox.myisp.com with protocol pop3; user john there with password _Loo%ny is john here |
Wellicht dat je jezelf wilt beschermen tegen spam of zeer omvangrijke mailberichten. Er zijn twee situaties: 1) permanente verbinding met het net, 2) een POP link. In het eerste geval kun je een .procmailrc bestand schrijven, terwijl je in het tweede geval tools kunt gebruiken die de mail controleren voordat je ze ophaalt.
Een zeer simpel .procmailrc waarin een paar regels worden gedefinieerd:
# $HOME/.procmailrc MAILDIR=$HOME/mail # make sure it exists # Sla berichten gericht aan de "foo" mailing list op in $HOME/mail/foo :0 * ^To:.*foo foo # Verwerp berichten die niet expliciet naar mij of iemand van de mailing list # waarop ik me heb ingeschreven, zijn gezonden. :0 * !^TO(guido|jed|lugvr|ldp|nobody) /dev/null # ditto, voor meldingen groter dan 50k. :0 * > 50000 /dev/null |
man procmailex voor meer voorbeelden.
POP gebruikers willen wellicht gebruik maken van poppy, een handig Perl-script voor het controleren van de mail voordat het wordt opgehaald. Haal het op vanaf ftp://metalab.unc.edu/system/mail/pop.
Kom op, het is niet meer zo moeilijk als het ooit was... In alle distributies is een tool opgenomen om X11 in te stellen (b.v. XConfigurator, sax, XF86Setup, of toch op z'n minst xf86config). Tegenwoordig gaat de configuratie van X vrijwel automatisch, maar een paar videokaarten kunnen je hoofdpijn bezorgen.
Kijk als eerste op de XFree86 site ( ftp://metalab.unc.edu/system/mail/pop) of je videokaart wordt ondersteund. Probeer deze procedure als je kaart wordt ondersteund:
installeer de gewone VGA-server:
ga naar ftp://ftp.XFree86.org/pub/XFree86/current/binaries, cd naar de juiste Linux subdirectory, en download de archieven X_version_bin.tgz, X_version_set.tgz, en alle servers. Tussen al deze programma's bevindt zich in het eerste archief het meeste bijgewerkte programma SuperProbe;
pak X_version_bin.tgz uit in een tijdelijke directory, cd naar deze directory, en start ./SuperProbe. Als je videokaart wordt herkend, dan bestaat de kans dat je het in kunt stellen. Anders, pech gehad;
installeer de servers en X_version_set.tgz vanuit /usr/X11R6/, start vervolgens XF86Setup op.
Bij mij heeft dit altijd gewerkt, maar het kan zijn dat het voor jou niet geldt. De meeste keren zal X11 niet op willen starten omdat je de onjuiste specs voor je monitor koos! Begin met conservatieve instellingen, d.w.z. 800x600 met 256 kleuren, en verhoog het dan langzamerhand. Waarschuwing: deze bewerkingen zijn niet zonder gevaar en je monitor kan er door worden beschadigd!
Als je kaart niet wordt ondersteund, dan kun je: 1) wachten op een volgende versie van XFree86; 2) een commerciële X-server kopen; 3) een ondersteunde videokaart kopen.
Er zijn twee manieren om X11 op te starten: vanaf de console via startx, of direct via /etc/inittab.
We hebben gezien hoe we een paar speciale toetsen werkend kregen. Het voorbeeldbestand .Xmodmap werkt goed als je Xjed wilt gebruiken, maar het maakt het toetsenblok onbruikbaar. Je hebt in dat geval een ander configuratiebestand nodig, wat we .Xmodmap.num zullen noemen:
! Definities zijn te vinden in <X11/keysymdef.h keycode 77 = Num_Lock keycode 112 = KP_Divide keycode 63 = KP_Multiply keycode 82 = KP_Subtract keycode 86 = KP_Add keycode 79 = KP_7 keycode 80 = KP_8 keycode 81 = KP_9 keycode 83 = KP_4 keycode 84 = KP_5 keycode 85 = KP_6 keycode 87 = KP_1 keycode 88 = KP_2 keycode 89 = KP_3 keycode 90 = KP_0 keycode 91 = KP_Decimal |
Zorg dat in /etc/X11/XF86Config de volgende drie regels niet zijn opgenomen:
ServerNumLock Xleds XkbDisable |
en wanneer ze er wel in staan, plaats er dan een commentaarteken voor. Om het toetsenblok te reactiveren, geef je de opdracht xmodmap .Xmodmap.num.
Om te worden begroet door een grafische login, bewerk je het bestand /etc/inittab, waarin en regel als de volgende moet worden opgenomen:
x:5:respawn:/usr/bin/X11/xdm -nodaemon # ookwel kdm of gdm |
waar de 5 staat voor het runlevel corresponderend met X11. Pas de regel aan waarin het standaard runlevel wordt gedefinieerd, (gewoonlijk 2 of 3) waarbij je het wijzigt zoals in:
id:5:initdefault: |
Het aantal kleuren wordt opgegeven in /etc/X11/xdm/Xserver:
:0 local /usr/X11R6/bin/X :0 -bpp 16 vt07 # eerste X server, 65k kleuren :1 local /usr/X11R6/bin/X :1 -bpp 32 vt08 # tweede X server, ware kleuren |
Wanneer .xinitrc reeds op je systeem voorkomt, kopieer je het naar .xsession en maak je dit laatste bestand uitvoerbaar met chmod +x .xsession. Geef nu de opdracht telinit 5 en klaar is kees.
Als X eenmaal werkt, zijn er eindeloze configuratiemogelijkheden; het hangt af van de window manager die je gebruikt, er zijn er tientallen om uit te kiezen. Meestal komt het allemaal neer op het wijzigen van één of meer ASCII-bestanden in je homedirectory; in andere gevallen hoef je helemaal niets te bewerken, en gebruik je een applet of slechts een menu.
Een aantal voorbeelden:
de fvwm familie: kopieer /etc/X11/fvwm/system.fvwmrc (of vergelijkbaar) naar je home, blader erdoor heen en begin te experimenteren. Wellicht dat je heel wat tijd zult verspillen voordat je de precieze look en feel krijgt die je wilt;
WindowMaker: er zijn verscheidene configuratiebestanden voor die te vinden zijn onder $HOME/GNUstep, en er is een te gek configuratie-applet;
KDE, Gnome, xfce en anderen: hier valt niets handmatig te bewerken, alles kan worden uitgevoerd via het menu.
Samengeval: als je het niet erg vindt, een configuratiebestand te bewerken, kies dan iets als icewm, fvwm*, blackbox enz; als je dat wel erg vindt, is de keuze thans beperkt tot KDE, Gnome, WindowMaker en Xfce. Email me als ik ernaast zit.
Het is van belang dat je een goed .xinitrc bestand hebt. Een voorbeeld:
#!/bin/sh # $HOME/.xinitrc usermodmap=$HOME/.Xmodmap xmodmap $usermodmap xset s noblank # zet de schermbeveiliging uit xset s 300 2 # start de schermbeveiliging na 5 min xset m 10 5 # stel de mouse acceleratie in rxvt -cr green -ls -bg black -fg white -fn 7x14 \ -geometry 80x30+57+0 & if [ "$1" = "" ] ; then # default WINMGR=wmaker else WINMGR=$1 fi $WINMGR |
Alhoewel het strict genomen niet noodzakelijk schijnt te zijn, maak je het uitvoerbaar met chmod +x .xinitrc.
Het bestand .xinitrc van hierboven laat je de window manager kiezen: probeer eens
$ startx startkde # of een andere w.m. |
Zoek uit waar de app-defaults directory is (het zou /usr/X11R6/lib/X11/app-defaults moeten zijn). Hier bewaren verscheidene applicaties een configuratiebestand.
Recente versies van XFree86 (laten we zeggen > 3.3.4) maken gebruik van een X Font Server welke PostScript Type 1 en True Type fonts van nature ondersteunen, dus kun je de rijkdom aan beschikbare lettertypen op het net gebruiken. Hier is een simpel te volgen procedure:
Veronderstel dat je een Type 1 lettertypeverzameling downloadde, zoals b.v. Freefont ( ftp://ftp.gimp.org/pub/gimp/fonts/freefonts-0.10.tar.gz ). Om het zichtbaar te maken voor de fontserver, pak je het archief uit in /usr/X11R6/lib/X11/fonts/. Bewerk dan /etc/X11/fs/config, voeg een regel toe voor de nieuwe directory en herstart de fontserver.
Wanneer je een eigen lettertypeverzameling samenstelt, dan moet je de bestanden fonts.dir en fonts.scale toevoegen; het hulpmiddel waarmee je deze bestanden aan kunt maken is type1inst, beschikbaar vanaf http://http://goblet.anu.edu.au/~m9305357/type1inst.html .
Net als bij de True Type lettertypen, groepeer je ze in een directory naar keuze en maak je fonts.dir aan met ttmkfdirfonts.dir, opgenomen in het Freetype archief; http://www.freetype.org . Ga dan verder zoals hierboven beschreven. Als je bijvoorbeeld de Windows fonts wilt, die je reeds hebt in stel /mnt/win/windows/fonts, ga dan naar die directory, start ttmkfdir, bewerk /etc/X11/fs/config en herstart de fontserver.
Het begon allemaal met de oorspronkelijke True Type X font server: http://http://www.dcs.ed.ac.uk/home/jec/programs/xfsft/ .
Wanneer je klaar bent met het bewerken van de dot bestanden, kopieer ze dan naar /etc/skel zoals te zien in sectie paragraaf Software Configuratie.
rpm is zo'n prachtige methode om packages onder beheer te houden dat ik met weerzin .tar.gz archieven installeer, behalve in slechts een paar speciale gevallen (b.v., beveiliging). Als je ooit een tarball installeert, overweeg het dan om te zetten in een .rpm archief, en herinstalleer het dan; raadpleeg de RPM HOWTO. Het is bovendien aan te raden om het volgende in /etc/rpmrc te plaatsen als je gebruik maakt van recente gcc versies:
optflags: i386 -O2 -mpentiumpro |
Als je je machine upgrade, maak dan zoals gewoonlijk een backup en denk eraan wat extra bestanden te bewaren. Een aantal daarvan zouden kunnen zijn /etc/X11/XF86Config, /usr/bin/fax, alles in /usr/local, de kernelconfiguratie, de gehele /etc directory, en alle mail in /var/spool/mail.
Dan is het tijd de applicaties te upgraden (in zeldzame gevalllen te downgraden!) waarmee je distributie wordt geleverd en om extra packages toe te voegen. Houd hiervan een lijst bij.