Att Använda GNU/Linux Linus Walleij
Total Page:16
File Type:pdf, Size:1020Kb
Att använda GNU/Linux Linus Walleij ONLINEVERSIONEN - TRYCKNING FÖRBJUDEN Jag har sålt rättigheterna att trycka den här boken till Studentlitter- atur, det betyder att du inte får trycka egna exemplar av boken från detta manuskript. Anledningen till att jag sålt rättigheterna är att jag vill att boken skall få spridning. Det finns mer information om detta för den som vill veta alla överväganden, se: http://www.df.lth.se/~triad/ gnulinux/20040514102823 Någon speciell licens finns inte för boken, inte än i varje fall, så det är vanlig sträng upphovsrätt som gäller. Det går däremot bra att sprida boken vidare i denna elektroniska form. Bokens hemsida: http://www.df.lth.se/~triad/gnulinux/ Innehåll 1 Inledning 3 1.1 Läsanvisning . 4 1.2 Läsarens förkunskaper . 4 1.3 Om formen . 6 1.4 Bäst-före-datum . 7 1.5 Datorvetenskaperna . 7 1.6 Något grundläggande om operativsystem . 8 1.6.1 Konstruktionshierarkier . 11 1.6.2 Operativsystemets hierarkier . 14 1.7 Tack . 16 2 POSIX 19 2.1 Historia . 21 2.2 Mach, MacOS X, GNU/Hurd . 23 2.3 POSIX innehåll . 25 2.3.1 Skal och kommandon . 25 2.3.2 Processer . 33 2.3.3 Demoner . 42 2.3.4 Användare . 44 2.3.5 Filsystemet . 51 2.3.6 Reguljära uttryck . 75 2.3.7 Texteditorer . 78 2.3.8 Datum och tid . 89 2.3.9 Rör, filter och skript . 90 2.3.10 Nätverket . 103 2.3.11 Terminalinloggning . 105 2.3.12 At- batch- och cronjobb . 107 Innehåll 3 De fria mjukvaruprojekten 111 3.1 Ekonomisk förklaring . 113 3.2 Antropologisk, sociologisk, eller psykologisk förklaring . 115 3.3 Att deltaga i fria mjukvaruprojekt . 117 3.4 Licenser . 119 3.4.1 GNU General Public License, GPL . 120 3.4.2 BSD-licensen . 122 3.4.3 MIT-licensen . 123 3.5 Versionsnummer . 124 4 Distributionerna 127 4.1 Hur distributionerna fungerar . 129 4.1.1 Installationsmedia . 131 4.1.2 Inventera din hårdvara . 133 4.1.3 Bootstrap loader och multiboot . 135 4.1.4 Partitionering . 138 4.2 Debian GNU/Linux . 142 4.2.1 Installation av Debian . 145 4.2.2 DEB, dpkg och APT-systemet . 146 4.2.3 Felrapportering . 151 4.3 Red Hat Linux / Fedora Core . 151 4.3.1 Installation av Red Hat & Fedora Core . 154 4.3.2 RPM-systemet . 156 4.3.3 Up2date, Red Carpet, YUM och APT för RedHat . 157 4.3.4 Felrapportering . 159 4.4 Linux From Scratch . 159 4.5 Alla de övriga . 160 4.6 Program utanför distributionen . 163 5 GNU/Linux-projekten 165 5.1 GNU-projektet . 165 5.2 Linuxprojektet . 169 5.3 BSD . 172 5.4 Arkitekturen i GNU/Linux-systemen . 173 5.4.1 Hantering av dynamiska kärnmoduler . 176 5.4.2 Hur kärnan startar . 178 5.4.3 Kärnkontroll — körnivåer . 183 5.4.4 Exkursion i körnivå 1 . 188 5.4.5 Dynamiska länkbibliotek . 189 5.4.6 Standardisering . 191 5.4.7 Filsystemets hierarki . 193 5.4.8 Enhetsfilerna i /dev . 194 5.4.9 Kärn- och processkontroll — /proc . 196 iv Innehåll 5.4.10 Filsystemstyper . 202 6 Fönstersystemet X 213 6.1 XFree86 . 214 6.2 Arkitekturen i X . 217 6.3 Konfiguration . 220 6.4 Programmen i X . 238 6.5 Teckenuppsättning . 245 6.6 X-terminaler . 248 6.7 Skrivbordsmiljöer . 249 6.7.1 Motif och CDE . 250 6.7.2 Qt och KDE . 252 6.7.3 GTK+ och GNOME . 254 6.8 VNC . 257 7 Kringutrustning 259 7.1 Skrivarhantering: CUPS och Foomatic . 259 7.2 Scanner . 262 7.3 USB-enheter . 264 7.3.1 USB-lagringsenheter, digitalkameror . 264 7.4 CD- och DVD-bränning . 266 7.4.1 Skapa en Data-CD/DVD . 268 7.4.2 Skapa en Audio-CD/DVD . 271 8 Kompilera själv 275 8.1 Kompileringsverktyg . 276 8.2 Beroenden . 277 8.3 GNU Autotools . 279 8.3.1 Utvecklarens perspektiv . 279 8.3.2 Användarens perspektiv . 281 8.4 Att kompilera Linuxkärnan . 284 9 Internet och andra nätverk 289 9.1 Allmänt om datornät . 290 9.2 TCP/IP-stacken: internetprotokollen . 292 9.2.1 Tillämpningssprotokoll . 293 9.2.2 Transportprotokoll: TCP . 295 9.2.3 Transportprotokoll: UDP . 296 9.2.4 Transportprotokoll: RTP . 297 9.2.5 Nätverksprotokoll: IP . 297 9.2.6 Nätverksprotokoll: ICMP . 300 9.2.7 Nätverksprotokoll: ARP . 301 9.2.8 Länkprotokoll: PPP . 301 v Innehåll 9.2.9 Svårdefinierat: DHCP . 303 9.3 Att ställa in nätverket . 303 9.3.1 Net-tools . 305 9.3.2 DNS-konfiguration . 311 9.3.3 PPP-anslutning . 312 9.3.4 ADSL-anslutning . 313 9.3.5 Inetutils . 314 9.4 Xinetd och TCPd . 318 9.5 SSH . 319 9.6 NTP . 324 10 Säkerhet 327 10.1 Fysisk säkerhet . 328 10.2 Uppdatering av systemet . 329 10.3 Säkerhetskopiering . 330 10.3.1 Vad? . 332 10.3.2 Hur ofta? . 333 10.3.3 Hdup . 334 10.3.4 Rsync . 335 10.4 Kryptering . 340 10.4.1 Kryptering av hårddisk . 341 10.5 Intrångsskydd . 345 10.5.1 Intrångsdetekteringssystem . 346 10.6 Brandvägg med netfilter . 347 10.6.1 Nätverksöversättning: maskerade nät . 352 10.6.2 Annan paketbearbetning . 353 10.7 Virus, maskar o.s.v. 355 11 Tillämpningsprogram 357 11.1 Kontorsprogram . 358 11.1.1 OpenOffice.org . 360 11.1.2 GNOME Office . 362 11.1.3 K Office . 363 11.2 World Wide Web-bläddring . 365 11.2.1 Mozilla . 367 11.2.2 Konqueror . 372 11.2.3 Webbredigeringsprogram . 373 11.3 Elektronisk post . 374 11.3.1 Skräppostfilter . 377 11.4 Chattprogram . 378 11.5 Peer-to-peer . 378 11.6 Ombrytningsprogram och typsättning . 379 11.7 Multimedia . 380 vi Innehåll 11.7.1 Ljudsystemet i kärnan . 382 11.7.2 Mediaspelare . 383 11.7.3 ”Rippning” . 384 11.8 Diverse . 385 A Att byta från Windows till GNU/Linux 389 A.1 Affärsmodellen och kundperspektivet . 390 A.2 Viktiga olikheter . 392 A.3 Skalet . 393 A.4 Lika för lika . 393 A.5 Windowsprogram i GNU/Linux . 397 A.6 Samba — blandad miljö ..