Kap 4: Arbeidsøkt i Linux

rediger

Etter installasjonen. For å kunne bruke Linux må du være registrert som Linux-bruker på en maskin som har installert Linux. Du har fått et brukernavn og ditt eget passord. Har du nettopp installert Linux selv på en PC, kan det være bare én Linux-bruker som er definert, og det er systemadministrator (root). Hvordan du definerer nye Linux-brukere er beskrevet i kapittel 19. NB! Jeg anbefaler sterkt at du definerer en vanlig bruker som noe av det første du gjør. Du bør bare bruke maskinen som root når du skal konfigurere systemet. Ellers bør du av sikkerhetsmessige grunner være logget på som en vanlig bruker.

Brukernavn og passord

rediger

Alle brukere som er registrert på en Linux-maskin, har et loginnavn/brukernavn og et hemmelig passord. Hver bruker har sitt eget område på disken som vi kaller brukerens hjemmekatalog. Standard hjemmekatalog i Linux er /home/loginnavn. Alle brukere er også medlem i én eller flere grupper. Loginnavn (kalles også bruker-id) er som regel navn som er knyttet til brukerens eget navn. Jeg pleier vanligvis å bruke fornavn, etternavn, prosjektnavn, initialer, firmanavn osv. Brukernavnet eller loginnavnet må som regel være minimum 5 tegn og maksimum 8 tegn (kan være lengre på noen systemer). Loginnavnet bør ikke bestå av store bokstaver og bør ikke begynne med et tall eller et spesialtegn. Passordet kan bestå av maksimalt 256 tegn med både små og store bokstaver, men ikke kontrolltegn.

Logge inn under Linux

rediger

For å logge deg inn på Linux-maskinen gjør du slik:

1. Slå på maskinen

2. Du får nå opp åpningsskjermbildet, som kan se slik ut:

 

Figur 4.1: Grafisk Innlogging under Fedora Linux Åpningsbildet kan også være tegnbasert.

Kommentar til passordet

rediger

Passordet vises av sikkerhetsgrunner ikke på skjermen. For å hindre at uvedkommende kommer inn på systemet, kan det være lurt å skifte passord (passwd) med jevne mellomrom. Har du gjort en feil, får du en melding som dette:

   Fedora release 34
   Kernel 5.12-12 on an x86-64
   login: david{{{}}}H{{{{{{}}}}}}H{{{^}}}H
   Password:
   Login incorrect
   login: Du må da prøve å logge deg inn på nytt. Husk at hver gang du har skrevet en kommando, må du trykke Enter.

Terminalvindu

rediger

Hvis du har logget deg inn i et grafisk grensesnitt, vil du kunne velge kommandoer via ikoner, menyer og museklikk. Jeg vil her ta videre utgangspunkt i det tegnbaserte grensesnittet. Fra det grafiske grensesnittet kan du få fram et tegnbasert grensesnitt på tre forskjellige måter:

       * Åpne et terminalvindu i det grafiske grensesnittet
       * Avslutte det grafiske grensesnittet med for eksempel Control-Alt-Backspace eller et menyvalg

Gå over i et skjermbasert konsoll med Control-Alt-F1 (til F6) I det tegnbaserte grensesnittet er du i Linux-skallet. Skallet er den programdelen som håndterer kommunikasjonen mellom deg som bruker og operativsystemet Linux. Terminalledeteksten (skall-ledeteksten) viser at Linux nå er klar til å ta i mot dine kommandoer. Hvordan ledeteksten ser ut, avhenger av skalltypen.

Ledeteksten [david@nittedal david]$ viser at jeg kjører Linux' bash-skall, som er det mest brukte skallet under Linux. Bourne-skall kan også indikeres med $. Er du systemadministrator (root), vil ledeteksten være #. Under Linux er det vanlig at både root og brukere har bash-skallet som standard. Men du kan selv velge andre skall, for eksempel tcsh (mer om de forskjellige skallene i kapitlene 16 og 18).

Kommandoer fra Linux-skallet

rediger
   * Når du har ledeteksten framme, kan du gi kommandoer. Det gjør du på denne måten:
   * Skriv kommandoen. Hvis du for eksempel ønsker en oversiktskalender for 2008, skriver du cal 2008.
   * Trykk Enter. Oversikts-kalenderen for 2008 kommer nå på skjermen. Videre i boken vil jeg ikke forklare så detaljert hva du skal gjøre for å gi en kommando. Jeg vil skrive kommandoen over slik:
   [david@nittedal david]$ cal 2008 Dette betyr da at du først skriver inn cal 2008 og så trykker Enter. 

