Configuratie HOWTO

Versie 1.99.6. 31 augustus 2000.

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.