  From DOS/Windows to Linux HOWTO - Swedish Version
  By Guido Gonzato, guido@ibogfs.cineca.it Svensk
  versttning: Linus kerlund, uxm165t@tninet.se
  v1.3.0, 15 April 1998. Svensk versttning, 4 juni 1998

  Den hr HOWTOn r tillgnad alla de (snart fre detta?) DOS- och Win
  dows-anvndare som just har tagit steget och bestmt sig fr att byta
  till Linux, den fria UNIX-klonen. Givet likheterna mellan DOS och
  UNIX, s r syftet med detta dokument att hjlpa lsaren att fra ver
  sina kunskaper om DOS och Windows till Linux-miljn, fr att kunna bli
  produktiv s fort som mjligt.
  ______________________________________________________________________

  Innehllsfrteckning




















































  1. Inledning

     1.1 r Linux rtt fr dig?
     1.2 Det r det. Bertta mera
        1.2.1 Inledande kommentarer
        1.2.2 Skaffa hjlp
     1.3 Konventioner
     1.4 versttarens anmrkningar

  2. Fr de otliga

  3. Filer och program

     3.1 Filer: inledande anmrkningar
     3.2 Symboliska lnkar
     3.3 Rttigheter (permissions) och garskap
     3.4 Filer: versttning av kommandon frn DOS till Linux
        3.4.1 Exempel
     3.5 Kra program: multitasking och sessioner
     3.6 Kra program p avlgsna datorer

  4. Anvnda kataloger

     4.1 Kataloger: inledande anmrkningar
     4.2 Katalog-rttigheter
     4.3 Kataloger: verstta kommandon frn DOS till Linux
        4.3.1 Exempel

  5. Floppy-diskar, hrddiskar och liknande

     5.1 Administrera enheter p DOS-sttet
     5.2 Administrera enhter p UNIX-sttet
     5.3 Ta skerhets-kopior

  6. Windows d?

  7. Skrddarsy systemet

     7.1 Systemets initierings-filer
     7.2 Programs initierings-filer

  8. Lite programmering

     8.1 Skal-program: .BAT-filer p anabola
     8.2 C sjlv

  9. Den terstende 1%

     9.1 Anvnda tar & gzip
     9.2 Installera program
     9.3 Tips du inte klarar dig utan
     9.4 Var du kan hitta program
     9.5 Ngra saker du inte kunde gra
     9.6 Vanliga filndelser och relaterade program
     9.7 Konvertera filer

  10. Slutet, fr tillfllet

     10.1 Upphovsrtt
     10.2 Tillknnagivanden


  ______________________________________________________________________



  1.  Inledning



  1.1.  r Linux rtt fr dig?

  S du vill byta frn DOS/Windows till Linux? Bra id, men akta dig:
  det kanske inte r anvndbart fr dig. Enligt min sikt finns det
  inget sdant som "den bsta datorn" eller "det bsta
  operativsystemet": det beror p vad man ska gra. Det r drfr jag
  inte tror att Linux r det bsta lsningen fr alla, ven om det,
  tekniskt sett, r verlgset mnga kommersiella operativsystem. Du
  kommer att tjna en enorm massa p att anvnda Linux, om du behver
  mjukvara fr programmering, Internet, TeX... teknisk mjukvara i
  allmnhet, men om du mest behver kommersiell mjukvara, eller om du
  inte knner fr att lra dig att skriva kommandon, leta ngon
  annanstans.

  Linux r inte (nu) s enkelt att anvnda och konfigurera som Windows
  eller Mac, s frbered dig p att "hacka" en del. Trots dessa
  varningar, lt mig ppeka att jag r 100% sker p att om du tillhr
  den rtta anvndar-typen s kommer Linux att bli ditt dator-Nirvana.
  Det r upp till dig. Och kom ihg att Linux + DOS/Windows kan
  samexistera p en och samma maskin, i alla fall.

  Frutsttningar fr den hr HOWTOn, jag kommer att anta att


    du knner till de grundlggande DOS-kommandona och -koncepten;

    Linux, eventuellt med X-Window-systemet, r korrekt installerat p
     din  PC;

    ditt skal---motsvarigheten till COMMAND.COM---r bash.

     Notera att, om inte annat anges, s r all information i det hr
     dokumentet riktad mot det "gamla dliga DOS". Det finns ett avsnitt
     om Windows, men kom ihg att Windows och Linux r helt och hllet
     olika, i motsats till DOS, som ett slags smre slkting till UNIX.
     Lgg ocks mrke till att det hr dokumentet varken r en komplett
     inledning, och ej heller en konfigurerings-handledning!


  1.2.  Det r det. Bertta mera

  Du installerade Linux och de program du behvde p din PC. Du gav dig
  sjlv ett anvndarkonto (om du inte gjorde det, skriv adduser nu!)
  och Linux fungerar. Du har just skrivit in ditt anvndarnamn och
  lsenord, och nu tittar du p skrmen och tnker: "Jaha, vad ska jag
  gra nu?"

  Frtvivla inte. Du r nstan frdig att gra samma saker som du frut
  gjorde i DOS/Win, och en hel del till. Om du krde DOS/Win istllet
  fr Linux, skulle du hlla p med ngra av fljande saker:


    kra program och skapa, kopiera, titta p, ta bort, skriva ut,
     ndra namn p filer;

    CD-a, MD-a, RD-a och DIR-a dina kataloger;

    formattera disketter och kopiera filer till och frn dem;

    skrddarsy systemet;


    skriva .BAT-filer och program i ditt favorit-sprk;

    den terstende 1%.

  Du kommer bli lttad nr du inser att dessa saker kan stadkommas
  under Linux, p ett stt som i mycket pminner om DOS. Under DOS
  anvnder den genomsnittlige anvndaren vldigt f av de mer n hundra
  tillgngliga kommandona: detsamma gller, till en del, ven fr Linux.


  1.2.1.  Inledande kommentarer

  Det bsta sttet att lra sig ngot r att g in i det. Du uppmanas
  starkt att experimentera och leka med Linux: du kan inte skada
  systemet p det sttet. Ngra ppekande:


    frst, hur du tar dig ur det. Fr att avsluta Linux: om du ser en
     textlges-skrm, tryck CTRL-ALT-DEL, vnta p att systemet fixar
     till sitt innanmte och upplyser dig om att allt r okej och stng
     sedan av din PC. Om du arbetar under X-Window-systemet, tryck frst
     CTRL- ALT-BACKSPACE, sedan CTRL-ALT-DEL. Sl aldrig av eller
     "resetta" din PC direkt: det kan skada ditt filsystem;


    i motsats till DOS s har Linux inbyggda skerhets-mekanismer,
     p.g.a.  sin fleranvndar-natur. Filer och kataloger har rttigheter
     (permissions), och drfr kan vissa av dem inte tillgs av den
     vanlige anvndaren; (see avsnittet ``Rttigheter och garskap'').
     DOS,  andra sidan, lter dig ta bort hela innehllet p
     hrddisken;

    det finns en speciell anvndare, som kallas "root": system-
     administratren, med fulla frmgar att ge liv t eller ta dd p
     maskinen. Om du arbetar p din egen PC, s kommer du vara root
     ocks.  Att arbeta som root r farligt: vilket misstag som helst
     kan skada eller frstra systemet, precis som i DOS/Win. Arbeta
     inte som root om det inte r absolut ndvndigt;

    mycket av komplexiteten hos Linux kommer frn dess extrema
     konfigurabilitet: i stort sett varje funktion och varje applikation
     kan stllas in genom en eller flera konfigurerings-filer.
     Komplexitet r priset man betalar fr kraft;

    omdirigering och "piping" r en sido-funktion under DOS, en vldigt
     viktig sdan, och mycket mera kraftfull, under Linux. Enkla
     kommandon kan bindas samman fr att stadkomma komplicerade saker.
     Jag freslr att du lr dig hur du kan anvnda dem.



  1.2.2.  Skaffa hjlp


  Det finns mnga stt att f hjlp med Linux. De viktigaste r:


    ls dokumentationen---jag menar det. ven om HOWTOn du lser kan
     fungera som en introduktion till Linux, s finns det flera bcker
     som du verkligen br lsa: Matt Welsh "Linux installation and
     getting started" (  <http://sunsite.unc.edu/mdw/LDP/gs/gs.html> ),
     Larry Greenfields "Linux user guide" (
     <ftp://sunsite.unc.edu/pub/Linux/docs/linux-doc-project/users-
     guide>), och Linux FAQ ( <http://sunsite.unc.edu/mdw/FAQ/Linux-
     FAQ.html>).  Du kan f ha dligt samvete tills du tminstone har
     lst en av dem;
    dokumentationen till de paket som finns installerade p din maskin
     finns oftast i underkataloger under /usr/doc/;

    fr att f en del hjlp om de "interna kommandona", skal-
     kommandona, skriv help eller, nnu bttre, man bash eller info
     bash;

    fr att f hjlp om ett kommando, skriv man kommando, vilket
     plockar fram manualen ("man-sidan") om kommando. Alternativt kan du
     skriva info kommando, vilket anropar, om den finns, info-sidan om
     kommando. Info r ett hypertext-baserat dokumentations-system,
     kanske inte s intuitivt i brjan. Slutligen kan du prva apropos
     kommando eller whatis kommando. Med alla de hr kommandona kan du
     trycka "q" fr att avsluta.



  1.3.  Konventioner


  Genom det hr verket kommer exemplen att flja detta format: <...> r
  ett argument som krvs, medan

  [...]


  Exempel:



       $ tar -tf <fil.tar> [> omdir_fil]




  fil.tar mste anges, men omdirigering till omdir_fil r valfritt.

  "LMS" betyder "var vnlig ls man-sidan fr mer information". Jag kan
  inte tillrckligt understryka hur viktigt det r att lsa
  dokumentation.

  Nr prompten i ett kommando-exempel r "#", s kan kommandot endast
  utfras av root.


  1.4.  versttarens anmrkningar

  Uppdaterade dokumentet 13/11-98, genom att byta ut versttningen av
  "permissions" till "rttigheter", istllet fr det smre "tilltelser"



  2.  Fr de otliga


  Vill du kra igng p direkten? Ta en titt p den hr tabellen:










  DOS                   Linux                 Anmrkningar
  ------------------------------------------------------------------------------

  BACKUP                tar -Mcvf enhet kat/  helt annorlunda
  CD katnamn\           cd katnamn/           nstan samma syntax
  COPY fil1 fil2        cp fil1 fil2          dito
  DEL fil               rm fil                varning - ingen "undelete"
  DELTREE katnamn       rm -R katnamn/        dito
  DIR                   ls                    inte riktigt samma syntax
  DIR fil /S            find . -namn fil      helt annorlunda
  EDIT fil              vi fil                tror inte du kommer gilla det hr
                        emacs fil             det hr r bttre
                        jstar fil             knns som DOS edit
  FORMAT                fdformat,
                        mount, umount         ganska annorlunda syntax
  HELP kommando         man kommando          samma filosofi
  MD katnamn            mkdir katnamn/        nstan samma syntax
  MOVE fil1 fil2        mv fil1 fil2          dito
  NUL                   /dev/null             dito
  PRINT fil             lpr fil               dito
  PRN                   /dev/lp0,
                        /dev/lp1              dito
  RD katnamn            rmdir katnamn/        nstan samma syntax
  REN fil1 fil2         mv fil1 fil2          inte med flera filer
  RESTORE               tar -Mxpvf enhet      annorlunda syntax
  TYPE fil              less fil              mycket bttre
  WIN                   startx                enorm skillnad!




  Om du behver mer n en tabell med kommandon, fortstt lsa.


  3.  Filer och program



  3.1.  Filer: inledande anmrkningar


  Linux har ett filsystem, vilket betyder "katalog-strukturen och
  filerna i den", som liknar DOS vldigt mycket. Filer har filnamn som
  fljer vissa regler, lagras i kataloger, vissa r krbara och vissa av
  dem har har kommando-parametrar. Vidare kan du anvnda "wildcard-
  tecken", omdirigering och "piping". Det finns bara ngra sm
  skillnader:


    under DOS r filnamnen i s kallat 8.3-format; t.ex. NOTENOUG.TXT.
     Under Linux har vi det bttre. Om du installerade Linux, med ett
     fil- system som ext2 eller umsdos, s kan du anvnda lngre filnamn
     (upp till 255 tecken) och med mer n en punkt i dem: t.ex.
     This_is.a.VERY_long.filename. Observera att jag anvnde bde stora
     och sm bokstver: faktiskt...

    s r det s att stora och sm bokstver i filnamn r annorlunda.
     FILENAME.tar.gz och filename.tar.gz r drfr tv olika filer.  ls
     r ett kommando, LS r en felskrivning;

     o Windows 95-anvndare kommer naturligtvis att vilja anvnda lnga
     fil- namn under Linux. Om ett filnamn innehller mellanslag (vilket
     inte rekommenderas, men r mjligt), s mste du innesluta
     filnamnet i citationstecken nr du vill referera till det. T.ex.:


  $ # fljande kommando skapar en katalog som heter "Mina gamla filer"
  $ mkdir "Mina gamla filer"
  $ ls
  Mina gamla filer    bin     tmp





  Vidare s finns det vissa tecken som inte br anvndas: ngra av dessa
  r !*$&.

    det finns inga obligatoriska filndelser som .COM och .EXE fr
     program, eller .BAT fr batch-filer. Krbara filer r markerade med
     en asterisk,* , p slutet av namnet, nr du kr kommandot ls -F.
     T.ex.:



       $ ls -F
       I_am_a_dir/   cindy.jpg    cjpg*   letter_to_Joe    my_1st_script*  old~





  Filerna cjpg* och my_1st_script* r krbara; "program". Under DOS slu
  tar skerhetskopiornas namn med .BAK, medan de under Linux slutar med
  ett tilde, "~", som gmda filer. Exempel: filen .I.am.a.hidden.file
  dyker inte upp efter ls-kommandot;

    parametrar till DOS-program skrivs som /parameter, medan Linux
     anvnder -parameter eller --parameter. Exempel: dir /s blir ls -R.
     Observera att mnga DOS-program, som PKZIP och ARJ, anvnder UNIX-
     liknande parametrar.

     Du kan nu g vidare till avsnitten ``verstta kommandon frn DOS
     till Linux'', men om jag var du skulle jag lsa vidare.


  3.2.  Symboliska lnkar

  UNIX har en filtyp som inte existerar under DOS: den symboliska
  lnken.  Du kan tnka p den som en pekare till en fil eller en
  katalog, och den kan anvndas istllet fr filen eller katalogen den
  pekar p; det liknar genvgarna i Windows 95. Exempel p symboliska
  lnkar r /usr/X11, vilken pekar p /usr/X11R6, och /dev/modem, vilken
  pekar p antingen /dev/cua0 eller /dev/cua1.

  Fr att skapa en symbolisk lnk:



       $ ln -s <fil_eller_katalog> <lnknamn>




  Exampel:



       $ ln -s /usr/doc/g77/DOC g77manual.txt



  Nu kan du hnvisa till g77manual.txt istllet fr /usr/doc/g77/DOS.
  Lnkar ser ut s hr i katalog-listningar:



       $ ls -F
       g77manual.txt@
       $ ls -l
       (diverse saker...)           g77manual.txt -> /usr/doc/g77/DOC






  3.3.  Rttigheter (permissions) och garskap

  DOS-filer och -kataloger har fljande attribut: A (arkiv), H (dolda),
  R (endast lsbara) och S (system). Endast H och R finns under Linux:
  dolda filers namn brjar med en punkt, och fr R-attributet, ls
  vidare.

  Under UNIX har en fil "rttigheter" och en gare, som i sin tur till-
  hr en "grupp". Titta p det hr exemplet:



       $ ls -l /bin/ls
       -rwxr-xr-x  1  root  bin  27281 Aug 15 1995 /bin/ls*




  Det frsta fltet innehller rttigheterna fr filen /bin/ls, vilken
  tillhr root, gruppen r bin. Om vi bortser frn den terstende
  informationen, lgg p minnet vad -rwxr-xr-x betyder, frn vnster
  till hger:


  - r filtypen (- = vanlig fil, d = katalog, l = lnk osv.); rwx r
  rttigheterna fr filens gare (ls (read), skriv (write) och kr
  (execute)); r-x r rttigheterna fr filgarens grupp (ls, kr); (Jag
  kommer inte att avhandla grupp-begreppet, du kan verleva utan det, s
  lnge du r nybrjare ;-) r-x r rttigheterna fr alla andra
  anvndare (ls, kr).

  Katalogen /bin har ocks rttigheter: see avsnitt ``Katalogers
  rttigheter'' fr mer detaljer.  Det r p.g.a. detta som du inte kan
  radera filen /bin/ls, om du inte r root: du har inte skriv-rttighet
  att gra detta. Fr att ndra en fils rttigheter, anvnd kommandot:



       $ chmod <vemXrttighet> <file>




  dr vem r u (anvndare (user), allts anvndaren), g (grupp), o
  (annan (other)), X r antingen + eller -, rttighet r r (ls), w
  (skriv) eller x (kr). Vanliga exempel p chmod r de fljande:



       $ chmod +x fil

  vilket stter kr-rttighet fr filen.



       $ chmod go-rw fil




  Det hr tar bort ls- och skriv-rttigheterna fr alla utom garen.



       $ chmod ugo+rwx fil




  Detta ger alla ls-, skriv- och kr-rttigheterna.



       # chmod +s fil




  det hr skapar en s kalla "setuid"- eller "suid"-fil---en fil som
  alla kan kra med dess gares rttigheter. Dessa kommer du typiskt att
  stta p som root-suid-filer.

  Ett kortare stt att referera till rttigheter r med nummer: rwxr-xr-
  x kan uttryckas som 755 (varje bokstav korresponderar till en bit: ---
  r 0, --x r 1, -w- r 2, -wx r 3 osv.). Det ser svrt ut, men med en
  del trning kommer du att frst konceptet.

  root, som super-anvndare, kan ndra allas filers rttigheter. LMS.


  3.4.  Filer: versttning av kommandon frn DOS till Linux


  Till vnster finns DOS-kommandona; till hger finns deras
  motsvarigheter under Linux.



       ATTRIB:         chmod
       COPY:           cp
       DEL:            rm
       MOVE:           mv
       REN:            mv
       TYPE:           more, less, cat




  Omdirigerings- och rrlednings-operatorer:  < > >> |

  "Wildcards": * ?

  nul:        /dev/null

  prn, lpt1:  /dev/lp0 or /dev/lp1; lpr


  3.4.1.  Exempel









       DOS                                     Linux
       ---------------------------------------------------------------------

       C:\GUIDO>ATTRIB +R FILE.TXT            $ chmod 400 file.txt
       C:\GUIDO>COPY JOE.TXT JOE.DOC           $ cp joe.txt joe.doc
       C:\GUIDO>COPY *.* TOTAL                $ cat * > total
       C:\GUIDO>COPY FRACTALS.DOC PRN         $ lpr fractals.doc
       C:\GUIDO>DEL TEMP                       $ rm temp
       C:\GUIDO>DEL *.BAK                     $ rm *~
       C:\GUIDO>MOVE PAPER.TXT TMP\          $ mv paper.txt tmp/
       C:\GUIDO>REN PAPER.TXT PAPER.ASC       $ mv paper.txt paper.asc
       C:\GUIDO>PRINT LETTER.TXT              $ lpr letter.txt
       C:\GUIDO>TYPE LETTER.TXT               $ more letter.txt
       C:\GUIDO>TYPE LETTER.TXT               $ less letter.txt
       C:\GUIDO>TYPE LETTER.TXT > NUL         $ cat letter.txt > /dev/null
               n/a                             $ more *.txt *.asc
               n/a                             $ cat section*.txt | less




  Notes:


    * r smartare under Linux: * matchar alla filer, utom de dolda; .*
     matchar alla dolda filer (men ocks den aktuella katalogen, ., och
     frldra-katalogen, ..: varning!); *.* matchar endast de som har en
     punkt i mitten, fljt av andra tecken; p*r matchar bde "peter" och
     "piper"; *c* matchar bde "picked" och "peck";

    nr du anvnder more, tryck <SPACE> fr att blddra genom filen,
     "q" fr att avsluta. less r mer intuitivt och lter dig anvnda
     pil-tangenterna.

    det finns ingen UNDELETE, s tnk dig fr innan du tar bort ngot;

    utver DOS < > >>, s har Linux 2> fr att omdirigera
     felmeddelanden (stderr); vidare s omdirigerar 2>&1 stderr till
     stdout, medan 1>:&2 omdirigerar stdout till stderr;

    Linux har ett annat "wildcard":

     []



  [abc]*


  matchar filer som brjar med a, b och c;

  *[I-N1-3]


  slutar med I, J, K, L, M, N, 1, 2 och 3;

    lpr <fil> skriver ut en fil i bakgrunden. Fr att kolla statusen p
     utskriftskn, anvnd lpq; fr att ta bort en fil frn utskriftskn,
     anvnd lprm;

    det finns ingen DOS-liknande RENAME; mv *.xxx *.yyy fungerar allts
     inte. Du skulle kunna prva fljande enkla skal-program; se
     avsnittet ``Skal-program: .BAT-filer p anabola'' fr detaljer.



     ___________________________________________________________________
     #!/bin/sh
     # ren: byt namn p flera filer enligt flera regler

     if [ $# -lt 3 ] ; then
       echo "anvndning: ren \"mnster\" \"ersttning\" filer..."
       exit 1
     fi

     OLD=$1 ; NEW=$2 ; shift ; shift

     for file in $*
     do
       new=`echo ${file} | sed s/${OLD}/${NEW}/g`
       mv ${file} $new
     done
     ___________________________________________________________________



  Varning: det beter sig inte som DOS REN, eftersom det anvnder reg
  uljra mnster (regular expressions), som du fortfarande inte vet
  ngot om. Om du bara vill byta ut filndelser, anvnd det s hr: ren
  "htm$" "html" *htm. Glm inte $-tecknet.

    anvnd cp -i och mv -i fr att f en varning nr en fil kommer att
     bli verskriven.



  3.5.  Kra program: multitasking och sessioner

  Fr att kra ett program, skriv in dess namn, som du skulle gra under
  DOS. Om katalogen (avsnittet ``Kataloger'') dr programmet r lagrat
  finns med i din skvg (avsnittet ``System-initiering''), s kommer
  programmet att startas. Undantag: i motsats till DOS, s startas inte
  ett program i den aktuella katalogen, under Linux, om den katalogen
  inte finns med i skvgen. Lsning: om prog r ditt program, skriv
  ./prog.

  S hr ser en typisk kommando-rad ut:



       $ command [-s1 [-s2] ... [-sn]] [par1 [par2] ... [parn]] [< input] [> output]




  dr -s1, ..., -sn r program-"switchar", par1, ..., parn r program-
  parametrar. Du kan ge flera kommandon p en rad:



       $ kommando1 ; kommando2 ; ... ; kommandon

  Det var allt fr denna gng om att kra program, men det r ltt att
  g bortom detta. En av huvudanledningarna till att anvnda Linux r
  att det r ett multi-taskande operativsystem: det kan kra flera
  program (frn och med nu: processer) samtidigt. Du kan kra igng
  processer i bakgrunden och fortstta arbeta med en gng. Vidare lter
  dig Linux ha flera sessioner: det r som att ha flera datorer som
  arbetar samtidigt!


    Fr att byta till session 1..6 p de virtuella terminalerna, tryck
     <ALT-F1> ... <ALT-F6>

    Fr att starta en ny session i samma virtuell terminal, utan att
     lmna den nuvarande, skriv su - <loginnamn>. Exempel: su - root.
     Detta r anvndbart t.ex. nr du behver utfra ngot, som bara
     root kan gra.

    Fr att avsluta en session, skriv exit. Om det finns stoppade jobb
     (mer om det senare), s blir du varnad.

    Fr att starta en process i bakgrunden, lgg till en ampersand "&"
     p slutet av kommando-raden:



       $ prognamn [-switchar] [parametrar] [< indata] [> utdata] &
       [1] 123





  skalet identifierar processen med ett jobb-nummer (t.ex.

  [1]

  nedan), och med en PID (Process identification Number; 123 i vrt
  exempel).

    Fr att se hur mnga processer som krs, skriv ps -ax. Detta kommer
     att visa en lista p den aktuella processerna.

    Fr att dda en process, skriv kill <PID>. Du kanske behver dda
     en process, om du inte vet hur man ska stnga den p rtt stt...
     Om du r root, s kan du dda andras processer. Ibland kan en
     process endast ddas med kill -SIGKILL <PID>.

     Utver detta lter dig skalet stoppa eller tillflligt pausa en
     process, skicka en process till bakgrunden och hmta fram en
     process frn bakgrunden till frgrunden. I denna kontext kallas
     processer fr "jobb".

    Fr att se hur mnga jobb som finns, tryck jobs. Hr identifieras
     jobben med sina jobb-nummer, inte sina PID.

    Fr att stoppa en process, som krs i frgrunden, tryck <CTRL-C>
     (det fungerar inte alltid).

    Fr att pausa en process som krs i frgrunden, tryck <CTRL-Z>
     (dito).

    Fr att skicka en pausad process till bakgrunden, skriv bg <jobb>
     (den blir ett jobb).

    Fr att plocka fram ett jobb till frgrunden, skriv fg <jobbgt;/.
     Fr att frgrunda det senast bakgrundade (r mitt sprk underligt?)
     jobbet, skriv bara fg.

    Fr att dda ett jobb, skriv kill <%jobb>, dr <jobb> kan vara 1,
     2, 3...

  Om du anvnder dessa kommandon kan du formattera en disk, zippa en
  bunt filer, kompilera ett program och packa upp ett arkiv, allt p
  samma gng, och fortfarande ha prompten tillgnglig. Frsk med det
  under DOS! Och frsk med Windows, bara fr att se skillnaden i
  prestanda (om det inte krashar, naturligtvis).


  3.6.  Kra program p avlgsna datorer


  Fr att kra ett program p en avlgsen maskin, vars IP-adress r
  remote.machine.edu, skriver du:



       $ telnet remote.machine.edu




  Efter att du loggat in r det bara att starta ditt favoritprogram.
  Jag behver naturligtvis inte ens nmna att du mste ha ett anvndar-
  konto p den andra maskinen.

  Om du har X11 s kan du till och med kra X-applikationer p en
  avlgsen dator, och visa det p din X-skrm. Sg att
  remote.machine.edu r den avlgsna X-datorn och local.linux.box r din
  Linux-maskin. Fr att, frn local.linux.box, kra ett X-program, som
  finns p remote.machine.edu, kan du gra fljande:


    kr igng X11, starta en xterm eller annan terminal-emulator, och
     skriv sedan:



       $ xhost +remote.machine.edu
       $ telnet remote.machine.edu





    efter att du loggat in, skriv:



       remote:$ DISPLAY=local.linux.box:0.0
       remote:$ prognamn &





  (istllet fr DISPLAY..., kan du bli tvungen att skriva: setenv DIS
  PLAY local.linux.box:0.0. Det beror p den andra maskinens skal.)

  Och voila! Nu kommer prognamn startas p remote.machine.edu och visas
  p din maskin. Frsk dock inte med det hr ver en PPP-lina, det r
  alldeles fr lngsamt fr att vara anvndbart.

  4.  Anvnda kataloger



  4.1.  Kataloger: inledande anmrkningar


  Vi har sett skillnaderna mellan filer under DOS och Linux. Vad gller
  kataloger, s heter rot-katalogen \ under DOS, under Linux heter den
  /. P samma stt r nstade kataloger tskilda med \ under DOS, och
  med / under Linux. Exempel p fil-skvgar:



       DOS:    C:\PAPERS\GEOLOGY\MID_EOC.TEX
       Linux:  /home/guido/papers/geology/middle_eocene.tex




  Som vanligt r .. frldra-katalogen (parent directory) och . r den
  aktuella katalogen. Kom ihg att systemet inte lter dig kra cd, rd
  eller md verallt, dr du vill. Varje anvndare brjar i sin
  hemkatalog, t.ex. /home/guido.


  4.2.  Katalog-rttigheter


  Kataloger har ocks rttigheter. Det vi lrt oss i avsnittet
  ``Rttigheter och garskap'' gller ven fr kataloger (anvndare,
  grupp och andra).  Fr en katalog innebr rx att du kan cd-a till den
  katalogen, och w innebr att du kan ta bort filer i den (beroende p
  filens rttigheter ocks, naturligtvis), eller katalogen sjlv.

  Till exempel, fr att frhindra andra anvndare frn att tjuvkika i
  /home/guido/text:



       $ chmod o-rwx /home/guido/text






  4.3.  Kataloger: verstta kommandon frn DOS till Linux




       DIR:            ls, find, du
       CD:             cd, pwd
       MD:             mkdir
       RD:             rmdir
       DELTREE:        rm -R
       MOVE:           mv








  4.3.1.  Exempel




       DOS                                     Linux
       ---------------------------------------------------------------------

       C:\GUIDO>DIR                            $ ls
       C:\GUIDO>DIR FILE.TXT                   $ ls file.txt
       C:\GUIDO>DIR *.H *.C                    $ ls *.h *.c
       C:\GUIDO>DIR/P                          $ ls | more
       C:\GUIDO>DIR/A                          $ ls -l
       C:\GUIDO>DIR *.TMP /S                   $ find / -name "*.tmp"
       C:\GUIDO>CD                             $ pwd
              n/a - se not                     $ cd
              dito                             $ cd ~
              dito                             $ cd ~/temp
       C:\GUIDO>CD \OTHER                      $ cd /other
       C:\GUIDO>CD ..\TEMP\TRASH               $ cd ../temp/trash
       C:\GUIDO>MD NEWPROGS                    $ mkdir newprogs
       C:\GUIDO>MOVE PROG ..                   $ mv prog ..
       C:\GUIDO>MD \PROGS\TURBO                $ mkdir /progs/turbo
       C:\GUIDO>DELTREE TEMP\TRASH             $ rm -R temp/trash
       C:\GUIDO>RD NEWPROGS                    $ rmdir newprogs
       C:\GUIDO>RD \PROGS\TURBO                $ rmdir /progs/turbo




  Noter:


  1. Nr du anvnder rmdir s mste katalogen som ska tas bort vara tom.
     Fr att ta bort en katalog och allt dess innehll, anvnd rm -R (p
     egen risk).

  2. Tecknet "~" r en genvg fr namnet p din hemkatalog.  Kommandona
     cd och cd ~ tar dig bda till din hemkatalog, frn den katalog dr
     du fr tillfllet r; kommandot cd ~/tmp tar dig till
     /home/ditt_hem/tmp.

  3. cd - "tar tillbaks" det senaste cd.



  5.  Floppy-diskar, hrddiskar och liknande


  Det finns tv stt att administrera enheter under Linux: DOS-sttet
  coh UNIX-sttet. Vlj sjlv.


  5.1.  Administrera enheter p DOS-sttet


  Det flesta Linux-distributioner kommer med Mtools-paketet, en
  uppsttning kommandon som fungerar precis som sina motsvarigheter
  under DOS, men brjar med ett "m": allts mformat, mdir, mdel, mmd
  osv. De kan till och med bevara lnga filnamn, men inte fil-
  rttigheter. Om du konfigurerar Mtools, genom att editera en fil som
  heter /etc/mtools.conf (ett exempel ges), s kan du komma t DOS/Win-
  partitioner, CD-ROM-spelaren och Zip-driven.

  Fr att formattera en tomdisk, s funkar dock inte mformat-kommandot.
  Du mste, som root, kra fljande kommando frst:
       # fdformat /dev/fd0H1440




  Observera att du inte kan komma t filerna p en diskett med ett
  kommando som, t.ex. less a:file.txt! Detta r en nackdel med DOS-
  sttet att montera disketter.


  5.2.  Administrera enhter p UNIX-sttet


  UNIX har ett annat stt att administrera enheter n DOS/Win. Det finns
  inga separata volymer som A: eller C:; en disk, vare sig det r en
  diskett eller ngot annat, blir en del av det lokala filsystemet,
  efter en operation som kallas "montering". Nr du r klar med den
  diskett, s mste du "avmontera" den, innan du tar ut den.

  Fysisk formattering av en diskett r en sak, och att skapa ett
  filsystem r en annan. DOS-kommandot FORMAT A: gr bda sakerna, men
  under Linux r de separata kommandon. Fr att formattera en diskett,
  se ovan; fr att skapa ett filsystem, gr fljande:



       # mkfs -t ext2 -c /dev/fd0H1440




  Du kan anvnda minix, vfat, dos eller andra format, istllet fr ext2.
  S fort disken r preparerad, montera den med kommandot



       # mount -t ext2 /dev/fd0 /mnt




  och specificera det korrekta filsystemet, om du inte anvnder ext2.
  Nu kan du komma t filerna p disketten. Allt du brukade gra med A:
  eller B: kan du nu gra, fast med /mnt istllet. Exempel:



       DOS                                     Linux
       ---------------------------------------------------------------------

       C:\GUIDO>DIR A:                         $ ls /mnt
       C:\GUIDO>COPY A:*.*                     $ cp /mnt/* .
       C:\GUIDO>COPY *.ZIP A:                  $ cp *.zip /mnt
       C:\GUIDO>EDIT A:FILE.TXT                $ jstar /mnt/file.txt
       C:\GUIDO>A:                             $ cd /mnt
       A:>_                                    /mnt/$ _




  Nr du r klar, s mste du avmontera disketten, innan du tar ut den.
  Anvnd kommandot




  # umount /mnt




  Det r naturligtvis s att du bara behver kra fdformat och mkfs p
  oformatterade disketter, inte sdana du redan har anvnt. Om du vill
  anvnda enhet B:, hnvisa till den som fd1H1440 och fd1, istllet fr
  fd0H1440 och fd0, i exemplen ovan.

  Jag behver egentligen inte nmna det, men det som r tillmpligt p
  disketter, r det ven p andra enheter; om du t.ex. vill montera en
  till hrddisk eller en CD-ROM-spelare. S hr monterar du en CD-ROM:



       # mount -t iso9660 /dev/cdrom /mnt




  Det dr var det "officiella" sttet att montera diskar, men det finns
  ett litet knep vi kan ta till. Eftersom det r ngot av ett
  irritations- moment att behva vara root fr att montera en floppy-
  disk eller CD-ROM, s kan varje anvndare tilltas att montera dem, p
  fljande stt:


    som root, gr fljande:



       # mkdir /mnt/a: ; mkdir /mnt/a ; mkdir /mnt/cdrom
       # chmod 777 /mnt/a* /mnt/cd*
       # # se till s att CD-ROM-enheten r den rtta
       # chmod 666 /dev/hdb ; chmod 666 /dev/fd*





    lgg de fljande raderna till /etc/fstab:



       /dev/cdrom      /mnt/cdrom  iso9660 ro,user,noauto          0       0
       /dev/fd0        /mnt/a:     msdos   user,noauto             0       0
       /dev/fd0        /mnt/a      ext2    user,noauto             0       0





  Fr att montera en DOS-diskett, en ext2-diskett och en CD-ROM, kan du
  nu skriva:



       $ mount /mnt/a:
       $ mount /mnt/a
       $ mount /mnt/cdrom





  /mnt/a, /mnt/a:, och /mnt/cdrom kan nu anvndas av alla anvndare. Kom
  ihg att det r en stor skerhets-risk att lta vem som helst montera
  enheter, om det nu r ngot du bryr dig om.

  Tv anvndbara kommandon r df, vilket ger information om de monterade
  filsystemen, och du katnamn, vilket rapporterar hur mycket ytrymme som
  tas upp av varje katalog.


  5.3.  Ta skerhets-kopior


  Det finns flera paket som kan hjlpa dig med detta, men det absolut
  minsta du kan gra fr att ta en skerhetskopia p flera volymer r
  (som root):



       # tar -M -cvf /dev/fd0H1440 kat_att_kopiera/




  Se till att du har en formatterad diskett i stationen och flera andra
  redo.  Fr att f tillbaks grejerna, stt i den frsta disketten i
  stationen och skriv:



       # tar -M -xpvf /dev/fd0H1440





  6.  Windows d?


  "Motsvarigheten" till Windows r det grafiska systemet X11. I motsats
  till Windows och Mac, s skapades inte X11 fr att vara enkelt att
  anvnda eller fr att se snyggt ut, utan bara fr att erbjuda grafiska
  mjligheter p UNIX arbetsstationer. Det finns ngra huvudsakliga
  skillnader:


    Medan Windows ser ut och knns p samma stt ver hela vrlden, s
     gr inte X11 det: det finns mycket mer du kan stlla in i det. X11s
     utseende och knsla kommer av en huvudkomponent som kallas
     "fnster- hanterare"; det finns mnga att vlja mellan. Den
     vanligaste r fvwm, grundlggande men trevlig och minnessnl,
     fvwm2-95 och The Next Level, plus flera andra. Fnster-hanteraren
     anropas vanligtvis frn en bil som heter .xinitrc;

    din fnster-hanterare kan konfigureras s att ett fnster beter sig
     som i, h, Windows: du klickar p det och det hamnar i frgrunden.
     En annan mjlighet r att det hamnar i frgrunden nr muspekaren
     befinner sig i det ("fokus"). Placeringen av fnster p skrmen kan
     ocks vara antingen automatisk eller interaktiv: om en konstig ram
     dyker upp, istllet fr ditt program, vnster-klicka dr du vill
     att det ska dyka upp;

    de flesta saker kan skrddassys, genom att modifiera en eller flera
     konfigurerings-filer. Ls dokumentation om din fnster-hanterare:
     konfigureringsfilen kan vara .fvwmrc, .fvwm2rc95, .steprc osv.  Ett
     exempel p en konfigureringsfil hittar du i typfallet i
     /etc/X11/fnster-hanterar-namnet/system.fnster-hantera-namnet;
    X-applikationer r skrivna med hjlp av speciella bibliotek
     ("widget sets"); eftersom flera olika r tillgngliga, s ser
     applikationerna olika ut. Det mest grundlggande av dessa r Athena
     widgets (2-D- utseende; xdvi, xman, xcalc); andra anvnder Motif
     (netscape), ytterligare andra anvnder Tcl/Tk, XForms, Qt och allt
     vad det nu r.  Vissa, inte alla, av dessa bibliotek ger ungefr
     samma utseende och knsla som Windows;

    hm, inte riktigt. Knslan kan, olyckligtvis, vara inkonsekvent.  Om
     du t.ex. markerar en textrad, genom att anvnda musen, och trycker
     <BACKSPACE>, s rknar du med att raden ska frsvinna, eller hur?
     S fungerar det inte med Athena--baserade applikationer,  men det
     gr det med Motif, Qt, Gtk och Tcl/Tk;

    hur scrollnings-listerna och storleksfrndringarna fungerar beror
     p frnster-hanterare och "widget set". Tips: om du upptcker att
     scrollnings-listerna inte upptrder som du frvntat dig, prova att
     anvnda den mittersta mus-knappen, eller de tv knapparna
     tillsammans, fr att flytta dem;

    applikationer har inte en ikon som standard, men de kan ha mnga.
     De flesta fnster-hanterar har en meny, som du kommer t genom att
     tryck p bakgrunden ("rot-fnstret"); denna meny kan naturligtvis
     skrddarsys.  Fr att byta ut rot-fnstrets utseende kan du anvnda
     xsetroot eller xloadimage;

    urklippsarean kan endast innehlla text, och upptrder konstigt.
     S fort du har markerat text, s finns den i urklippsarean: flytta
     ngon annanstans och tryck ned mittenknappen, fr att klistra in
     den. Det finns ett program, xclipboard, som ger dig flera urklipps-
     buffrar;

    dra och slpp r ett alternativ, och r bara tillgngligt om du
     anvnder X11-applikationer som stdjer det.

  Fr att spara minne ska man anvnda applikationer som anvnder samma
  bibliotek, men det kan vara svrt att gra detta i praktiken.

  K Desktop Enviroment r ett projekt som siktar p att f X11 att se ut
  och uppfra sig konsekvent, som Windows; det r fortfarande p tidig
  beta-niv, men tro mig, det r suvernt. Rikta din webb-lsare mot
   <http://www.kde.org>.


  7.  Skrddarsy systemet



  7.1.  Systemets initierings-filer

  Tv viktiga filer under DOS r AUTOEXEC.BAT och CONFIG.SYS, vilka
  anvnds fr att initiera systemet, ange ngra milj-variabler, ssom
  PATH och FILES, och eventuellt kra igng ngra program eller batch-
  filer, d du startar systemet. Under Linux finns det ett flertal
  initierings-filer, av vilka vissa r sdana som du nog inte ska ge dig
  p, innan du vet exakt vad du sysslar med. Jag ska bertta vilka de
  viktigaste r, i alla fall:




       FILES                                   NOTES

       /etc/inittab                            rr inte den nu!
       /etc/rc.d/*                             dito

  Om allt du behver gra r att ange

  $$PATH



  [skvg]


  andra milj- variabler, eller om du vill byta ut login-meddelandet,
  eller automatiskt kra igng ett program efter inloggningen, kan du ta
  en titt p fljande filer:



       FILER                                   ANMRKNINGAR

       /etc/issue                              anger pre-login-meddelandet
       /etc/motd                               anger post-login-meddelandet
       /etc/profile                            anger $PATH och andra variabler osv.
       /etc/bashrc                             anger alias och funktioner osv.
       /home/your_home/.bashrc                 anger dina alias + funktioner
       /home/your_home/.bash_profile   eller
       /home/your_home/.profile                anger milj + startar dina program




  Om de senare filerna existerar (observera att de r dolda filer), s
  kommer de att lsas in efter att du loggat in, och kommandona i dem
  kommer att utfras.

  Exempel---titta p denna .bash_profile:


  ______________________________________________________________________
  # Jag r en kommentar
  echo Milj:
  printenv | less   # ekvivalent med SET-kommandot under DOS
  alias d='ls -l'   # ltt att frst vad ett alias r
  alias up='cd ..'
  echo "Pminner dig om att skvgen r "$PATH
  echo "Idag r det `date`"  # anvnder utdatan frn kommandot 'date'
  echo "Ha det s trevligt, "$LOGNAME
  # Det fljande r en "skal-funktion"
  ctgz() # Lista innehllet i ett .tar.gz-arkiv
  {
    for file in $*
    do
      gzip -dc ${file} | tar tf -
    done
  }
  # slut p .profile
  ______________________________________________________________________



  $PATH och $LOGNAME r, ja, du gissade rtt, milj-variabler. Det finns
  mnga andra att leka med; LMS fr applikationer som less och bash.


  7.2.  Programs initierings-filer

  Under Linux kan i stort sett allt skrddarsys, s att det passar dig.
  De flesta program har en eller flera initierings-filer som du kan
  fippla med, ofta i stil med .programnamnrc, i din hemkatalog. De
  frsta du kommer vilja modifiera r:


     .inputrc: anvnds av bash fr att definiera tangent-bindningar;

     .xinitrc: anvnds av startx fr att initialisera X-Window-
     systemet;

     .fvwmrc: anvnds av fnster-hanteraren fvwm.

     .joerc: anvnds av editorn joe;

     .jedrc: anvnds av editorn jed;

     .pinerc: anvnds av e-postprogrammet pine;

     .Xdefault: anvnds av mnga X-program.

  Fr alla dessa och andra du stter p senare, LMS. Som en avslutande
  anmrkning, lt mig rekommendera att du tar en titt p Configuration
  HOWTO p
    <http://sunsite.unc.edu/mdw/HOWTO/Config-HOWTO.html> .



  8.  Lite programmering



  8.1.  Skal-program: .BAT-filer p anabola


  Om du anvnde .BAT-filer fr att skapa genvgar till lnga kommando-
  rader (jag gjorde det en massa), s kan du gra detta genom att ange
  lmpliga alias-rader (se exempel ovan) i profile eller .profile. Men
  om dina .BAT-filer var mera komplicerade s kommer du lska skal-
  programmerings-sprken som finns i varje skal: de r kraftfulla som
  QBasic, om inte kraftfullare. De har variabler, konstruktioner som
  while, for, case, if... then... else och en massa andra egenskaper: de
  kan vara bra alternativ till "riktiga" programmerings-sprk.

  Fr att skriva ett skal-program, motsvarigheten till .BAT-filer under
  DOS, s r allt du behver gra att skriva en vanlig ASCII-fil, som
  innehller instruktioner, spara den och gra den krbar, med kommandot
  chmod +x <skal-program-fil>. Fr att kra den, skriv dess namn.

  Ett varningens ord r hr p sin plats. System-editorn heter vi, och
  enligt mina erfarenheter s finner de flesta nybrjare den vldigt
  svr att anvnda. Jag tnker inte frklara hur du ska anvnda den, fr
  jag gillar den inte och anvnder den inte, s nu vet du det. Det
  rcker med att jag sger fljande hr:


    fr att infoga text, skriv "i", sen texten;

    fr att ta bort tecken, skriv <ESC>; sen "x";

    fr att avsluta vi utan att spara, skriva <ESC>; sen :q!

    fr att spara och avsluta, skriv <ESC>, sen :wq.

  En bra editor fr nybrjare r joe: anropar du den genom att skriva
  jstar, s fr du samma tangent-kombinationer som DOS-editorn.  jed i
  WordStar- eller IDE-lge r annu bttre. Se avsnittet ``Var du fr tag
  p program'' fr att f reda p var du kan f tag p dessa editorer.

  Att skriva skal-program under bash r ett s stort mne att det tar en
  bok sjlv, och jag tnker inte g djupare in p mnet. Jag ger bara
  ett exempel p ett skal-program, frn vilket du kan lra dig vissa
  grundlggande regler:


  ______________________________________________________________________
  #!/bin/sh
  # sample.sh
  # jag r en kommentar
  # ndra inte frsta raden; den mste vara dr
  echo "Systemet r: `uname -a`" # anvnd utdatan frn kommandot
  echo "Mitt namn r $0" # inbyggda variabler
  echo "Du gav mig fljande $# parametrar: "$*
  echo "Den frsta parametern r: "$1
  echo -n "Vad heter du? " ; read ditt_namn
  echo observera skillnaden: "hej $ditt_namn" # citerar med "
  echo observera skillnaden: 'hej $ditt_namn' # citerar med '
  DIRS=0 ; FILES=0
  for file in `ls .` ; do
    if [ -d ${file} ] ; then # om filen r en katalog
      DIRS=`expr $DIRS + 1`  # DIRS = DIRS + 1
    elif [ -f ${file} ] ; then
      FILES=`expr $FILES + 1`
    fi
    case ${file} in
      *.gif|*jpg) echo "${file}: grafik-fil" ;;
      *.txt|*.tex) echo "${file}: text-fil" ;;
      *.c|*.f|*.for) echo "${file}: kllkods-fil" ;;
      *) echo "${file}: vanlig fil" ;;
    esac
  done
  echo "det finns ${DIRS} kataloger och ${FILES} filer"
  ls | grep "ZxY--!!!WKW"
  if [ $? != 0 ] ; then # sista kommandots exit-kod
    echo "ZxY--!!!WKW inte funnen"
  fi
  echo "det rcker... skriv 'man bash' fr mer info."
  ______________________________________________________________________





  8.2.  C sjlv


  Under UNIX r C system-sprket, vare sig du gillar det eller ej.
  Massor av andra sprk (FORTRAN, Pascal, Lisp, Basic, Perl, awk...)
  finns ocks tillgngliga.

  Om vi frutstter att du kan lite om C, s kommer hr ngra regler fr
  de av er som har blivit bortskmda med Turbo C++ eller ngon av dess
  slktingar under DOS. Linux C-kompilator heter gcc och saknar alla de
  "flashiga" egenskaper som vanligtvis finns med i DOS motsvarigheter:
  ingen IDE, on-line hjlp, integrerad avlusare osv. Det r bara en r
  kommando-rads-kompilator, som r vldigt kraftfull och effektiv. Fr
  att kompilera det gamla goda hello.c, skriver du:



       $ gcc hello.c




  vilket skapar en krbar fil som heter a.out. Fr att ge det krbara
  programmet ett annat namn skriver vi



       $ gcc -o hola hello.c




  Fr att lnka in ett bibliotek i programmet, lgg till switchen
  -l<biblioteksnamn>. T.ex., fr att lnk in matematik-biblioteket,
  skriv:



       $ gcc -o mathprog mathprog.c -lm




  (--l<biblioteksnamn>-switchen tvingar gcc att lnka in biblioteket
  /usr/lib/lib<bibltioteksnamn>.a, s -lm nkar in /usr/lib/libm.a).

  S lngt r allt gott. Men nr du har ett program som bestr av flera
  kllkods-filer, s kommer du att behva anvnda make-verktyget. Lt
  oss frutstta att du har skrivit en uttrycks-tolkare: dess kllkods-
  fil heter tolkare.c och #inkluderar tv "header"-filer, tolkare.h och
  xy.h. Sen vill du anvnda rutinen tolkare.c i ett program, sg kalk.c,
  vilket i sin tur #inkluderar tolkare.h. Vilken rra! Vad mste du nu
  gra fr att kompilera kalk.c?

  Du blir tvungen att skriva en s kallad makefile, vilken talar om fr
  kompilatorn vilka "beroenden" som finns mellan kllkod och objekt-
  filer.  I vrt exempel:


  ______________________________________________________________________
  # Det hr r en makefile, vilken anvnds fr att kompilera kalk.c
  # Anvnd TAB-tangenten dr det r lmpligt!

  kalk:     kalk.o tolkare.o
  <TAB>gcc -o kalk kalk.o tolkare.o -lm
  # kalk beror av tv objekt-filer: kalk.o och tolkare.o

  kalk.o:   kalk.c tolkare.h
  <TAB>gcc -c kalk.c
  # kalk.o beror av tv kllkods-filer

  tolkare.o:   tolkare.c tolkare.h xy.h
  <TAB>gcc -c tolkare.c
  # tolkare.o beror av tre kllkods-filer

  # slut p makefile.
  ______________________________________________________________________



  Spara denna fil som Makefile och skriv make fr att kompilera ditt
  program; som alternativ kan du spara den som kalk.mak och skriva make
  -f kalk.mak, och naturligtvis ska du LMS. Du kan anropa hjlp om C-
  funktionerna, som avhandlas av man-sidorna, sektion 3, t.ex.:




  $ man 3 printf




  Fr att avlusa dina program, anvnd gdb. info gdb lr dig hur du ska
  anvnda det.

  Det finns en massa bibliotek tillgngliga dr ute; bland de frsta du
  kommer vilja anvnda finns ncurses, som tar hand om olika effekter i
  text-lge, och svgalib, som kan fixa grafik. Om du knner dig till-
  rckligt tuff fr att tackla X-programmering, finns det bibliotek som
  de ovan nmnda XForms, Qt, Gtk och mnga andra, med vilka du ltt kan
  skriva X11-program. Ta en titt p
  <http://www.xnet.com/~blatura/linapp6.html> .

  Mnga editorer kan fungera som ett IDE; emacs och jed, t.ex., och ven
  ge sdana funktioner som syntax-markering, automatisk indentering osv.
  Alternativet r att skaffa rhide-paketet frn
  <ftp://sunsite.unc.edu:/pub/Linux/devel/debuggers/>.  Det r en kopia
  av Borlands IDE, och det finns vissa mjligheter att du kommer att
  gilla det.



  9.  Den terstende 1%


  Mer n 1%, faktiskt...



  9.1.  Anvnda tar & gzip


  Under UNIX finns det vissa, vldigt ofta anvnda, applikationer fr
  att arkivera och komprimera filer. tar anvnds fr att arkivera: det
  r som PKZIP, men utfr ingen komprimering, det bara arkiverar. Fr
  att skapa ett nytt arkiv, skriv:



       $ tar -cvf <arkiv_namn.tar> <fil> [fil...]




  Fr att packa upp filer frn ett arkiv:



       $ tar -xpvf <arkiv_namn.tar> [fil...]




  Fr att lista innehllet i ett arkiv:



       $ tar -tf <arkiv_namn.tar> | less





  Du kan komprimera filer med compress, men det r gammalt och br inte
  anvndas lngre, eller gzip:



       $ compress <fil>
       $ gzip <fil>




  som skapar en komprimerad fil med ndelsen .> (compress) eller .gz
  (gzip). Dessa program kan bara komprimera en fil i taget. Fr att
  packa upp, skriv:



       $ compress -d <fil.Z>
       $ gzip -d <fil.gz>




  LMS.

  Verktygen unarj, zip och unzip (PK??ZIP-kompatibla) finns ocks
  tillgngliga. Filer med ndelsen .tar.gz eller .tgz (arkiverade med
  tar och sedan komprimerade med gzip) r lika vanlig i UNIX-vrlden,
  som .ZIP-filer r under DOS. S hr listar du innehllet i ett
  .tar.gz- arkiv:



       $ tar -ztf <file.tar.gz> | less






  9.2.  Installera program


  Frst av allt mste jag ppeka att det r roots jobb att installera
  applikationer. Vissa Linux-applikationer distribueras som .tar.gz-
  arkiv, vilka i typfallet innehller en katalog som heter paketnamn/,
  och innehller filer och/eller underkataloger. En bra regel r att
  installera dessa paket frn /usr/local med kommandot



       # tar -zxf <arkiv.tar.gz>




  och sedan lsa README- eller INSTALL-filen. I mnga fall distribueras
  paketet som kllkod, vilket innebr att du mste kompilera det fr att
  skapa binrfilerna; ofta rcker det att skriva make och sedan make
  install. Du behver naturligtvis gcc- eller g++-kompilatorerna.

  Andra arkiv kan du bli tvungen att packa upp frn /; det r fallet med
  Slackwares .tgz-arkiv. Andra arkiv innehller filerna, men ingen
  underkatalog. Lista alltid innehllet i en katalog, innan du
  installerar det.

  Debian- och Red Hat-distributionerna har sina egna arkiv-format: .deb
  och .rpm respektive. Det senare brjar bli vitt accepterat: fr att
  installera ett .rpm-paket, skriv



       # rpm -i paket.rpm






  9.3.  Tips du inte klarar dig utan


  Kommando-komplettering: tryck <TAB> nr du skriver ett kommando, fr
  att komplettera kommando-raden. Exempel: du r tvungen att skriva gcc
  this_is_a_long_name.c; att skriva gcc thi<TAB> rcker. (Om du har
  andra filer som brjar med samma tecken, skriv tillrckligt mnga fr
  att gra namnet unikt.)

  Baktscrollning: om du trycker <SHIFT + PAGE UP> (den gra knappen) s
  kan du scrolla bakt ett par sidor, beroende p hur mycket grafik-
  minne du har.

  terstlla skrmen: om du rkar kra more eller cat p en binr-fil,
  s fylls skrmen upp av skrp. Fr att fixa det, skriv (utan att se)
  reset, eller fljande tecken-sekvens: echo CTRL-V ESC c RETURN.

  Klistra in text: i konsollen, se nedan; i X, klicka och dra fr att
  markera texten i en xterm, klicka sedan med mitten-knappen (eller bda
  knapparna tillsammans, om du har en mus med tv knappar) fr att
  klistra in.  xclipboard (endast fr text) finns ocks; bli inte
  frvirrad av dess lngsamma reaktioner.

  Anvnda musen: Om du har installerat gpm, en musdrivrutin fr
  konsollen, s kan du klicka och dra fr att markera text, sedan
  hgerklicka fr att klistra in markerad text. Fungerar ven ver olika
  virtuella terminaler.

  Meddelanden frn krnan: ta en titt p /var/adm/messages eller
  /var/log/messages, som root, fr att se vad krnan har att sga dig,
  inklusive uppstarts-meddelanden. Kommandot dmesg r ocks praktiskt.


  9.4.  Var du kan hitta program


  Om du undrar om det finns program som kan erstta dina gamla fr
  DOS/Win, s frslr jag att du kollar igenom de Linux-resurser som
  finns:
    <ftp://sunsite.unc.edu/pub/Linux> ,
   <ftp://tsx-11.mit.edu/pub/linux> , and
   <ftp://ftp.funet.fi/pub/Linux> .  Ett annat suvernt stller r
  "Linux applications and utilities page", p
    <http://www.xnet.com/~blatura/linapps.shtml> .



  9.5.  Ngra saker du inte kunde gra


  Linux kan gra en himla massa saker som var krngliga, svra eller
  omjlig att gra med DOS/Win. Hr kommer en kort lista, fr att reta
  din aptit:
    at lter dig kra program vid en angiven tidpunkt;

    awk r ett enkelt men kraftfullt sprk fr att manipulera datafiler
     (och inte bara det). T.ex., om data.dat r en datafil med flera
     flt, s skriver



       $ awk '$2 ~ "abc" {print $1, "\t", $4}' data.dat





  ut flten 1 och 4 i varje rad i data.dat, vars andra flt innehller
  "abc".

    cron r anvndbart fr att utfra vissa saker med jmna mellanrum,
     p speciella datum och tidpunkter. Skriv man 5 crontab.

    file <filnamn> talar om vilken sort fil filnamn r (ASCII-text,
     krbar, arkiv osv.);

    find (se ven avsnittet ``Kataloger: att verstta kommandon frn
     DOS/Win till Linux'') r ett av de mest kraftfulla och anvndbara
     kommandona. Det anvnds fr att hitta filer som matchar flera
     beskrivningar och utfr vissa saker med dem. Ett gerenellt stt att
     anvnda det r:



       $ find <katalog> <uttryck>





  dr <uttryck> innehller skningskriterier och tgrder. Exempel:



       $ find . -type l -exec ls -l {} \;





  hittar alla filer som r symboliska lnkar och visar vart de pekar.



       $ find / -name "*.old" -ok rm {} \;





  hittar alla filer som matchar mnstret och tar bort dem, efter att ha
  frgat om lov frst.



       $ find . -perm +111



  hittar alla filer vars rttigheter matchar 111 (krbara).



       $ find . -user root





  hittar alla filer som tillhr root. Massor av mjligheter hr---LMS.

    grep hittar text-mnster i filer. T.ex. s listar



       $ grep -l "geology" *.tex





  filerna *.tex som innehller ordet "geology". Varianten zgrep fungerar
  p gzippade filer. LMS;

    reguljra mnster r ett komplicerat men vldigt kraftfullt stt
     att utfra sknings-operationer p text. T.ex. s matchar

     ^a[^a-m]X{4,}txt$


  tecken som helst, utom ngon i intervallet a-m, fljt av fyra eller
  flera "X" och slutar med ".txt". Du anvnder reguljra mnster med
  avancerade editorer, less och mnga andra program. man grep fr en
  introduktion.

    script <skal-programs-fil> skickar skrm-innehllet till skal-
     programs-fil, tills du ger kommandot exit. Anvndbart fr
     avlusning;

    sudo tillter anvndare att utfra vissa av roots uppgifter (t.ex.
     att formattera och montera diskar; LMS);

    uname -a ger dig information om ditt system;

    Fljande kommandon kan vara praktiska: bc, cal, chsh, cmp, cut,
     fmt, head, hexdump, nl, passwd, printf, sort, split, strings, tac,
     tail, tee, touch, uniq, w, wall, wc, whereis, write, xargs, znew.
     LMS.



  9.6.  Vanliga filndelser och relaterade program


  Du kommer att stta p massor av filndelser. Bortsett frn ngra av
  de mer ovanliga (d.v.s. typsnitt osv.), s kommer hr en lista p vad
  som r vad:


    1 ... 8: man-sidor. Om du r frn Mars, och allts inte har det,
     skaffa man.

    arj: arkiv gjorda med arj.


    dvi: utdata-filer frn TeX (se nedan). xdvi fr att titta p dem;
     dvips fr att omvandla dem till PostScript (.ps).

    gz: arkiv gjorda med gzip.

    info: info-fil (typ som ett alternativ till man-sidor). Skaffa
     info.

    lsm: Linux Software Map-fil. Det r en ren ASCII-fil som innehller
     en beskrivning av paketet.

    ps: PostScript-fil. Fr att titta p den, eller skriva ut den,
     skaffa gs och, valfritt, ghostview eller gv.

    rpm: Red Hat-paket. Du kan installera det p ditt system med hjlp
     av paket-hanteraren rpm.

    taz, tar.Z: arkiv skapade med tar och komprimerade med compress.

    tgz, tar.gz: arkiv skapade med tar och komprimerade med gzip.

    tex: text-fil som ska skickas vidare till TeX, ett kraftfullt
     typsttnings-system. skaffa paketet tex, vilket kommer med de
     flesta distributioner: men akta dig fr NTeX, vilken har korrupta
     typsnitt, och kommer med vissa versioner av Slackware.

    texi: texinfo-fil, kan producera bde TeX- och info-filer (cp.
     info). Skaffa texinfo.

    xbm, xpm, xwd: Grafik-filer. Skaffa xpaint.

    Z: arkiv skapade med compress.



  9.7.  Konvertera filer


  Om du behver skicka text-filer mellan DOS/Win och Linux, s se upp
  med "slut-p-raden"-problemet. Under DOS avslutas varje text rad med
  CR/LF (vagnretur och ny rad), medan det under Linux endast r LF. Om
  du vill frska editera en DOS-text under Linux, s kommer antagligen
  varje rad sluta med ett konstigt "M"-tecken; en Linux-textfil under
  DOS, kommer var en enda lng rad, utan stycken. Det finns ngra
  verktyg, dos2unix och unix2dos, fr att konvertera filerna.

  Om dina filer innehller accenterade tecken, se till s att de r
  skapade under Winders (med t.ex. Write eller Notepad) och inte under
  DOS; annars komer alla accenterade tecken att bli frstrda.

  Fr att konvertera Word- och WordPerfect-filer till ren text, s r
  det lite krngligare, men mjligt. Du behver ett av verktygen som
  finns p CTAN-sajten: ett r   <ftp://ftp.tex.ac.uk> . Skaffa paketet
  word2x frn katalogen /pub/tex/tools, eller testa ett av paketen i
  katalogen /pub/tex/support. Jag har bara testat word2x, ocoh det
  fungerar ganska bra.


  10.  Slutet, fr tillfllet


  Gratulerar! Du har nu greppat en liten del av UNIX och r redo att
  brja jobba. Kom ihg att din kunskap om systemet fortfarande r
  begrnsad, och att du frvntas trna mera med Linux, fr att kunna
  anvnda det utan alltfr stora problem. Men om allt du behver gra r
  att skaffa en bunt applikationer och brja jobba med dem, s r jag
  sker p att det jag har tagit med hr rcker till.

  Jag r sker p att du kommer att trivas med Linux och fortstta lra
  dig mer om det, det gr alla. Jag r ocks sker p att du aldrig
  kommer vilja g tillbaks till DOS! Jag hoppas att jag har gjort mig
  frstdd och gjort mina 3-4 lsare en tjnst.


  10.1.  Upphovsrtt

  Om inget annat anges s tillhr upphovsrtten fr Linux HOWTO-dokument
  sina respektive frfattare. Linux HOWTO-dokument fr reproduceras och
  distribueras hela eller i delar, p vilket som helst medium, fysiskt
  eller elektroniskt, s lnge upphovsrtts-avsnittet finns kvar i alla
  kopior. Kommersiell distribution r tillten och uppmuntras;
  frfattaren vill dock f veta om eventuella sdana distributioner.

  Alla versttningar, hrledda arbeten eller sammanplockade arbeten,
  vilka innehller Linux HOWTO-dokument, mste tckas av denna upphovs-
  rtt. Allts, du fr producera ett hrlett arbete frn en HOWTO och
  lgga till ytterligare begrnsningar p dess distribution. Undantag
  frn dessa regler kan tilltas under vissa frhllanden; var vnlig
  kontakta Linux HOWTO-samordnaren, p adressen nedan.

  Kort sagt, vi vill bidra till spridningen av denna information genom
  s mnga kanaler som mjligt. Vi nskar dock behlla upphovsrtten
  till HOWTO-dokumenten och vill bli underrttade om alla planer p
  vidare- distribution av HOWTOna.

  Om du har ngra frgor, var vnlig kontakta Tim Bynum, Linux HOWTO-
  samordnare, p linux-howto@sunsite.unc.edu, via e-post.


  10.2.  Tillknnagivanden


  "From DOS to Linux HOWTO" r skriven av Guido Gonzato,
  guido@ibogfs.cineca.it.  Mnga tack till Matt Welsh, frfattaren till
  "Linux installation and getting started", till Ian Jackson,
  frfattaren till "Linux frequently asked questions with answers", till
  Giuseppe Zanetti, frfattaren till "Linux", till alla mnniskor som
  skickat mig e-post med frslag, och speciellt till Linus Torvalds och
  GNU som gav oss Linux.

  Det hr dokumentet levereras som det r. Jag har lagt ner mycket
  anstrngningar p att skriva det s att det stmmer s bra som
  mjligt, men du fr anvnda informationen i det p egen risk. Under
  inga omstndigheter skall jag hllas ansvarig fr ngra skador, som
  resulterar ur anvndningen av detta arbete.

  All respons r vlkommen. Knn dig vlkommen att kontakta mig med
  frgor, frslag, "flames" osv.

  Ha det kul i Linux och livet,

  Guido   =8-)










