Deze HOWTO richt zich op het sneller en eenvoudiger fijnafstemmen van je
nieuw geïnstalleerde Linux-box. Je vindt hierin een set configuratietips
voor de meest algemene applicaties en services.
Introductie
Waarom deze HOWTOHuidige 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
.
Algemene Systeemsetup
Een paar woorden over beveiligingZelfs 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.
Algemene beheertakenHier 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...
NetwerkconfiguratieAls 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 3c59xNu 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 nautilusDit is een voorbeeld van /etc/resolv.conf:search df.unibo.it,eocene.net
nameserver 195.210.91.100Dit is /etc/sysconfig/network (Red Hat-afhankelijk):NETWORKING=false
FORWARD_IPV4=true
HOSTNAME=nautilus.eocene.net
DOMAINNAME=eocene.netEn 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=noAlhoewel 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 $GATEWAYDit 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.
Software Configuratie 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 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
fiDit 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 ingedruktOm 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 <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 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.
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
CopyrightCopyright (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.