1. Software-pakker
Den mest normale at installere software på i Linux-systemer er ved hjælp af pakker. De kan som oftest ligestilles eller sammenlignes med Setup.exe-filer på Windows. I bund og grund er det bare et arkiv med filer, samt instruktioner til hvordan disse filer skal placeres på systemet.
I Ubuntu hedder disse pakker .deb-filer. Disse kan hentes fra hjemmesider, men typisk kan de nemmest hentes fra Ubuntus software-depoter, som i skrivende stund indeholder ganske mange pakker (linket fører kun til pakker til 8.10).
Den mest gængse måde at installere disse på er enten igennem Synaptic (som kan findes i System → Administration → Synaptic, eller via terminalen, med programmet apt-get. Der er flere metoder; f.eks. Tilføj/fjern software-delen af Ubuntu (Programmer → Tilføj/fjern software og opdateringsmanageren (som automatisk viser opdateringer, når disse er tilgængelige), hvor førstnævnte ikke er nær så kraftfuld som nogle af de to andre løsninger.
De to løsninger bruger samme konfigurationsfiler og software-kilder; det er kun brugerens interaktionsmedium, der ændres (grafisk/mus ←→ tekst/kommando)
1.1.1 Synaptic
Synaptic er oftest det første glimt, man som bruger får af software-installation i Ubuntu. Det ser umiddelbart en smule forvirrende ud, men er ret nemt at komme i gang med.
Til venstre er en liste over de forskellige kategorier af software, og i værktøjslinjen er der en række værktøjer. De vigtigste er Genindlæs og Hurtigsøgning.
Hvis man trykker på Genindlæs, henter programmet automatisk listen over nye versioner af software osv. fra Ubuntus servere. Dette er bl.a. nyttigt for opdateringer (Ubuntu gør dette selv i ny og næ, og giver dig information omkring software opdateringer øverst i højre hjørne, som her:
For at søge efter pakker, kan funktionen Hurtigsøgning bruges. Indtast en tekststreng, som indeholder enten titlen på pakken, eller en beskrivelse. Hvis man ville have et skakspil, kunne man f.eks. skrive chess. Så finder den alle pakker, som har noget med skak at gøre.
1.1.2 apt
apt fungerer fra en terminal, og kan derfor virke lidt mindre intuitiv at bruge, end Synaptic, som fungerer fra en grafisk brugerflade. apt består af flere små 'programmer'; apt-cache, apt-cdrom, apt-config, apt-extracttemplates, apt-ftparchive, apt-get, apt-key, apt-mark og apt-sortpkgs. Som udgangspunkt får du kun brug for apt-cache og apt-get; jeg har nu brugt Ubuntu i 3 år uden at bruge de andre.
apt-get bruges til at installere og fjerne programmer, mens apt-cache bruges til at søge, vise yderligere information om enkelte pakker, osv. osv.
Hvis man f.eks. ville søge efter skak-relaterede pakker i apt, ville man blot skrive:
Kode: Vælg alt
$ apt-cache search chess
...hvilket returnerer en liste af pakker:
Kode: Vælg alt
[b][22:06:23] menza@alderaan - ~ $ apt-cache search chess[/b]
gnome-games - games for the GNOME desktop
texlive-latex-extra - TeX Live: LaTeX supplementary packages
3dchess - 3D chess for X11
brutalchess - 3d chess with reflection of the chessmen
cgoban - complete Go board
cl-cil - Chess In Lisp. A chess library in Common Lisp
dreamchess - a 3D chess game
dreamchess-data - a 3D chess game
eboard - GTK+ chessboard program
eboard-extras-pack1 - additional piece sets and sounds for eboard (pack 1)
emacs-chess - a client and library for playing Chess from Emacs
emacs-chess-pieces - XPM images of chess pieces for emacs-chess
[...]
For at vise flere detaljer om en pakke, kan man bruge argumentet show:
Kode: Vælg alt
[b][22:06:23] menza@alderaan - ~ $ apt-cache show 3dchess[/b]
Package: 3dchess
Priority: optional
Section: universe/games
Installed-Size: 144
Maintainer: Ubuntu MOTU Developers <ubuntu-motu@lists.ubuntu.com>
Original-Maintainer: Debian Games Team <pkg-games-devel@lists.alioth.debian.org>
Architecture: i386
Version: 0.8.1-15
Depends: libc6 (>= 2.4), libx11-6, libxext6, libxmu6, libxpm4, libxt6, xaw3dg (>= 1.5+E-1)
Filename: pool/universe/3/3dchess/3dchess_0.8.1-15_i386.deb
Size: 35050
MD5sum: bcbb64d57547e55a884c99e34720414e
SHA1: ed1af1c788b2e198aa8c71a8d4402511545183bc
SHA256: 64b6de5b970c61ee1330fcdf7d566442ece57f7f00e5d54ef8bed1b012892c50
Description: 3D chess for X11
[i]3 dimensional Chess game for X11R6. There are three boards, stacked
vertically; 96 pieces of which most are the traditional chess pieces with
just a couple of additions; 26 possible directions in which to move. The
AI isn't wonderful, but provides a challenging enough game to all but the
most highly skilled players.[/i]
Bugs: mailto:ubuntu-users@lists.ubuntu.com
Origin: Ubuntu
Det virker forvirrende, men beskrivelsen af pakken står lige midti, og hvis man ofte har en terminal åben alligevel, er det så simpelt som at tabbe ind i den og indtaste kommandoerne---i stedet for at skulle åbne et grafisk program hver gang. Det kræver tilvænning, men ofte skifter folk, som tidligere har været glade for grafiske løsninger til terminalløsninger, når de giver mening---som her.
1.2 Installation af .deb-pakker
Så ved vi alt om pakkerne og hvordan disse kan findes---men ikke hvordan de kan installeres! Det er med begge metoder ret nemt.
1.2.1 Installation af .deb-pakker i Synaptic
I Synaptic er det at installere software så nemt som at dobbeltklikke på navnet på pakken, man ønsker at installere. Såfremt man vil installere flere pakker på én gang, kan man trykke på den lille firkant i tabellen i Synaptic, og vælge Markér til installation. Til sidst kan man så trykke Anvend i værktøjslinjen, og de valgte pakker installeres, sammen med eventuelle dependencies; dvs. programmer som kræves installeret, for at de(t) valgte program(mer) kan køre.
1.2.2 Installation af .deb-pakker i apt
I apt er tilgangsvinklen lidt en anden. Man skal huske, at når man ønsker at ændre strukturen på sit filsystem, kræves rod- eller sudo-adgang. Derfor skal alle kommandoer i apt, som installerer eller afinstallerer software, køres med sudo-præfiks.
Hvis jeg nu ville installere programmet 3dchess, ville jeg bruge følgende kommando:
Kode: Vælg alt
[22:18:43] menza@alderaan - ~ $ sudo apt-get install 3dchess
[sudo] password for menza:
Den beder om mit brugerpassword, og når det er indtastet, bliver jeg spurgt, om jeg ønsker at installere programmet:
Kode: Vælg alt
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
xaw3dg
The following NEW packages will be installed:
3dchess xaw3dg
0 upgraded, 2 newly installed, 0 to remove and 30 not upgraded.
Need to get 191kB of archives.
After this operation, 631kB of additional disk space will be used.
Do you want to continue [Y/n]?
Jeg beklager den engelske tekst; i den danske afslutter den med Ønsker du at fortsætte [J/n]? (hvor J betyder 'ja', og n betyder 'nej').
Meddelsen fortæller mig, at apt vil forsøge at installere pakkerne xaw3dg og 3dchess, som alt i alt vil optage 631kB på mit system. For at acceptere, trykker jeg j og Enter. Så bliver pakken hentet ned og installeret. Ønsker man flere pakker samtidigt, kan man skrive sudo apt-get install pakke1 pakke2, pakke3 ··· pakke2451 pakke2452, etc.
1.3 Installation af .deb-filer fra tredjepartskilder
Det er ikke altid muligt at finde lige nøjagtigt dét program, som man leder efter, i Ubuntus softwaredepoter. Derfor kan det ind i mellem være nødvendigt at ty til tredjeparts-pakker.
Bemærk: Det frarådes på det kraftigste at installere software fra kilder, som man ikke er 100% sikker på.
I dette tilfælde bruger man programmet dpkg (Debian package manager), eller eventuelt det grafiske program GDebi.
Ved brug af GDebi downloader man blot pakken, og dobbeltklikker derefter på den i Nautilus (fil-browseren). Ved brug af dpkg bruges følgende kommando:
Kode: Vælg alt
sudo dpkg -i [b]pakkenavn[/b]
Husk, at man i terminalen altid kan bruge TAB til at auto-complete sine filnavne.
Det er også værd at huske, at det sjældent er 100% nødvendigt at have den nyeste version af alle sine programmer. Pakkerne, som ligger i Ubuntus softwaredepoter, kan man være 100% sikker på er pakket, så de passer til et Ubuntu-system, og nemt kan fjernes, såfremt dette skulle være nødvendigt. Det kan man ikke altid med tredjepartspakker.
2. Kompilering af software
Yderst sjældent er det nødvendigt at kompilere sin egen software---det vil sige, at omsætte menneskelæseligt kode til 1'ere og 0'ere, som kun computeren kan læse (nej, man skal ikke bruge et par timer og en håndbog!).
Der er mange forskellige metoder programkode er opbygget på, så der kan være forskellige måder at kompilere dem på. Oftest er det dog ./configure · make · make install metoden der er brugt; dvs. man konfigurerer installationsmetoden til at passe til lige nøjagtigt ens eget system, kompilerer filerne, og placerer dem i sit system. Dette kan ofte være nødvendigt med kernel-moduler o.l., men sjældent nødvendigt for diverse programmer.
2.1 Kompilering af ./configure · make · make install software
Dette er, som sagt, den mest gængse metode. Der skal bruges et par værktøjer til dette, som findes i pakken build-essential (installer denne med enten Synaptic eller apt!). Når denne er installeret, skal filen som oftest udpakkes. Som eksempel har jeg hentet BitchX, en IRC-klient, som allerede findes i repositorierne.
Kode: Vælg alt
tar xvf <filnavn>.(tar.gz|.tar.bz2)
Dette opretter som oftest en mappe, hvor alle filerne i arkivet placeres. Skift til den mappe med cd <mappenavn>. Hvis en fil kaldet 'configure' findes (check med kommandoen ls), eksekver filen med:
Kode: Vælg alt
./configure
Du vil nu få en hel masse tekst, som fortæller dig, om du har al den software, som det kræves for at køre programmet (tip: hvis det er en nyere version af et program, som allerede findes i softwaredepoterne, kan du køre kommandoen sudo apt-get build-dep <pakkenavn> for at hente alle de pakker, som kræves for at kompilere dén version af programmet; det er ofte de samme. Hvis det ikke er livsnødvendigt at køre den nyeste version, så hold dig til den gamle.)
Når den er færdig med at konfigurere installationen, kommer der ofte en besked i stil med denne:
Kode: Vælg alt
BitchX (c) 1996-2002 Colten Edwards
----------------------------------------------------------
The configuration script has finished. You should look through
"include/config.h" and make any changes you would like to make.
Now type "make" to compile BitchX.
Selvom du ikke får en fin besked som den ovenfor, kan den sagtens være færdig. Kig efter linjer, der ligner disse:
Kode: Vælg alt
config.status: creating dll/aim/Makefile
config.status: creating dll/aim/toc/Makefile
config.status: creating dll/amp/Makefile
config.status: creating dll/arcfour/Makefile
config.status: creating dll/autocycle/Makefile
config.status: creating dll/aim/Makefile
config.status: creating dll/blowfish/Makefile
config.status: creating dll/cavlink/Makefile
config.status: creating dll/cdrom/Makefile
config.status: creating dll/encrypt/Makefile
config.status: creating dll/europa/Makefile
Når disse stopper, uden fejl, kan du skrive make for endelig at kompilere programmet. Dette kan tage lang tid (afhængig af programmets størrelse/kompleksitet, mellem 10 sekunder og 10 timer). Når kompileringen afsluttes, installeres programmet traditionelt med sudo make install (da vi skal redigere filstrukturen!), og programmet kan tilgås med programmets navn i terminalen.
2.2 Kompilering af anden kildekode
Fordi der, som sagt, er så mange forskellige typer af kompileringsmetoder, kan jeg ikke give en hel manual som den ovenfor til dem allesammen. Ofte kommer kildekode i .tar.gz-arkiver, som kan udpakkes. Derefter er der typisk nogle filer, herunder COPYRIGHT, README, INSTALL, LICENSE o.l.---disse kan læses med less <filnavn>. Ofte er det INSTALL og README, der er interessante for, hvordan programmet kompileres.
3 Konklusion
Som almindelig bruger, er det sjældent nødvendigt at installere software fra andre kilder, end de som er stillet til rådighed i gennem apt og Synaptic, og software fra disse kilder, er altid at foretrække fremfor software, som man har fundet liggende og kredse et sted på internettet.
Derfor: brug altid apt eller Synaptic til at installere software, medmindre:
- Du kan verificere hvor softwaren, du forsøger at installere, kommer fra, og stoler på kilden (dette gælder særligt for tredjepartspakker),
- I tilfælde af kompilering, at du ved hvordan man kompilerer programmet, eller har tålmodighed til at læse de relevante hjælp/instruktionsfiler.
Denne guide er ikke ment som en ultimativ guide til hvordan software installeres på Ubuntu, men ment som en et hjælpemiddel til folk, som gerne vil vide, hvordan det hele foregår bag facaderne.
Held og lykke med softwareinstallationerne!