Copyright (c) 2001 by Stas Z. (e-mail: stas.linux@planet.nl)
Please freely copy and distribute (give away, not sell) this document in
any format. It's requested that corrections and/or comments be fowarded
to the document maintainer. You may create a derivative work and distribute
it provided that you:
If you're considering making a derived work other than a translation,
it's requested that you discuss your plans with the current maintainer.
Bovenstaande copyright betekent dat je alles mag kopieren en verspreiden en er geen geld voor mag vragen .
Zelfde copyright gebruiken of de GPL.
De orginele auteur moet vermelden.
Eventuele aanpassingen, anders dan vertalingen, moet overleggen met mij
(Stas Z. e-mail: stas.linux@planet.nl)
Heb ik je nog niet overtuigd? Dat was ook niet de bedoeling.
Je moet het zelf proberen.
Deze handleiding zal je een eind op weg helpen.
Het 'lees alles' geld ook voor deze handleiding, lees alle
delen, of bekijk ze in ieder geval, zeker de delen die meer over
de achtergronden van GNU/Linux gaan omdat kennis over de
achterliggende gedachte van een systeem minstens zo belangrijk
zijn als een opsomming van "doe nu dit en tik nu dat in".
Daarmee voorkom je in ieder geval het stellen van domme
vragen in bijv. nieuwsgroepen.
OK, domme vragen bestaan niet maar bij een vraag als "waar
vind ik de setup.exe van Linux" is het antwoord,
"ga eerst een maar boek over Linux lezen, L*L" misschien
niet netjes, maar wel begrijpelijk.
Waar in de teksten wordt gesproken over 'gebruikers
programma's' worden programma's bedoeld als tekstverwerkers,teken
programma's enz..
Bij 'applicaties' worden programma's bedoeld die meer voor de
werking van het systeem bedoeld zijn,
zoals bv voor de aansturing van de printer, welke weer door
de eerder genoemde tekstverwerker gebruikt wordt om iets uit te
printen
In de teksten worden benamingen of termen die een nadere
uitleg behoeven 'gelinkt' naar het 'woordenboek', deze worden
alleen 'gelinkt' de eerste keer dat ze gebruikt worden in een
pagina, daarna niet meer.
Het is dus nuttig om deze links een keer te volgen zodat je
weet wat er bedoeld wordt, ook al omdat er steeds minder wordt
uitgelegd en meer gebruik zal worden gemaakt van deze specifieke
GNU/Linux termen.
Waar ik teksten en/of artikelen van andere heb overgenomen, heb ik als eerste de bijbehorende copyright/copyleft opgenomen met de link naar de orginele locatie.
Ik kan alleen niet garanderen dat deze links altijd actueel zijn.
In deze teksten is, waar nodig, mijn commentaar of uitleg op deze manier aangegeven : {LVN: mijn commentaar of uitleg}
Wenst niet minstens vier keer de verwijdering of verandering
van een bestand te bevestigen.
Vind het onwenselijk dat voor de gebruikersvriendelijkheid
de stabiliteit en virusongevoeligheid wordt opgeofferd.
Heeft affiniteit met programmeren .
Een aversie tegen Microsoft en andere, 'accepteer onze
voorwaarden of we zien je voor de rechter', produkten geldt als
een pre.
Herkent u zich in bovenstaand profiel, dan bent u geschikt om
het GNU/Linux systeem op uw computer te installeren.
GNU/Linux is gebaseerd op UNIX, wat is ontwikkeld in 1969 bij Bell Labs (een divisie van AT&T) door
Ken Thompson en Dennis Ritchie .
Zij kregen mogelijkheden om het systeem verder te ontwikkelen door voorstellen voor een tekstverwerkingssysteem te doen.
In plaats van een compleet nieuw systeem hiervoor te ontwikkelen maakten ze een applicatie welke draaide onder het nieuwe UNIX systeem.
In 1973 werd UNIX herschreven in de programeer taal C en kon daardoor makkelijker voor verschillende computers geschikt gemaakt worden en werd het door AT&T goedkoop verstrekt aan universiteiten en scholen.
(AT&T kon,wilden of mocht niet verder gaan in de computer industrie, wat de preciese reden was weet ik eigenlijk niet)
In het begin werd het alleen gebruikt binnen de wetenschappelijke wereld en bij enkele bedrijfen. De grootte doorbraak kwam eind jaren 80 met de opkomst van wat nu internet heet.
Tegenwoordig zijn er twee soorten UNIX, system V van Unix System Labratories en de Berkeley Software Distribution (BSD).
De meeste varianten van UNIX hebben de features van beide systemen en kosten tussen de fl. 1000,00 en fl. 5000,00 .
De variant GNU/Linux kost in principe fl. 0,00 en is nagenoeg compatible c.q. gelijk aan de hiervoor genoemde systemen.
Het GNU projekt (GNU's not Unix) van de Free Software Foundation is opgezet door Richard Stallman in 1984 met als doel een vervanger voor het Unix besturings systeem te maken geheel gebaseerd op vrij software.
Begin jaren 90 hadden zij een compleet besturings systeem ontwikkeld het enigste wat ontbrak was een goede kernel.
Dit is waar Linux in beeld kwam.
Begin jaren 80 ontwikkelde de Nederlandse (ja,ja) professor Andrew Tanenbaum een besturing systeem genaamd MINIX om zijn studenten te helpen met het doorgronden van Unix.
Begin 1991 begon Linus Torvalds, een student aan de universiteit van Helsinki, te experimenteren met MINIX om dit uit te breiden naar een volwaardig besturings systeem.
Uit deze experimenten zou de Linux kernel ontstaan.
Aangezien voor het ontwikkelen van grootte programma's veel mensen nodig zijn en Linus geen zakenman maar wetenschapper was, en nog steeds is, bracht hij zijn Linux onder de GNU General Public Licence(GPL) uit.
Zo ontstond een win/win situatie (klinkt wel lekker zakelijk) waarbij het GNU projekt zijn kernel had en Linus zijn mensen om Linux verder helpen te ontwikkelen.
Tot op de dag van vandaag, kernel versie 2.4.0, is er aan deze opzet niets verandert behalve dat er steeds meer mensen wereldwijd aan mee helpen om het hele systeem continu te verbeteren en uit te breiden.
Dit gebeurt nog steeds op de manier zoals door Richard Stallman is omschreven in de GPL en op zo'n schaal dat Microsoft zich bedreigt gaat voelen
(zie 'is Microsoft bang' en de reaktie van Linus Torvalds op open source uitspraken van Microsoft)
Tegenwoordig heeft men het over Linux terwijl we eigenlijk over GNU/Linux moeten spreken, afgezien van het feit dat dit de juiste benaming is, doet het ook meer recht aan de inspanningen van het GNU projekt daar de meeste mensen meer zullen merken van alle GNU applicaties dan van de Linux kernel die zijn, weliswaar onmisbare werk, vrijwel onzichtbaar doet.
zie wat is een besturings systeem
Zijn vier veel gebruikte benamingen voor het begrip 'vrije
software' zoals dat is beschreven in de GNU General Public
License (GPL) de copyright overeenkomst van de Free Software
Foundation, ook wel copyleft genoemd.
(ik zal verder de term 'copyleft' gebruiken omdat dit meer
de ideeën van de GNU/Linux gemeenschap weergeeft dan de term
'copyright' )
Er zijn wel discussies tussen aanhangers van zowel de 'free
source' als 'open source' benaming, maar die zijn nogal
principieel en hier niet van belang.
GNU/Linux is ook beschermt onder de GPL overeenkomst evenals
de meeste andere software voor GNU/Linux, let wel het is dus geen
verplichting voor software ontwikkelaars om dit te doen, het
staat een ieder vrij om zijn produkten onder andere soorten van
bescherming uit te brengen, dat is tenslotte wat vrij zijn
betekend!
De GPL is een copyleft overeenkomst die in het kort hier op
neer komt dat, je net zo veel geld mag vragen voor je software
produkten maar je kan niet degenen die het gekocht hebben
verbieden om het vervolgens weer door te verkopen, te kopiëren en
weg te geven, aan te passen, te veranderen of wat dan ook ermee
te doen.
Tevens is er de verplichting de source code erbij te leveren
of beschikbaar te stellen om iedereen in de gelegenheid te
stellen om er mee te doen wat ze willen.
Dit betekend dat je alle GNU/Linux software kan kopiëren,
veranderen of samenstellen en zelfs een eigen distributie kan
gaan uitgeven zolang dit ook maar weer onder de GPL wordt
gebracht.
De term 'Open source' is de meest gebruikte en is ook een
gedeponeerde naam beschermt onder de eerder genoemde GPL.
Hierdoor is gegarandeerd dat alle Open source software (OSS) ook
daadwerkelijk vrij is.
Het woord 'free' in de diversen benamingen moet vertaald
worden als 'vrij' niet als gratis !
Het betekend dus niet dat alles wat onder de noemer
GNU/Linux of OSS valt altijd gratis is, maar dat het je vrij
staat om er mee te doen wat je wilt.
Je vraagt je misschien af waarom gaan mensen hun tijd
besteden aan het schrijven van software, kopiëren, documenteren
en zelfs verpakken en verzenden, om het vervolgens weg te geven ?
Daar zijn verschillende redenen voor te bedenken.
Vele menen dat vrije software bijdraagt om informatie te
delen en met elkaar samen te werken om op zo'n manier de complete
computer industrie te verbeteren en beschikbaar te maken voor
iedereen, dit komt ook overeen met de zogenaamde 'hacker
ethiek'.zie ook hackers, crackers, script-kiddies om een groot
misverstand uit de wereld te helpen.
Anderen willen gewoon meer leren over computers of zoeken
manieren om de soms abnormale prijzen te ontlopen die
tegenwoordig worden berekend voor de meest simpele 'upgrades'
welke vaak niets meer zijn dan meer van het zelfde met alleen wat
andere icoontjes of kleuren.
Vele van hen raken gecharmeerd door het OSS concept en
beginnen ook bij te dragen door het schrijven of het vertalen van
documentatie, maken van grafische concepten tot aan het
ontwikkelen van complete software pakketten of het opzetten van
een website om andere bekend te maken of te helpen met GNU/Linux.
Op universiteiten en scholen wordt ook veel vrije software
gemaakt om resultaten van onderzoek te verspreiden en voor
onderwijs doeleinden.
Veel bedrijven (IBM,Compaq,Sun,Corel om een paar te noemen)
helpen vrije software te ontwikkelen om op zo'n manier inspraak
te hebben in de werking, er is tenslotte geen snellere manier om
een bepaalde 'feature' te krijgen dan het zelf te ontwikkelen of
iemand in te huren om het te doen .
Nasa gebruikt bijvoorbeeld communicatie software gebaseerd
op GNU/Linux zodat in geval van problemen zij zelf aanpassingen
kunnen maken en niet afhankelijk zijn van een software bedrijf
dat eerst het probleem ontkend, en een jaar later een upgrade
levert waarin het 'niet bestaande' probleem verholpen is
(hopelijk).
En natuurlijk vinden heel veel van ons het gewoon leuk om
rond te spitten in computer programma's en deze te veranderen (en
dan maar hopen dat alles blijft werken, maar al doende leert
men).
Wat is software waard zonder goede documentatie?,
niet zo veel, dus is er voor documentatie ook een
veelgebruikte copyleft overeenkomst van de LDP (Linux
Documentation Project) welke in grootte lijnen overeenkomt met de
hiervoor genoemde GPL.
Deze overeenkomst komt in het kort hierop neer:
Je mag alles mag kopiëren en verspreiden, er geen geld voor
mag vragen en niemand mag verbieden hetzelfde te doen.
Dezelfde copyright gebruiken of de GPL.
De originele auteur moet vermelden.
Eventuele aanpassingen overleggen met de originele auteur.
Alles op deze site valt trouwens ook onder deze overeenkomst.
zie Copyright.
Copyright (c) 2001 by Stas Z.
Voor wie is Linux ?
GNU/Linux is NIET voor jou als je:
- na het lezen van de voorgaande gedeelten denkt, 'pfff, wat
een gezeik'.
- het leuk vind om de nieuwste versie van een virusscanner te proberen.
( ze zijn er waarschijnlijk wel voor Linux, ik ken ze niet
)
- het een uitdaging vindt dat computers vaak crashen,
vastlopen, 'ongeldige bewerkingen uitvoeren'
(als het ongeldig is waarom voer je het dan uit?,
GNU/Linux is het meest stabiele systeem, punt uit! )
- het fijn vindt dat je ,ook al heb je kennis van zaken, je
nog steeds niets wezenlijk aan de werking van het systeem kan
veranderen.
( in GNU/Linux kan je alles veranderen wat je maar
kan bedenken )
- geen engelse teksten kan lezen en het ook niet wil
proberen/leren
( meeste info over Linux is in het engels )
- denkt 'het is pas wat als het veel geld kost'.
( Linux en alle software is meestal gratis )
- het normaal vind dat alles, tot en met een vaag logo in de
wolken, met een copyright afgeschermd moet worden.
( het punt is hier afschermen, niet het voorkomen van
misbruik )
- je absoluut niet in de werking van een besturingssysteem wil
verdiepen.
( als je Linux wil gebruiken ontkom je niet aan 'studeren'
)
- je het prettig vind dat je hele manier van werken en wat je
wel en niet met je dure PC kan doen, wordt bepaald door een
bedrijf.
( Linux en de software wordt in principe ontwikkeld
en gemaakt door alle gebruikers )
- alleen spelletjes wil spelen en filmpjes wil bekijken.
( koop een playstation2, voor de prijs van een 'multi media
pc' heb je er vier ! )
- denkt dat Windows de beste bescherming van je privacy biedt.
( Bill Gates protesteert tegen plannen van het amerikaans
congres om privacy regels aan te scherpen, Bill G. 'Het gaat
miljarden dollars op jaarbasis kosten als er geen gegevens van
internetgebruikers verkocht kunnen worden' bron: ANP )
- de aller nieuwste hardware wilt gebruiken en dat dmv 'plug
and play' geïnstalleerd wilt hebben
( Linux ondersteund veel hardware maar vaak niet de
nieuwste, op windows geënte produkten ). Zie ook Winmodem
- vindt dat Windows het snelste, beste, mooiste, veiligste,
stabielste, meest gebruikers vriendelijke besturingssysteem voor
je PC is
( je zit niet echt op te letten he, ga naar
www.microsoft.com )
GNU/Linux is wel voor jou als je,
- na het lezen van de voorgaande gedeelten denkt, 'hmm, het
heeft wel wat'.
- niet weet wat een virusscanner is.
- alle 'ongeldige bewerking' meldingen uit je hoofd kent, en
een eelt plek op je duim heb van het resetten.
- het prettig vind dat je de werking van je systeem, al met de
meest minieme kennis van zaken, kan veranderen
( en een goede handleiding ).
- een playstation2 heb gekocht voor je spelletjes en filmpjes.
- je mailbox vol zit met ongevraagde MSN aanbiedingen, en alle
site's die je bezoekt kennelijk
van alles al over je weten.
- hardware bezit van een jaar oud en het onzin vindt om het te
vervangen, alleen maar omdat Microsoft besluit dat de laatste
'upgrade', ( andere desktop kleurtjes voor maar fl 249,00 ),
uitsluitend werkt met de nieuwste Intel handel
( of zou dat toeval zijn? )
- denkt dat Linux rules ( heerst ) en Windows sucks ( zuigt ).
Copyright (c) 2001 by Stas Z.
Besturingssysteem: Wat is een besturingssysteem?
Een besturingssysteem of operating system (OS) is de
verzameling applicaties die het mogelijk maken om een PC iets
anders te laten zijn dan een strak vormgegeven doos met
elektronica en bij elkaar geknoopte draden en stekkers.
Maak je PC een keer open, het is verbazingwekkend dat het
werkt.
Het OS maakt het voor de programma's mogelijk om de hardware
te gebruiken en regelt tevens het beheer zodat het niet mogelijk
is dat meerdere programma's tegelijkertijd bv de harde schijf
gebruiken (tegelijkertijd in computer termen is dus echt in
dezelfde milliseconde).
Het schema maakt het waarschijnlijk duidelijker en geeft
tevens het verschil aan tussen GNU/Linux en bv Windows.
LET OP, we spreken hier nog niet over gebruiker programma's
zoals tekstverwerkers, spreadsheets, spelletjes enz., hoewel je
bij GNU/Linux eigenlijk alles als een gebruiker programma kan
beschouwen.
Dit maakt GNU/Linux, zeker in het begin moeilijker te
doorgronden dan andere soorten OS's
Zoals uit het schema blijkt bestaat het GNU/Linux systeem uit
vele onderdelen die ieder ook weer bestaan uit aparte onderdelen.
Dit komt voort uit de Unix en GNU/Linux filosofie om een
programma op te delen in kleinere stukken om het, vooral bij
grote programma's, beheersbaar te houden, tevens is het hierdoor
veel gemakkelijker om nieuwe onderdelen toe te voegen of te
verbeteren. security update's
Ook is het hierdoor mogelijk om met deze onderdelen een
systeem op maat te maken.
Als je bijvoorbeeld geen USB poorten heb waarom zou je dan deze
mogelijkheid in je systeem opnemen (is ook een van de redenen
waarom een GNU/Linux systeem kleiner is dan een vergelijkbare
Windows opzet).
Hierdoor is het mogelijk om alles, vanaf het moment van
boot-up tot afsluiten, te beïnvloeden of te veranderen.
Dit is wat GNU/Linux zeker in het begin moeilijker maakt dan
andere systemen maar wat na verloop van tijd als een groot gemis
zal worden ervaren als je weer een keer Windows gebruikt.
Copyright (c) 2001 by Stas Z.
Het multi-user, multi-tasking besturingssysteem.
Zoals besproken in 'Geschiedenis/Hoe is GNU/Linux ontstaan', is GNU/Linux
gebaseerd op het Unix besturingssysteem .
Het grootte
verschil met andere desktop besturingssystemen is dat Unix
meestal gebruikt wordt op grootte mainframe computers met vele
aparte gebruikers, zoals grootte bedrijven en internet providers.
Dit betekent dat GNU/Linux mogelijkheden heeft die andere
systemen missen. Het heeft bv de mogelijkheid om vele gebruikers
tegelijkertijd de computer te laten gebruiken, ieder met hun
eigen terminal (multi-user).
Dit betekent dat het mogelijk moet zijn om meerdere
programma's en applicaties tegelijkertijd te draaien
(multi-tasking).
Een groot deel van de complexiteit en de kracht van GNU/Linux
komt van deze twee typische Unix mogelijkheden.
Bijvoorbeeld, het systeem moet een manier hebben om te
voorkomen dat gebruikers per ongeluk elkaars bestanden
verwijderen of dat gebruikers systeem bestanden verwijderen of
veranderen. Ook het gebruiken van vele programma's tegelijkertijd
moet gecoördineerd worden om te voorkomen dat meerdere
programma's dezelfde hardware willen gebruiken.
Als je in gedachte houd waar het systeem in principe voor bedoeld
is, dan zullen vele aspecten die nu misschien nog vreemd
overkomen een stuk logischer worden en zal je je voordeel hiermee
kunnen doen .
Dus geen virusscanner nodig, geen crashend systeem door een
vastlopend programma, zeer overzichtelijke opzet van al je
programma's enz.(dit komt later nog aan de orde).
Copyright (c) 2001 by Stas Z.
Partities.
In principe wordt GNU/Linux niet op een DOS-schijf
geïnstalleerd maar op een aparte partitie, wat op zich logisch is
het is tenslotte een apart besturingssysteem.
(het kan ook wel in een Windows map, maar dit is vragen om
problemen).
In de Windows wereld spreekt men over C-schijf D-schijf enz.,
dit zijn meestal geen aparte schijven maar verschillende
partities. Een partitie is een apart stuk op de harde schijf, dus
als je drie partities heb worden het de C-, D- en E-schijf.
De lijst met gegevens over deze partities en hun plek op de
schijf wordt bijgehouden in de partitie table
(partition table).
Partities werden bedacht in een tijd dat men dacht dat 4
partities wel genoeg zou zijn, vandaar dat in de partitie tabel
ruimte is voor 4 primaire partities.
Om de compatiliteit niet in gevaar te brengen heeft men een
systeem bedacht om deze beperking te omzeilen met de uitvinding
van extended(uitgebreide) partities waarin weer logische
partities aangemaakt kunnen worden.(de benaming is alleen niet zo
logisch).
Linux kan zowel op een primaire partitie als op een logische
partitie gezet worden.
Windows daarentegen wil altijd op de eerste partitie gezet
worden, iets om in de gaten te houden als je een zogenaamd
dual-boot systeem wil opzetten (Windows en Linux op een pc).
Copyright (c) 2001 by Stas Z.
Het ext2 filesysteem.
De reden dat Linux een aparte partitie nodig heeft komt omdat
Linux een ander soort filesysteem gebruikt dan Windows, namelijk
het ext2 filesysteem (extended filesystem version 2).
Een filesysteem is de manier waarop bestanden op de harde
schijf worden gezet. Het filesysteem van Windows heet FAT in de
varianten 12, 16 en 32, evenals het systeem van drive letters
voor partities en CD-rom's, wat ook bij dit filesysteem hoort.
Linux en het ext2 filesysteem gebruiken
benamingen/afkortingen zoals /dev/hda1 om de diversen
schijven, partities en CD-rom's enz. te duiden.(wordt later
verklaard)
Al deze hardware wordt in GNU/Linux behandeld als een apart
filesysteem, wat logisch is aangezien al deze middelen worden
gebruikt om gegevens te lezen of te schrijven.
De manier werken met dit filesysteem is totaal verschillend
van een Windows systeem.
Een belangrijk verschil is dat een ext2 filesysteem niet
fragmenteerd, je hoeft dus niet te zoeken naar een defragmenteer
programma.
Verder kunnen bestandsnamen een lengte hebben van max. 256
tekens en alle tekens mogen gebruikt worden.
De enigste uitzondering is '/' . In het ext2 filesysteem
wordt de '/' (slash) gebruikt om bestanden te scheiden in een pad
e.g. /home/pietje/foo.txt
( 'foo' wordt in het algemeen gebruikt om een er
denkbeeldige naam mee aan te geven ).
Ook het gebruik van extensies zoals '.exe', '.doc' hebben in
Linux geen betekenis anders dan het voor je zelf of anderen
herkenbaar maken wat voor bestand het is.
Dus het programma netscape heet niet netscape.exe.
Wat wel belangrijk is, is dat hoofdletters en kleine letters
verschillend zijn(case sensitive), dus 'Netscape' is iets heel
anders dan 'netscape'
Het ext2 filesysteem is opgebouwd uit een hoofd directory
genaamd '/' ook wel root directory genaamd
( heeft niets te maken met gebruiker root ).
Hieronder vallen de 'systeem directory's' zoals /bin,
/etc, /usr enz.
De aanduiding /bin betekend dus de
directory bin in de root directory en
/bin/gzip, programma gzip in de directory
bin welke zich in de root directory bevindt.
Bestanden en programma's worden volgens bepaalde regels in
een ext2 filesysteem opgeslagen, het is dus niet de bedoeling om
zoals in Windows gebruikelijk is, alles maar overal en nergens op
te bergen.
Iedere subdirectory uit de rootdirectory is bedoeld om
bepaalde delen van een programma te herbergen,
bv in /bin komen alle uitvoerbare gedeeltes van
standaard systeem programma's, en in /usr/bin alle
uitvoerbare delen van gebruikers programma's.
De directory /home/pietje/ is de eigen directory van
gebruiker pietje en de plek waar gebruikers ieder in hun eigen
directory kunnen doen en laten wat ze willen.
Deze manier van gegevens opslag lijkt omslachtig maar maakt het
systeem stabiel en 'hufter-proof' aangezien je ,behalve bij het
installeren of verwijderen van programma's, nooit bij andere
bestanden dan die van jezelf komt.
Het multi-user aspect komt hier pas echt tot z'n recht
aangezien een gewone gebruiker nooit iets kan veranderen of
wijzigen anders dan zijn/haar eigen bestanden in de
/home/gebruikersnaam/ directory.
Dit brengt ons bij het kenmerkende aspect van *nix achtige
systemen, file permissies (file permissions).
Dit houdt in dat in Linux alle bestanden een eigenaar(owner)
en een groep(group) hebben en drie mogelijkheden, er kan naar
geschreven worden(write), het kan gelezen worden(read) of het is
uitvoerbaar(execute).
Bijvoorbeeld:
Het bestand home/pietje/mijnbestand heeft als eigenaar
pietje, als groep pietje en de permissies : pietje kan er naar
schrijven, het lezen, het uitvoeren.
Een andere gebruiker, henk, kan dit zelfde bestand alleen
lezen, en verder niks.(in een standaard systeem)
Pietje kan de permissies van zijn eigen bestanden veranderen
en aangeven dat gebruikers uit zijn groep het bestand
/home/pietje/mijnbestand kunnen uitvoeren, zodat henk die
tot dezelfde groep als pietje behoord dit bestand nu kan lezen en
uitvoeren, maar niet kan veranderen.
Trouwens als je geen
permissies heb om te doen wat je wilt doen dan kan het ook echt niet,
dat is nu GNU/Linux!!
Nu lijkt dit alles een hoop gedoe, maar aangezien het beheer
van het filesysteem het werk van de kernel is, en de meeste
distro's goede standaard waarden meegeven, valt dit in de
praktijk wel mee en is het niet nodig de waarden te veranderen.
Het veranderen van de file permissies raad ik sterk af,
de kans bestaat namelijk dat je je systeem net zo makkelijk te
hacken maakt als bijv. Windows
Wat Linux vrijwel immuun maakt voor virussen en crackers,(zie
script-kiddie, cracker, hacker voor een belangrijk verschil
tussen die drie), zijn de genoemde file permissies en
wachtwoordbeveiliging (wordt hierna besproken).
Dit betekent dat een bestand buiten je eigen /home
directory uitsluitend verandert ( en gewist! ) kan worden door de
gebruiker root, dat is de gebruiker met permissies om alles te
doen.
Copyright (c) 2001 by Stas Z.
Device files: Hardware en devices
Devices
De Linux kernel heeft tot taak om alle hardware te beheren,
en doet dit dmv devices.
Alle hardware en zijn componenten hebben nummers (device number),
of eigenlijk twee nummers, een soort-nummer (major-device number)
en een volgnummer (minor-device number).
Aangezien namen makkelijker zijn hebben al deze devices ook
een naam (device files) gekregen, welke weer verwijzen naar deze
nummers.
Deze device files zijn ondergebracht in de directory /dev.
Als voorbeeld:
- /dev/lp0 : de eerste parallellen poort (LPT1 in MSN land)
- /dev/ttyS0 : eerste seriële poort (COM1 in MSN land)
Even tussendoor, in Linux wordt als eerste element altijd
0 gebruikt.
- /dev/ttyS1 : tweede seriële poort.
- /dev/audio : de geluidskaart (zijn meerdere devices voor)
- /dev/fd0 : eerste floppy drive
- /dev/fd1 : tweede floppy drive
- /dev/hdc : IDE cd-rom
- /dev/hda : gehele eerste IDE harde schijf
- /dev/hda1 : eerste partitie op de eerste IDE harde schijf
- /dev/hda5 : eerste logische partitie op de eerste IDE harde
schijf
( verdere uitleg over de harde schijf volgt dadelijk )
Op het eerste gezicht lijken de device files erg op andere
files uit het file systeem en, dat is ook zo !
Naar veel van deze device files kan direct geschreven en uit
gelezen worden en zullen in deel 2 van de handleiding nog nader
aan de orde komen.
De manier hoe Linux met de hardware omgaat lijkt heel erg op
hoe het met gewone files omgaat.
Hard disk, CD-ROM, floppy enz.
Harde schijven, CD-ROM's en CDR's worden gebruikt om gegevens
op te slaan of gegevens te lezen.
Zij worden door Linux allemaal als file systemen gezien, wat
inhoud dat ze allemaal tot de zelfde device soort horen namelijk,
hd(a,b,c,d). Dit houd in dat er geen wezenlijk verschil wordt
gemaakt in de manier van werken met deze systemen.
Voorbeeld:
Computer met:
- 1 IDE harde schijf, 2 primaire partities, 3 logische
partities
- 1 IDE CD-ROM als master
- 1 ATAPI CDR als slave
De floppy drive, tapestreamer enz. komen dadelijk aan de
orde.
Welke device files worden er gebruikt ?
De harde schijf: hda
- 1st primaire partitie, hda1
- 2e primaire partitie, hda2
- uitgebreide partitie(extended) nodig voor de logische
partities, hda3
- 1st logische partitie, hda5
- 2e logische partitie, hda6
Logische partities beginnen altijd bij hd*5 , en
tellen dan door. In dit geval wordt hda4 dus niet
gebruikt.
De CD-ROM : hdc
Een IDE schijf is verbonden met een IDE controller, waar twee
schijven op aangesloten kunnen worden ook wel master en slave
genoemd.
In Linux worden hier twee devices aan toegekend, hda
en hdb .
In ons voorbeeld hebben we maar een harde schijf en wordt
hdb wel toegekend maar niet gebruikt, en verder
overgeslagen.
Vandaar dat de CD-ROM als device file hdc heeft.
De CDR : hdd
Gewoon door geteld dus hdd.
Net zoals de schijven en CD's worden de floppy drive,
tapestreamer en zipdrive ook als filesystemen behandeld, alleen
met andere device files.
Mounten van filesystems
Voordat filesystemen en partities in Linux gebruikt kunnen
worden moeten zij eerst met het systeem verbonden worden, dit
wordt mounten genoemd.
Je kunt het mounten zien als het bevestigen van een extern
filesysteem aan het ext2 filesysteem.
Het mounten van bijv. een CD-ROM, gebeurt standaard aan
/mnt/cdrom in de root directory. Dus de complete CD wordt
een sub-directory in de directory /mnt/cdrom .
Als je bijv. de CD-ROM ( /dev/hdc ) wilt gebruiken
dan moet je hem eerst mounten, mount /mnt/cdrom .
Deze manier van mounten maak gebruikt van het configuratie
bestand /etc/fstab , in dit bestand staat omschreven hoe
en waar er gemount moet worden.
Als er op deze CD een bestand zou staan genaamd
'cdbestand' in de directory 'cddirectory' dan is het
pad naar dit bestand: /mnt/cdrom/cddirectory/cdbestand.
Op het moment dat het gemounte filesysteem niet meer gebruikt
wordt, zal het weer 'losgemaakt' moeten worden, dit noemen we
umounten ( umount dus zonder 'n').
umount /mnt/cdrom
Het umounten is een taak van de gebruiker die niet vergeten
mag worden, daar de kans bestaat dat er nog gegevens in het
computer geheugen staan die nog in dit file systeem geschreven
moeten worden.
Dit kan zich met name voordoen bij floppy's, de CD-ROM kan
pas verwijdert worden na umounten.
Dit wegschrijven van de gegevens wordt flushen genoemd, en
dit is wat er gebeurt bij het umounten.
Partities moeten ook eerst gemount worden voordat het systeem
het herkent, en gebeurt op de zelfde manier als bij de CD-ROM eg
mount /mnt/hda5.
Dit systeem van mounten en umounten is vooral bij partities
makkelijk omdat het je staat stelt om niet gebruikte partities
ontoegankelijk te maken voor het systeem.(voor het systeem
bestaan ze niet)
Te denken valt aan een aparte partitie van 700 MB om als
backup partitie te gebruiken.
Deze partitie wordt gemount op het moment als je van gegevens een
backup wilt maken, en vervolgens weer ge-umount. Als die vol is
brandt je de partitie op een schijf.
Al deze tijd is de partitie, als die niet gemount is, veilig
voor alles wat het systeem zou kunnen beschadigen, zolang de
harde schijf heel blijft uiteraard.
Copyright (c) 2001 by Stas Z.
Console: terminals, virtuele terminals en
consoles
nog meer devices.
Zoals eerder vermeld is GNU/Linux een echt multi-user
multi-tasking OS. Meerdere gebruikers kunnen tegelijkertijd
meerdere dingen doen.
Elke gebruiker heeft zijn eigen scherm-met-toetsenbord
(terminal), waarmee hij communiceert met de computer (let wel,
dit is allemaal in de tekst-mode, het beruchte zwarte scherm met
cursor).
Een terminal zit het dichtst bij de computer: de
console.
De term 'console-mode' of 'console' wordt ook wel gebruikt
om bij een programma aan te geven dat dit programma niet grafisch
georiënteerd is.
GNU/Linux heeft een bijzondere mogelijkheid namelijk meerdere
consoles op een PC. Deze worden virtuele consoles genoemd, en
zijn te bereiken met de toets combinaties LinkseAlt-F1 t/m
LinkseAlt-F6.
Dit biedt de mogelijkheid om bijv. in de eerste console
wave-bestanden in MP3's om te zetten, in de tweede console de
MP3's naar een aparte partitie te kopiëren, en ze afspelen in de
derde console.
Linux kan overweg met echte terminals, een DEC VT100 terminal
kan worden aangesloten op een van de seriële poorten.
Er kan mee gewerkt worden als met de console.
Een derde manier om met de computer te werken is over een
netwerk via een terminal-verbinding. De computer gedraagt zich
als een terminal maar de signalen gaan over een netwerk.
We
spreken dan over virtuele terminals.
Alle terminals, virtuele terminals en consoles zijn echte of
pseudo(virtuele) hardware en hebben dus ook device files in de
directory /dev:
/dev/console - aanduiding voor de console, wordt
eigenlijk niet gebruikt.
/dev/tty1 t/m tty63 - de virtuele consoles, standaard
wordt alleen tty1 t/m tty6 gebruikt, tty1 kan
als de console gezien worden.
/dev/ttyS0 t/m ttyS3 - de 'echte' terminals aan de
seriële poorten (COM1 t/m COM4). De muis wordt ook op een van
deze poorten aangesloten, het hoeven dus geen echte terminals te
zijn.
Alles wat serieel is wordt trouwens aan een van deze poorten
'gehangen'.
/dev/pts0 t/m pts256 - virtuele terminals, 256 stuks
is de standaard kernel waarde.
Copyright (c) 2001 by Stas Z.
Login en wachtwoorden.
Zoals in alle multi-user besturingssystemen, werkt ook linux
met aparte gebruikers en de daarbij behorende wachtwoorden (user
en password), het systeem moet tenslotte een manier hebben om
verschillende gebruikers te onderscheiden en te controleren.
In Linux moet je eerst aanmelden (inloggen) en dan een
wachtwoord intikken (password) voordat je wordt toegelaten in het
systeem.Zie ook login prompt, Password.
Het intikken van het wachtwoord wordt niet op het scherm
getoond, ook niet met sterretjes.
Ook hierin verschilt Linux nogal van Windows, hoewel je in
Windows ook de keus heb om aparte gebruikers aan te maken met
ieder een eigen wachtwoord, is dit in Linux een verplichting
omdat het een echt multi-user systeem is.
Nu stelt een wachtwoord in Windows niet zo veel voor, als je
het vergeet kan je gewoon op de ESC toets drukken om verder te
gaan ( zal wel gebruikersvriendelijk zijn ofzo ).
Een wachtwoord vergeten in Linux betekent in het beste
geval, door root ( ben je zelf op een privé PC ) een nieuw
wachtwoord laten instellen, in het slechtste geval ( root
wachtwoord vergeten ) schijf formatteren en opnieuw beginnen.
(OK, met een boot diskette en single user mode is het nog
wel te redden, maar dat hoort niet op deze site).
De gebruiker 'root' is in *nix systemen degene die alles,
maar dan ook alles, kan doen. Dit houd in dat als je ingelogd ben
als root je de schijf kan wissen en dat Linux dat gewoon voor je
uitvoert zonder iets te vragen!
Nog even over de wachtwoorden.
Een wachtwoord heeft pas zin als het een niet makkelijk te
raden wachtwoord is. Zie ook MD5-password
Wat je in ieder geval niet moet doen is een zelfde
wachtwoord nemen als je gebruikersnaam, dit is het eerste wat een
onverlaat zal proberen!
Een goed wachtwoord bestaat uit letters, cijfers en
leestekens.
Zeker voor het root wachtwoord is het zaak een cryptisch
woord te bedenken, bijv. '9twgq4%I'
( gewoon met ogen dicht wat intikken ! )
Je kan je wachtwoorden natuurlijk op een briefje schrijven,
we hebben het hier tenslotte over privé PC's (of je moet je
huisgenoten niet vertrouwen), het moet in ieder geval
'internetveilig' zijn.
Dus nooit je wachtwoord gebruiken als wachtwoord
voor je hotmail of andere site's waar wachtwoorden nodig zijn.
Even tussendoor,
DOE NIKS ALS ROOT ALS JE NIET PRECIES
WEET WAT JE DOET , ik kan dit niet vaak genoeg herhalen.
En ga NOOIT, NOOIT, NOOIT, als root het internet op
want dan ben je onweerstaanbaar voor iedereen die fout wil op je
computer.
Het wachtwoord voor root moet NIET te raden zijn !
Dus geen namen, bestaande woorden en al helemaal niet je
gebruikersnaam als wachtwoord !
Er zijn namelijk programma's die wachtwoorden proberen te
raden op basis van namen, woordenboeken, en lijsten van
veelvoorkomende wachtwoorden.
Door het multi-user aspect van Linux ben je verplicht aparte
gebruikers aan te maken, ook al ben je de enigste die de PC
gebruikt. Het is wel mogelijk om maar een gebruiker te hebben,
wat dan de root zal zijn, maar dan zal je je systeem binnen de
kortste keren onbruikbaar hebben gemaakt.
Had ik al gezegd dat je NIKS als root moet doen als
je je niet weet wat je doet?
Alle distro's zullen je bij het installeren ook op het 'root'
verhaal wijzen en aanbieden een tweede gebruiker voor je aan te
maken.
Het grootte voordeel van het 'multi-user' zijn van Linux is
dat het systeem weet wie er ingelogd zijn en daardoor ook precies
kan bijhouden wie wat doet.(Big Brother watching you, alleen ben
je het nu zelf)
Voordelen van de mogelijkheid om meerdere gebruikers op je
PC te hebben :
- Om te voorkomen dat je desktop gevuld wordt met tientallen
iconen(heb ik persoonlijk een hekel aan) kun je onderscheid maken
tussen diversen toepassingen, bijv. een gebruiker voor
videobewerking, een voor internet, een voor programmeren.
- Een standaard gebruiker om verdachte programma's in uit te
proberen.
Deze is er een die je zeker moet aanmaken, als er dan iets mis
gaat kun je gewoon deze gebruiker verwijderen en opnieuw
aanmaken. Het 'hoe en waarom' komt in deel 2 van de handleiding nog aan de orde.
- Aparte gebruiker voor evt kinderen die de PC gebruiken om op
internet te surfen, met de mogelijk voor root om het surf gedrag
te kunnen controleren (gezien de 'content' op internet bijna een
verplichting voor ouders, in het bijzonder de chat channels).
Tevens is het mogelijk dmv. de firewall mogelijkheden in de
kernel bepaalde chat channels of sex-site's te blokkeren.
(dit is echt blokkeren, dus niet de lachwekkende blokkade van
bijv. Compuserve)
- Bepaalde gegevens voor iedereen verborgen houden door de
read permissie's te veranderen.
(misschien wil je zelf wel de
bovengenoemde site's bezoeken)
Dit systeem van meerdere gebruikers op 'stand alone' PC is
iets om gelijk vanaf het begin te gebruiken en aan te wennen, je
zal er later veel plezier van hebben.
Copyright (c) 2001 by Stas Z.
Internet
Netwerken en dus ook internet, wat gewoon een heel groot netwerk is, werken met bepaalde protocols zoals PPP, TCP/IP, FTP, UDP enz.
Deze protocols, de manier van gegevens overdracht, zijn OS onafhankelijk en daardoor werken alle besturingssystemen op de zelfde wijze.
Hoewel Microsoft het vaak wil doen voorkomen alsof alles door hun wordt bedacht en ontwikkeld, hebben zij vrijwel niets bijgedragen aan de ontwikkeling van eerder genoemde protocols en moeten zij ook gewoon aan de standaards van deze protocols voldoen.
Het enigste verschil is dat *nix systemen zich beter houden aan de standaards van deze protocols dan Windows.
De informatie over de verschillende aspecten van netwerk verbindingen die volgt is dus niet specifiek voor GNU/Linux, alleen heb je bij GNU/Linux meer inzicht in deze zaken dan bij Windows.
Het protocol dat standaard door Linux gebruikt wordt is TCP/IP (Transmission Control Protocol/Internet Protocol) en is eigenlijk een verzameling van een aantal protocols.
Voordat er wat verstuurd kan worden over een netwerk moet dit eerst geschikt worden gemaakt.
Bij TCP/IP wordt alles in kleine stukjes 'geknipt' en ieder stukje verpakt in een pakketje (packet), voorzien van het bestemmingsadres.
Deze packets worden verzonden naar de bestemmings computer.
Als deze het eerste packet heeft ontvangen zend hij een packet terug met een 'ik heb het packet, stuur de volgende' mededeling.
Alle computers die met een netwerk verbonden zijn moeten een uniek nummer hebben, het bestemmingsadres, dit noemen we een IP adres.
Een IP adres bestaat uit vier cijfer reeksen van 0 tot 255 gescheiden door een punt, bijv 157.19.192.8
Omdat namen vaak makkelijker te onthouden zijn dan getallen hebben al deze IP adressen ook namen gekregen.
Deze namen zijn volgens een bepaalde structuur opgebouwd, bijv crasheasy.losers.msn.nl
Van links naar rechts, de naam van de computer 'crasheasy'. Deze staat op de afdeling 'losers' van het bedijf 'msn' en gevestigd in nederland.
Het gedeelte na de eerste punt, 'losers.msn.nl', wordt het domein genoemd en 'crasheasy' is een van de computers in dit domein.
Tevens zijn 'losers', 'msn' en 'nl' ook (grote) domeinen.
Deze namen zijn alleen bedoeld voor mensen, computers werken alleen met IP adressen.
Het omzetten van deze namen naar de bijbehorende IP adressen gebeurt door speciale servers, Domain Name Servers (DNS).
Aangezien GNU/Linux intern ook veel weg heeft van een netwerk, heeft een prive computer ook een naam en IP adres.
Let wel dit is alleen voor intern gebruik en heeft niets met het voorgaande te maken.
Het interne IP adres bij GNU/Linux is altijd 127.0.0.1, met de optie om nog meer IP adressen te hebben (127.0.0.2, 127.0.0.3 enz.).
De naam van je computer (hostname) geef je zelf op bij de installatie. Deze naam kan van alles zijn wat je maar bedenkt.
Een standaard alias voor dit IP adres en naam is localhost
Om verbinding met een netwerk zoals internet te kunnen maken moet er eerst een verbinding met een ISP(internet provider) gemaakt worden dmv een PPP protocol.
Vervolgens kan via deze verbinding een HTTP verbinding naar een website gemaakt worden, een FTP verbinding naar een FTP-server om gegevens te downloaden, een POP3 verbinding om je e-mail op te halen enz.
Al deze verbindingen en hoe je ze opzet en beveiligd komen uitgebreid in deel 2 aan de orde.
Copyright (c) 2001 by Stas Z.