Dette afsnit vil beskrive, hvilke filer der er relevante at kende i et Linux system. Det er normalt at gemme konfigurationsfiler i /etc, så du kan have glæde af at læse de enkelte filer igennem, når du er blevet lidt erfaren i at styre Linux. Vi vil i dette afsnit give dig et overblik over de vigtigste konfigurationsfiler, så du selv kan forstå, hvad der foregår.
Filen /etc/passwd indeholder en linje per bruger, som har login på maskinen. Brugeren root har også en linje her. Kun hvis man kører NIS (tidligere kendt som yellow pages), kan man lade ekstra brugere være styret af andre servere.
Et eksempel på en linje af passwd filen er
daisy:x:500:501::/home/daisy:/bin/bash |
Formatet af shadow filen følger passwd-filen, en linje per bruger. Et eksempel er
daisy:$1$/hbYueDa$46ggNKFugoDABWOJZ3xvz0:10784:0:99999:7::: |
Hvis dn maskine ikke kører shadow passwords, og vil du dette, så kør /usr/sbin/pwconv som brugeren root. Tilsvarende findes /usr/sbin/pwunconv til at få passwords gemt i selve password filen og ikke shadow-filen.
Hver person er med i en eller flere grupper, og dette bruger man til at udskille, hvem der har adgang til hvilke dataområder. Kommandoen chmod g+w fil vil f.eks. gør, at andre brugere, som er i sammen gruppe som ejeren af filen, kan skrive i fil. Hver linje i /etc/group svarer til en gruppe. Et eksempel på en gruppe kan være
kongeh:x:1000:daisy,henri,dykker,landmand |
Filen /etc/gshadow følger nøje /etc/group med en linje per gruppe.
Filen /etc/fstab indeholder information om de disk-partitioner, som skal eller kan mountes ved systemopstart. Et eksempel kan være
/dev/hdb2 / ext2 defaults 1 1 /dev/hda1 /dosc vfat defaults 0 0 /dev/hdb3 /home ext2 defaults 1 2 /dev/hdb1 swap swap defaults 0 0 /dev/fd0 /mnt/floppy vfat noauto,user,rw 0 0 /dev/cdrom /mnt/cdrom iso9660 noauto,user,ro 0 0 none /proc proc defaults 0 0 none /dev/pts devpts mode=0622 0 0 |
Hosts-filen anvendes ofte på maskiner, som ikke har nameserver til rådighed. Man skriver en IP-adressse, det fulde netværknavn og et eventuelt alias. Et eksempel kan være:
127.0.0.1 localhost localhost.localdomain 172.17.0.1 daisy.kongeh.dk daisy 172.17.0.2 henri.kongeh.dk henri 172.17.0.3 dykker.kongeh.dk dykker 172.17.0.3 landmand.kongeh.dk landmand |
Uden DNS (nameserver) bruger systemet automatisk hosts-filen ved ssh, telnet, ftp, ping osv.
Resolver-filen viser, hvilken maskine der er nameserver, så man kan slå en vilkårlig adresse op på Internettet. Et eksempel kan være
search kongeh.dk nameserver 129.142.6.64 nameserver 129.142.6.65 |
Denne fil er vigtig for din netværksikkerhed, idet den viser en stribe af de services, som Linux maskinen tilbyder netværket. Du vil f.eks. finde disse linjer:
ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l -a telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd |
I kataloget /etc/rc.d/ findes styringen af, hvilke programmer, der automatisk startes op, når maskinen startes. Der er lidt forskel mellem Red Hat og SuSE, men begge har samme struktur, kaldes SysV (udtales system fem), i modsætning til BSD.
Red Hat har følgende indhold af /etc/rc.d/
init.d rc.local rc0.d rc2.d rc4.d rc6.d rc rc.sysinit rc1.d rc3.d rc5.d |
Filen rc.sysinit ændrer man oftest ikke, idet den styrer opstart af keyboard, check af filsystemer, mounter swap og andet basalt.
I filen rc.local kan man selv tilføje kommandoer, som skal startes efter de almindelige programmer.
Alle de ovenstående filer kan læses af alle på et Red Hat system, mens SuSE har valgt, at kun root kan læse de filer.
SuSE kan have følgende indhold af /etc/rc.d/
README cron kbd random rcS.d skeleton apmd dummy kerneld rc reboot ssh at gpm lpd rc0.d route syslog autofs halt network rc1.d routed xdm boot halt.local nfs rc2.d rpc boot.d inetd nfsserver rc3.d rwhod boot.local init.d pcmcia rc4.d sendmail boot.setup inn pcnfsd rc5.d serial cdb ipfwadm powerfail rc6.d single |
I Red Hat er kataloget /etc/sysconfig/ vigtigt.
apmd console keyboard network sendmail static-routes clock init mouse network-scripts soundcard |
Et skridt længere nede i filtræet finder du kataloget /etc/sysconfig/network-scripts, som f.eks. kan indeholde
chat-ppp0 ifcfg-ppp0 ifdown-ppp ifup-plip network-functions chat-ppp1 ifcfg-ppp1 ifdown-sl ifup-post chat-ppp2 ifcfg-ppp2 ifup ifup-ppp ifcfg-eth0 ifdown ifup-aliases ifup-routes ifcfg-lo ifdown-post ifup-ipx ifup-sl |
Crontab systemet og filstyring er forklaret i afsnit 5.12.
Sendmail er mail programmet til Linux - et stykke tid endnu. Konfigurationsfilen til sendmail er notorisk svær, og du bør ikke rette ret meget i din. Du kan dog med fordel rette feltet DS til
DSsmtp.ISP.dk |
Hvis du har brug for at have nem adgang til at lave mail-aliaser, så emails til dronningen@kongeh.dk automatisk bliver videresendt (forwarded) til daisy@kongeh.dk, og måske vil du have at alle emails til root skal ende hos daisy, så kan du i /etc/aliases nemt anføre dette.
dronningen: daisy root: daisy |
For hver printer vil programmet printtool i Red Hat tilføje en linje til /etc/printcap med definition af printeren, såsom
##PRINTTOOL3## LOCAL POSTSCRIPT 600x600 a4 {} PostScript Default 1 lp:\ :sd=/var/spool/lpd/lp:\ :mx#0:\ :sh:\ :lp=/dev/lp0:\ :if=/var/spool/lpd/lp/filter: |
Denne fil indeholder opsætning og parametre til de moduler, som kan læses ind og ud af systemet uden at reboote. Der er mere forklaring i afsnit 5.9.
Hvis din maskine skal køre NFS, dvs. kunne være disk server for andre UNIX maskiner, skal du i /etc/exports skrive, hvilke kataloger du vil lade andre mounte. For at det virker, skal du have "portmap" og "nfs" kørende.
Desuden skal du anvende man exports for at lære syntaks af /etc/exports. Som eksempel viser vi, hvordan du lader alle maskiner læse (ikke skrive) fra din CDROM, som du her har mountet fast på /mnt/cdrom. Derudover lader vi maskiner i domænet kongeh.dk mounte hele /usr/local/ med både læse- og skrive-rettigheder, så alle maskinerne kan lægge ny software ind her og softwaren anvendes så på alle klient-maskinerne. Husk, at du måske også skal tænke over sikkerheden, når du distributerer data over netværket. Giv kun adgang til data til de personer, som skal have den adgang.
/mnt/cdrom *(r) /usr/local *.kongeh.dk(rw) |
I Red Hat er den basale Xwindow-konfigurationsfil XF86Config lagt i /etc/X11/XF86Config, og tilsvarende i SuSE er den i /etc/XF86Config. Syntaksen findes ved at skrive man XF86Config, men der er mere hjælp i Appendiks A.