Redigeringstaster i skallet

rediger

Tastene som brukes til redigering, kan variere fra system til system. Følgende taster er mye brukt:

Redigeringstaster Beskrivelse
BACKSPACE Sletter tegnet foran markør
"<Ctrl-U>" Sletter en hel linje
"<Ctrl-C>" Avbryter kommando/program
DEL Avbryter kommando/program
"<Ctrl-S>" Stopper midlertidig utføring av kommando/program
ENTER Skallet søker gjennom brukerens PATH etter kommando/program, og starter programmet hvis det finnes.

Hjelp under Linux

rediger

For å hjelpe deg å bruke de forskjellige Linux-kommandoene, har Linux flere hjelpesystemer. I dette avsnittet går jeg gjennom kommandoene man, whatis, help og info. Felles for alle disse kommandoene er at de kjøres i et terminalvindu. Vi ser også på hvordan du kan få hjelp i de grafiske grensesnittene GNOME og KDE. Til slutt viser jeg deg hvordan du kan finne informasjon i LDP (Linux Documentation Project) databasen.

Hjelp med man-kommandoen

rediger

Linux har et «manual»-system med et dokument pr. kommando. Du får tilgang til disse manualsidene med man-kommandoen. Skriver du man og navnet på en Linux-kommando, får du en full beskrivelse av de forskjellige opsjonene og argumentene som kan brukes til kommandoen. Med man kan du slå opp på en kommando i en seksjon eller slå opp på en side. Man er forkortelsen for manual. Syntaksen fra kommandolinjen er: man [kommando]

   Under viser jeg eksempler fra kommandolinjen.
   [david@nittedal david]$ man man Gir mer informasjon om man. Du trykker på q (quit) for å gå ut av man.
   [david@nittedal david]$ man ls Gir opplysninger om kommandoen ls.
   [david@nittedal david]$ man bash Gir opplysninger om bash-skallet (NB: Dette dokumentet er langt). Ønsker du en papirutgave, skriver du:
   [david@nittedal david]$ man -t bash | lpr Ønsker du å bruke dokumentasjonen i en tekstfil må den reformateres. Dette kan gjøres med følgende kommando:
   [david@nittedal david]$ man bash | col -b > dokumentasjon.txt 

Hjelp med whatis-kommandoen

rediger

Problemet med man er den kan presentere veldig mye informasjon. Dersom man bare ønsker å se et 1-linjes sammendrag av hva en kommando gjør, kan man bruke whatis-kommandoen. Ved hjelp av kommandoen makewhatis opprettes det en database på maskinen din over de mest brukte Linux-kommandoene. Disse kan du søke på ved bruke kommandoen whatis. Kjører du SuSE Linux er det unødvendige å kjøre makewhatis. Da databasen er allerede er på plass. Informasjonen du får med kommandoen whatis er på et overordnet nivå. For opprette denne database må du logge inn som systemadministrator.

   [root@nittedal /root]# makewhatis Det lages nå en database over alle man-dokumenter på din maskin. Denne kommandoen kan ta noen minutter. Nå er vi klar til prøve whatis:
   [david@nittedal david]$ whatis bash Her får jeg informasjon om bash-skallet.
   [david@nittedal david]$ whatis lpr Her får jeg informasjon om utskrift ved hjelp av lpr-kommandoen. 

Hjelp med hjelp-kommandoen

rediger

Skallet har egne innebygde kommandoer. For å få litt hjelp hvordan disse brukes, må du bruke en egen kommando: help. . Denne kommandoen er nyttig hvis du ønsker å lage batch-programmer (mer om batch-programmer i kapittel 16) under for eksempel bash eller hvis du ønsker å optimalisere ditt bash-miljø. Du kan få hjelp om alle innebygde kommandoer og parametere som finnes i bash-skallet. Syntaksen er: help [kommando] Ønsker du hjelp om bash-skallet, kan du skrive:

   [david@nittedal david]$ help Her får du Linux' innebygde hjelp for bash-skall.
   [david@nittedal david]$ help history Gir opplysninger om kommandoen history i skallet bash. Skriver du bare help, får du en oversikt. 

