Waarom deze HOWTO
Huidige distributies naderen de perfectie, maar fijnafstemming is nog steeds
nodig. Veel gebruikers voelen zich geïntimideerd door de schijnbare
complexiteit van een Linux-systeem, en als resultaat bemerkte ik dat in
c.o.l.setup steeds weer dezelfde vragen werden gesteld. Om wat aan deze
situatie te doen en voor mijn eigen gemak, schreef ik deze te-doen lijst
welke leidde tot deze HOWTO. Je vindt hierin configuratietips en voorbeelden
voor de meest gebruikelijke applicaties, programma's en services, die je
een tamelijke hoeveelheid tijd en werk kunnen besparen.
Ik realiseer me dat deze HOWTO nogal op RedHat is gebaseerd. Ik heb
thans slechts toegang tot RedHat en Mandrake computers, met kernels
variërend van 2.0.36 tot 2.2.15; dus behandel mijn tips niet als
heilig als je andere distributies hebt. In voorgaande versies van deze
HOWTO stond wat informatie voor SuSE, Debian en Caldera; maar aangezien
ik niet langer toegang heb tot die computers, kan ik de details niet
bijgewerkt houden. Geen informatie is beter dan niet accurate informatie,
dus is het aan jou mijn tips aan je distributie aan te passen.
Deze HOWTO kan niet, en is niet bedoeld om anderen te vervangen. Het lezen
van docs en HOWTO's betaalt zich altijd terug, dus het wordt je ten zeerste
aanbevolen, dit te doen. Bovendien wordt het je hier niet voorgekauwd: als
je je realiseert dat je iets niet begrijpt, raadpleeg dan de relevante HOWTO.
Laat me je er aan herinneren dat Usenet de juiste plaats is om naar hulp
betreffende de configuratie van Linux te zoeken, d.w.z.
. Zoek alsjeblieft geen
hulp bij mij, want ik ben al tamelijk overbeladen.
De officiële plaats voor dit document waar tevens alle andere HOWTO's
en een aantal vertalingen, waar ik naar refereer worden gehost, is
.
Wat we zullen gaan configureren
Er bestaan eindeloze hardware configuraties voor een PC, maar in mijn
ervaring is er één zeer gebruikelijk: een PC met daarin een
grote HD gesplitst in drie partities (één voor DOS/Windows,
één voor Linux, één voor swap), geluidskaart,
modem, CD-ROM station, printer, muis. Ook een parallelle poort Zip-drive
is zeer algemeen. Deze computer maakt mogelijk deel uit van een gemengd
Windows-Linux netwerk, waarbij het als een server fungeert.
Ik ga ervan uit dat je deze hardware zal willen configureren, maar de
volgende tips zijn eenvoudigweg aan verschillende configuraties aan te
passen. Er zal impliciet vanuit worden gegaan dat je root zult zijn tijdens
het editen/herstellen/hacken.
En nu jongens, stroop je mouwen op.
Algemene Systeemsetup
Een paar woorden over beveiliging
Zelfs voordat je het systeem boot, zou je een beslissing moeten hebben
genomen over welk beveiligingsniveau je wilt implementeren. Verbind om mee te
beginnen je computer niet met het netwerk voordat je besloten
hebt wat je zal gaan doen.
Beveiliging is een veelomvattend onderwerp dat buiten het kader van deze
HOWTO valt; twee goede plaatsen om mee te beginnen zijn de
Linux Security Administrator's Guide op en de Linux Security Guide op
. Je zou
op z'n minst de volgende stappen in overweging moeten nemen:
het gebruik van shadow passwords (Shadow
Password HOWTO), het beperken van netwerktoegang tot de computer (Sectie
[), het gebruik van
de Secure Shell (]) of het Secure Remote
Password (). Veel succes.
Begin een logboek!
Om je installatie in vorm te houden, is het essentieel dat je
exact weet wat er op je computer heeft plaatsgevonden, welke packages
je die dag installeerde, wat je verwijderde of wijzigde, enzovoort.
Dus het eerste dat je zal doen voordat je aan je computer komt, is het
beginnen van een ``logboek''. Daarin zal je alles vermelden
van de stappen die je als root maakt; in mijn eigen logboek hou ik ook
een sectie bij van alle gewijzigde systeembestanden en extra .rpms,
en .tar.gz die ik installeerde. In de optimale situatie zou je bij
het teruggaan van al je stappen je installatie terug moeten kunnen
verkrijgen.
Maak een backup van de systeembestanden die je wijzigt. Of nog beter, maak
gebruik van RCS; je zal alle wijzigingen terug kunnen vinden. Werk nooit
als root zonder je stappen vast te leggen!
Toetsenbord
Als je deze stap tijdens de installatie hebt gemist of inmiddels een
ander toetsenbord hebt, zal je:
- naar een passende toetsentabel moeten zoeken, te beginnen bij
/usr/lib/kbd/keymaps/i386 ; bijvoorbeeld,
querty/it-latin1.kmap.gz biedt ondersteuning voor het Italiaanse
toetsenbord;
- wijzig het bestand
/etc/sysconfig/keyboard zodat er
staat:
KEYTABLE="it-latin1" ;
- voor het instellen van de keyboard repeat rate (herhalingssnelheid)
en delay time (vertragingstijd) voeg je de volgende regel toe aan
/etc/rc.d/rc.sysinit :
/sbin/kbdrate -s -r 16 -d 500 # of wat je ook wilt
Roep
/etc/rc.d/init.d/keytable start
aan voor het laden van de toetsentabel. In de volgende secties zullen
andere speciale toetsen aan bod komen. Voeg voor het standaard activeren
van de NumLock toets de volgende regels toe aan
/etc/rc.d/rc.sysinit :
for tty in /dev/tty[1-9]*; do
setleds -D +num < $tty
done
Normaal gesproken wordt er onder de Linux console geen onderscheid gemaakt
in bijvoorbeeld de pijltjestoets en combinatie van de Shift- en pijltjestoets,
maar een aantal applicaties (zoals bijvoorbeeld de editor [) doen dit wel. Normaal gesproken zijn dergelijke key bindings
alleen beschikbaar in een xterm. De volgende key map, die je naar keuze
tijdens de systeemstart kunt laden, is daarbij erg handig:
]
# Laad deze keymap met: loadkey shift.map
# Shift + Up
shift keycode 103 = F100
string F100 = "\033[a"
# Shift + Left
shift keycode 106 = F101
string F101 = "\033[c"
# Shift + Right
shift keycode 105 = F102
string F102 = "\033[d"
# Shift + Down
shift keycode 108 = F103
string F103 = "\033[b"
# Ctrl + Ins
control keycode 110 = F104
string F104="\033[2^"
# Shift + Ins
shift keycode 110 = F105
string F105="\033[2$"
# Shift + PgUp
shift keycode 104 = F106
string F106 = "\033[5$"
# Shift + PgDn
shift keycode 109 = F107
string F107 = "\033[6$"
# Shift + Home
shift keycode 102 = F108
string F108 = "\033[1$"
# Shift + End
shift keycode 107 = F109
string F109 = "\033[4$"
# Shift + Del
shift keycode 111 = F110
string F110 = "\033[3$"
# Ctrl + Del
control keycode 111 = F111
string F111 = "\033[3^"
Boot- en Rescue-diskette
Maak voor een nieuw geïnstalleerd systeem een paar bootdiskettes.
In je distributie kan een opdracht voor het aanmaken van een dergelijke
diskette zijn opgenomen (zoals bijvoorbeeld mkbootdisk of iets
dat daarop lijkt); zo niet, dan kun je de volgende opdrachten gebruiken:
#~ dd if=/boot/vmlinuz-2.0.36-0.7 of=/dev/fd0 # gebruik je kernel-image
#~ rdev /dev/fd0 /dev/hda2 # je Linux root partitie
Zorg er bovendien voor dat je een paar rescue-disks bij de hand hebt.
Er is veel keuze in rescuedisks op
;
als je niet weet welke te kiezen, raad ik je aan Tomsbtrt uit te proberen,
de homepage daarvan is te vinden op .
Het is zeer compleet, maar een aantal utility's lijken in eerste instantie
te ontbreken; ftp staat er niet op, maar daarvoor in de plaats
krijg je nc . Lees alsjeblieft de bijbehorende documentatie.
Kernelzaken
IMHO is het eerste dat je vervolgens zou moeten doen een kernel te bouwen
die het beste bij je systeem past. Het is zeer eenvoudig te doen, maar raadpleeg
in elk geval, het bestand README in /usr/src/linux/ of
de Kernel HOWTO.
Hints:
- overweeg zorgvuldig wat je nodig hebt. Het uitkiezen van een
kernelconfiguratie, toepassen van de patches en het voor eens en voor
altijd compileren is productiever dan het iedere maand herconfigureren
en compileren; dit is vooral waar als je Linux-box een server is.
Vergeet niet de ondersteuning voor alle hardware die je waarschijnlijk
in de toekomst toe zult voegen, op te nemen (b.v. SCSI, Zip, netwerkkaarten,
enz); gebruik van modules is gewoonlijk de beste keuze;
- notebook gebruikers: als je van plan bent een PCMCIA modem/fax
te gaan gebruiken, denk er dan aan seriële ondersteuning
in de
kernel te compileren. Compileer het niet als een module want dan
zal je PCMCIA modem niet werken;
- denk er aan alles wat je nodig hebt te compileren; d.w.z. vergeet
de pcmcia modules of de ALSA geluidsdrivers niet;
- om de volgende keer dat je de kernel herconfigureert en hercompileert
tijd te besparen is het een goed idee je configuratie naar een bestand
weg te schrijven en het op een veilige plaats te bewaren. Als je de kernel
upgrade en gebruik maakt van ``make oldconfig'', zal je oude config bestand
worden genomen en voor alle niet opgenomen features zal worden gevraagd of
ze moeten worden opgenomen, wat resulteert in een nieuw, bijgewerkt config
bestand.
Hard Disk Performance
De performance van je (E)IDE harddisk kan enorm worden verbeterd door
zorgvuldig gebruik te maken van hdparm (8).
Als het niet in je Linux distributie is opgenomen, kun je het vinden
op ; zoek naar
een bestand met de naam hdparm-X.Y.tar.gz .
Aangezien veel details afhankelijk zijn van je harddisk en HD-controller,
kan ik je geen algemene richtlijnen geven. Je riskeert je bestandssysteem
te roosteren, dus lees de manpage zorgvuldig door voordat je
een aantal van de opties gaat gebruiken. Op z'n eenvoudigst zou je de
volgende regel aan /etc/rc.d/rc.sysinit toe kunnen voegen:
/sbin/hdparm -c1 /dev/hda # uitgaande van de eerste IDE-drive
waarmee (E)IDE 32-bit I/O ondersteuning wordt geactiveerd.
Betreft de `-m ' optie,
emailde de auteur Mark Lord van hdparm me het volgende:
(...) als je systeemcomponenten van de afgelopen paar jaar
[< 1997], gebruikt, zal het goed gaan. Er *zou* een probleem
op kunnen treden (onwaarschijnlijk) met oudere componenten.
De werkelijke fouten bevattende chips waren de CMD0646 en
RZ1000 chips, die *op grote schaal* op 486 en (eerdere) 586 moederborden
van ongeveer 2-3 jaar geleden werden gebruikt.
Voor recente computers, zouden deze instellingen prima moeten werken:
/sbin/hdparm -c1 -A1 -m16 -d1 /dev/hda
Parallelle Poort Zip Drive
In stock kernels is zowel de driver voor de oude (ppa) als de nieuwe
(imm) Zip-drives ingesloten. Als je de kernel opnieuw compileert, zorg
er dan voor dat SCSI-ondersteuning en SCSI-diskondersteuning zijn
geactiveerd. Denk er aan dat er conflicten op kunnen treden tussen de
printer en de Zip drive als ze beiden op dezelfde parallelle poort zijn
aangesloten, dus je kunt beter kernelmodules gebruiken.
Zip disks worden op partitie /dev/sda4 voorgeformatteerd
verkocht. Voeg het volgende toe aan /etc/rc.d/rc.sysinit
om de Zip te activeren:
# Activeer de Zip-drive
/sbin/modprobe ppa # imm voor recente modellen
Zip disks kunnen zoals hieronder wordt getoond worden gemount via
/etc/fstab , of via Mtools door het toevoegen van de
volgende regel aan het bestand /etc/mtools.conf :
drive z: file="/dev/sda4" exclusive
bovendien maakt de opdracht mzip het mogelijk de status te
ondervragen, de ZIP-disks eruit te werpen, en met een wachtwoord te
beveiligen; zie man mzip voor details.
De Mtools home page is te vinden op
.
Device Drivers
Devices in /dev (of nog beter, koppelingen naar de feitelijke
device drivers) kunnen ontbreken. Controleer met welke devices je
muis, modem, en CD-ROM drive corresponderen, en geef vervolgens de
opdracht:
~# cd /dev
/dev# ln -s ttyS0 mouse; ln -s ttyS1 modem; ln -s hdb cdrom; ln -s sda4 zip
In de meeste notebooks is /dev/psaux het mouse device: houd
hier bij het configureren van X11 rekening mee. Als je dit wenst, pas
dan een chmod 666 toe op deze devices waardoor ze voor iedere
gebruiker volledig toegankelijk zullen zijn.
Geluidskaart
Mijn desktop PC is voorzien van een oude Sound Blaster 16; zelfs als je
iets anders hebt, kun je het volgende als leidraad nemen.
Ik compileerde de ondersteuning voor de geluidskaart als een module
(sb.o ).
Vervolgens plaatste ik dit in /etc/conf.modules :
options sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330
alias sound sb
Zorg voor het activeren van het geluid dat modprobe sound
in /etc/rc.d/rc.sysinit wordt aangeroepen.
Haal als alternatief de tool sndconfig van de site van
RedHat.
Naast de standaardkernel geluidsdrivers zijn de Alsa drivers
() een uitstekende keuze.
Vreemd genoeg echter zijn de geluidskanalen standaard gedempt.
Gebruik aumix en het bestand /etc/aumixrc
om het volume op 100% in te stellen:
vol:100:100:P
synth:100:100:P
pcm:100:100:P
line:100:100:P
mic:100:100:R
cd:100:100:P
Login meldingen
Als je de loginmeldingen aan wilt passen, kijk dan of je
/etc/rc.d/rc.local het bestand /etc/issue en
/etc/motd overschrijft. (RedHat doet dit)
Als dit zo is, haal je editor dan voor de dag.
Als je een login melding in kleur wilt, kun je rc.local
zodanig aanpassen door er regels in te voegen als:
# plaats een echt escape teken in plaats van ^[. Dit doe je in:
# emacs met: ^Q ESC in vi met: ^V ESC in joe met: ` 0 2 7 in jed met: ` ESC
ESC="^[" # een echt escape character
BLUE="$ESC[44;37m"
NORMAL="$ESC[40;37m"
CLEAR="$ESC[H$ESC[J"
> /etc/issue
echo "$CLEAR" >> /etc/issue
echo "$BLUE Welkom op MijnServer (192.168.1.1) " >> /etc/issue
echo "$NORMAL " >> /etc/issue
echo "" >> /etc/issue
Hostnaam
Mogelijk is het uitvoeren van de opdracht hostname nieuwe_host_naam
niet genoeg. Volg de volgende stappen op om het geduchte vastlopen van
sendmail te voorkomen, (alleen van toepassing op een
stand-alone computer):
- wijzig
/etc/sysconfig/network en verander daarin de hostnaam
(b.v. je.nieuwe.domeinnaam );
- wijzig
/etc/HOSTNAME dienovereenkomstig;
- voeg de nieuwe hostnaam toe aan de regel in
/etc/hosts :
127.0.0.1 localhost je.nieuwe.domeinnaam
Muis
gpm mouse services zijn handig voor het knippen en plakken in
tty mode, en om de muis in een aantal applicaties te gebruiken.
Zorg dat je een bestand genaamd /etc/sysconfig/mouse hebt en
dat hierin staat:
MOUSETYPE="Microsoft"
XEMU3=yes
Bovendien heb je een bestand /etc/rc.d/init.d/gpm nodig waarin
je aanvullende opdrachtregel parameters plaatst. In de mijne staat:
...
daemon gpm -t $MOUSETYPE -d 2 -a 5 -B 132 # twee-knops muis
...
Uiteraard dien je ervoor te zorgen dat deze configuratie juist is voor je
muis. In de meeste notebooks, is
MOUSETYPE ``PS/2 ''.
Als je onder de console graag menu's gebruikt met Ctrl-knop, configureer
dan gpm-root . Wijzig het standaardmenu in
/etc/gpm-root.conf ,
en start vanuit /etc/rc.d/rc.local gmp-root op.
Mount Points
Het is handig om mountpoints voor de diskette, andere devices en via
NFS geëxporteerde directory's te hebben. Je kunt bijvoorbeeld het
volgende doen:
~# cd /mnt; mkdir floppy cdrom win zip server
Hiermee worden mountpoints voor een DOS/Win diskette, de CD-ROM, de
Windows partitie, de parallelle poort Zip-drive en een NFS directory
aangemaakt.
Wijzig nu het bestand /etc/fstab en voeg daaraan de
volgende regels toe:
/dev/fd0 /mnt/floppy auto user,noauto 0 1
/dev/cdrom /mnt/cdrom iso9660 ro,user,noauto 0 1
/dev/zip /mnt/zip vfat user,noauto,exec 0 1
/dev/hda1 /mnt/win vfat user,noauto 0 1
server:/export /mnt/server nfs defaults
Uiteraard moet je in het eerste veld het juiste device gebruiken.
Let op het type bestandssysteem `auto' in de eerste regel; dit maakt het
mogelijk zowel ext2 als vfat (DOS/Windows) diskettes te mounten, maar
je hebt een recente versie van mount nodig.
Wellicht dat je de mtools prettiger vindt.
Automount Points
Als je het mounten/unmounten niet prettig vindt, overweeg dan het gebruik
van autofs (5). Je geeft de autofs daemon op wat automatisch te
mouten en waar te beginnen met het bestand, /etc/auto.master .
De structuur ervan is eenvoudig:
/misc /etc/auto.misc
/mnt /etc/auto.mnt
In dit voorbeeld geef je autofs op de media in /misc en
/mnt automatisch te mounten, waarvan de mountpoints zijn opgegeven
in /etc/auto.misc en /etc/auto.mnt . Een voorbeeld
van /etc/auto.misc :
# een NFS export
server -ro my.buddy.net:/pub/export
# verwijderbare media
cdrom -fstype=iso9660,ro :/dev/hdb
floppy -fstype=auto :/dev/fd0
Start de automounter. Van nu af aan, zal wanneer je een niet bestaand mount
point /misc/cdrom probeert te benaderen, het worden aangemaakt en
zal de CD-ROM worden gemount.
lilo(8) en LOADLIN.EXE
Veel gebruikers draaien zowel Linux als DOS/Windows op hun PC en willen
tijdens de systeemstart kiezen welk os ze zullen gaan gebruiken;
dit zou tijdens de installatie moeten zijn geregeld, maar slechts voor
het geval dat, doe je wat hierna volgt. Laten we er hierbij vanuit gaan
dat /dev/hda1 de DOS/Windows drive is en /dev/hda2
Linux.
~# fdisk
Using /dev/hda as default device!
Command (m for help):a
Partition number (1-4): 2
Command (m for help):w
~#
Hiermee wordt de Linux-partitie opstartbaar gemaakt. Schrijf vervolgens dit
basis /etc/lilo.conf bestand:
boot = /dev/hda2
compact # kan een conflict opleveren met "linear"
delay = 100 # 10 seconden
linear # voor het afgeraken van het "1024 cylinder" probleem
message = /boot/bootmesg.txt # schrijf er zelf een als je dat wilt
root = current
image = /boot/vmlinuz # boot standaard linux als dit het eerste record is
label = linux
read-only
# append="mem=128M" # om meer geheugen dan 64M te zien
other = /dev/hda1
table = /dev/hda
label = win
Roep nu /sbin/lilo aan en je bent klaar. Omdat lilo
een kritiek onderdeel van je installatie uitmaakt, wordt je sowieso
geadviseerd de documentatie ervan te lezen.
Om Linux vanuit DOS/Windows zonder een reset te booten, plaats je
LOADLIN.EXE in een directory (in de DOS-partitie!) opgenomen in
het DOS-path; kopieer dan de kernel naar, laten we uitgaan van,
C:\TEMP\VMLINUZ . Het volgende eenvoudige
bestand zal Linux booten:
rem linux.bat
smartdrv /C
loadlin c:\temp\vmlinuz root=/dev/hda2 ro
Als je Windows 9x gebruikt, stel de eigenschappen van deze .BATch dan
zo in dat Windows in MS-DOS mode start.
Beveiligingstip
Het maken van een backup van je MBR vóór het installeren van Linux is een
veilige stap. Prepareer een Windows rescue-diskette, en zorg ervoor dat
hierop FDISK.EXE is geplaatst.
Voor het herstellen van de MBR, geef je de opdracht
A:\> fdisk /mbr
Printer Configuratie
Alle distributies die ik ken hebben een configuratietool voor het
instellen van de printer (printtool , yast , of
magicfilter ); als je het niet hebt, is hier de basis van een handmatige
configuratie.
Laten we ervan uitgaan dat je geen PostScript printer hebt (en ook geen
printer die alleen voor Windows is bestemd!) welke je wilt gebruiken om
onopgemaakte tekst op af te drukken (zoals b.v.. C bronbestanden) en
PostScript bestanden via Ghostscript, waarbij wordt verondersteld dat dit
reeds is geïnstalleerd.
Het instellen van de printer beslaat een paar stappen:
- zoek uit wat het parallelle afdrukdevice is: probeer
~# echo "hello, world" > /dev/lp0
~# echo "hello, world" > /dev/lp1
en neem in acht welke werkt.
- maak twee spooldirectory's aan:
~# cd /var/spool/lpd
/var/spool/lpd/# mkdir raw; mkdir postscript
- als je printer neigt naar het ``staircase effect'' (dit geldt voor
de meeste inktjets) heb je een filter nodig.
Probeer twee regels af te drukken met
~# echo "eerste regel" > /dev/lp1 ; echo "tweede regel" > /dev/lp1
en als de uitvoer er ongeveer zo uitziet:
eerste regel
tweede regel
bewaar dit script dan als /var/spool/lpd/raw/filter :
#!/bin/sh
# Dit filter elimineert het "staircase effect"
awk '{print $0, "\r"}'
en maak het uitvoerbaar met chmod 755 /var/spool/lpd/raw/filter .
- maak een filter voor PostScript emulatie. Schrijf het volgende filter
weg als
/var/spool/lpd/postscript/filter :
#!/bin/sh
DEVICE=djet500
RESOLUTION=300x300
PAPERSIZE=a4
SENDEOF=
nenscript -TUS -ZB -p- |
if [ "$DEVICE" = "PostScript" ]; then
cat -
else
gs -q -sDEVICE=$DEVICE \
-r$RESOLUTION \
-sPAPERSIZE=$PAPERSIZE \
-dNOPAUSE \
-dSAFER \
-sOutputFile=- -
fi
if [ "$SENDEOF" != "" ]; then
printf "\004"
fi
(in dit voorbeeld werd uitgegaan van een HP DeskJet printer. Pas het aan je
printer aan).
- voeg tenslotte de volgende regels toe aan
/etc/printcap :
# /etc/printcap
lp|ps|PS|PostScript|djps:\
:sd=/var/spool/lpd/postscript:\
:mx#0:\
:lp=/dev/lp1:\
:if=/var/spool/lpd/postscript/filter:\
:sh:
raw:\
:sd=/var/spool/lpd/raw:\
:mx#0:\
:lp=/dev/lp1:\
:if=/var/spool/lpd/raw/filter:\
:sh:
Voor complexere of exotischer afdrukconfiguraties is er een Printing-HOWTO.
Als je printtool gebruikt, wees je er dan van bewust dat het
GSDEVICE door Printtool uitgekozen wel zal werken, maar dat het niet
noodzakelijkerwijs het beste is voor je printer. Je zou kunnen overwegen
wat met het bestand te knoeien; ik wijzigde
GSDEVICE bijvoorbeeld van cdj500 in djet500 en nu
komen de afdrukken er veel sneller uit.
SVGATextMode
Dit utility, beschikbaar vanaf
,
is handig voor het wijzigen van de schermresolutie, het font, en de
cursorvorm van de console. Gebruikers wiens taal geaccentueerde tekens
bevat zullen deze in console applicaties kunnen gebruiken, terwijl
notebook gebruikers de cursorvorm zodanig kunnen veranderen dat deze
beter zichtbaar is.
Wijzig /etc/TextConfig of /etc/TextMode , te
beginnen met de standaard VGA definitie. Europeanen zullen verheugd zijn
met deze ``LoadFont'' sectie:
Option "LoadFont"
FontProg "/usr/bin/setfont"
FontPath "/usr/lib/kbd/consolefonts"
FontSelect "lat1u-16.psf" 8x16 9x16 8x15 9x15
FontSelect "lat1u-14.psf" 8x14 9x14 8x13 9x13
FontSelect "lat1u-12.psf" 8x12 9x12 8x11 9x11
FontSelect "lat1u-08.psf" 8x8 9x8 8x7 9x7
Probeer zodra je klaar bent, je configuratie met een opdracht als
SVGATextMode "80x34x9" , en als alles prima lijkt te werken,
verwijder dan de waarschuwingsmeldingen uit
/etc/TextMode en neem deze regel op in
etc/rc.d/rc.sysinit :
# SVGATextMode
/usr/sbin/SVGATextMode "80x34x9"
Merk alsjeblieft op dat de blokcursor alleen onder een aantal modussen werkt;
op mijn notebook "80x30x9".
Algemene beheertaken
Hier begint de pret. Deze sectie gaat over netwerken, alhoewel
nog veel andere taken je staan te wachten.
Netwerken beslaan een veelomvattend onderwerp welke hier niet volledig kan
worden behandeld. De referentie hiervoor is de NET-3 HOWTO, en de meeste
distributies voorzien in documentatie over het instellen van netwerkservices.
Slechts een paar punten zullen hier worden belicht.
Een rappe te-doen lijst voor de services die je wellicht wilt installeren:
cron en geplande taken zoals calendar of reminder, Http, Samba
telnet/ssh access, anonymous ftp, POP/IMAP server, NFS...
Netwerkconfiguratie
Als je netwerkkaart tijdens de installatie niet werd herkend, maak je dan
geen zorgen: in de meeste gevallen is het óf compatibel met NE2000
óf 3c59x. Geef de opdracht
modprobe ne of modprobe 3c59x en kijk of de relevante
module is geladen en voeg vervolgens de volgende regel toe aan
/etc/conf.modules :
alias eth0 ne # of 3c59x
Nu ben je zover netcfg of een vergelijkbare tool te gaan gebruiken
om de netwerkconfiguratie in te stellen. De relevante bestanden zijn
/etc/HOSTNAME , etc/hosts ,
/etc/resolv.conf , /etc/sysconfig/network , en
/etc/sysconfig/network-scripts/ifcfg-eth0 ; services, te
vinden in /etc/rc.d/init.d zouden
met scripts moeten worden gestart.
Dit is een voorbeeld van etc/hosts :
127.0.0.1 localhost
192.168.1.1 paleo.eocene.net paleo
192.168.1.2 nautilus.eocene.net nautilus
Dit is een voorbeeld van /etc/resolv.conf :
search df.unibo.it,eocene.net
nameserver 195.210.91.100
Dit is /etc/sysconfig/network (Red Hat-afhankelijk):
NETWORKING=false
FORWARD_IPV4=true
HOSTNAME=nautilus.eocene.net
DOMAINNAME=eocene.net
En tenslotte /etc/sysconfig/network-scripts/ifcfg-eth0 . Ook
dit is Red Hat afhankelijk; het moet uitvoerbaar zijn.
DEVICE=eth0
IPADDR=192.168.1.2
NETMASK=255.255.255.0
NETWORK=192.168.1.0
BROADCAST=192.168.1.255
ONBOOT=no
Alhoewel de werkelijke methode van je distributie om netwerkservices in te
stellen veel complexer kan zijn, zou het volgende script voldoende moeten zijn
om van start te gaan:
#!/bin/sh
# net-up.sh: instellen van netwerktoegang
DEVICE=eth0
IPADDR=192.168.1.100
NETMASK=255.255.255.0
NETWORK=192.168.1.0
GATEWAY=192.168.1.1
ifconfig $DEVICE $IPADDR netmask $NETMASK up
route add -net $NETWORK netmask $NETMASK $DEVICE
route add default gw $GATEWAY
Dit script is handig voor het activeren van netwerktoegang wanneer je
een rescue-disk gebruikt. Uiteraard laat het je alleen naar de
buitenwereld pingen, ftp-en en telnetten; het zal geen daemon opstarten.
Netwerk voor Notebooks
Wanneer je de PC netwerkkaart erin plugt, zal het script
/etc/pcmcia/network worden uitgevoerd. Hiervoor is alleen een
juiste instelling nodig in
/etc/sysconfig/network-scripts/ifcfg-eth0 .
Het instellen van een netwerk kan echter wat lastiger zijn. Je moet in feite
voorzien in de juiste instellingen voor ieder netwerk waar je een verbinding
mee opzet, als ook voor het notebook wanneer het niet met een netwerk is
verbonden.
Ik draaide een globale maar functionele oplossing in elkaar. Ik gebruik mijn
notebook als een stand-alone machine, verbonden met het net via PPP;
thuis met IP-adres
192.168.1.2; en op de universiteit met IP 137.204.x.y. Dus maakte ik
voor ieder netwerk een set configuratiebestanden aan; deze worden bewaard in
/etc/mobnet . Voor het selecteren van een netwerkomgeving wordt
een script gebruikt.
Dit is bijvoorbeeld /etc/mobnet/home.cfg :
# /etc/mobnet/home.conf
HOSTNAME=nautilus.eocene.net # volledige hostnaam
DOMAINNAME=eocene.net # je domein
IPADDR=192.168.1.2
NETMASK=255.255.255.0
NETWORK=192.168.1.0
BROADCAST=192.168.1.255
GATEWAY=192.168.1.1
FORWARD_IPV4=true
NAMESERVER=195.210.91.100 # vereist
SEARCH=df.unibo.it,eocene.net # optioneel
SERVICES="inet httpd smb sshd"
Dit is mnet , het script waar ik gebruik van maak om een
netwerkprofile uit te kiezen:
#!/bin/sh
# mnet: script om de configuratie van het "mobiele netwerk" in te stellen
# Laatst gewijzigd: 15 juli 2000
# start of stop services
activate_services()
{
for service in $(echo $SERVICES) ; do
[ -x /etc/rc.d/init.d/$service ] && /etc/rc.d/init.d/$service $1
done
}
# usage
if [ $# = 0 ] ; then
echo "Gebruik: mnet "
echo "Voorbeeld: mnet office"
exit 1
fi
# controleer of de configuratie voorkomt
if [ ! -e /etc/mobnet/$1.conf ]; then
echo "Deze configuratie bestaat niet."
exit 1
fi
# lees de configuratie in
. /etc/mobnet/$1.conf
# stel de hostnaam in
echo $HOSTNAME > /etc/HOSTNAME
/bin/hostname $HOSTNAME
# stel de naamserver(s) in
cat < /etc/resolv.conf
# /etc/resolv.conf
search $SEARCH
nameserver $NAMESERVER
EOF
# stop eerdere services, als die er zijn
if [ -f /etc/mobnet/services.prev ]; then
NEWSERVICES=$SERVICES
. /etc/mobnet/services.prev
activate_services stop
SERVICES=$NEWSERVICES
fi
if [ $1 != "none" ]; then
# stel de netwerkparameters in
cat < /etc/sysconfig/network
NETWORKING=yes
FORWARD_IPV4=true
HOSTNAME=$HOSTNAME
DOMAINNAME=$DOMAINNAME
GATEWAY=$GATEWAY
GATEWAYDEV=eth0
EOF
cat < /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
IPADDR=$IPADDR
NETMASK=$NETMASK
NETWORK=$NETWORK
BROADCAST=$BROADCAST
ONBOOT=no
EOF
/bin/chmod +x /etc/sysconfig/network-scripts/ifcfg-eth0
# kopieer de andere config bestanden
/bin/cp -f /etc/mobnet/hosts.$1 /etc/hosts
/bin/cp -f /etc/mobnet/smb.conf.$1 /etc/smb.conf
echo -n "Voeg de PC netwerkkaart in en druk op wanneer je klaar bent: "
read
# OK, start nu de services
activate_services start
echo "SERVICES=\"$SERVICES\"" > /etc/mobnet/services.prev
else # het is niet "none"
cat < /etc/sysconfig/network
NETWORKING=false
FORWARD_IPV4=false
HOSTNAME=$HOSTNAME
DOMAINNAME=$DOMAINNAME
EOF
/bin/rm -f /etc/sysconfig/network-scripts/ifcfg-eth0*
/sbin/ifconfig eth0 down
echo "SERVICES=$SERVICES" > /etc/mobnet/services.prev
echo "Nu kun je de PC kaart verwijderen."
exit 0
fi
# einde mnet.
Zoals ik al zei, het is globaal opgezet en het is zelfs niet compleet:
het kan zijn dat andere bestanden afhankelijk zijn van het netwerk, zoals bv
/etc/fstab , /etc/exports , en
/etc/printcap . Denk ook aan netwerkprinters en NFS shares.
Pas deze oplossing met de allerbelangrijkste elementen gerust aan aan je
behoeften.
Delen van het Internet
Een van de meest nuttige taken voor een Linux server. Thans worden de meeste
stock kernels standaard met IP-firewalling, masquerading en forwarding
geactiveerd; raadpleeg de IP-Masquerade mini-HOWTO als je twijfelt om te leren
hoe je ze kunt activeren.
Installeer vervolgens ipfwadm (kernels 2.0.x;
) of ipchains (kernels 2.2.x;
).
Denk er aan de kernelmodules voor de services die je nodig hebt, te activeren,
b.v. voor ftp zal je de volgende regel toe moeten voegen aan
/etc/rc.d/rc.sysconfig :
/sbin/modprobe ip_masq_ftp
Andere modules zijn gewoonlijk te vinden in
/lib/modules/KERNEL-VERSION/ipv4 .
Het activeren van IP-masquerading voor andere computers in je lokale netwerk
is erg simpel. Controleer als eerste de netwerk initialisatiescripts
(/etc/sysconfig/network zou de juiste plek hiervoor moeten
zijn) om te zien of hierin een regel met
FORWARD_IPV4=true staat. Het wordt gebruikt om
/proc/sys/net/ipv4/ip_forward op 1 in te stellen wanneer het
netwerksubsysteem de lucht in gaat.
Voeg deze regels toe aan /etc/rc.d/rc.sysinit :
# default: packets kunnen de buitenwereld niet bereiken
/sbin/ipfwadm -F -p deny
# maak het voor alle computers mogelijk het Internet te bereiken
/sbin/ipfwadm -F -a m -S 192.168.1.0/24 -D 0.0.0.0/0
# sta dit als alternatief alleen toe voor deze twee computers
# /sbin/ipfwadm -F -a m -S 192.168.1.100/24 -D 0.0.0.0/0
# /sbin/ipfwadm -F -a m -S 192.168.1.101/24 -D 0.0.0.0/0
Als je gebruik maakt van een kernel in de serie 2.2.x gebruik dan
ipfwadm-wrapper in plaats van ipfwadm om snel van
start te gaan. Meer informatie op .
Nu iets om de clientcomputers de ISP te laten bellen; Ik gebruik hiervoor
Mserver (). Wijzig
etc/mserver.conf ; de enige regels die je zou moeten wijzigen
zijn ``checkhost'', ``shadow'', en ``cname''. Definieer dan je verbinding(en).
Uiteraard installeer je een geschikte client op de clientcomputers.
Netwerktoegang beperken
Laten we er eens vanuit gaan dat je een verbinding hebt met het Internet via
PPP. Zodra je een verbinding tot stand hebt gebracht kan je computer
kwetsbaar zijn voor aanvallen van buitenaf.
Plaats dit in /etc/hosts.allow :
# sta alleen de toegang toe tot localhost
ALL: 127.
en dit in /etc/hosts.deny :
# ontzeg iedereen de toegang
ALL: ALL
Als je computer onderdeel uitmaakt van een netwerk met directe toegang tot
het Internet, kun je om beveiligingsredenen beter finger, telnet en mogelijk
nog andere services deactiveren;
gebruik ssh in plaats van telnet. Het te wijzigen bestand is
/etc/inet.conf . Als alternatief kun je netwerktoegang beperken
door het volgende in /etc/hosts.allow te plaatsen:
in.telnetd: 192.168.1., .ander.betrouwbaar.netwerk
in.ftpd: 192.168.1., .ander.betrouwbaar.netwerk
en dit in /etc/hosts.deny :
in.telnetd: ALL
in.ftpd: ALL
NFS Exports
Het is gebruikelijk om home-directory's naar de server te exporteren; er doet
zich een probleem voor als een gebruikers-ID en GID op verschillende
computers niet consistent zijn. Als gebruiker guido UID/GID gelijk aan
500 heeft op de server en UID/GID gelijk aan 512 op de client ,
is het volgende een comfortabele configuratie:
# /etc/exports
/tmp mijn.client.machine(rw)
/home/guido mijn.client.machine(rw,all_squash,anonuid=512,anongid=512)
Samba
Bijna dagelijkse routine, maar er is altijd nog wel wat te doen.
Als je een verbinding op wilt zetten met Windows 98/NT clients, dacht je
er dan wel aan de docs te lezen, en voor het geval dat, wachtwoorden in
gewone tekst te activeren? In de distributie zijn .reg bestanden opgenomen
voor Win9x/NT/2000; als je clients geen verbinding met de Linux-server
kunnen maken, laad ze dan op iedere client.
Samba wordt met een tamelijk compleet voorbeeld van
/etc/smb.conf geleverd, maar vreemd genoeg ontbreekt er
een sectie in waarin wordt getoond hoe verwijderbare media te (un)mounten.
Hiervoor zijn de preexec en postexec clausules:
[cdrom]
comment = CD-ROM
path = /mnt/cdrom
public = yes
read only = yes
; mogelijk moet je "root preexec/postexec" gebruiken
preexec = mount /mnt/cdrom
postexec = umount /mnt/cdrom
Bovendien: je weet wat Swat is, nietwaar? Activeer het door deze regel in
/etc/inetd.conf toe te voegen:
swat stream tcp nowait.400 root /usr/sbin/swat swat
en dit in /etc/services :
swat 901/tcp
Herstart inetd met SIGHUP, en laat je browser verwijzen naar
http://localhost:901 .
Software Configuratie
We gaan de volgende configuratiebestanden aanpassen:
/etc/profile /etc/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 klaar hebt;
je plaatst bestanden beginnend met een punt in
/etc/skel .
bash(1)
Na de kernel het belangrijkste stukje software. Voor het aanpassen van
het functioneren van bash zijn de belangrijkste te wijzigen
bestanden:
-
/etc/bashrc bevat systeemomvattende aliassen en functies;
-
/etc/profile bevat systeemomvattende omgevingszaken
en opstartprogramma's;
-
$HOME/.bashrc bevat gebruikersaliassen en functies;
-
$HOME/.bash_profile bevat gebruikersomgevingszaken
en opstartprogramma's;
-
$HOME/.inputrc bevat key bindings en andere kleine zaken.
Voorbeelden van deze bestanden worden hieronder gegeven.
Als eerste de allerbelangrijkste:
/etc/profile . Het wordt gebruikt om veel van de features
in je Linux box te configureren, zoals je in de volgende secties zult
zien. Let alsjeblieft op de (achterwaartse) aanhalingstekens!
# /etc/profile
# Systeemomvattende omgeving en opstartprogramma's
# Functies en aliassen gaan 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
# als eerste: root of normale gebruiker? Stel dienoverenkomstig PATH en
# umask in. Het PATH wordt normaal gesproken door login(1) ingesteld, maar
# wat als je de computer benaderd via ssh?
if [ $(id -gn) = $(id -un) -a $(id -u) -gt 14 ]; then
umask 002 # normale gebruiker
PATH="/usr/local/bin:/bin:/usr/bin:."
else
umask 022 # root
PATH="/sbin:/bin:/usr/sbin:/usr/bin"
fi
# Breid nu het PATH uit.
PATH="$PATH:/usr/X11R6/bin:$HOME/bin:." # !!! Let op ./ !!!
# stel de gebruiker in kennis: login of geen login shell.
# Bij een loginshell is de prompt blauw, anders is het magenta.
# Root's prompt is root.
# Zie de Colour-ls mini HOWTO voor een uitleg van deze 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 geheugendumps, max bestandsgrootte 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 # wijzig dit
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 ls in kleur
eval $(dircolors /etc/DIR_COLORS -b)
export LS_OPTIONS='-s -F -T 0 --color=yes'
# less aanpassen
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
# wellicht dat je dit moet corrigeren voor de backspace in rxvt/xterm
stty erase ^H # alternatief: ^?
# stel de titel in van xterm: 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 zouden kunnen worden overschreven!
fi
done
# roep fortune aan, als dit 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
# Omgevingszaken gaan in /etc/profile
# Voeg hier PS1 definities in als je problemen ervaart.
export CDPATH="$CDPATH:~"
# common aliases
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 toon de inhoud ervan
{
cd $1 ; ls
}
inst() # Installeer een .tar.gz archief in de huidige directory
{
if [ $# != 0 ]; then tar zxvf $1; fi
}
cz() # Toon de inhoud van een .zip archief
{
if [ $# != 0 ]; then unzip -l $*; fi
}
ctgz() # Toon de inhoud van een .tar.gz archief
{
for file in $* ; do
tar ztf ${file}
done
}
tgz() # Maak een .tgz archief a la zip.
{
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 .bashrc :
# $HOME/.bashrc
# Source globale definities
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# dit is nodig om de gebruiker opmerkzaam te maken dat ze zich bevinden in
# een niet login shell
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
{
xjed $1 &
}
Dit is een voorbeeld .bash_profile :
# $HOME/.bash_profile
# Gebruikers specifieke omgeving en opstartprogramma's
# Dit bestand bevat gebruikersgedefinieerde instellingen die de instellingen
# in /etc/profile overschrijven.
# Haal de gebruikersaliassen en functies op
if [ -f ~/.bashrc ]; then
GET_PS1="NO" # de kleur van de prompt niet wijzigen
. ~/.bashrc
fi
# stel een paar `default' directory's in
export CDPATH="$CDPATH:$HOME:$HOME/text:$HOME/text/geology"
Dit is een voorbeeld .inputrc :
# $HOME/.inputrc
# key bindings
"\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 # beep alsjeblieft niet
set meta-flag On # sta 8-bit invoer toe (d.w.z. accenttekens)
set convert-meta Off # strip 8-bit tekens niet
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 ervoor te zorgen dat de backspace en delete toetsen in xterm
en andere X11 applicaties juist werken, is tevens het volgende nodig:
- plaats dit in
.xinitrc :
usermodmap=$HOME/.Xmodmap
xmodmap $usermodmap
- dan zal er in
.Xmodmap staan:
keycode 22 = BackSpace
keycode 107 = Delete
dit corrigeert de console. Voor het corrigeren van xterm :
- plaats je dit in
.Xdefaults :
xterm*VT100.Translations: #override BackSpace: string(0x7F)\n\
Delete: string(0x1b) string("[3~")\n\
Home: string(0x1b) string("[1~")\n\
End: string(0x1b) string("[4~")\n\
CtrlPrior: string(0x1b) string("[40~")\n\
CtrlNext: string(0x1b) string("[41~")
nxterm*VT100.Translations: #override BackSpace: string(0x7F)\n\
Delete: string(0x1b) string("[3~")\n\
Home: string(0x1b) string("[1~")\n\
End: string(0x1b) string("[4~")\n\
CtrlPrior: string(0x1b) string("[40~")\n\
CtrlNext: string(0x1b) string("[41~")
rxvt is wat gecompliceerder, aangezien een aantal opties op te geven
tijdens de compilatie het functioneren beïnvloeden.
Zie /etc/profile hiervoor.
Meer info in bash (1) en readline (3) man pages.
Verwacht niet dat iedere applicatie juist werkt!
Als je joe bijvoorbeeld in xterm draait, werken een aantal
toetsen niet; hetzelfde geldt voor een aantal versies van
rxvt .
I18n
(Deze sectie is niet van toepassing voor gebruikers met Engels als moedertaal).
A.l.a. ``internationalisatie''. Gasp. Dit lange woord betekent ``Linux
aanpassen aan lokale conventies: taal, datumformaat, valuta enz.''.
Alhoewel Red Hat een eigen methode heeft om i18n middels
(/etc/sysconfig/i18n ) in te stellen, wil je de taal misschien
wel slechts in een paar situaties aanpassen.
Mijzelf als voorbeeld nemend, activeer i18n in kdm
(via kdmconfig ) en xfce , maar wil Engelse berichten
lezen als ik onder de console of in een xterm werk.
Kijk eens naar de volgende regels:
LANG=it # kies je taal: fr, de, es, ...
LANGUAGE=it
LC_ALL=it
export LANG LANGUAGE LC_ALL
Als je ze in .xinitrc of .xsession plaats, net voor
de regel waarin de window manager wordt opgestart, krijg je internationale
berichten - inclusief die in xterms die vanuit de window manager worden
opgestart. Maar als je liever Engelse berichten krijg, stel de taal dan in
op ``en'' en plaats dezelfde regels in
.bash_profile .
ls(1)
ls kan directorylistings in kleur weergeven om verschillende
type bestanden te belichten. Hiervoor heb je slechts een paar regels
nodig in /etc/profile . Dit werkt echter niet met oude versies
van rxvt ; gebruik in plaats daarvan een of andere variant van
xterm .
Het ziet er naar uit dat een aantal oude rxvt s een bug bevatten
waarbij in een aantal omstandigheden de omgeving niet juist wordt geërfd.
less(1)
Met deze uitstekende pager kun je niet alleen door gewone tekstbestanden
bladeren, maar ook door die met gzip gecomprimeerd, tar en zip archieven, man
pages, en wat je ook maar hebt. De configuratie ervan beslaat een aantal
stappen:
- om het met de verplaatsingstoetsen te kunnen gebruiken, maak je
dit gewone ASCII-bestand
.lesskey aan voor 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
start dan de opdracht lesskey . (Dit zijn escape sequences voor
op vt100 lijkende terminals.) Hiermee wordt een binair bestand .less
aangemaakt met de key bindings.
- schrijf het volgende bestand weg als
/usr/bin/lesspipe.sh :
#!/bin/sh
# Dit is een preprocessor voor 'less'. Het wordt gebruikt wanneer de
# omgevingsvariabele van `less' is gezet:
# LESSOPEN="|lesspipe.sh %s"
lesspipe() {
case "$1" in
*.tar) tar tf $1 2>/dev/null ;; # Bekijk de inhoud van .tar en .tgz bestanden
*.tgz|*.tar.gz|*.tar.Z|*.tar.z) tar ztf $1 2>/dev/null ;;
*.Z|*.z|*.gz) gzip -dc $1 2>/dev/null ;; # Bekijk gecomprimeerde files correct
*.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=`file -L $1`
FILE=`echo $FILE | cut -d ' ' -f 2`
if [ "$FILE" = "troff" ]; then
groff -s -p -t -e -Tascii -mandoc $1
fi ;;
*) file $1 | grep text > /dev/null ;
if [ $? = 1 ] ; then # het is niet een of andere tekst
strings $1
fi ;;
esac
}
lesspipe $1
maak het vervolgens uitvoerbaar met chmod 755 lesspipe.sh .
- plaats variabelen die effect hebben op
less in
/etc/profile .
Editor
Slechts de populairste zullen hier worden behandeld.
emacs(1)
Ik gebruik zelden emacs , dus heb ik slechts een paar tips voor je.
Een aantal emacs distributies worden niet voorgeconfigureerd geleverd
met kleuren en het benadrukken van de syntax.
Plaats dit in .emacs :
(global-font-lock-mode t)
(setq font-lock-maximum-decoration t)
Dit werkt alleen onder X11. Bovendien voeg je de volgende regel toe voor
geaccentueerde tekens:
(standard-display-european 1)
Ik zal het aan jou overlaten om alle documentatie van emacs
zorgvuldig door te lezen om uit te zoeken hoe je het naar behoefte aan kunt
passen --- mogelijkerwijs, kan het hacken een aantal maanden in beslag nemen.
De Dotfile generator (Sectie [) is hierbij een goede hulp.]
joe(1)
Een aantal versies van joe werken in console niet met kleuren en
ook werken een aantal speciale toetsen niet.
Een snelle en niet zo'n mooie (en onelegante) oplossing voor het eerder
genoemde probleem is dit:
~$ export TERM=vt100
~$ joe myfile
(edit your file)
~$ export TERM=linux
Om de speciale toetsen werkend te krijgen, hoef je slechts
.jstarrc of je favoriete emulatie te wijzigen; je kunt beginnen bij
de systeemomvattende configuratiebestanden in /usr/lib/joe .
Zoek naar de vierde sectie (key bindings). Hiermee worden Home en End
geactiveerd:
bol ^[ [ 1 ~ Ga naar het begin van de regel
eol ^[ [ 4 ~ Ga naar het einde van de regel
Je kunt achter de gewenste ESC sequences komen door het typen van
cat gevolgd door de speciale toetsen.
jed(1)
Dit is mijn favoriete editor: het doet wat het moet doen, het is lichter
en eenvoudiger te configureren dan emacs , en emuleert
tamelijk goed andere editors.
Veel gebruikers op de universiteit waar ik zit maken gebruik van
jed om EDT , VMS' systeemeditor te emuleren.
De configuratiebestanden van jed zijn .jedrc en
/usr/lib/jed/lib/* ; de eerstgenoemde 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 :
#ifdef XWINDOWS
x_set_keysym (0xFFFF, 0, "\e[3~");
setkey (``delete_char_cmd'', "\e[3~");
#endif
- je hoeft slechts een paar regels in
.jedrc aan te passen
om ervoor te zorgen dat jed EDT (of andere editors) emuleert.
ALs je wilt dat de `+ ' op het numerieke toetsenblok woorden
verwijdert in plaats van een enkel teken, voeg het volgende dan toe aan
.jedrc :
unsetkey("\eOl");
unsetkey("\eOP\eOl");
setkey("edt_wdel", "\eOl");
setkey("edt_uwdel", "\eOP\eOl");
na de regel met () = evalfile("edt") (of vergelijkbaar);
- voeg het volgende in
.Xmodmap om ervoor te zorgen dat
xjed het numerieke toetsenblok voor EDT emulatie gebruikt:
keycode 77 = KP_F1
keycode 112 = KP_F2
keycode 63 = KP_F3
keycode 82 = KP_F4
keycode 86 = KP_Separator
- aanpassen van kleuren voor
xjed gebeurt door het toevoegen
van regels zoals de volgende in .Xdefaults :
xjed*Geometry: 80x32+150+50
xjed*font: 10x20
xjed*background: midnight blue
# enzovoort...
- de ``afkorting'' feature is een onschatbare tijdsbespaarder.
Schrijf een bestand zoals het volgende
als
$HOME/.abbrevs.sl (je kunt deze naam wijzigen door het invoegen
van variable Abbrev_File = "/usr/lib/jed/abbrev.sl"; 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}");
% and so on...
en typ ESC x abbrev_mode om het te activeren.
Voeg aan .jedrc de volgende regels toe om afkortingen standaard
te activeren:
define text_mode_hook ()
{
set_abbrev_mode (1);
}
%
define fortran_hook ()
{
set_abbrev_mode (1);
use_abbrev_table ("Fortran");
}
% enzovoort...
pine(1)
Wijzig de globale configuratie in /usr/lib/pine.conf , let daarbij
op z'n minst op de volgende velden: user-domain ,
smtp-server , en nntp-server . Merk op dat
inbox-path afhankelijk is van je MTA: als je sendmail of
postfix gebruikt, is dat var/spool/mail/$USER ; met Qmail,
/home/$USER/Mailbox (maar root maakt gebruik van
/var/qmail/alias/Mailbox .
minicom(1)
Gebruikers kunnen geen gebruik maken van minicom tenzij door root
een globale configuratie is ingesteld. Denk eraan het aan te maken.
efax(1)
Dit package is waarschijnlijk het meest comfortabel voor het eenvoudig
zenden/ontvangen van faxen. Je moet het script
/usr/bin/fax of
(mandrake) /etc/fax.config aanpassen; eenvoudige taak,
maar een paar grillen bezorgde me hoofdpijn:
- Om erachter te komen of je modem een class 1, 2, of 2.0 is, gebruik je
minicom of een vergelijkbaar programma om het commando
at+fclass=? uit te voeren. Het antwoord kan iets zijn als
0,1,2 ; 1 en 2 zijn de classes die door je modem worden ondersteund;
- DIALPREFIX: de kans bestaat dat het simpelweg plaatsen van
`
T ' of `P ' in een aantal landen niet werkt (tenminste, in
Italië)
Schrijf in plaats daarvan `ATDT ' of `ATDP ';
- INIT en RESET: deze strings bestaan uit de initialisaties `
-i '
en `-k ', benodigd voor efax . Als je een AT commando toe wilt
voegen, voeg het dan toe aan de daarvoor geschikte string en laat
`AT ' weg, en laat de rest voorafgaan met `-i ' of `-k '.
Voorbeeld: toevoegen van het `ATX3 ' commando aan INIT,
voeg `-iX3 ' toe.
Als je dat hebt gedaan, zijn er een paar permissies te herstellen die
niet-root gebruikers toestaan faxen te sturen en te ontvangen. De directory's
/var/lock en /var/spool/fax moeten schrijfbaar zijn.
Om dit te doen, maak je een groep faxusers aan, voegt er gebruikers
aan toe en tikt dan in:
~# chown root.faxusers /var/lock
~# mkdir /var/spool/fax # als het nog niet bestaat
~# chown root.faxusers /var/spool/fax; chmod g+w /var/spool/fax
Als een normale gebruiker roep je voor het zenden van een fax de opdracht
newgrp faxusers aan.
Ghostscript
Dit essentiële hulpmiddel leidt aan een kleine onhebbelijkheid. In het bezit
van de wel-bekende export reglementen in de USA, werkt het utility
pdf2ps niet op versleutelde .pdf-bestanden. Doet er niet toe: richt
je browser op ,
download het bestand pdf_sec.ps en zet het in plaats van het
bestand met dezelfde naam dat met de distributie van Ghostscript wordt
meegeleverd.
TeX en Friends
De ``root'' van een TeX systeem is de directory $TEXMF, in teTeX is
dit /usr/share/texmf ; voor andere distributies is dit
mogelijk anders (zoek op je systeem naar ``texmf'').
Normaal gesproken voeg je dingen toe of knoei je wat met de bestanden.
Uitbreiden van $TEXINPUTS
Om PostScript afbeeldingen of TeX bestanden die in subdirectory's staan
op te nemen, is het comfortabel om het zoekpad van TeX uit te breiden door
hier subdirectory's in op te nemen. Plaats
deze opdracht in .bash_profile :
export TEXINPUTS="$HOME/mylib::./figures"
wat maakt dat TeX in $HOME/mylib zoekt voordat het in de
standaarddirectory's gaat zoeken, en daarna in
de directory ./figures .
Afbreekpatronen
Voor het configureren van afbreekpatronen in je taal, wijzig je het bestand
$TEXMF/tex/generic/config/language.dat , en geeft dan
op:
~# texconfig init ; texconfig hyphen
Zelfs al schrijf je niets in de Engelse taal, verwijder dan niet het veld
``english''; TeX verslikt zich zonder.
Dvips
Het te wijzigen bestand om dvips aan te passen is
$TEXMF/dvips/config/config.ps . Wees je ervan bewust dat
de velden betreffende de standaardresolutie ook effect hebben op het
functioneren van xdvi ; als je hinderlijke pogingen ervaart iedere
keer dat je het draait fonts aan te maken, plaats dan de regel
XDvi*mfmode:
in .Xdefault . Dit zou moeten helpen.
LaTeX Packages toevoegen
Extra LaTeX packages zijn beschikbaar vanaf je dichtsbijzijnde CTAN
(Comprehensive TeX Archive Network) mirror site, b.v.
. Pak het package uit onder
$TEXMF/tex/latex .
Als geen .sty bestand bestaat, start dan de opdracht
latex newstyle.ins of
latex newstyle.dtx om het aan te maken, voer vervolgens de opdracht
texhash uit, zodat teTeX het nieuwe package herkent.
Voorkom PPProblemen!
Ik neem aan dat er in je kernel PPP + TCP/IP ondersteuning is gecompileerd,
dat loopback is geactiveerd, en dat je reeds het pppd
package correct hebt geïnstalleerd en, naar wens als, suid root.
Uiteraard moet je ISP PPP ondersteunen.
Er zijn nu twee manieren om PPP aan de gang te krijgen:
a) handmatige configuratie, en b) een
configuratie programma 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, mail en newsserveradres van je ISP;
- het domain van je ISP;
- je gebruikersnaam en wachtwoord.
Handmatige configuratie is geestdodend werk.
Het betreft het wijzigen van bestanden en het schrijven van
scripts; niet te veel werk, maar je maakt gemakkelijk fouten en
nieuwkomers schrikken ervan terug.
Hiervoor is de PPP HOWTO. Als alternatief bestaan er hulpmiddelen
die om de hierboven genoemde informatie vragen en je al het werk uit
handen nemen.
Gnome en KDE bevatten respectievelijk gnome-ppp en kppp
welke eenvoudig genoeg zijn om in te stellen. Ik raad je aan dat je ook
eens kijkt naar een aantal tools die zijn gebaseerd op tty,
wvdial en eznet . Je voert het telefoonnummer van je ISP,
je gebruikersnaam en je wachtwoord in, en je hebt je taak volbracht.
Hun homepages zijn te vinden op
en
. Beide zijn zeer goed, maar mijn
voorkeur gaat uit naar de laatstgenoemde.
Een snelle start met eznet
Maak als eerste als volgt een /etc/resolv.conf bestand aan:
naamserver w.x.y.z
waar je het adres van de naamserver van je ISP invult.
Voor het aanmaken van een account met
eznet , geef je de volgende opdracht:
#~ 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 en permissies 600; chmod in 666 als je wilt dat
het voor iedereen leesbaar is.
Probeer nu bij je ISP in te bellen met eznet up JE_ISP .
Probeer het volgende commando, als je modem blijft wachten op de kiestoon
en geen verbinding maakt:
#~ eznet change YOUR_ISP init0=atx3
Gebruik om op te hangen de opdracht eznet down . Dat is alles!
Een snelle start met wvdial
De setup voor wvdial is zelfs beknopter. Typ wvdialconf
/etc/wvdial.conf , wijzig vervolgens het resulterende bestand door er
je gebruikersnaam, wachtwoord en telefoonnummer in op te nemen.
Probeer het uit met wvdial , en duimen maar. Hang op met Ctrl-C
als je wilt stoppen.
POP Client
Om mail van een POP3 server op te halen, heb je een POP-client nodig.
De meeste clients vereisen dat je een MTA zoals sendmail ,
qmail of postfix draaiende hebt; dit is wat overmatig
op goedkope computers. Er zijn echter clients die zonder een MTA werken.
De eerste soort is fetchmail ; de tweede fetchpop of
frenchie . Sites: ,
.
Om deze clients te configureren:
fetchpop : de eerste keer dat je het opstart,
zul je wat informatie op moeten geven. Beantwoord de vragen
en het is ingesteld. fetchpop moet met de switch -r
worden gebruikt, als de POP3-server van je ISP het commando LAST niet
juist implementeert.
-
frenchie : als hierboven, wijzig
~/.frenchie/frenchierc ;
-
fetchmail : pas dit voorbeeld van .fetchmailrc aan:
# $HOME/.fetchmailrc
poll mbox.myisp.com with protocol pop3;
user john there with password _Loo%ny is john here
Een gebruiker meldde dat het toevoegen van ``smtphost localhost''
aan de tweede regel een enorme performance verbetering opleverde.
Je moet de permissies van dit bestand met het commando
chmod 600 .fetchmailrc instellen, anders zal fetchmail
terecht weigeren op te starten.
Dit voorbeeld is echt een basis; er zijn eindeloze
configuratie-mogelijkheden.
Kijk het na op .
Basis Mail Filtering
Je zal jezelf willen beschermen tegen spam of zeer grote mailberichten.
Er zijn twee situtaties:
1) permanente verbinding met het net, 2) een POP link. In de eerste
situatie kun je een .procmailrc bestand schrijven, terwijl er
voor de tweede situatie tools zijn voor het controleren van de mail
voordat het wordt opgehaald.
Een zeer eenvoudig .procmailrc waarin een aantal regels
worden definieerd:
# $HOME/.procmailrc
MAILDIR=$HOME/mail # zorg dat het bestaat
# Sla berichten gestuurd naar de mailinglist "foo" op in $HOME/mail/foo
:0
* ^To:.*foo
foo
# Verwerp berichten die niet expliciet naar mij of één van
# de mailinglijsten waarop ik mij heb aangemeld zijn gezonden.
:0
* !^TO(guido|jed|lugvr|ldp|nobody)
/dev/null
# idem voor berichten groter dan 50k.
:0
* > 50000
/dev/null
man procmailex voor meer voorbeelden.
POP gebruikers willen wellicht gebruik maken van poppy ,
een nuttig Perl-script voor het controleren van mail voordat het wordt
opgehaald. Haal het vanaf
.
X Window Systeem (XFree86)
Instellen van de X-server
Kom op, het is bij lange na niet meer zo moeilijk als het ooit was...
Alle grotere distributies hebben een tool voor het instellen van X11
(b.v. XConfigurator , sax , XF86Setup , of in ieder
geval xf86config ).
Het configureren van X gaat tegenwoordig vrijwel automatisch,
maar het zou kunnen dat een paar videokaarten voor hoofdbrekers zorgen.
Kijk als eerste op de XFree86 site
() of je videokaart wordt ondersteund.
Als dit zo is, probeer dan deze procedure:
- installeer de gewone VGA-server;
- ga naar
, cd naar
de juiste Linux subdirectory, en download de archieven
X_version_bin.tgz , X_version_set.tgz , en alle servers.
Te midden van andere programma's bevat het eerste archief het meest
bijgewerkte SuperProbe ;
- pak
X_version_bin.tgz in een tijdelijke directory uit, cd
naar die directory en start ./SuperProbe . Als je videokaart wordt
herkend bestaat de kans dat je het in zal kunnen stellen. Zo niet, dan pech;
- installeer de servers en
X_version_set.tgz vanaf
/usr/X11R6/ , start vervolgens XF86Setup .
Bij mij heeft dit altijd gewerkt, maar het kan zijn dat het voor jou anders
uitpakt. Merk alsjeblieft op dat X11 meestal niet opstart omdat je de
verkeerde specs voor je monitor koos! Start met conservatieve instellingen,
d.w.z. 800x600 en 256 kleuren. Waarschuwing : deze bewerkingen
zin gevaarlijk en kunnen je monitor beschadigen!
Als je kaart niet wordt ondersteund, kun je of: 1) wachten op de volgende
versie van XFree86; 2) een commerciële X-server kopen; 3) een
ondersteunde videokaart kopen.
Numerieke toetsenblok
We hebben hiervoor gezien hoe we een paar speciale toetsen werkend krijgen.
Het voorbeeldbestand .Xmodmap werkt goed als je Xjed wilt gebruiken,
maar het maakt het numerieke toetsenbord onbruikbaar.
Je heb dan een ander config bestand nodig, wat we
.Xmodmap.num zullen noemen:
! Definities zijn te vinden in
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 de volgende drie regels niet in /etc/X11/XF86Config
voorkomen:
ServerNumLock
Xleds
XkbDisable
en als dit wel zo is, plaats er dan een commentaarteken voor.
Voor het heractiveren van het numerieke toetsenblok roep je de opdracht
xmodmap .Xmodmap.num aan.
Grafische login met xdm
Om te worden begroet door een grafische login, wijzig je het bestand
/etc/inittab , waarin een regel als de volgende zou moeten
zijn opgenomen:
x:5:respawn:/usr/bin/X11/xdm -nodaemon # ook kdm of gdm
waar 5 het runlevel is dat met X11 correspondeert. Wijzig de regel waarin het
standaardrunlevel wordt gedefinieerd (gewoonlijk 2 of 3), het wijzig het
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, true color
Als je reeds een .xinitrc hebt, kopieer dit dan naar
.xsession en maak de laatste uitvoerbaar met
chmod +x .xsession . Roep nu de opdracht
telinit 5 aan.
Window Manager
Zodra X werkt, zijn er eindeloze configuratiemogelijkheden; dit is
afhankelijk van de in gebruik zijnde window manager, er zijn er tientallen
om uit te kiezen. Meestal komt het neer op het wijzigen van één
of meer ASCII-bestanden in je home-directory; in andere gevallen hoef je
helemaal niets te wijzigen en maak je gebruik van een applet of een menu.
Wat voorbeelden:
-
de fvwm familie : kopieer
/etc/X11/fvwm/system.fvwmrc (of vergelijkbaar) naar je homedirectory met de van toepassing zijnde naam, blader er doorheen, en begin met
experimenteren. Mogelijk verlies je heel wat tijd eer je de precieze look en
feel hebt die je graag wilt;
-
WindowMaker : het heeft verscheidene config bestanden te vinden
onder $HOME/GNUstep , en een gaaf configuratie applet;
-
KDE , Gnome , xfce en anderen: niets
om hier handmatig te wijzigen, alles kan via het menu worden gedaan.
Samengevat: als je het niet erg vindt een config bestand te wijzigen, kies
dan iets uit als icewm , fvwm* , blackbox enz;
als het je wel iets uitmaakt, dan is de keuze thans beperkt tot
KDE, Gnome, WindowMaker, en Xfce. Email me als ik er naast zit.
Het is belanglijk een goed .xinitrc te hebben. Een voorbeeld:
#!/bin/sh
# $HOME/.xinitrc
usermodmap=$HOME/.Xmodmap
xmodmap $usermodmap
xset s noblank # zet de screensaver uit
xset s 300 2 # screen saver start na 5 min
xset m 10 5 # stel de muisacceleratie 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 niet strict vereist schijnt te zijn, maak je het uitvoerbaar
met chmod +x .xinitrc .
De .xinitrc hiervoor laat je de window manager uitkiezen: probeer
$ startx startkde # of andere w.m.
Standaards voor X11 Apps
Zoek uit waar de app-defaults directory is (het zou
/usr/X11R6/lib/X11/app-defaults moeten zijn).
Verscheidene apps bewaren hier een configuratiebestand.
Fonts toevoegen
Recente versies van XFree86 (zoals > 3.3.4) maken gebruik van een
X Font Server welke PostScript Type 1 en True Type fonts ondersteunen, dus
kun je gebruik maken van de overvloed aan beschikbare fonts op het net.
Je volgt hiervoor een eenvoudige procedure.
Veronderstel dat je een verzameling Type 1 fonts download, b.v. Freefont
().
Om het zichtbaar te maken aan de fontserver, pak je het archief uit in
/usr/X11R6/lib/X11/fonts/ . Wijzig dan het bestand
/etc/X11/fs/config , voeg een veld toe met de nieuwe directory,
en herstart de fontserver.
Als je je eigen font verzameling samenstelt, moet je de bestanden
fonts.dir en fonts.scale aanvullen; het hulpmiddel waarmee
je ze maakt is type1inst , beschikbaar vanaf
.
Betreft de True Type fonts, groepeer ze in een directory van je keuze en
maak fonts.dir aan met ttmkfdir > fonts.dir , opgenomen
in het Freetype archief; . Ga dan verder
zoals hierboven beschreven. Als je bijvoorbeeld de Windowsfonts in
/mnt/win/windows/fonts wilt gebruiken, ga dan naar die
directory, start ttmkfdir , wijzig /etc/X11/fs/config
en herstart de fontserver.
Het begon allemaal bij de oorspronkelijke True Type X fontserver:
.
Gebruikers configuraties
Als je klaar bent met het wijzigen van de dot files (bestanden die beginnen
met een punt), kopieer deze dan naar /etc/skel
zoals in Sectie [.]
Maken van .rpms
rpm is zo'n prachtige methode om packages onder beheer te houden,
dat ik met weerzin .tar.gz archieven installeer, maar in slechts een
paar gevallen (b.v., beveiliging). Als je ooit een tar-archief installeert,
overweeg het dan om te zetten in een .rpm-archief, installeer het vervolgens
opnieuw; raadpleeg de RPM-HOWTO. Ik adviseer je het volgende in je
/etc/rpmrc te plaatsen, als je gebruik maakt van moderne
gcc-versies , zoals egcs of pgcc :
optflags: i386 -O2 -mpentiumpro
Upgraden
Als je je machine upgrade, maak dan zoals gewoonlijk een backup en denk
er aan een aantal extra bestanden te bewaren.
Een aantal daarvan zouden kunnen zijn /etc/X11/XF86Config ,
/usr/bin/fax , alles in /usr/local , de
kernel configuratie, de volledige inhoud van /etc ,
en alle mail in /var/spool/mail .
Dan is het tijd applicaties te upgraden (in zeldzame gevallen, downgraden!)
die met je distributie worden geleverd, en extra packages toe te voegen.
Houd hier een lijst van bij.
Configuratie Software + Docs
Er zijn verscheidene programma's die ervoor zorgen dat Linux eenvoudig is
in te stellen en configureren. Een aantal daarvan worden zo langzamerhand
een standaard: Red Hat, Caldera en andere distributies worden geleverd met
applicaties zoals setup , printtool , netcfg ,
usertool , enz, terwijl S.u.S.E. wordt geleverd met een uitgebreid
configuratieprogramma genaamd Yast. Andere handige programma's zijn:
-
De Dotfile Generator : prima X app met modules om packages
zoals emacs , bash , procmail en meer te configureren.
De pagina ervan is te vinden op
;
-
Linuxconf : het ultieme configuratie hulpmiddel. Het kan
alles, zowel in console als onder X. Ga onmiddelijk naar
.
Documenten over Linux configuratie duiken overal op. Een van de meest
volledige is TrinityOS,
.
Val de auteur ermee lastig dat hij het document in prettiger formaten
omzet.
Een leuke goede pagina is . Net wat het
zegt - een verzameling met configuratiebestanden.
Het einde
Copyright
Copyright (c) door Guido Gonzato, ggonza at tin.it . Dit document
mag alleen onderworpen aan de voorwaarden en termen uiteengezet in de
LDP Licentie op
worden gedistribueerd,
behalve dat dit document niet zonder toestemming van de auteur in
gewijzigde vorm mag worden gedistribueerd.
Raadpleeg alsjeblieft de homepage van het Linux Documentatie Project
als je vragen hebt.
Feedback
Misschien wel meer dan met andere HOWTO's, verwelkomt deze je
suggesties, kritiek, en contributies.
Feedback is niet alleen welkom: het is nodig:
Als je denkt dat er iets ontbreekt of niet klopt, mail me dan alsjeblieft.
Als je een andere distributie dan Red Hat/Mandrake hebt en je config
bestanden zijn anders of komen in andere directory's voor, laat me dit
dan alsjeblieft weten en ik zal je tips invoegen.
Ik streef er naar om het werken met Linux zo gemakkelijk mogelijk te maken.
Er zijn voor Linux een enorm aantal packages, dus het is onmogelijk voor
al deze packages aanwijzigingen op te nemen.
Beperk je vragen/suggesties alsjeblieft tot de ``meest redelijke'' programma's
--- Ik zal het aan je gezonde verstand overlaten.
Disclaimer
Dit document wordt geleverd zoals het is. Ik heb veel moeite gedaan dit
zo accuraat mogelijk te schrijven, maar je gebruikt de informatie hierin
op eigen risico. In geen geval zal ik verantwoordelijk kunnen worden
gesteld voor enige schade voortvloeiend uit het gebruik van dit werk.
Veel dank aan alle andere HOWTO auteurs en manpage schrijvers/beheerders,
wiens werk ik schaamteloos heb ontfutseld;
en aan alle mensen die me van feedback voorzagen.
Ik hoop echter dat dit werk bruikbaar voor je is. Wanneer ik een nieuwe
Linux box installeer, vind ik dat in elk geval wel...
Veel plezier,
Guido =8-)