Configuration HOWTO By Guido Gonzato, guido@ibogfs.cineca.it. Svensk översättning: Linus Åkerlund, uxm165t@tninet.se v1.2.2, 10 April 1998. Svensk översättning: 1 juni 1998. Denna HOWTO siktar in sig på att göra fininställningen av din nyligen installerade Linux-burk snabbare och enklare. Här hittar du en upp- sättning inställningar för de vanligaste applikationerna, så att du kan börja arbeta med ett användbart system. ______________________________________________________________________ Innehållsförteckning 1. Inledning 1.1 Varför denna HOWTO 1.2 Vad vi kommer att konfigurera 1.3 Översättarens anmärkningar 2. Generell systemkonfigurering 2.1 Tangentbord 2.2 Saker som har att göra med kärnan 2.3 (TT 2.4 Hårddiskprestanda 2.5 Zip-drive i parallellporten 2.6 Enhets-drivrutiner (Device drivers) 2.7 Uppstartsmeddelanden 2.8 Värdmaskinens namn (Hostname) 2.9 Musen 2.10 Monteringsplatser 2.11 (TT 2.11.1 Säkerhetstips 2.12 Skrivarkonfigurering 3. Programkonfigurering 3.1 (TT 3.2 (TT 3.3 (TT 3.4 (TT 3.5 (TT 3.6 (TT 3.7 (TT 3.8 TeX med vänner 3.9 PPP 3.10 POP-klient 3.11 X-Window-systemet 3.12 Fortran 3.13 Användarens inställningar 3.14 Uppgradera 4. Slutet 4.1 Upphovsrätt 4.2 Läsarrespons 4.3 Tillkännagivanden ______________________________________________________________________ 1. Inledning 1.1. Varför denna HOWTO Jag har installerat Linux på många PCr och lagt märke till att de aktuella distributionerna är jättebra, men, irriterande nog, saknar vissa grund-läggande inställningar. De flesta applikationer kan startas direkt efter installeringen, men vissa ej. Vidare har jag lagt märke till att vissa frågor dyker upp på c.o.l.setup om och om igen. För att försöka göra något åt denna situation, och för att ha en påminnelse, när jag ska utföra nya installeringar, så skrev jag denna gör-si-och-gör-så-lista, som jag sedan utvidgade till denna HOWTO. Här hittar du en handfull konfigurations-exempel för de vanligaste applikationerna, programmen och tjänsterna, vilka bör spara dig en hel del tid och arbete. Några av exemplen som beskrivs i den här HOWTOn är till viss del distributions-beroende. Jag har bara tillgång till Red Hat- och Caldera OpenLinux-maskiner, så se inte mina tips som guds ord om du använder Slackware, Debian eller andra distributioner. Hur som helst, att läsa dokumentation och HOWTOn lönar sig alltid, så jag råder dig att göra det i alla fall. 1.2. Vad vi kommer att konfigurera Det finns ändlösa exempel på hårdvarukombinationer till PC, men enligt min erfarenhet är en ganska vanlig: en PC, utrustad med en stor hårddisk, vilken är uppdelad i tre partitioner (en för DOS/Windows, en för Linux och en för "swap"), ljudkort, modem, CD-ROM-spelare, skrivare och mus. En Zip-drive i parallellporten börjar också bli väldigt vanligt. Det är denna hårdvara jag kommer förutsätta att du vill konfigurera, men det är enkelt att tillämpa de följande tipsen på andra kombinationer. Det förutsätts, implicit, att du är root när du editerar/fixar/"hackar". Och nu är det dags att rulla upp ärmarna, pojkar. 1.3. Översättarens anmärkningar Uppdaterade dokumentet 13/11-98, genom att byta ut översättningen av "permissions" till "rättigheter", istället för det sämre "tillåtelser" 2. Generell systemkonfigurering 2.1. Tangentbord Först av allt så går vi igenom hur du ska konfigurera tangentbordet. Om du har missat det här steget under installeringen, eller om du har bytt ut tangentbordet, så måste du: · välja en passande "key table" från /usr/lib/kbc/keytables; t.ex. it.map, om du har ett italienskt tangentbord; · editera filen /etc/sysconfig/keyboard, så att det står: KEYTABLE="/usr/lib/kbd/keytables/it.map"; · för att ställa in tangent-repetition och -fördröjning får du lägga till den här raden till /etc/rc.d/rc.sysinit eller, om du har Caldera, /etc/rc.d/rc.boot: /sbin/kbdrate -s -r 16 -d 500 # eller vad du nu vill ha Nästa gång du startar upp datorn kommer tangentbordet fungera bra. För att ladda din nya "key table", utan att behöva starta om datorn kan du cd-a till /etc/rc.d/init.d och köra kommandot ./keytable start. 2.2. Saker som har att göra med kärnan Enligt min åsikt är nästa steg att bygga en kärna som passar ditt system. Det är väldigt enkelt, men i alla fall, läs README-filen i /usr/src/linux/ eller Kernel-HOWTOn. Tips: · tänk noga över dina behov. Att välja en kärn-konfiguration, "patcha" den och kompilera den en gång för alla, är mycket mer produktivtän att omkonfigurera och kompilera om den varje månad; det här stämmer extra bra om din Linux-burk är en server. Glöm inte att ta med stöd för all hårdvara det är troligt att du kommer att lägga till i framtiden (t.ex. SCSI, Zip, nätverkskort osv.); · om din PC är uppbyggd kring en Cyrix-processor, lägg till de rätta "patcharna" för att öka prestandan. Information finns på ; · de som har bärbara datorer kommer att vilja förbättra LCD-skärmens läsbarhet, genom att lägga till "Noblink-patchen". Senaste versionen heter noblink-X.X.tar.gz och finns tillgänglig på . Installera paketet och lägg sedan till följande rad till din /etc/profile: /usr/local/bin/cursor bgreen # eller någon annan färg · mer för de som använder bärbara datorer: om du planerar att använda ett PCMCIA-fax/modem, kompilera inte in seriellt stöd (serial support) som en modul; kompilera in det i själv kärnan, annars kommer inte ditt PCMCIA-modem att fungera; · kom ihåg att Linux inte kommer se ditt ljudkort, om du inte ställer in det ordentligt. I de flesta fall är det lätt, men kom ihåg att kompilera in alla alternativen (glöm inte /dev/dsp och /dev/sound); · om du får sådana där otrevliga meddelanden från modprobe, vilka indikerar att vissa moduler inte kan hittas, så innebär det att din /etc/conf.modules behöver ställas om. Om du inte använder ipx- och appletalk-modulerna så kan du lägga till följande rader: alias net-pf-4 off alias net-pf-5 off · För att spara tid, nästa gång du ska konfigurera om och kompilera om din kärna, så är det en bra idé att spara konfigurationen i en fil och spara den på ett säkert ställe. 2.3. sendmail -låsning På vissa system låser sendmail maskinen då den startas upp. Ett snabbt sätt att fixa det: se till så att /etc/hosts innehåller en rad som ser ut så här: 127.0.0.1 localhost Se också avsnittet ``Värdmaskinens namn (hostname)''. 2.4. Hårddiskprestanda Din hårddisks prestanda kan förbättras en hel del genom att på ett försiktigt sätt använda hdparm(8). Om din Linux-distribution inte innehåller det, så kan du hitta det på , leta efter en fil som heter hdparm-X.Y.tar.gz. Jag kan inte ge dig ett allmänt recept eftersom många detaljer beror på din hårddisk och dess "controller". Eftersom det finns en risk att du "grillar" ditt filsystem så råder jag dig att läsa man-sidan noggrant, innan du testar vissa möjligheter. Det allra enklaste du kan göra är att lägga till följande rad till /etc/rc.d/rc.sysinit: /sbin/hdparm -c1 /dev/hda # första IDE-disken vilket slår på (E)IDE 32-bitars in/ut-stöd. Angående "-m"-parametern, det här är vad programmeraren bakom hdparm, Mark Lord, skrev i ett e- brev till mig: (...) om ditt system använder komponenter från de senaste åren, så kommer det fungera bra. Är de äldre än så, så *kan* problem uppstå (ej troligt). De riktigt buggiga kretsarna var CMD0646 och RZ1000, vilka användes i *stor* utsträckning på 486- och (tidiga) 586- moderkort, för 2-3 år sedan. 2.5. Zip-drive i parallellporten För att använda parallellports-versionen av Zip-drive så kan du använda den standardiserade drivrutinen som kommer med aktuella (2.x.x) kärnor. Under kärn-konfigureringen, se till att SCSI-stöd och SCSI-disk- stöd finns påslagna (antingen i kärnan, eller som moduler). Kom ihåg att det kan bli konflikter mellan skrivaren och Zip-driven på samma parallell-port. Zip-diskar säljs förformatterade, med partitionen /dev/sda4. För att få Zippen att fungera, är allt du behöver skriva #~ chmod 666 /dev/sda4 # alla kan komma åt Zip-driven #~ insmod ppa och Zippen kan bli monterad som vanligt (det är bäst att du lägger till den sista raden i /etc/rc.d/rc.sysinit). Du kan också komma åt Zip- driven via mtools, genom att lägga till följande rad i din /etc/mtools.conf: drive z: file="/dev/sda4" exclusive Det finns dock en bättre ppa-drivrutin än den vanliga: ta en titt på . 2.6. Enhets-drivrutiner (Device drivers) Enheterna i /dev (eller rättare sagt, länkarna till de faktiska enhets- drivrutinerna) kanske inte finns. Se efter vilka enheter din mus, ditt modem och din CD-ROM-spelare motsvarar, och gör sedan följande: ~# cd /dev /dev# ln -s /dev/cua0 mouse /dev# ln -s /dev/cua1 modem /dev# ln -s /dev/hdb cdrom och, om du vill, gör en chmod 666 på dessa enheter (inte länkarna, utan de faktiska enheterna!) för att göra dem fullt åtkomliga för alla användare. Tips: på vissa bärbara datorer är mus-enheten /dev/psaux: tänk på det när du konfigurerar X11. Vidare kommer du vilja göra floppy-driven tillgänglig för andra användare än root, med chmod 666 /dev/fd*. Det här orsakar vissa säkerhetsproblem, om vilka jag inte känner till detaljerna. Kommentarer är välkomna. 2.7. Uppstartsmeddelanden Om du vill skräddary dina uppstartsmeddelanden, så titta efter om din /etc/rc.d/rc.local skriver över /etc/issue och /etc/motd. Om de gör det, starta din editor och kör igång. 2.8. Värdmaskinens namn (Hostname) Att ge kommandot hostname new_host_name räcker inte riktigt till. För att undvika den fruktade sendmail-låsningen, utför dessa steg: · editera /etc/sysconfig/network och byt ut "hostname" där (t.ex. new_host_name.localdomain); · editera /etc/HOSTNAME på motsvarande sätt; · lägg till det nya namnet på värd-maskinen i /etc/hosts: 127.0.0.1 localhost new_host_name.localdomain 2.9. Musen gpms mus-stöd är användbart för att klippa och klistra i tty-läge, och för att använda musen i vissa applikationer. Se efter så att du har en fil som heter /etc/sysconfig/mouse, vilken innehåller: MOUSETYPE="Microsoft" XEMU3=yes Vidare måste du ha en fil som heter /etc/rc.d/init.d/gpm. Du måste naturligtvis se till så att inställningarna är de rätta för din mustyp. Tips: på vissa bärbara datorer är mustypen, MOUSETYPE, "PS/2". Under Caldera är allt du behöver göra att lägga till den här raden till /etc/rc.d/rc.boot: /usr/bin/gpm 2.10. Monteringsplatser Det är praktiskt att ha monteringsplatser för floppyn och andra enheter. T.ex. så kan du göra följande: ~# cd /mnt /# mkdir a: ; mkdir floppy ; mkdir cdrom ; mkdir win ; mkdir zip Detta skapar monteringsplatser för en MS-DOS-floppy, en ext2-floppy, CD-ROMen, en DOS-partition och Zip-driven i parallell-porten. Modifiera nu /etc/fstab, genom att lägga till följande rader: /dev/fd0 /mnt/a: msdos user,noauto 0 1 /dev/fd0 /mnt/floppy ext2 user,noauto 0 1 /dev/cdrom /mnt/cdrom iso9660 ro,user,noauto 0 1 /dev/sda4 /mnt/zip vfat user,noauto 0 1 /dev/hda1 /mnt/win vfat user,noauto 0 1 Du måste givetvis ange de korrekta enheterna i varje rad. För att kunna komma åt fat32-partitioner, så måste du "patcha" din kärna, patch och information hittar du på . 2.11. lilo (8) och LOADLIN Många kör både Linux och DOS/Windows på sina PCr, och vill då datorn startas upp kunna välja vilket operativ-system som skall startas. Låt oss förutsätta att /dev/hda1 innehåller DOS/Windows och att /dev/hda2 innehåller Linux. Gör följande: ~# fdisk Using /dev/hda as default device! Command (m for help):a Partition number (1-4): 2 Command (m for help):w ~# Det här gör Linux-partitionen möjlig att starta upp ifrån (bootable); detta steg ska utföras av activate, då Lilos QuickInst körs, men det fungerar inte med min Red Hat. Skriv in följande grundläggande /etc/lilo.conf-fil: boot = /dev/hda2 compact delay = 50 # message = /boot/bootmesg.txt # skriv ditt eget root = current image = /boot/vmlinuz # startar Linux som standard, eftersom det är först label = linux other = /dev/hda1 table = /dev/hda label = dos Kör nu /sbin/lilo och du är klar. Eftersom lilo är en så viktig del av installeringen, så rekommenderar jag dig starkt att först läsa dokumentationen i alla fall. För att starta upp Linux från DOS/Windows, utan att "resetta", så kan du stoppa LOADLIN.EXE i en katalog (i DOS-partitionen!), som finns i DOS- sökvägen. Kopiera sedan kärnan till, säg C:\DOS\VMLINUZ. Följande .BAT- fil kommer starta upp Linux: rem linux.bat smartdrv /C loadlin c:\dos\vmlinuz root=/dev/hda2 r Om du använder Windows 95, så sätt egenskaperna för den här .BAT-filen så att den startas i MS-DOS-läge. 2.11.1. Säkerhetstips Att ta en säkerhetskopia av din MBR, innan du installerar Linux, kan rädda dig från en massa besvär. Använd restorrb (vilket kommer med FIPS- paketet) innan installeringen, eller så kan du använda Linux räddnings- diskett (rescue-floppy) och ge kommandot: rescue:~# dd if=/dev/hda of=MBR bs=512 count=1 och gör sedan åtminstone två kopior av MBR-filen, vilka du sparar på floppy-diskar. Om olyckan skulle vara framme, kommer du kunna åter- ställa din gamla MBR, genom att skriva: rescue:~# dd if=/mnt/MBR of=/dev/hda bs=446 count=1 förutsatt att en floppy-disk, vilken innehåller MBR, är monterad på /mnt. Alternativet är att använda en DOS-räddnings-diskett och köra FDISK /MBR 2.12. Skrivarkonfigurering Red Hat och Caldera har ett trevligt konfigureringsverktyg, printtool. För dig som inte använder någon av dessa distributioner följer den manuella konfigureringen. Låt oss förutsätta att du har en icke-PostScript-skrivare, som du vill använda till att skriva ut ren text (t.ex. filer med C-kod) och PostScript-filer via Ghostscript, vilket jag förutsätter att du redan har installerat. Att konfigurera skrivaren innehåller följande steg: · ta reda på vilken parallell-enhet skrivaren är på: pröva med ~# echo "hello, world" > /dev/lp0 ~# echo "hello, world" > /dev/lp1 och anteckna vilken som fungerar. · skapa två "spool"-kataloger: ~# cd /var/spool/lpd /var/spool/lpd/# mkdir raw ; mkdir postscript · om din skrivare visar prov på "trappstegs-effekten" (de flesta bläck- stråleskrivare gör det) så behöver du ett filter. Pröva att skriva ut två rader med ~# echo "första raden" > /dev/lp1 ; echo "andra raden" > /dev/lp1 Om utdatan ser ut så här: första raden andra raden så spara detta skalprogram som /var/spool/lpd/raw/filter: #!/bin/sh # Det här filtret gör processen kort med "trappstegs-effekten" awk '{print $0, "\r"}' och gör den körbar med chmod 755 /var/spool/lpd/raw/filter. · skapa ett filter för PostScript-emulering. Spara följande filter som 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 (i det här exemplet förutsätts att du har en HP DeskJet. Modifiera det så att det passar din skrivare.) · slutligen, lägg till följande saker till /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: För mera komplicerade och ovanliga skrivarinställningar, ta en titt på Printing-HOWTO. Om du använder printtool så ska du vara medveten om att GSDEVICE, som väljs av printtool, kommer fungera, men att det inte nödvändigtvis är det bästa för din skrivare. Du bör tänka över om du inte borde fippla lite med filen postscript.cfg. Jag ändrade t.ex. GSDEVICE från cdj500 till djet500, och nu skriver den ut mycket snabbare. 3. Programkonfigurering Vi ska ta en titt på följande konfigureringsfiler: /etc/profile /etc/bashrc .bashrc .bash_profile .inputrc .less .lessrc .xinitrc .fvwmrc .fvwm2rc95 .Xmodmap .Xdefaults .jedrc .abbrevs.sl .joerc .emacs . Lägg inte till några användare förrän du har konfigurerat färdigt ditt system; du ska stoppa in punktfilerna i /etc/skel. 3.1. bash (1) Följande huvudfiler skall modifieras, för att skräddarsy bash beteende: · /etc/bashrc innehåller alla systemvida alias och funktioner; · /etc/profile innehåller systemvida miljöprylar och startprogram; · $HOME/.bashrc innehåller användarens alias och funktioner; · $HOME/.bash_profile innehåller användarens miljö-prylar och start- program; · $HOME/.inputrc innehåller tangentbindningar och andra småsaker. Exempel på dessa filer visas nedan. Först och främst: /etc/profile. Den används för att ställa in en hel del egenskaper hos din Linux- burk, som du kommer se i de följande avsnitten. ______________________________________________________________________ # /etc/profile # Systemvida miljöer och startprogram # Funktioner och alias ska finnas i /etc/bashrc # Den här filen ställer in det följande: # # o sökväg # o prompter # o några miljövariabler # o färg-ls # o less # # Användare kan köra över dessa inställningar och/eller lägga till # andra i sina $HOME/.bash_profile # ställ in en lämplig sökväg echo $PATH | grep X11R6 > /dev/null if [ $? = 1 ] ; then # lägg till saker till sökvägen PATH="$PATH:/usr/X11R6/bin:$HOME/bin:." fi # låt användaren få reda på: login- och icke-login-skal. Om det är # login-skalet, ska prompten vara blå; annars magenta. Roots prompt # är röd. USER=`whoami` if [ $LOGNAME = $USER ] ; then COLOUR=44 else COLOUR=45 fi if [ $USER = 'root' ] ; then COLOUR=41 fi # lägg in en riktig "escape"-sekvens, istället för ~[. Gör följande: # emacs: ^Q ESC vi: ^V ESC joe: ` 0 2 7 jed: ` ESC # Ta bort `;1' om du inte gillar fetstils-attributet ESC=^[ PS1='$ESC[$COLOUR;37;1m$USER:$ESC[37;40;1m\w\$ ' PS2="Continue> " # inga core-dumpar, tack ulimit -c 0 # ange umask if [ `id -gn` = `id -un` -a `id -u` -gt 14 ]; then umask 002 else umask 022 fi # några variabler USER=`id -un` LOGNAME=$USER MAIL="/var/spool/mail/$USER" EDITOR=jed HOSTNAME=`/bin/hostname` HISTSIZE=1000 HISTFILESIZE=1000 export PATH PS1 PS2 USER LOGNAME MAIL EDITOR HOSTNAME HISTSIZE HISTFILESIZE # slå på färg-ls eval `dircolors /etc/DIR_COLORS -b` export LS_OPTIONS='-F -s -T 0 --color=tty' # skräddarsy less LESS='-M-Q' LESSEDIT="%E ?lt+%lt. %f" LESSOPEN="| lesspipe.sh %s" VISUAL=jed LESSCHARSET=latin1 export LESS LESSEDIT LESSOPEN VISUAL LESSCHARSET for i in /etc/profile.d/*.sh ; do if [ -x $i ]; then . $i fi done ______________________________________________________________________ Här är ett exempel på en /etc/bashrc: ______________________________________________________________________ # /etc/bashrc # Systemvida funktioner och alias # Miljöprylar ska vara i /etc/profile alias which="type -path" alias d="ls" alias dir="d" ______________________________________________________________________ Här kommer ett exempel på en .bashrc: ______________________________________________________________________ # $HOME/.bashrc # Globala källdefinitioner if [ -f /etc/bashrc ]; then . /etc/bashrc fi # det här behövs för att användaren ska få reda på att de är i ett # icke-login-skal if [ "$GET_PS1" = "" ] ; then COLOUR=45 # sätt in ett riktigt "escape"-tecken, istället för ^[ ESC=^[ PS1='$ESC[$COLOUR;37m`whoami`:$ESC[37;40m\w\$ ' export PS1 fi # alias alias cp='cp -i' alias l=less alias lyx='lyx -width 900 -height 700' alias mv='mv -i' alias rm='rm -i' alias x=startx # Några användbara funktioner inst() # Installera ett .tar.gz-arkiv i den aktuella katalogen. { gzip -dc $1 | tar xvf - } cz() # Lista innehållet i ett .zip-arkiv. { unzip -l $* } ctgz() # Lista innehållet i ett .tar.gz-arkiv. { for file in $* ; do gzip -dc ${file} | tar tf - done } tgz() # Skapa ett .tgz-arkiv á la zip. { name=$1 ; tar -cvf $1 ; shift tar -rf ${name} $* gzip -S .tgz ${name} } ______________________________________________________________________ Här kommer ett exempel på en .bash_profile: ______________________________________________________________________ # $HOME/.bash_profile # Användarspecifika miljö- och start-program # Den här filen innehåller användardefinierade inställningar, som kör # över de i /etc/profile # Ange alias och funktioner if [ -f ~/.bashrc ]; then GET_PS1="NO" # ändra inte promptfärgen . ~/.bashrc fi # Ange några "standard"-kataloger export CDPATH="$CDPATH:$HOME:$HOME/text:$HOME/text/geology" # fixa backspace i rxvt 2.45 if [ "$COLORTERM" != "" ] ; then stty erase ^? ESC=^[ # sätt in en riktig "escape"-sekvens, istället för ^[ echo -n "$ESC[36l" fi ______________________________________________________________________ Här är ett exempel på en .inputrc: ______________________________________________________________________ # $HOME/.inputrc # tangentbindningar "\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 # pip inte set meta-flag On # tillåt 8-bitars indata (accent-tecken) set convert-meta Off # "strippa" inte 8-bitars tecken set output-meta On # visa 8-bitars tecken korrekt set horizontal-scroll-mode On # "scrolla" långa kommando-rader set show-all-if-ambiguous On # efter att TAB tryckts ned ______________________________________________________________________ För att få backspace- och delete-tangenterna att fungera korrekt i en xterm, och andra X11-applikationer, så behövs också följande: · lägg in följande i din .xinitrc: usermodmap=$HOME/.Xmodmap xmodmap $usermodmap · lägg in detta i .Xmodmap: keycode 22 = BackSpace keycode 107 = Delete vilket fixar konsollen. För att fixa xterm: · lägg in följande i din .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 är en aning mer komplicerad, eftersom vissa inkompilerade alternativ påverkas dess beteende. Se exempel-.bash_profile ovan. Mer information finns i man-sidorna för bash(1) och readline(3). Räkna inte med att alla applikationer fungerar korrekt! Om du t.ex. kör joe i en xterm, så är det vissa tangenter som inte fungerar. Samma sak gäller för rxvt-versioner som är äldre än 2.21. 3.2. ls (1) ls kan visa kataloglistningar, med färger för att markera olika fil- typer. För att slå på detta ska du lägga till följande rader i /etc/profile: eval `dircolors /etc/DIR_COLORS -b` export LS_OPTIONS='-F -T 0 --color=tty' (Om du inte har filen /etc/DIR_COLORS, ta bort referensen till den i första raden.) Detta anger miljövariabeln LS_COLORS, vilken innehåller färglistan, vilken anges i /etc/DIR_COLORS. Observera: fråga mig inte varför, men det här fungerar inte i rxvt-versionen som är äldre än 2.21; använd något annat slags xterm istället. Det verkar som om rxvt har en bugg som hindrar det från att ta in miljön på ett korrekt sätt under vissa omständigheter. Calderas ls har inte färger, men det finns en motsvarighet till färg- ls. Lägg till följande i /etc/bashrc: alias ls="color-ls $LS_OPTIONS" 3.3. less (1) Med denna suveräna textvisare kan du inte bara bläddra igenom text- filer, utan även gzip-komprimerade filer, tar- och zip-arkiv, man- sidor och allt vad det är. Dess konfigurering innehåller följande steg: · för att använda less med förflyttnings-tangenterna, lägg in följande textfil, som .lesskey, i din hem-katalog: ^[[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 Kör sedan kommandot lesskey. Detta skapar en binär-fil, .less, vilken innehåller tangent-bindningarna. · skapa en fil /usr/bin/lesspipe.sh, som innehåller: ___________________________________________________________________ #!/bin/sh # Detta är en förprocessor för less. Den används när denna miljö- # variabel är angiven: LESSOPEN="|lesspipe.sh %s" lesspipe() { case "$1" in *.tar) tar tf $1 2>/dev/null ;; # Se innehållet i .tar- och .tgz-filer *.tgz|*.tar.gz|*.tar.Z|*.tar.z) tar ztf $1 2>/dev/null ;; *.Z|*.z|*.gz) gzip -dc $1 2>/dev/null ;; # Se packade filer korrekt *.zip) unzip -l $1 2>/dev/null ;; # Titta i arkiv *.arj) unarj -l $1 2>/dev/null ;; *.rpm) rpm -q -p -i -l $1 2>/dev/null ;; *.cpio) cpio --list -F $1 2>/dev/null ;; *.1|*.2|*.3|*.4|*.5|*.6|*.7|*.8|*.9|*.n|*.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 # det är inte något slags text strings $1 fi ;; esac } lesspipe $1 ___________________________________________________________________ och kom ihåg att göra den körbar med chmod 755 lesspipe.sh. lägg in följande rader i /etc/profile: LESS="-M-Q" # lång prompt, tyst LESSEDIT="%E ?lt+%lt. %f" # editera översta raden LESSOPEN="| lesspipe.sh %s" # filter VISUAL=jed # standard-editor; ange din favorit LESSCHARSET=latin1 # visa accent-tecken, om det behövs export LESS LESSEDIT LESSOPEN VISUAL LESSCHARSET Variabeln LESSCHARSET är beroende av det faktum att jag bor i Italien och vill använda tecken-uppsättningen ISO 8859/1 (Gäller även Sverige. övers.anm.) Ni amerikaner, japaner och ryssar bör inte ange den. 3.4. emacs (1) Jag använder inte emacs, så jag har bara några små råd att ge dig. Vissa emacs-distributioner kommer utan att vara förinställda för färg- och syntax-markering. Skriv detta i din .emacs: (global-font-lock-mode t) (setq font-lock-maximum-decoration t) Det här fungerar bara i X11. Jag lämnar arbetet med att gå igenom all emacs-dokumentation, till dig, för att komma på hur du ska ställa in det så att det passar dina behov. Det kan krävas flera månaders "hackande"... 3.5. joe (1) Vissa rapporterar att joe fungerar med färger under X11, men inte i tty. Vidare fungerar inte vissa special-tangenter. Vad jag vet så har ingen funnit en lösning på det första problemet; någon föreslog "hackande" i /etc/termcap. Om du stöter på det problemet så är en snabb och skitig (och oelegant) lösning: ~$ export TERM=vt100 ~$ joe min_fil (editera din fil) ~$ export TERM=linux 3.6. jed (1) Det här är min favoriteditor: den gör vad jag behöver, den väger lättare och är enklare att konfigurera än emacs och enligt min åsikt emulerar den andra editorer bättre. Många användare på mitt universitet vill ha jed för att emulera EDT, VMS system-editor. jeds konfigurerings-filer är .jedrc och /usr/lib/jed/lib/*; den förra kan kopieras från jed.rc i den senare katalogen. · för att få jed att använda vissa specialtangenter korrekt, skapa filen /usr/lib/jed/lib/defaults.sl, vars enda rad ser ut så här: () = evalfile("linux"); · editera /usr/lib/jed/lib/linux.sl: ta bort kommentaren från raden som säger Info_Directory = "/usr/info", och lägg till /bin/mail efter UCB_Mailer =; · att få jed att emulera EDT (eller andra editorer) är rättframt: du behöver bara modifiera några rader i .jedrc. Om du vill använda det numeriska tangentbordets "+" för att ta bort ord istället för enskilda tecken, lägg till följande till .jedrc: unsetkey("\eOl"); unsetkey("\eOP\eOl"); setkey("edt_wdel", "\eOl"); setkey("edt_uwdel", "\eOP\eOl"); efter raden som säger () = evalfile("edt");. · för att få xjed att använda det numeriska tangentbordet till EDT- emuleringen, infoga följande i .Xmodmap: keycode 77 = KP_F1 keycode 112 = KP_F2 keycode 63 = KP_F3 keycode 82 = KP_F4 keycode 86 = KP_Separator Vidare, se till att din /etc/X11/XF86Config innehåller de följande raderna: # ServerNumLock # must be commented out XkbDisable Detta gäller för XFree 3.2. Om du dock inte använder ett vanligt amerikanskt tangentbord, obeservera att "XkbDisable" kan ge dig en del problem. Dessa lämnar jag åt dig att upptäcka. · färginställningar för xjed görs genom att lägga till rader som dessa, i .Xdefaults: xjed*Geometry: 80x32+150+50 xjed*font: 10x20 xjed*background: midnight blue · "abbreviation"-funktionerna (förkortning. övers.anm.) är en ovärderlig tidssparare. Skapa en fil, $HOME/.abbrevs.sl, med följande innehåll: create_abbrev_table ("Global", ""); 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}"); % och så vidare... och knappa in ESC x abbrev_mode för att få det att starta. För att ha "abbreviation" på som standard, lägg till följande i din .jedrc: define text_mode_hook () { set_abbrev_mode (1); } % define fortran_hook () { set_abbrev_mode (1); use_abbrev_table ("Fortran"); } % och så vidare... 3.7. efax (1) Det här paketet är antagligen det mest praktiska för att på ett enkelt sätt skicka och ta emot fax. Du måste fininställa skal- programmet /usr/bin/fax. Det är ett lätt jobb, men några små saker gav mig en del huvudvärk: · DIALPREFIX: det finns en möjlighet att det inte räcker att använda "T" eller "P" i vissa länder. Lägg in "ATDT" eller "ATDP" istället; · INIT och RESET: dessa strängar innehåller initierarna "-i" och "-k", vilka efax behöver. Om du vill lägga till ett AT-kommando, så lägg till det till den lämpliga strängen, men utelämna "AT" och inled resten med antingen "-i" eller "-k". T.ex.: för att lägga till "ATX3"-kommandot till INIT, så lägger du till "-iX3". 3.8. TeX med vänner Jag kommer förutsätta att du har teTeX-distributionen. Jag har bara några saker att påpeka här: · för att konfigurera avstavnings-mönstret för ditt språk, editera filen /usr/lib/texmf/texmf/tex/generic/config/language.dat, och skriv sedan: ~# texconfig init ; texconfig hyphen · om du lägger till LaTeX-paketet, så kör kommandot texhash, så att teTeX får vetskap om det nya paketet, efter att du har lagt till filerna i /usr/lib/texmf/texmf/tex/latex/<. · om du vill ställa in dvips, så är filen att editera /usr/lib/texmf/texmf/dvips/config/config.ps. Du ska vara medveten om att fälten som rör standard-upplösningen också påverkar xdvis beteende; om du är med om irriterande försök att skapa typsnitt, varje gång du kör det, så lägg raden XDvi*mfmode: i .Xdefaults. Det bör hjälpa. 3.9. PPP Jag tar för givet att din kärna har PPP- + TCP/IP-stöd inkompilerat, att "loopback" finns tillgängligt och att du redan har pppd-paketet installerat och suid root. Det är även uppenbart att din ISP (internet- leverantör) måste stödja PPP. Det finns nu två sätt att få PPP att fungera: a) manuell konfigurering, och b) ett konfigureringsprogram som fixar det automagiskt. Vilket alternativ du än väljer, så se till att du har följande information till hands: · din ISPs telefon-nummer; · din ISPs "name server"; · din ISPs e-post- och nyhets-servrar; · din ISPs domän; · ditt användarnamn och lösenord; Manuell konfigurering är ett hundgöra. Det handlar om att editera filer och skriva skalprogram, inte så mycket jobb, men det är lätt att göra misstag och nybörjare avskräcks ofta av detta. PPP-HOWTOn är som gjord för dig. Alternativet är verktyg som ställer dig frågor om det ovanstående och gör allt arbetet. Det blir säkert mycket lättare om du går till en kompis som redan är uppkopplad och laddar ned något av de följande, trevliga verktygen: · ett X11-baserat verktyg är EzPPP, vars hemsida finns på . Det är väldigt enkelt att använda det är nästan självförklarande. · för tty-baserad uppkoppling, pröva verktygen som finns på . Ett av de bästa är pppsetup-X.XX.tar.gz. · det enklaste konfigureringsverktyget för tillfället är wvdial. Du matar det med din ISPs telefonnummer, ditt användarnamn, ditt lösen- ord, och du är igång. Från README-filen: `Det finns en (för till- fället ganska dålig) webb-sida om wvdial på: '. Ett väldigt fint verktyg. 3.10. POP-klient För att hämta din e-post från en POP-server, använder du en POP-klient som fetchpop eller fetchmail. Den senare är mer avancerad, och är antagligen det enda alternativet om din ISPs PPP-server inte kan handskas med LAST-kommandot. De finns på . För att konfigurera dessa klienter: · fetchpop: första gången du kör det så kommer du bli tillfrågad om en del information. Svara på frågorna och du är klar. · fetchmail: använd följande enkla .fetchmailrc: # $HOME/.fetchmailrc poll mbox.myisp.com with protocol pop3; user john there with password _Loo%ny is john here Du måste ange rättigheterna för filen med kommandot chmod 600 .fetch­ mailrc, annars kommer fetchmail vägra att starta. Det här exemplet är väldigt grundläggande, och förutsätter att du har en fungerande send­ mail. Det finns oändliga inställningsmöjligheter. Ta en titt på dem på . 3.11. X-Window-systemet Så fort du har fått X att fungera (rätt grafik-kort osv.), så har du oändliga inställningsmöjligheter, vilka även beror på vilken fönster- hanterare du använder. I vilket fall som helst, så handlar det om att editera en eller flera ASCII-filer i din hemkatalog. Beroende på fönsterhanteraren: · fvwm: kopiera /etc/X11/fvwm/system.fvwmrc till din hem-katalog som .fvwmrc, kolla igenom den och börja experimentera. Detta exempel på en .fvwmrc-fil är enligt min åsikt en aning för enkel och gör inte fvwm rättvisa. · fvwm95-2: kopiera /etc/X11/fvwm95-2/fvwm2rc95 till din hem-katalog, som .fvwm2rc95, editera den sedan. Detta exempel är ganska bra. · TheNextLevel: den här är aningen svårare att konfigurera. Kopiera /etc/X11/TheNextLevel/.* till din hem-katalog och gå noggrant igenom dem, och försök ställa in dem. Den första du ska titta på är .fvwm2rc.defines. Förutom dessa måste du även ha en passande .xinitrc. Ett exempel: #!/bin/sh # $HOME/.xinitrc # ställ in ett par tangenter ordentligt usermodmap=$HOME/.Xmodmap xmodmap $usermodmap xset s noblank # slå av skärmsläckaren xset s 300 2 # skärmsläckaren startar efter fem minuter xsetroot -solid "medium blue" & # rxvt spar en massa minne, men versioner äldre än 2.21 har buggar, # påverkar tangenterna och sättet på vilket miljön tas över. Upp- # gradera eller använd xterm istället. xterm -ls -bg black -fg white -sb -sl 500 -j -ls -fn 10x20 -fb 10x20bold \ -title "Color xterm" -geometry 80x25+150+0 & fvwm95-2 3.12. Fortran Enligt min erfarenhet så är Fortran-till-C-översättaren f2c, och dess fasad (front end) yaf77, ett bra alternativ till g77 om du behöver använda Fortran. Skaffa yaf77-X.Y.tgz från . 3.13. Användarens inställningar Det är en bra idé att låta en ny användare få vissa färdigställda konfigureringsfiler, när han/hon först loggar in. Lägg in följande filer i /etc/skel: .bashrc .bash_profile .bash_logout .inputrc .less .xinitrc .fvwmrc .fvwm2rc95 .Xmodmap .Xdefaults .jedrc .abbrevs.sl .joerc .emacs . Observera att .pinerc inte kan färdigställas helt i förväg; se i alla fall till att fälten user-domain, smtp-server och nntp-server är ordentligt inställda. 3.14. Uppgradera Om du uppgraderar din maskin, kom ihåg att spara ett par extra filer innan. Några av dessa är: /etc/X11/XF86Config, /usr/bin/fax, ... 4. Slutet 4.1. Upphovsrätt Om inget annat anges så tillhör upphovsrätten för Linux HOWTO-dokument sina respektive författare. Linux HOWTO-dokument får reproduceras och distribueras hela eller i delar, på vilket som helst medium, fysiskt eller elektroniskt, så länge upphovsrätts-avsnittet finns kvar i alla kopior. Kommersiell distribution är tillåten och uppmuntras; författaren vill dock få veta om eventuella sådana distributioner. Alla översättningar, härledda arbeten eller sammanplockade arbeten, vilka innehåller Linux HOWTO-dokument, måste täckas av denna upphovs- rätt. Alltså, du får producera ett härlett arbete från en HOWTO och lägga till ytterligare begränsningar på dess distribution. Undantag från dessa regler kan tillåtas under vissa förhållanden; var vänlig kontakta Linux HOWTO-samordnaren, på adressen nedan. Kort sagt, vi vill bidra till spridningen av denna information genom så många kanaler som möjligt. Vi önskar dock behålla upphovsrätten till HOWTO-dokumenten och vill bli underrättade om alla planer på vidare- distribuering av HOWTOna. Om du har några frågor, var vänlig kontakta Tim Bynum, Linux HOWTO- samordnare, på linux-howto@sunsite.unc.edu, via e-post. 4.2. Läsarrespons Den här HOWTOn behöver, kanske ännu mer än andra, dina förslag, din kritik, dina bidrag, och de är mycket välkomna. Respons är inte bara välkommen: den är nödvändig. Om du tycker att något fattas eller är fel, skicka mig ett e-brev. Om du har en annan distribution än Red Hat eller Caldera och dina konfigurerings-filer är annorlunda eller placerade i andra kataloger, var vänlig tala om detta för mig och jag ska ta med dina tips. Mitt mål är att göra livet med Linux så lätt som möjligt. Det finns ett enormt antal paket till Linux, så det är omöjligt att ta med instruktioner för dem alla. Var vänlig håll dina krav/förslag på en nivå av "de mest rimliga" programmen; jag överlåter det åt ditt sunda förnuft. 4.3. Tillkännagivanden "Config-HOWTOn" är skriven av Guido Gonzata, guido@ibogfs.cineca.it. Många tack till alla andra HOWTO-författare och man-sides-författare och -underhållare, vars arbete jag skamlöst har plundrat. Det här dokumentet levereras "som det är". Jag har lagt ned stor möda på att skriva det så korrekt som möjligt, men du får använda informationen i det på egen risk. Under inga omständigheter ska jag hållas ansvarig för några skador som resulterar av användandet av det här verket. Jag hoppas att du finner det här verket användbart. Varenda gång jag installerar en ny Linux-burk, så gör jag det... Håll till godo, Guido =8-)