Hjelp med info-kommandoen

rediger

Linux har også et eget enkelt hypertekst-hjelpesystem, utviklet lenge før HTML og HTTP. Ønsker du mer omfattende informasjon enn hva kommandoene man (xman) og help (bare skallet) kan gi, bør du prøve dette hjelpesystemet ved å gi kommandoen info. Men for å ha nytte av systemet, må du lære deg de vanligste tastetrykkene inne i hjelpesystemet (se nedenfor, eller prøv «info info»). Syntaksen er:

   info [infotekst/kommando] Skriver du bare info, starter du på toppen av informasjonstreet. 

[david@nittedal david]$ info

Her kan du bruke markør-, tab- og Enter-tastene til å flytte deg nedover eller oppover i informasjonstreet. Ønsker du for eksempel å vite mer om Linux-tar-kommandoen, kan du skrive direkte:

   [david@nittedal david]$ info tar 

Hjelp via LDP-databasenLinux Documetation Project (LDP) har påtatt seg å å dokumentere forskjellige løsninger under Linux i form av HOWTOer, Guider og FAQer. Mye av dette arbeidet tar Linux-distributørene å legger inn i sine distribusjoner. I nesten alle Linux-distribusjoner blir denne informasjonen lagt inn i /usr/share/doc-katalogen. Dokumentasjonsdatabasen kan du lese med Linux-kommandoene less, more eller cat. Mer oppdatert informasjon om LDP finner du på webadressen:

http://ldp.linux.no/ Du kan selv kopiere denne informasjonen til din /usr/share/doc-katalog. La oss si at du ønsker å vite mer om pakkede filer, ZIP:

[david@nittedal david]$ cd /usr/share/doc/zip-2.3 Her går jeg først ned på ZIP-dokumentasjonskatalogen.

[david@nittedal zip-2.3]$ less *

Den siste kommandoen sendes alle dokumentasjonsfilene som ligger i denne katalogen til skjermen. Nå kan du lese filene. Ønsker du dokumentasjonen i HTML-format, går du ned i katalogen /usr/share/doc/HTML. Populære spørsmål og svar finner du i katalogen /usr/share/doc/FAQ og /usr/share/doc/"tema"/FAQ. Du vil finne at noen Linux-distribusjoner har plassert populære spørsmål i katalogen /usr/doc/FAQ.

I katalogene /usr/share/doc/HOWTO og /usr/share/doc/-"tema"/HOWTO finner du en beskrivelse av hvordan man setter opp de forskjellige Linux-tjenester og funksjoner. Filene her er pakket med programmet gzip. Ønsker du å lese HOWTO-filene direkte, kan du bruke Linux-kommandoen zless. Hvis du ønsker å vite hvordan du setter opp et lydkort, gjør du følgende:

[david@nittedal david]$ cd /usr/share/doc/HOWTO

[david@nittedal HOWTO]$ zless Sound-HOWTO.gz Den siste kommandoen pakker ut filen slik at du kan lese den på skjermen. Hvis filen ikke er pakket, kan du skrive:

[david@nittedal HOWTO]$ less Sound-HOWTO I katalogen /usr/share/doc/HOWTO/mini finner du en ASCII-versjon av HOWTO-dokumentasjonen. Den er ikke så omfattende som den orginale HOWTO-dokumentasjonen. I katalogen /usr/share/doc/HOWTO/other-formats/html finner du en komplett HTML-versjon av alle HOWTO-beskrivelsene, en omfattende beskrivelse av Linux-installasjonen, samt en forklaring på hvordan du lettest kommer igang når du er ferdig med installasjonen. Kjører du SuSE Linux finner du håndbøkene for brukeradministrasjon og systemadministrasjon i katalogen /usr/share/doc/packages/. Filene starter med tekststrengen suselinux*. Dokumentasjon vil du finne i enten PDF- eller HTML-format.

Hjelp fra GUI-grensesnittet

rediger

Fra GNOME og KDE kan du også få hjelp. Fra GNOME og KDE kan du trykke på GNOME/KDE-knappen og deretter velge hjelp fra menyen. Disse hjelpesystemene er HTML-baserte og dermed lettere å bruke, da du ikke trenger å huske masse kommandospesifikke taster (ls, less, cat). Ønsker du informasjon om kommandoer du kan kjøre fra terminalvinduet må du bruke hjelpesystemene man, info, whatis og hjelp.

 

