Over kleuren en smaken

Linux en GNU

GNU is not UNIX” - spreek uit “gnoe” - is een organizatie die in het leven werd geroepen om een gratis UNIX systeem te ontwikkelen. Varianten van dit systeem, die gebruik maken van de Linux kernel zijn wijdverspreid. Deze systemen worden vaak onder de noemer “Linux” geplaatst, hoewel het eigenlijk vollediger is om ze “GNU/Linux” systemen te noemen.

Hoewel de lijst van Linuxdistributies schier eindeloos is, zul je vele gelijkenissen aantreffen tussen twee willekeurige distributies, omdat elke Linux machine een doos is met blokken die je volgens je eigen inzichten en noden kan verwerken. Het systeem installeren is slechts het begin van een lange relatie. Want net als je denkt dat je een lekker draaiend systeempje hebt, zal Linux je verbeelding en creativiteit stimuleren en ga je er weer andere zaken van verwachten. En hoe meer je kan bereiken met een systeem, hoe meer je je eigen grenzen zal willen verleggen om nog straffere toeren uit te halen.

[Opmerking]Distributie?

Een Linux distributie is een versie van het Linux systeem, bestaande uit de Linux kernel, het GNU besturingssysteem en bijhorende programma's. Voorbeelden zijn Ubuntu, Debian, RedHat, SuSE en Gentoo.

Linux kan er verschillend uitzien, afhankelijk van de distributie, maar ook afhankelijk van je hardware en je persoonlijke smaak. Maar het blijft allemaal gestoeld op dezelfde bouwstenen: de GNU tools. Dit is een set van standaardwerktuigen om met je systeem om te gaan. Alle GNU tools zijn Open Source, zodat ze op eender welk systeem kunnen werken. De meeste distributies bevatten kant-en-klare versies van de belangrijkste tools, zodat je geen programmeur hoeft te zijn om een pakket op je systeem te krijgen. Als je daarentegen een doe-het-zelver bent, zal je nog meer van Linux genieten omdat elke distributie een reeks ontwikkelingsgereedschappen meelevert waarmee je nieuwe pakketten zelf kan opbouwen vanuit de broncode. Daardoor is het ook mogelijk dat je software op je systeem kan krijgen, zelfs als die niet in pakketvorm voor jouw specifieke distributie bestaat.

Dit is een overzicht van de gekendste GNU software:

  • Bash: de GNU shell, zoiets als de command prompt in MS Windows, maar dan veel krachtiger.

  • GCC: de GNU C Compiler: maakt van broncode programma's die kunnen draaien op jouw computer.

  • Coreutils: een set van basis UNIX-gereedschappen, zoals ls (bestanden in mappen tonen), cat (inhoud van bestanden tonen) en chmod (eigenschappen van bestanden veranderen).

  • Findutils: een set van werktuigen om bestanden te zoeken en vinden.

  • Fontutils: om fonts (lettertypes) te converteren van een formaat naar een ander of om nieuwe fonts aan te maken.

  • Gimp: GNU Image Manipulation Program: het Linux equivalent van Photoshop.

  • Gnome: de GNU desktop omgeving.

  • Emacs: een krachtige teksteditor.

  • Ghostscript en Ghostview: om met PostScript bestanden te werken.

  • GNU Photo: een programma om met digitale camera's te werken.

  • Octave: een programmeertaal om numerieke berekeningen en beeldverwerking te doen.

  • GNU SQL: relationele gegevensbank.

  • Radius: een authenticatie- en accounting server.

  • ...

Naast alle GNU software zijn er ook nog eens vele duizenden commerciële toepassingen voor Linux. Als je daar meer wilt over weten, lees je best de meegeleverde handleidingen. Doorheen deze cursus zullen we ons toeleggen op het verkennen van het aanbod aan vrije software, bij voorkeur die met een GNU licentie. Meer informatie vind je ook in de BIS cursus “Vrije Software”.

In het begin zal het gaan over programma's die op elk systeem aanwezig zijn. Naderhand zullen we wel iets verder gaan en het hier en daar ook over extra software hebben, die niet standaard meegeleverd wordt met je systeem en die ook niet ingelezen kan worden van de meegeleverde CD's bij deze cursus. Voor de installatie van deze software verwijzen we naar lespakket 3 van de cursus.

GNU/Linux

