Studiegids LPI
(2001)
level 1 - deel 1
Samenvatting H4; het bewerken van bestanden
(Sorrie voor de word97-code in de bron)
Dit hoofdstuk omvat het oproepen van overzichten van eigenschappen van bestanden en directories. Via de commandline (commando ls) of via MidnightCommander (commando mc)( pag 4.66 + pag 4.73)
Het kopieren, verplaatsen, aanmaken en verwijderen van bestanden en directories, mbv commando's cp, mv, mkdir, rm, rmdir. (pag 4.67 => 4.70)
Het selecteren van bestanden door middel van wildcards. bv * ? [Aa]. (pag. 4.71 => 4.72)
Het sturen van de inhoud van een bestand, bv naar een printer, of naar een commando (inhoud van bestand is dan de invoer van een commando), mbv commando lpr of >. (pag. 4.71 + 4.74)
Het redirecten van de uitvoer van een commando (of programma; is in wezen ook een bestand) naar een ander bestand, door overschrijven (>) of appending (>>), of via een van de 3 kanalen (stdin 0, stdout 1, stderr 2) naar een bestand. bv rm 2>bestand6 geeft foutmelding 'too few arguments' in 'bestand6'. (pag. 4.73=> 4.75)
Het pipen van commando's waardoor meerdere bewerkingen achter elkaar op 1 bestand kunnen worden uitgevoerd (en niet telkens een tijdelijk bestand nodig is bv). (pag 4.74)
Het als argument van een commando gebruiken van de inhoud van een bestand (dmv commando xargs) (pag 4.75 => 4.76).
Het splitsen van data, door tussen meerdere commando's, die gepiped zijn, de uitvoer bijvoorbeeld tussentijds naar een ander bestand te sturen. dmv het tee-commando. (pag 4.76)
Samenvatting H5; het beheren van processen
Dit hoofdstuk omvat een korte uitleg van de opbouw van een linux®Systeem; kernel, processen en bestanden. (pag. 5.83)
Het beheren van processen met behulp van de process ID. (pag 5.84)
Het oproepen van een overzicht van vanuit de actuele shell gestarte processen, voorzien van volgnummer (niet proces ID) dmv jobs-commando. (pag. 5.85)
Een uitleg van de oorsprong van de term 'terminal' (pag. 5.82)
Het via de shell afbreken van een proces dmv ctrl+C (pag 5.83), of afbreken en direct in achtergrond plaatsen met ctrl+Z (pag 5.85=>5.86).
Het via de shell in de voorgrond doen draaien van een proces (het koppelen aan de terminal) door het in een shell op te starten (pag 5.83), of het uit de achtergrond te halen met het commando fg <volgnummer>(pag. 5.86).
Het via de shell in de achtergrond laten draaien ervan door toevoeging van & achter het commando (pag. 5.84), het via de shell in de achtergrond herstarten van het process door het commando bg+volgnummer (pag 5.86), of het ondanks uitloggen in de achtergrond door laten draaien van een proces door middel van het commando nohup (pag 5.86).
Een overzicht van systeemprocessen, dus ook de processen die niet vanuit de actuele shell zijn gestart, krijg je dmv het commando ps. (pag 5.87)
Een per 5 seconden ververste lijst ervan krijg je met top. (pag 5.88)
In genoemde lijsten staan de proces ID's. Deze is bruikbaar om signalen naar de processen te sturen. zoals
kill -9 PID.Het is de kernel die deze signalen verwerkt, en niet het proces zelf. (pag 5.89 => 5.90)
De processen krijgen bij opstart automatisch prioriteit 0. (pag 5.90) Met argument nice kun je die waarde als gewone gebruiker verhogen (en de prioriteit daarmee verlagen). Root kan ook de waarde verlagen. (pag 5.90 => 5.91) Met commando renice kun je achteraf, terwijl het proces loopt, de prioriteit wijzigen. (pag 5.91)
Samenvatting H6 t/m blz 107 (diskettes);
Devices, partities en filesystemen
De eerste helft van dit hoofdstuk omvat globaal de volgende informatie:
Devices zijn bestanden, zoals alles op een LinuxSysteem een bestand is. DeviceBestanden dus in dit geval.
De communicatie tussen gebruiker en hardware gaat via deze deviceBestanden. (pag 6.95 => 6.95) Uitleg: Een gebruiker start een progamma, of een commando, dat via een deviceBestand communiceert met de deviceDriver in de kernel, die vervolgens de hardware aan stuurt.
Er wordt een opsomming van interessante deviceBestanden gegeven op pag 6.97.
De devices (deviceBestanden) kunnen in 3 soorten onderscheiden worden:
c; characterDevice (schrijft invoer direct naar waar het heen moet); bv voor de terminal,
b; blockDevice (maakt buffer alvorens iets te doen met de invoer); bv voor de harde schijf,
p; FIFO (first in first out) of 'named pipe' (is deviceBestand dat door 2 progs gebruikt kan
worden om met elkaar te communiceren.); bv blog (pag 6.97 => 6.98)
De deviceBestanden krijgen, in de directory /dev, als eerste getal een 'major device number' mee, dat verwijst naar de in de kernel aanwezige deviceDriver. Voorbeelden op pag 6.96.
Het tweede getal dat een deviceBestand mee krijgt is het 'minor device number', dat verwijst naar de passende deviceDriver variant, binnen de eerder aangegeven deviceDriver. (pag 6.98)
Het aanmaken van een deviceBestand kan met het commando
mknod. (pag 6.98).De harde schijf is een van de meest belangrijke hardwaredevices van een PC.
Het wordt opgedeeld in 'tracks' of 'cilinders' (v.g.l. jaarringen van boom), die op zichzelf weer opgedeeld zijn in 'sectoren'. Daarbij kunnen er meerdere lees/schrijfkoppen aanwezig zijn en wordt dus ook het aantal 'heads' aangegeven. (pag 6.99)
Alle onderdelen van een PC-configuratie zijn op controllers aangesloten.
Een bepaalde groep hardwareDevices maakt echter gebruik van een soort van standaardControler. Zo gebruikt hardDisc, CD-rom station, tape-unit en DVD-station een van de volgende min-of-meer-standaard-controllers; IDE, SCSI of sinds kort serial-ATA. Boek behandeld alleen de 1e 2.( pag 6.100)
1 IDE-controller is gewoonlijk geschikt om 2 van de bovengenoemde devices op aan te sluiten, waarbij de een master en de ander slave is. IDE ondersteund max. 528 Mb devices. Vandaar EIDE. (pag 6.100)
Op 1 SCSI-controller kan vaak 7 of meer devices worden aangesloten. Behalve de bovengenoemde 4 devices kan bv ook een scanner, printer e.d. aangesloten worden op een SCSI-controller. Er zijn inmiddels (2004) 9 soorten SCSI met bijbehorende controller en kabel.
Een hardDisc kan gepartitioneerd worden, in maximaal 4 primaire partities, of maximaal 1 extended partitie en maximaal 3 primaire partities. (pag 6.100 =>6.101).
Een extended partitie kan weer maximaal 12 logische partities bevatten. (pag 6.101)
Om te partitioneren is onder Linux een progamma als fdisk te gebruiken. Je moet er root voor zijn. Zie vanaf pag 6.101 voor aanwijzingen voor het aan maken van primaire, extended en logische partities. (pag 6.101 => 6.104)
Als partitioneren rond is kan een fileSystem worden gedefinieerd. Er is keus uit vele fileSystems (pag 6.104). Meest gebruikten in 2001 zijn ext2 (inodes), msdos (FAT), iso9660 (schrijven naar CD-rom)), proc (communicatie met kernel) en devfs (om het aantal deviceBestanden te beperken). (pag 6.104 =>6.106)
Aanmaken van een fileSystem kan met commando 'mkfs' + gewenst type fileSystem + deviceBestand. (pag 6.106) Standaard is ext2.
Een fileSystem kun je ook aan maken op een diskette.(pag 6.107)
Linux® is the registered trademark of Linux Torvalds in the U.S. and other countries.