Figur 4.3: Bruk av GNOME hjelp fra GNOME I figur 4.3 ser du hjelpesystemet under GNOME. I figur 4.2 ser du hjelpesystemet under KDE.

 

Figur 4.2: Bruk av KDE hjelp fra KDE

Arbeidsøkt under Linux

rediger

Tidligere bestod en typisk arbeidsøkt i Linux å skrive kommandoer i et Linux-skall. I dag kan man velge et grafisk grensesnitt (X11) i stedet. Hvis du er logget inn i et tegnbasert grensesnitt, skriver du bare startx for å starte det grafiske miljøet X11:

   [david@nittedal david]$startx 

Ofte logger du deg inn på en Linux-maskin for å starte et brukerprogram, og ikke for å gi Linux-kommandoer. Hvis du for eksempel ønsker å starte databaseserveren sqlora, trenger du bare å skrive sqlora og trykke Enter. En rekke programmer kan bare kjøres direkte fra X Windows.

 

Figur 4.4: Eksempel på GNOME brukergrensesnittet

Skal du kjøre en ekstern programpakke, forutsetter det selvfølgelig at du som systemadministrator har installert programpakken. Du som bruker må også ha en søkebane til hvor programpakken er plassert.

Når du har avsluttet ditt brukerprogram, kan du fortsette å arbeide med Linux, eller du kan logge deg ut.

Logge ut fra Linux-systemet

rediger

Du logger det ut fra bash- , zsh- eller tcsh-skallved å trykke <Ctrl-d>:

   [david@nittedal david]$ <Ctrl-d> 

Trykk på kontrolltasten og hold den nede samtidig som du trykker på d (liten d). Dersom du kjører tcsh-skall, kan du bruke kommandoen logout:

   [david@nittedal david]$ logout 

Husk å trykke Enter når du har skrevet kommandoen. Du kan også logge deg ut med exit-kommandoen:

   [david@nittedal david]$ exit 

Du logges nå ut av systemet, og login-bildet kommer på skjermen. Skal du logge deg ut fra X Windows (GNOME), velger du System fra den øverste nedtrekksmenyen og Logg ut (Log out). Husk bruker-ident (brukernavnet) og passordet ditt for neste pålogging!

Kjøre ned Linux-systemet

rediger

En Linux-maskin skal ikke bare slås av, den må stoppes kontrollert. Du må logge deg inn som systemadministrator (root) eller ha tilgang til nedkjøringsrutinene for å stoppe systemet. I kapittel 19 går jeg gjennom de forskjellige mulighetene du har til å stoppe operativsystemet. Ønsker du å stoppe systemet fra X Windows (GNOME), velger du først Logg ut. Deretter velger du "Slå av". Alternativt kan du fra kommandomodus (du må her være systemadministrator dvs. root-bruker) skrive: [root@nittedal /root]# shutdown Når det bare står System halted eller System down, kan du slå av maskinen. Dette er siste melding som kommer på maskinen, og det kan ta fra 30 sekunder til 10 minutter før du får denne meldingen. Hvis du får en feilmelding når du skriver init 0, kan det bety at du ikke er inne som systemadministrator (root).

   [root@nittedal /root]#shutdown

Når det bare står System halted eller System down, kan du slå av maskinen. Dette er siste melding som kommer på maskinen, og det kan ta fra 30 sekunder til 10 minutter før du får denne meldingen. Hvis du får en feilmelding når du skriver init 0, kan det bety at du ikke er inne som systemadministrator (root).

Oppgaver til kapittel 4

rediger

Oppgave 4.1 Når du har logget deg inn, starter du X Windows. Hva er forskjellen mellom X Windows og en tradisjonell terminaløkt?

Oppgave 4.2 Logg deg inn med det brukernavnet og passordet du har fått. Finn ut hvilket skall du bruker.

Oppgave 4.3 Hvilken redigeringstast kan du bruke for å midlertidig stoppe utføring av en kommando eller et program?

Oppgave 4.4 Hvordan kan du få hjelp angående de forskjellige Linux-kommandoene? Øv deg i å bruke de forskjellige hjelpefunksjonene.

Oppgave 4.5 Hvordan avslutter du en terminaløkt?

Oppgave 4.6 På hvilken ukedag ble du født (Tips: prøv cal.)?