De Linux kernel, die het hart van je systeem vormt, maakt geen deel uit van het GNU project maar gebruikt dezelfde licentie als de GNU software. De overgrote meerderheid van hulpprogramma's en ontwikkelingsgereedschappen komen wel uit het GNU project. Omdat elk bruikbaar Linux systeem sowieso een minimum aan gereedschappen moet bevatten, vinden sommige mensen dat je het moet hebben over GNU/Linux systemen.

Ten einde een zo groot mogelijke onafhankelijkheid van de distributie te verkrijgen, is diezelfde GNU/Linux het onderwerp van deze cursus.

De meegeleverde CD('s) en Ubuntu

Bij deze cursus krijg je een of twee CD's. Als je er twee hebt, is de eerste een Live CD. Als je de computer daarvan laat opstarten kom je in een Linux omgeving terecht die draait in het geheugen van je computer. Op de harde schijf wordt echter niets geïnstalleerd. Dit is een manier van werken die vandaag de dag veel gebruikt wordt om je te laten kennis maken met een distributie. Het is volledig veilig om ermee te werken, aan je bestaande data van bijvoorbeeld een MS Windows XP installatie wordt niet geraakt, terwijl je toch toegang hebt tot verreweg de meeste en zeker de voornaamste funkties van het systeem dat je wenst te testen. Als je gedaan hebt met testen, herstart je je computer weer van de harde schijf en je bent in geen tijd terug in je oude vertrouwde omgeving.

Deze Live CD zullen we in het eerste deel van de cursus gebruiken in de oefeningen.

De tweede CD is de installatie-CD. Als je hiervan opstart, zullen er wel veranderingen doorgevoerd worden. Voor je deze CD gebruikt, verdient het aanbeveling kopieën te nemen van je bestaande data, of om deze CD enkel te gebruiken op een testcomputer. Als je genoeg schijfruimte hebt, kan je ook een dual-boot systeem maken dat zowel MS Windows als Ubuntu kan starten.

Kreeg je slechts één enkele CD, dan combineert deze de funkties van Live CD en installatie-CD.

De CD('s) is(zijn) kopie(ën) van de originele Ubuntu distributie. Het is louter toeval dat deze distributie nu op nummer 1 staat. Wij kozen ze vooral omdat Ubuntu een Afrikaans woord is dat “humaan” of “mensvriendelijk” betekent. De slogan van deze distributie is “Linux voor mensen”. Dit is een verwijzing naar het algemeen gangbare idee dat Linux moeilijk zou zijn, zie de paragraaf “Is Linux moeilijk?”. Het team achter Ubuntu heeft publiekelijk de volgende verbintenissen aangegaan met zijn gebruikers:

  • Ubuntu zal altijd gratis zijn, of je het nu thuis of in je bedrijf gebruikt.

  • Ubuntu wordt commercieel ondersteund door honderden bedrijven over heel de wereld. Nieuwe versies komen er met de regelmaat van een klok: elke zes maanden. Voor elke versie zijn er minstens 18 maanden updates beschikbaar.

  • Ubuntu zal speciaal moeite doen om alleen het beste van het beste op gebied van vertalingen en toegankelijkheid ter beschikking te stellen. Iedereen moet met een computer kunnen leren werken in zijn eigen taal. Dit is een van de voornaamste redenen voor onze keuze: van alle Linux distributies heeft Ubuntu momenteel de beste vertaling in het Nederlands, ook al is ze verre van volledig.

  • Ubuntu verbindt zich ertoe om de principes van Open Source software ontwikkeling volledig na te leven.

Voor ons ook belangrijk is dat de basis van Ubuntu op 1 CD past, hoewel er momenteel meer dan 16.000 pakketten beschikbaar zijn. Programma's die niet op deze CD te vinden zijn, kan je downloaden van het Internet. Ubuntu is geschikt voor eindgebruikerssystemen en servers.

[Opmerking]Niet volledig Open

Sommige puristen zullen zeggen dat Ubuntu geen waarlijk Vrije Software is. En daarin hebben die mensen hier en daar wel gelijk. Ubuntu staat erom gekend om heel gemakkelijk te zijn voor de eindgebruiker, maar dat houdt ook in dat er hier en daar compromissen gemaakt moeten worden. Sommige stuurprogramma's voor randapparaten zijn zogenaamde binaries, waarvan de broncode niet beschikbaar gemaakt werd door de fabrikant. Ubuntu heeft er in sommige gevallen voor gekozen om die programma's toch mee te leveren, voor het gemak van de gebruiker, waardoor het systeem als geheel niet meer voldoet aan alle vereisten voor Vrije Software.

Hoewel de auteur van deze cursus zich voor 100% inzet voor de verspreiding van Vrije Software heeft zij ook compromissen moeten sluiten. Ubuntu is het verst gevorderd op gebied van vertaling naar het Nederlands, en dat maakt het bij uitstek het Linux systeem met de laagste drempel. Om de drempel zo laag mogelijk te houden, werd deze cursus ook in het Nederlands geschreven. En een Nederlandstalige cursus voor een anderstalig systeem zou een beetje gek lijken.

Zelf kiezen

Hardware

Als je ooit zelf een Linuxdistributie zou moeten kiezen, is de belangrijkste factor in de keuze waarschijnlijk de hardware. Strikt gezien is compatibiliteit met je hardware het enige criterium dat je dient na te gaan, want elke distributie is een blokkendoos die je naar eigen voorkeur kan uitbreiden. LinuxPPC bijvoorbeeld is gemaakt voor de MacIntosh en andere PowerPC's en draait niet op een gewone x86-gebaseerde PC, bijvoorbeeld een PC met een Intel processor. LinuxPPC draait op een nieuwe Mac, maar niet op een oude. Nog gewaagder is Sun hardware met Sparc of UltraSparc CPUs, die elk een andere Linux vereisen.

Sommige distributies zijn geoptimaliseerd voor bepaalde processoren, zoals Athlon CPU's, terwijl ze toch nog net min of meer deftig draaien op 486, 586 en 686 Intel-gebaseerde machines. Sommige distributies voor speciale CPU's zijn niet zo betrouwbaar, omdat ze door veel minder mensen getest werden.

Grote spelers

De meeste distributies bestaan uit een set van programma's voor generische, zeg maar witte-producten PC's. Daarnaast bevatten ze speciale programma's met geoptimaliseerde kernels voor de x86 Intel familie. Deze distributies zijn goed getest en worden op regelmatige basis onderhouden. Ze leggen de nadruk op betrouwbare service en gebruiksgemak bij het installeren en updaten van pakketten. Voorbeelden van zulke distributies zijn Debian, Ubuntu, Fedora, SuSE en Mandriva, veruit de populairste systemen dus. Deze systemen zijn gewoonlijk ook gemakkelijk voor beginnende gebruikers terwijl ze toch geen beperkingen opleggen aan gevorderden of beroepsmatige gebruikers. Linux draait uiteraard ook op laptop computers en mid-range servers. Drivers (stuurprogramma's) voor nieuwe hardware komen enkel in een distributie na een lange weg van testen en verbeteren te hebben afgelegd, wat ten goede komt aan de stabiliteit.

Bureauomgeving

De bureauomgeving bevat alle toepassingen die je typisch op kantoor nodig hebt: een tekstverwerker, een rekenblad, een rekenmachine, een kalender, een tekenprogramma, een presentatieprogramma enzovoorts.

Op dit gebied heb je ook weer meerdere keuzes. De meest bekende bureauomgevingen zijn Gnome en KDE. De ene distributie kan standaard met Gnome werken, de andere met KDE. Over het algemeen zijn beide omgevingen beschikbaar in de grote distributies. Andere omgevingen zijn beschikbaar voor meer geavanceerde gebruikers. Welke omgeving je kiest hangt voor het grootste deel af van je persoonlijke voorkeur. De voorbeelden in de cursus komen uit een Gnome omgeving.

Installatietype

Het standaard installatieproces van een distributie biedt je gewoonlijk de mogelijkheid om te kiezen tussen verschillende basisopstellingen, zoals een werkpost of een server. Een werkpostinstallatie omvat dan alle programma's voor dagelijks “huis-tuin-en-keuken” gebruik van de computer, met onder andere bureautoepassingen, mail- en webtoepassingen en ontwikkelingsgereedschap. Een serverinstallatie omvat typisch allerlei netwerkdiensten zoals een mail server, web server, proxy server, file- en printserver en dergelije.

Conclusie

Het doel van deze cursus is om zo bruikbaar mogelijk te zijn voor alle combinaties van de bovenstaande mogelijkheden.

Mocht je ooit zelf een distributie moeten downloaden, neem dan eens een kijkje op http://www.LinuxISO.org. Daar vind je bestanden die je op een CD kan branden, waarna je van je zelfgemaakte CD kan starten.