Home
Skripte - DHBW Stuttgart
Contents
1. Kerstin Rossek amp Silke Wacker 49 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 5 4 Verweise Symbolische und Hard Links eee vieus oc 5 4 Verweise Symbolische und Hard Links Verweise oder auch Links genannt werden dazu benutzt um einen alternativen Namen zu be stehenden Dateien oder Verzeichnissen zu erstellen 5 4 1 Symbolischer Link Symbolische Links funktionieren ber Dateisystemgrenzen hinweg also auch im Netzwerk und verweisen auf existierende Dateien oder Verzeichnisse Ein symbolischer Link kann unabh ngig von der Zieldatei gel scht werden Im Gegensatz zum Hard Link ben tigt ein Symbolischer Link eigenen Speicher im Dateisystem Konkret handelt es sich um eine kleine Datei welche einen Pointer auf eine andere Datei enth lt Wenn das Linuxsystem einen solchen Link ffnet ffnet es die Datei des symbolischen Links und liest den darin enthaltenen Pointer und ffnet daraufhin die eigentliche Datei auf welche verwiesen wird Symbolische Links kann man sich einfach anzeigen lassen mit 1s 1 Anmerkung wird eine Datei gel scht auf welche verwiesen wird so bleibt der symbolische Link weiterhin existent zeigt aber ins nichts und wird dann als stale bezeichnet e ln s vorhandenes_objekt symbolischer_name 5 4 2 Hard Link Ein Hardlink ist nicht wirklich ein Verweis sondern eine Kopie der Verzeichniseintr ge also Inode einer Datei Ein Hard Link hat gegen ber einer K
2. Kerstin Rossek amp Silke Wacker 41 22 Mai 2005 Der letzte Unix Kurs vor der Auto hn 5 Dateiverwaltung or sammen 5 Dateiverwaltung Linux basiert auf einem hierarchischen aber auch sehr flexibel handhabbaren Dateisystem Im nun folgenden Kapitel wird die Dateisystemhierarchie von Linux auf Basis des Filesystem Hierarchy Standard FHS vorgestellt insbesondere auch der Umgang mit Dateien Links Zugriffsrechten etc F r vertiefende Informationen ber den FHS empfiehlt sich http www pathname com fhs Die folgenden Punkte sind Inhalt dieses Kapitels die hier genannten Befehle stellen nur eine bersicht ber die wichtigsten Befehle der nachfolgenden Kapitel dar In den jeweiligen Kapiteln werden auch weitere wichtige Befehle aufgezeigt e 5 1 Dateisystemhierarchie FHS e 5 2 Dateisysteme ext2 ext3 ReiserFS AFS e 5 3 Befehle im Zusammenhang mit Dateien und Verzeichnissen e 5 4 Verweise Symbolische und Hard Links Befehl n e 5 5 Zugriffsrechte Befehle chmod chgrp chown e 5 6 Einbinden von Dateisystemen Befehl mount umount e 5 7 Partitionierung Befehl fdisk mkfs e 5 8 Dateisystem Integrit t Befehl df du fsck 5 1 Dateisystemhierarchie 5 1 1 Hierarchischer Aufbau Der Aufbau der Linux Dateisystemhierarchie ist eine Baumstruktur mit definierter hierarchischer Gliederung Aufgrund dieser Baumstruktur wird diese Hierarchie auch kurz Dateibaum genannt Dies ist a
3. 22 Mai 2005 ji Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn H Inhaltsverzeichnis 67 6 1 Programme Prozesse TU 67 6 1 1 Programme und Prozessel nn 67 6 1 2 _Prozesse 68 6 2 Prozesszustande e 69 6 21 IMIGIENEASKIMOD SS ar ae ar oe 5 rate Bart tet ware ee ee 69 6 2 2 Prozesszust ndel 70 6 2 3 Schnittstellen von Prozessenl 2 0 a a 71 6 3 Streams Umleitungen Pipes 2 2222 oo on nn nn 71 6 3 1 Unix Streams s cose 2a 0 a0 u a a ann nn a a ee 71 6 3 2 Redirection Umleitung e 73 AS act he ee cece RN 73 6 4 Prozesskontrollel oo non 74 6 4 1 berwachung von Prozessen 2222 Coon 74 6 4 2 Beeinflussung 2 2222 oo oo oo 77 6 5 Daemons A 79 6 5 1 NECO kr e A Shae we a HA ws an ee we BLE ale waere 79 AN 22 bee ee tee ee eae ERE ee ee 80 A 80 6 6 2 Runlevelsl 2 444 444 4254 4 4 ds REE eS 80 6 6 3 _ Strukturvonre d oa a 81 Shell 85 7 1 Kommandozellel e 85 7 1 1 Bash Basics 2455 225 a u au a nn a a eee 85 7 1 2 _Kommandozeileneditor e 86 7 1 3 Automatische Kommando und Dateinamenerweiterung Tabulator Taste 86 7 1 4 History das Ged chtnis der kommandozele 2 2 2 2 2 22220 86 7 1 5 Reservierte Worte und Zeichen mit besonderer Bedeutung 87 7 1 6 QUWOUERUNG Tee oe u a a re A 87 7 1 7 Erweiterungen e 88 7 1 8 Wichtige Dateien f r die Baeht nn 89 C2 KOMMAMNGOS i e e aaa aa e p a ee er
4. e Alle Desktop Komponenten sind einfach zu konfigurieren durch Dialoge nicht durch kryp tische Textdateien vgl Benutzerfreundlichkeit e Zu allen Komponenten beziehungsweise Programmen steht eine umfassende Online Dokumentation in einem leicht zu lesenden Format HTML zur Verf gung e Der Austausch und die Nutzung von Daten unterschiedlicher Desktop Programme sind unkompliziert 22 Mai 2005 138 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn o vorus oraa l 11 5 Desktop Systeme e Internet Funktionen etwa der Zugriff auf ftp Verzeichnisse werden von allen Kompo nenten transparent unterst tzt Lokale und externe Daten k nnen auf die gleiche Weise bearbeitet werden Im Folgenden werden die beiden Deskop Systeme KDE und Gnome vorgestellt die die meiste Popularit t genie en und daher mit den meisten Distributionen mitgeliefert werden 11 5 1 KDE The K Desktop Environment KDE ist ein zeitgem es Desktop System mit Netzwerktransparenz f r UNIX und Linux KDE versucht dem Bedarf eines einfach zu bediendenden Desktops f r UNIX und Linux nachzukom men hnlich den Desktops wie man sie bei Microsoft Windows oder MacOS findet Das KDE Project wurde im Oktober 1996 gegr ndet und steht unter der LGPL GPL Lizenz Die folgende Abbildung zeigt beispielhaft KDE 3 1 wie es bei SuSE Linux 9 0 Professional mitgeliefert wird beispielhaft deswegen weil KDE eine Vielzahl von Anpassung
5. 1 Data Sharing Teilen von Daten e Shareable Diese Dateien k nnen von verschiedenen Rechnern im Netzwerk gleichzei tig benutzt werden Lokal auf einem Rechner handelt es sich um Dateien wie Benut zerdaten viele ausf hrbare Programme und gemeinsame Konfigurationsdateien z B etc hosts e Non Shareable Dateien k nnen nicht von anderen Rechnern benutzt werden so z B Passwort Dateien Netzwerkkonfigurationsdateien und System Logs 2 Data Modification ndern von Daten e Variable Variable Daten k nnen jederzeit ge ndert werden so z B Logfiles wie var log messages e Static Statische Daten sind Daten die ber einen l ngeren Zeitraum konsistent blei ben so z B Systembefehle wie Is oder die bash Diese Dateien ndern sich typischer weise nur wenn z B ein Update des Linuxsystems durchgef hrt wird Systemverzeichnisse Die meisten Systemverzeichnisse sind definiert und haben entweder eine besondere Bedeutung oder beinhalten spezifische Daten Die hier aufgef hrte Liste gibt auszugsweise einen berblick ber die wichtigsten Verzeichnisse Kerstin Rossek amp Silke Wacker 45 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 5 2 Dateisysteme manta e bin Grundlegende Systemprogramme wie z B cp date Is mkdir diese Programme sind teilweise auch f r den Systemstart wichtig e boot Boot Lader und Programme hier liegt u a der Linux Kernel sowie Parameterdateien e dev Ger te D
6. section Devices Bercher GcbkatesA HXH 400 Bus ID 1 0 0 Driver ay Identifier Device 0 Vendorlam WT aid ie EndSeek ion section Screen DefaultDepth 24 subseckion Display D gth 21 Pidan 10242768 End subsection Device Device O Identifier Seren 0 Monitor Honitor 0 Endsect ion Abbildung 11 2 Beispiel XF86Config F r Anf nger empfiehlt es sich eines der oben genannten Werkzeuge soweit verf gbar zur Kon figuration zu verwenden oder bei speziellen Problemen nach HOWTOs im Internet zu schauen Kerstin Rossek amp Silke Wacker 135 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 11 3 X Org _ 11 2 2 Display Manager Wie bereits am Anfang dieses Abschnitts erw hnt wird X bei fehlerfreier Funktion im Rahmen des Init V Prozesses im Runlevel 5 gestartet Dabei wird X durch einen Display Manager gest artet Eine weitere Aufgabe des Display Manager ist das Benutzer Login Sichtbar wird dies f r den Benutzer nach Abschluss des Init V Prozesses wenn eine grafische Login Box erscheint Mit dieser muss sich der Benutzer mit seinem Benutzernamen und seinem Passwort authentifizie ren Ist der Login erfolgreich wird der entsprechende Window Manager oder das entsprechende Desktop System gestartet sp ter mehr dazu Dieser Benutzer Login kann als grafischer Ersatz f r die Login Eingabeaufforderung wie man sie von der Kommandozeile kennt gesehen werden Dar ber hinaus i
7. Neben der GPL existiert noch die Variante LGPL Libary GPL Der wesentliche Unterschied zur GPL besteht darin dass eine derart gesch tzte Bibliothek auch von kommerziellen Produkten ge nutzt werden darf deren Code nicht frei verf gbar ist Ohne die LGPL k nnten GPL Bibliotheken nur wieder f r GPL Programme genutzt werden was in vielen F llen eine unerw nschte Einschr n kung f r kommerzielle Programmierer w re Die LGPL wurde durch ihren Nachfolger der GNU Lesser General Public License zu Beginn des Jahres 1999 abgel st Andere Lizenzmodelle im Linux Umfeld Durchaus nicht alle Teile einer Linux Distribution unterliegen den gleichen Copyright Bedingungen W hrend der Kernel und viele Tools der GPL unterliegen gelten f r manche Komponenten und Programme andere rechtliche Bedingungen Im folgenden sind beispielhaft vier F lle angef hrt e Beispielsweise gilt f r das X Window System eine eigene Lizenz da dieses urspr nglich vom MIT entwickelt wurde Die jetzige Lizenz ist von einer fr heren Lizenz des MIT abgeleitet e F r manche Netzwerk Tools gilt die BSD Lizenz Dabei handelt es sich um das Lizenzmo dell welches f r die bereits erw hnten Betriebssysteme OpenBSD NetBSD und FreeBSD verwendet wird Dieses Modell ist insofern liberaler als die GPL als die kommerzielle Nutzung ohne die Freigabe des Codes zul ssig ist Die Lizenz ist daher vor allem f r kommerzielle Programmierer interessant die Produkte entwickel
8. Normale Benutzerkonten mit denen normale Benutzer arbeiten 4 2 3 Benutzer verwalten Um die Benutzer auf einem Linux System verwalten zu k nnen m ssen Sie ber die entsprechenden Rechte im System verf gen Auf Standardsystemen ben tigen Sie ein Login als Benutzer root Sie k nnen zur Verwaltung der Benutzer diverse Tools Ihrer Linux Distribution nutzen aber nat rlich gibt es auch hierf r Befehle die in der Shell ausgef hrt werden k nnen Einige grundlegende hiervon sollen hier kurz erl utert werden Benutzer anlegen Zum anlegen eines neuen Benutzers steht Ihnen das Kommando useradd zur Verf gung useradd alexander p test d home alexander m g users Dieser Befehl legt einen neuen Benutzeraccount f r den Benutzer Alexander an Hier eine kurze Erkl rung der verwendeten Parameter e p gibt das Passwort an in diesem Fall test Kerstin Rossek amp Silke Wacker 35 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 4 2 Benutzer eee vieus oc e d gibt das Heimatverzeichnis an in diesem Fall home alexander e m gibt an dass das Heimatverzeichnis erstellt werden soll e g gibt die Benutzergruppe an in welcher der neue Benutzer Mitglied ist in diesem Fall users Mehr Parameterinformationen mit man useradd Benutzer modifizieren Um Benutzerinformationen nachtraglich andern zu konnen gibt es das Kommando usermod usermod alexander d home alexanderNeu m g root Der Benutzer alexander hat nun als ne
9. Skript zum Online Unix Kurs 2005 Kerstin Rossek und Silke Wacker Der letzte Unix Kurs vor der Auto Ahn e A Kree vous oaar a Inhaltsverzeichnis Inhaltsverzeichnis 1 Unix Linux f r Anf nger 1 2 2 1 Begriffsklarung 22222200 oo 2 EEN 3 2 1 2 GPL Co Ist Linux fre oo oo 8 2 1 3 Distributionen 2222 2 2 Co oo 10 2 2 Abgrenzung zu anderen Betriebssystemen 2 222222 a 17 2 3 Aufgaben und Aufbau eines Betriebssystemsl 2 2 222 22 2 2 nun 19 2 3 1 Aufgaben eines Betriebssystems 19 2 3 2 Aufbau eines Betriebssystems 20 23 Bel Mam Pages eo ses sirati aa a a a kaka mad he Sw neh 23 3 1 1 Allgemeines e 23 3 1 2 Aufbau einer Man Pagel e 24 3 1 3 Sektionen der Man Pages 2 22 22 Co nn nn nn 24 3 1 4 A Man Pages 22222 oo oo 26 3 2 EG US IS WEE 26 3 2 1 Die Befehle whatis und apropos 2 222 2 2 nn nn nn 27 3 2 2 Der info Befehll 27 3 3 HOWTOs 0 deoa adada iada de aa Da Sa oa a a a 28 4 Nutzerverwaltung 32 ERRER E EE EE 32 42 Benutzer usa a Pee a a a we 33 4 2 1 Eigenschaften eines Benutzers o 33 4 2 2 Benutzertypen 2 2 2222 nn 34 4 2 3 Benutzer verwaltedl a a 35 Kerstin Rossek amp Silke Wacker i 22 Mai 2005 A Der letzte Unix Kurs vor der Auto Ahn Inhaltsverzeichnis e ai D 4 3 Ben tzergr pp n 37 4 3 1 Benutzergruppen verwalten 37 ee dede 38 4 4 1 Berechtigungsklassen 22 2 2220
10. Zu XFree86 existiert eine Menge Online Dokumentation Sehr ausf hrlich sind die Man Pages Unter anderen existieren Seiten zu e XFree86 berblick e Xserver allgemeine Optionen f r den Betrieb von X e XF86Config Aufbau der Konfigurationsdatei f r XFree86 Weitere Informationen zum XFree86 Project und zur gerade aktuellen Version finden Sie im In ternet unter http www XFree86 org Starten und Beenden des X Server blicherweise ist Linux so konfiguriert dass X beim Systemstart automatisch ausgef hrt wird F r diesen automatischen X Start ist der Init V Runlevel 5 verantwortlich Wenn der X Server nicht automatisch gestartet wurde k nnen Sie ihn manuell ber die Kommandozeile mit folgendem Befehl starten startx Bei erfolgreichem Start sind Sie dann unter X als der Benutzer angemeldet mit dem Sie den Befehl ausgef hrt haben Der sicherste Weg den X Server zu stoppen ist der Wechsel in den Runlevel 3 durch Eingabe des folgenden Befehls auf der Kommandozeile init 3 11 2 1 Konfiguration Die Konfiguration des X Servers erfolgt normalerweise bei der Installation von Linux In der Regel l uft X danach zufriedenstellend Sollten sich jedoch einzelne Komponenten Ihres Rechnersystems nach der Installation ndern zum Beispiel der Monitor oder die Grafikkarte m ssen Sie even tuell den X Server entsprechend neu konfigurieren mit Hilfe der Konfigurationsdatei XF86Config wie bereits im vorangegangenen Abschnitt erw
11. aufgerufen 22 Mai 2005 62 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto hn es e nae 5 7 Partitionierung zuerst muss man angeben ob man eine extended oder primary Partition anlegen will wir legen eine prim re Partition an die n chste Frage ist der Startzylinder automatisch wird der Erste freie verf gbare auf der Festplatte gew hlt 2473 welchen man mit einem einfachen Best tigen durch Enter ausw hlt nun fehlt nur noch die Gr e der Partition dies kann man entweder angeben indem man den letzten Zylinder angibt oder die gr e Absolut angibt m gliche Eingaben sind hier z B 820M f r Megabyte oder 82000K f r Kilobyte e Command t mit diesem Commando gibt man den Partitionstyp an da wir eine FAT 32 Partition wollen schauen wir in der Tabelle aus Bild 5 7 3 nach und w hlen Typ c Man kann sich hier auch per L auch nochmal diese Tabelle anzeigen lassen e Command w hat man alles erledigt so muss man die ge nderte Partitionstabelle noch auf die Festplatte schreiben Dies sollte man allerdings nur dann tun wenn man sich absolut sicher ist ol danach wird automatisch fdisk beendet Nat rlich kann man bevor man alles auf die Festplatte schreibt sich nochmal den Inhalt per p anzeigen lassen und erh lt folgende Anzeige Command m for help p Disk dev hda 20 0 GB 20003880960 bytes 240 heads 63 sectors track 2584 cylinders Units cylinders of 15120
12. So k nnte man wohl die Grundidee f r die Shellprogrammierung betiteln Wiederkehrende Kom mandos und Programme kann man in einer Textdatei zusammenfassen und dann in der Shell zur Ausf hrung bringen Diese Textdateien nennt man dann Shellskripte In diesen Skripten k nnen Variablen benutzt werden Schleifen und Verzweigungen programmiert und Funktionen definiert werden Auf diese Weise ist man in der Lage strukturiert programmieren zu k nnen Ein Beispiel um sich den aktuellen Benutzer und die aktuelle Uhrzeit und Datum anzeigen zu lassen kann man eine Datei mit z B dem Namen myinfo anlegen in welche man die drei folgenden Zeilen schreibt bin bash who date Kerstin Rossek amp Silke Wacker 93 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 7 4 Shellprogrammierung eee vetus orc Nun muss man noch mittels chmod u x myinfo der Datei das Ausf hrungsrecht geben dann kann man das einfache Skript starten mittels myinfo Die Shell erkennt dass es sich um kein Binary handelt sondern um ein Skript welches prozedurale Befehle enth lt Die erste Zeile im Skript gibt an welche Shell benutzt werden soll f r die Ausf hrung der Befehle im Skript in den meissten Skripts befindet sich hier an der Stelle auch der Eintrag f r die Bash Damit stellt man sicher dass auf jedem System versucht wird die Bash als Interpreter f r das Skript zu benutzen Man kann hier auch ein beliebiges anderes Programm zum interpre
13. booting and partitioning software from other OSs e g DOS FDISK 05 2 FDISK Command m for help m Command action SS E CG et m OD SZ ra an oa em toggle a bootable flag edit bsd disklabel toggle the dos compatibility flag delete a partition list known partition types print this menu add a new partition create a new empty DOS partition table print the partition table quit without saving changes create a new empty Sun disklabel change a partition s system id change display entry units verify the partition table write table to disk and exit extra functionality experts only Abbildung 5 5 Partitionieren mit fdisk Hilfetext das Hilfemen aufrufen Abbildung 5 5 e n Partition hinzuf gen es wird nach Typ primary extended logical und entsprechender Nummer gefragt automatisch wird der Startzylinder auf der Festplatte f r die Partition eingetragen und f r die Partitionsgr e kann man den Endzylinder angeben oder auch eine Gr e wie z B 1500M f r 1500MB 1 5GB e p Partitionstabelle ausgeben welche beim Start von fdisk in den Hauptspeicher eingelesen wurde e q Beenden von fdisk OHNE nderungen an der Partitionstabelle e t Typ einer Partition ndern z B von ext2 auf ext3 e w Beenden von fdisk MIT nderungen an der Partitionstabelle diese wird komplett neu auf die Festplatte geschrieben 22 Mai 2005 60 Kerstin Rossek amp Silke Wacker Der letzte
14. e t testet komprimierte Dateien auf Fehler e v gibt bei jeder Datei die erreichte Kompressionsrate und den Namen aus c schreibt die komprimierten Daten auf die Standardausgabe und ersetzt nicht die Quell datei 9 4 2 gunzip gunzip ist das Gegenst ck zu gzip und entpackt Dateien wieder Es verwendet die selben Paramter wie gzip gunzip index html gz Durch dieses Kommando entpacken Sie die Datei index html gz wieder Als Ergebniss erhalten Sie die Datei index html 9 4 3 Alternativen Alternativ zu den Kommandos gzip und gunzip k nnen Sie auch die Kommandos bzip2 und bun zip2 verwenden Diese funktionieren hnlich verwenden aber einen effektiveren Algorithmus und erreichen somit eine h here Komprimierung Als Dateiendung wird hier bz2 verwendet Neben bzip2 und bunzip2 k nnen Sie auch noch die Kommandos compress und uncompress verwenden Hier wird die Dateiendung Z verwand 22 Mai 2005 112 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn 9 5 tar 9 5 tar Mit dem Befehl tar k nnen Dateiarchive verwaltet werden In ein Archiv k nnen Dateien auf Wunsch auch komprimiert in eine einzige gro e Datei verpackt werden Sehr oft werden Pro grammpakete der Linux Welt als Datei Archive ausgeliefert Dateiarchive ohne Komprimierung tragen die Endung tar Dateiarchive mit Komprimierung tragen die Endung tgz oder tar gz 9 5 1 Beispiele tar czvf Backup tgz home student ver
15. noch etwas in eine Datei geschrieben werden muss kann er dies tun bevor er sich beendet Kerstin Rossek amp Silke Wacker 77 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 6 4 Prozesskontrolle o C Manchmal ist ein Prozess jedoch so blockiert dass er nicht mehr auf das Signal antworten kann Dann hilft nur noch den Prozess regelrecht abzuschie en mittels kill 9 oder auch kill KILL Hierbei wird der Prozess allerdings mit sofortiger Wirkung beendet sollten also noch Informationen in eine Datei geschrieben werden so sind diese unwiederbringlich verloren Manchmal wird ein Prozess in ps oder top auch als Zombie aufgef hrt und kann selbst mittels kill 9 nicht beendet werden Diese Prozesse befinden sich gerade im Status des Beendens sind aber irgendwo steckengeblieben Genauso wie man es aus Hollywoodfilmen kennt so k nnen Zombies nicht mehr gekillt werden da sie bereits tot sind Hier ein Beispiel zum Aufruf von kill s mtliche folgende Aufrufe zum sofortigen Beenden vom Prozess 4711 k nnen synonym verwendet werden e kill 9 4711 e kill KILL 4711 e kill SIGKILL 4711 e kill sigkill 4711 e kill s 9 4711 e kill s SIGKILL 4711 Jobkontrolle per Shell Linux bietet die M glichkeit Programme also deren laufende Prozesse ber die Shell zu kontrol lieren Wenn ein Programm z B 1s gestartet wird so l uft es im Vordergrund foreground fg und nimmt Eingaben ber das Terminal an und
16. sen oder anderem entsprechen e stdout Standard Output Standardausgabe dieser Deskriptor ist ein Text Ausgabe Stream standardm ig ist dieser an das Terminal gebunden d h man sieht s mtliche Aus gaben im Terminal Diese Ausgabe kann auch umgeleitet werden z B in eine Datei stderr Standard Error Standardfehlerausgabe dieser Deskriptor ist ein Text Ausgabe Stream er wird exklusiv nur f r Fehlermeldungen und anderen eher unwichtigen Informatio nen verwendet standardm ig ist dieser ebenso dem Terminal zugeordnet d h man sieht 22 Mai 2005 72 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn A A 6 3 Streams Umleitungen Pipes s mtliche Ausgaben sowohl von stdout als auch von stderr auf dem Terminal dies kann oftmals verwirrend sein Die Trennung von stout und stderr macht Sinn da es oftmals Hilfreich ist Fehlermeldungen separat zu handeln 6 3 2 Redirection Umleitung Die Standard lOs kann man beliebig flexibel umleiten dies geht sehr einfach ber die Konsole mittels den reservierten Zeichen lt und gt Die Umleitung kann sowohl zu Dateien hin als auch von Dateien weg stattfinden Oftmals macht es Sinn gro e Datenbest nde z B Listen welche durch ein Programm generiert werden in eine Datei umzuleiten mit welcher man dann sp ter einfacher arbeiten kann um die Inhalte auszuwerten e kommando lt datei Standardeingabe aus Datei e kom
17. verwendet so auch im folgenden Text Anschlie end erhalten Sie in der Kommandozeile eine Art Startbildschirm wie er in folgender Abbildung zu sehen ist Der Editor vi hat kein grafisches Bedienungsmen wie Sie es vielleicht von anderen Editoren 22 Mai 2005 93 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn o cd 8 1 Allgemeines zum Editor vi VIM Vi IMproved version 6 2 89 by Bram Moolenaar et al Vim is open source and freely distributable Help poor children in Uganda type help iccf lt Enter gt for information type q lt Enter gt to exit type hein or lt i gt for on line help type help versionb lt Enter gt for version info Abbildung 8 1 Startbildschirm des Editor vi kennen und wird lediglich ber Tastatureingaben gesteuert Man k nnte sich an dieser Stelle die Frage stellen warum in diesem Kurs gerade dieser unter so vielen f r Linux verf gbaren Editoren vorgestellt wird Dazu sei an dieser Stelle folgendes angemerkt e Der Editor vi ist vergleichsweise kompakt und steht eventuell auch dann zur Verf gung wenn kein anderer Editor im Moment nutzbar ist etwa bei Wartungsarbeiten wenn Linux von einer Notfalldiskette gebootet wurde e Wie zuvor schon angedeutet steht der Editor vi unter allen UNIX und Linux Systemen zur Verf gung und stellt insofern einen Standard dar also unabh ngig davon ob Sie mit Red Hat Linux SuSE Linux oder IBM AIX arb
18. 2 Runlevels Jedes Linux und viele Unix Systeme verfolgen das Konzept der Runlevels Ein Runlevel ist eine Softwarekonfiguration eines Systems welche eine bestimmte Gruppe von Prozessen umfasst die gestartet werden sollen Damit kann man bestimmen dass z B f r einen Runlevel Webserver s mtliche f r das System wichtige Dienste und der Webserver Daemon gestartet werden sollen Genauso kann man einen Runlevel Notfall definieren welcher nur eine bestimmte Anzahl wichtiger Dienste beinhaltet die f r den Notfallbetrieb wichtig sind Die Prozesse sind definiert in der etc inittab genauer gesagt ist hier ein Verweis f r jeden Runlevel auf das Verzeichnis etc init d bzw etc rc d Es gibt acht definierte Runlevel 0 6 und S oder s Allerdings muss man beachten dass die Inhalte dieser Runlevel sich von System zu System deutlich unterscheiden k nnen 22 Mai 2005 80 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn SCH o vorus oraa l 6 6 init d e Runlevel 0 Halt des Systems d h Shutdown Reserviert e Runlevel 1 s S Single User Mode hier wird nur das n tigste gestartet so z B keine Netzwerkdienste File Sharing Reserviert e Runlevel 2 Multiuser ohne NFS File Sharing e Runlevel 3 Multiuser inkl aller wichtigen Netzwerk Filesharing etc Dienste e Runlevel 4 wird d R nicht benutzt e Runlevel 5 Multiuser voller Betrieb inklusive grafischer Oberfl che z B K
19. 4 fdev hda dev hda3 fdev hdal fdev hda2 dev hda5 dev hda6 Abbildung 5 4 Partitionen einer Festplatte dev hda Exemplarisch wurde die primary master Festplatte verwendet diese enth lt hier zwei prim re Partitionen dev hdal und dev hda2 Bei der Partition dev hda3 handelt es sich um eine erweiterte Partition welche die logischen Partitionen dev hda5 und dev hda6 enth lt So sind hier vier verschiedene Partitionen zur Datenspeicherung nutzbar 5 7 2 Befehle fdisk Um Partitionen zu erstellen und zu verwalten gibt es das Programm fdisk Der Aufruf des Pro gramms erfolgt immer unter Angabe der zu bearbeitenden Festplatte also z B fdisk dev hda Wenn man danach im Men m aufruft erh lt man eine Hilfeseite mit allen m glichen Optionen Dabei haben die am h ufigsten gebrauchten Men punkte folgende Bedeutungen e a Flag setzen ob Partition bootbar sein soll oder nicht e d Partition l schen die Eingabe der Partitionsnummer ist erforderlich e Liste aller m glichen Partitionstypen anzeigen Tabelle Kerstin Rossek amp Silke Wacker 59 22 Mai 2005 ala Der letzte Unix Kurs vor der Auto Dn 5 7 Partitionierung lt pmumunn gonzo fdisk deu hda The number of cylinders for this disk is set to 2584 There is nothing wrong with that but this is larger than 1024 and could in certain setups cause problems with 1 software that runs at boot time e g old versions of LILO 2
20. 4e QNX4 x 2nd part 8 NTFS volume set df BootIt a 05 2 Boot Manag 4f QNX4 x 3rd part 8e Linux LUM el DOS access b Win95 FAT32 50 OnTrack DM 93 Amoeba e3 DOS R O c Win95 FAT32 LB 51 OnTrack DM6 Aux 94 Amoeba BBT e4 SpeedStor e Win95 FAT16 LB 52 CP M 9f BSD 0S eb Bez fs f Win95 Ext d LB 53 OnTrack DM6 Aux ap IBM Thinkpad hi ee EFI GPT 10 OPUS 54 OnTrackDM6 a5 FreeBSD ef EFI FAT 12 16 11 Hidden FAT12 55 EZ Drive ab OpenBSD fO Linux PA RISC b 12 Compaq diagnost 56 Golden Bow a NeXTSTEP f1 SpeedStor 14 Hidden FAT16 lt 3 5c Priam Edisk a8 Darwin UFS f4 SpeedStor 16 Hidden FAT16 61 SpeedStor a9 NetBSD f2 DOS secondary 17 Hidden HPFS NTF 63 GNU HURD or Sys ab Darwin boot fd Linux raid auto 18 AST SmartSleep 64 Novell Netware b BSDI fs fe LANstep 1b Hidden Vin95 FA 65 Novell Netware b8 BSDI swap ff BBT Abbildung 5 7 fdisk Partitionstypen Kerstin Rossek amp Silke Wacker 61 22 Mat 2005 li Der letzte Unix Kurs vor der Auto Dn 5 7 Partitionierung lt pmumunn Partitionen anlegen Neue Partitionen anzulegen und zu formatieren ist sehr einfach zu bewerkstelligen Als sinnvolles Beispiel wollen wir eine Transferpartition einrichten Die Transferpartition soll zum Datenaus tausch zwischen Windows und Linux verwendet werden da auf der einen Seite Linux zuverl ssig nur lesend auf NTFS Partitionen zugreifen kann Der Schreibzugriff auf NTFS Partitionen ist noch nicht zuverl ssig m glich da Microsoft aus Lizenzgr nden d
21. 5 1 Beispielel a a 113 9 5 2 Funktionsoptionen e 113 9 5 3 Weitere n tzliche Optionenl e 114 AO amp s a e a wa a amp amp au Aa ok hod ehe aha eo ah ana ok to 114 AA er a us ct Phys en Ek ge tee ee ae me ty Be ee ee Sey eee ees 115 9 7 1 N tzliche Paramter e 115 9 7 2 Aktionen 2 116 9 7 3 Beispiele d doe d Eada d a a a a 116 22 Mai 2005 Iv Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn e A B Inhaltsverzeichnis 9 8 Weitere Kommandos 116 9 9 Weitere Beispiele a oo a a 117 118 10 1 telnet sak asana dana aa a a a na ee 118 10 1 1 Kommunikation via Telnet 2 2 oo on 119 10 1 2 Verwendung des Kommandos telnet 2 2 2 2 2222 nn 120 10 1 3 Nachteile von Telnet 120 TA ta a te Gee at en Se ee te en nS ae ee ON 121 10 2 1 Kommunikation via FIP 2 a 121 10 2 2 Verwendung des Kommandos fm 121 buh ed nd Ae ee 123 10 2 4_F P Clients 2 4i 44444448 2440 400 F222 hidd EES 123 10 2 5 Anonyme FIP Server 2 2 2 nn 124 10 3 SSH a a he nn Pe oe a de 124 10 3 1 Kommunikation mit ssh 2 0 o 124 10 3 2 Verbindung zu einem SSH Server herstellen 125 10 3 3 SSH unter Windowsl 127 EE EE 127 10 41 Beispiele 4 0408 8 a warten en en ds eee 128 10 4 2 N tzliche Paramterl 2222 22 C oo non 128 10 4 3 SCP unter Windows 129 130 a 130 HEAT A A e ne ee 132 11 2 1 Konfiguration o o o ae
22. 89 1 2 1 Wichtige Shell Kommandos 2 2 2222 22 nn nn 89 122 Exit Status e 90 7 2 3 Mehrere Kommandos in einer Kommandozellel 90 7 2 4 Arithmetische Ausdr cke Berechnen 222 22 2 2 none 91 ca ae nen a de ab oig 91 Kerstin Rossek amp Silke Wacker 22 Mai 2005 A Der letzte Unix Kurs vor der Auto Ahn Inhaltsverzeichnis o ai D 7 2 6 Aliase Synonyme ociosas aaa 92 3 M rlablenl a e e a Meo Ma Mok Me lod an yina wo alte eh yini 92 7 3 1 Variablen Setzen und Lesen 92 7 3 2 Auswahl wichtiger Umgebungsvariablen 2222222222222 93 7 4 Shellprogrammierung e 93 7 4 1 Wiederkehrende T tigkeiten 0 0 0 0 0 0 2 0 20 00000038 93 4 4 2 Kommentare 2 0 a a a 94 743 Schleifen 94 7 4 4 Verzweigungen 96 745 Funktionen oaa a 97 98 8 1 Allgemeines zum Editor vu 98 82 Modi amp Kommandosl 0 100 82 1 Die drei Modi des Editor vu 100 8 2 2 Wichtige Befehle im Kommandomodusl 102 8 2 3 Wichtige Befehle im Zeilenmodus 2 222222 2 a a nn 102 104 9 1 Compilieren eines Quelltextesl e 105 9 1 1 Das Kommando gcc 2 2 105 9 1 2 Sourcedatel kompilieren e 105 O acc og gue A 107 9 3 Regul re Ausdricke 2 2222 oo on nn 108 9 3 1 Beispielel araa aa ar oaa aA P 110 9 4 gzip und ounzmp aE a a aoi Goa aE a a i aoa 111 odl A O ne ee eet ee ea 111 AZ UNA Pes ge ir oa ae 112 943 Alternatwen ooa a 112 IH A 113 9
23. Aufbau eines Betriebssystems liefern Ein umfassende und ausf hrliche Klassifizierung von Betriebssystemen w rde sicherlich zum Einen den Rahmen dieses Kurses sprengen zum Anderen das Ziel dieses Kurses verfehlen Im Folgenden soll es Ihnen erm glichen die noch folgenden Themengebiete in dem Gesamtkontext eines Betriebssystems im Besonderen den von Linux einzuordnen 2 3 1 Aufgaben eines Betriebssystems Ein Betriebssystem hat folgende grundlegende Aufgaben e Verbergen der Komplexit t der Maschine vor dem Anwender Abstraktion Es gibt eine Vielzahl verschiedener Rechnerarchitekturen Intel kompatibel PowerPC und eine Vielzahl unterschiedlichster Hardwarekomponenten Festplatten Grafikkarten Netzwerkkar ten Drucker Beides erscheint in Variationen dadurch da es eine gro e Zahl an Her stellern f r Rechnersysteme und Hardwarekomponenten gibt All dies bleibt dem Benutzer des Betriebssystems verborgen e Bereitstellen einer Benutzerschnittstelle Dem Benutzer muss eine Schnittstelle bereitge stellt werden mit der mit dem Betriebssystem interagieren kann Ein konkretes Beispiel w re zum Beispiel eine grafische Oberfl che mit einen Navigationsmen und grafischen Symbo len vgl KDE Desktopumgebung oder ein Kommandozeilen Interpreter in dem definierte Kommandos per Tastatur eingegeben werden wie sie zum Beispiel ausschlie lich beim klas sischen UNIX zur Verf gung stand e Bereitstellen einer normier
24. Beispiel SuSE 9 1 Professional 4 3 99 902 von XFree86 ltere Distributionen enthielten zus tzlich die Version 3 n Die wichtigsten Vorteile der neueren Version sind e Modularisierter X Server Der eigentliche Server wird durch ein Modul mit den spezifischen Funktionen f r die jeweilige Grafikkarte erg nzt In der alten Version gab es f r jeden Gra fikkartentyp einen eigenen Server e Unterst tzung f r True lype Fonts e Anti Aliasing Kantengl ttung f r Fonts e Unterst tztung f r neue Grafikkarten e Multi Head Betrieb mehrere Grafikkarten und Monitore gleichzeitig Allerdings hat auch die alte Version noch nicht seine Daseinsberechtigung verloren Einige ltere Grafikkarten werden nur von der alten Version unterst tzt Einige weitere Grafikkarten k nnen zwar mit beiden Versionen betrieben werden die ltere Version ist aber schneller Wenn Sie feststellen m chten welche Version auf Ihrem Rechner verwendet wird f hren Sie den folgenden Befehl auf der Kommandozeile aus X showconfig Falls sowohl die Version 3 n als auch 4 n installiert ist bestimmt die Datei usr X11R6 bin X welche tats chlich verwendet wird blicherweise handelt sich bei X um einen symbolischen Link 22 Mai 2005 132 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn o Ca 11 2 XFree86 der auf den tats chlichen Server zeigt Bei der Version 4 n hat der Server den Namen XFree86 XFree86 Dokumentation
25. Betriebssysteme was es jedoch auch komplexer macht Dieser Online Unix Linux Kurs soll Grundlagen legen und dem Benutzer die Angst nehmen sich mit diesem Betriebs system zu besch ftigen und sich auszuprobieren In Fachkreisen lautet eine Regel um vern nftig mit Linux arbeiten zu k nnen Vergessen Sie die grafische Oberfl che Effiziente L sungen finden Sie nur auf Kommandozeilen Shell Ebene Das Arbeiten mit dieser Shell ist ein gro es The ma dieser Studienarbeit Ein Highlight ist die simulierte Shell Hier k nnen einige grundlegende Befehle ausprobiert werden Denn wenn Sie mit dieser nicht umgehen k nnen werden Sie die wirklich relevanten Informationen und Dateien nicht finden sie werden nicht wissen was sich alles in Ihrem Heimatverzeichnis befindet und wer es alles lesen und eventuell manipulieren kann Sie werden nie die M chtigkeit erkennen wenn Sie immer nur mit Officepaketen arbeiten Diese Studienarbeit ist ein Einstieg in das Thema Unix Linux Sie soll einem User die Angst nehmen und Ihnen zeigen dass Sie sich etwas trauen k nnen Wir w nschen Euch gutes Gelingen und viel Spa beim Erlernen der verschiedenen Themengebiete Der eingebaute Test soll euer Wissen berpr fen und euch helfen Defizite zu erkennen und auszumerzen Das absolute Novum ist die simulierte Shell Dort k nnt ihr direkt einige Befehle austesten und euch ausprobieren Gutes Gelingen und viel Erfolg beim Linux Unix Studium Ihre Si
26. Der letzte Unix Kurs vor der Autol Ahn BR o veus oasa 6 6 init d alex gonzo gt pstree init atd I bdf lush I cardngr I cron I cupsd I dhcpcd I kalarmd I kapmd I kdeinit artsd I 3x kdeinit1 I I kde init bash kile bash bash g imp script fu pstree I I ksnapshot I run mozilla sh firefox bin firefox bin 2 firefox bin I 11x kdeinit I kdm X kdn kde kurapper I keventd I khubd I kinoded l k journa ld I klogd I ksoft irgd_CPUO I kswapd I kupdated I lum mpd I master pickup qmgr I mdrecoveryd I 6 mingetty I nscd nscd 5 I nscd I portmap I resmgrd I 2 ssh agent I sshd I susewatcher sys logd Abbildung 6 4 Ausgabe des Befehls pstree zur Anzeige aller laufenden Prozesse des Users in Baumstruktur Kerstin Rossek amp Silke Wacker 83 22 Mat 2005 6 6 init d Der letzte Unix Kurs vor der Auto Ahn top 20 33 30 up 1 34 5 users load average 0 52 0 19 0 11 Tasks 76 total 2 running 74 sleeping 8 stopped 8 zombie Cpu s 1 user 2 9 system 8 07 nice 2 idle Men 389124k total 234296k used 1511Z8k free 15768k buffers Swap 529192k total k used 529192k free 1091388k cached I RES SHR S CPU MEM Command 1871 alex 15 0 8 8 6 768 R 3 8 8 2 9 94 13 top 1312 root 15 0 32440 22m 4524 S 1 0 6 0 1 34 86 X 1 root 15 0 244 244 2065 0 0 0 1 0 04 23 init 2 root 15 0 0 0 05 0 0 0 0 0 00 50 keventd 3 root 15 0 0 0 05 0 0 0 0 0 00
27. GID der Benutzer der den Prozess startet gibt automatisch dem Prozess seine UID und GID mit mit diesen Rechten agiert der Prozess dann auch und darf nur auf die Ihm erlaubten Ressourcen zur ckgreifen Vaterprozess Parent process der erste im System gestartete Prozess ist init siehe Kapitel 6 6 von Ihm abgeleitet starten alle anderen Prozesse Vaterprozess ID Parent PID die ID des Prozesses von dem der aktuelle Prozess abh ngig ist 22 Mai 2005 68 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Autol Xhn 4 6 2 Prozesszust nde e Umgebung Environment jedem Prozess ist eine Liste von Variablen und Werten zuge ordnet dies Variablen werden auch Umgebungsvariablen environment variables genannt e Arbeitsverzeichnis Current working directory jedem Prozess wird ein Arbeitsverzeichnis mitgegeben in dem er standardm ig Dateien schreiben und lesen kann au er man gibt ein anderes Verzeichnis explizit an 6 2 Prozesszust nde Damit Linux auch wirklich multiple Prozesse scheinbar gleichzeitig bearbeiten kann bedient es sich dem Modell des Multitaskings Vorneweg m chten wir allerdings an dieser Stelle darauf hinwei sen dass die folgende Betrachtung zu Prozess Multitasking und deren Zust nde sehr vereinfacht betrachtet wird 6 2 1 Multitasking Das Umschalten zwischen mehreren gleichzeitig laufenden Prozessen wird von einem Scheduler erledigt welcher fest in den Kernel integr
28. ae o 22 4 2 wu a aa 133 11 2 2 Display Manager 2222222 oo nn 136 HT MEN 136 11 4 Window Manager 2 e er e re Dror Or Oro era 137 11 5 Desktop Systemel a a a 137 11 5 1 KDE The K Desktop Environment 22222 a a 20004 139 11 5 2 Gnome 2 a 142 l Kerstin Rossek amp Silke Wacker v 22 Mai 2005 e A Der letzte Unix Kurs vor der Auto Ahn Abbildungsverzeichnis eee vius A Abbildungsverzeichnis 2 1 Wettstein sches Schichtenmodell 23 2 2 Die Schichten eines UNIX Systems 3 1 Man Page zum Befehl du 29 3 2 Man Page zum Befehl du unter vman 30 3 3 info Dokumentation zum Befehl du 31 4 1 Beispiel mehrere Prozesse mit unterschiedlichen Nutzerkennungen Kommando 5 1 Verzeichnisbaum eines Linuxsystems 20 5 2 Sonderzeichen 20 5 3 Mode Butz einer Date 54 5 4 Partitionen einer Festplatte dev hda ooa aaa 59 5 5 _ Partitionieren mit fdisk Hiere 60 5 6 fdisk Anzeige der Partitionen 2 222222 rn nn nn 61 5 7 fdisk Partitionstypen 2 2 2222 0 202 a a a e a e a e a aG 61 5 8 fdisk neue Partition anlegen 62 5 9 fdisk neue Partitionstabellel e 63 5 10 mkfs formatieren 6 1 Elementare Prozesszust nde 6 2 Standard I O eines Programms 6 3 Ausgabe des Befehls ps zur Anzeige aller laufenden Prozesse des Users 75 ee es Pee eS 83 6 5 Ausgabe des Befehls top zur Anzeige aller laufenden Prozesse Ausschnitt 84 7 1 Kommandozeileneditor Tasten DO 7
29. arbeitet Aus diesem Grund empfiehlt es sich stets die Alltagsarbeit als Standarduser zu erledigen und nur dann wenn es die Aufgabe erfordert einen Benutzerwechsel zu root durchf hren mittels des Befehls su Benutzt man einen Display Manager so kann man beispielsweise einfach eine neue Konsole ffnen und sich in dieser als root anmelden 22 Mai 2005 34 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn or nun 4 2 Benutzer Systembenutzer Nicht jeder Prozess der beispielsweise beim Starten eines Linux Systems geladen werden soll muss unter der Kennung von root ausgef hrt werden Dies erh ht auch die Sicherheit des Systems da dadurch die M glichkeiten f r Missbrauch eingeschr nkt werden Derartige Prozesse werden mit der Kennung eines Systembenutzer gestartet Ein Beispiel hierf r ist der Benutzer nobody nobody wird stets von Prozessen als Kennung verwand wenn nur minimale Rechte notwendig sind z B Apache Ein anderes Beispiel ist der Benutzer mysql welcher von einer MySql Datenbank verwendet wird Allerdings bleibt festzuhalten das der Unterschied zwischen Systembenutzern und Standardbenut zern nicht durch das Linux Rechtesystem an sich vorgegeben ist Es handelt sich hier eher um ein Konzept wie mit den M glichkeiten der Rechtevergabe unter Linux gearbeitet wird So wird Systembenutzern meist keine Shell zugeordnet so das ein normaler Login erst gar nicht m glich ist Standardbenutzer
30. den gro en Vorteil mehrere Kommandozeilen parallel verwalten zu k nnen KDE Kontrollzentrum Wichtige KDE Komponenten werden ber das KDE Kontrollzentrum siehe Abbildung oben rechts konfiguriert Der Befehl daf r auf der Kommando zeile lautet kcontrol Das Kontrollzentrum ffnet den Zugang zu unz hligen Einzeldialogen jedoch bed rfen die Konfigurationsm glichkeiten keiner weiteren Erl uterung Wichtige KDE Werkzeuge An dieser Stelle sollen noch einige wichtige KDE Programme genannt werden die bis jetzt noch keine Erw hnung gefunden haben kedit Hierbei handelt es sich um einfachen Text Editor kwrite kate kwrite bietet den Vorteil gegen ber kedit dass er f r eine Reihe etablierter Pro grammiersprachen eine automatische Syntaxhervorhebung bietet Dies macht besonders f r Programmierer interessant Seit der Version 2 2 steht dar ber hinaus das Programm kate zur Verf gung dass noch mehr Konfigurationsm glichkeiten bietet kile Komfortabler Editor f r LaTeX Dateien kghostview Dieses Programm dient zum Betrachten von PDF und PostScript Dateien vgl ghostview kdvi Dieses Programm erm glicht das komfortable Lesen von DVI Dateien vgl xdvi kview Mit diesem Programm k nnen Sie diverse Bitmap Dateien betrachten ksnapshot Mit diesem Programm k nnen Sie Screenshots erstellen wie sie auch in diesem Kurs zu finden sind kdf Dieses Programm zeigt f r alle Datentr ger grafisch ansprechend aufberei
31. dieser Systeme fast ausschlie lich textbasierte Konfigurationsdateien sind In diesem Ka pitel soll Ihnen die Funktionweise und die wichtigsten Kommandos zum Editor vi der klassische Text Editor bei UNIX und Linux Systemen n her gebracht werden Aufgrund seiner ungewohn ten Bedienung schrecken viele Anf nger im Umgang mit Linux zur ck vor der Verwendung dieses Editors Hat man sich aber ein wenig an die Funktionsweise gew hnt erkennt man die Effizenz und Leistungsst rke dieses Editors Die folgenden Punkte sind der Inhalt dieses Kapitels e 8 1 Allgemeines e 8 2 Modi amp Kommandos 8 1 Allgemeines zum Editor vi Der Editor vi ist der Standard Editor fiir alle auf UNIX basierenden Systeme Daher wird auch bei jeder Linux Distribution der Editor vi mitgeliefert oder ist f r diese verf gbar und kann bei Bedarf nachinstalliert werden wenn nicht schon Teil der Standard Installation Aus lizenzrechtlichen Gr nden handelt sich bei Linux jedoch nicht um den originalen vi sondern um vi kompatible Editoren wie zum Beispiel die Editoren und elvis Die gr te Verbreitung im Linux Umfeld genie t sicherlich der Editor vim Dies ist jedoch f r Sie als Benutzer transparent da auch die vi kompatiblen Editoren in gleicher Weise auf der Kommandozeile aufgerufen werden wie der urspr ngliche Editor vi vi Daher wird vi umgangssprachlich meist als Synonym f r den urspr nglichen Editor vi als auch alle seine Ableger
32. e fsck y dev hda3 Nachfragen werden automatische alle mit yes beantwortet Die am h ufigsten gebrauchten Optionen f r fsck A l sst Check f r alle in etc fstab aufgef hrten DS durchf hren diese Option ist prim r f r den Bootvorgang des Linuxsystems gedacht e N fsck nicht ausf hren nur anzeigen was getan werden w rde t Typ Typ des Dateisystems angeben der hier angegebene Typ entscheidet welcher fsck x aufgerufen wird Die am h ufigsten gebrauchten Optionen f r e2fsck ext2 b superblock benutze eine alternative Kopie des Superblocks automatisch werden die Backups des Superblocks an den Stellen 8193 genommen c nach Bad Blocks durchsuchen f Check forcieren auch wenn DS clean aussieht e p Reparieren ohne R ckfragen y auf alle R ckfragen mit yes antworten dadurch kann e2fsck nicht interaktiv benutzt werden 22 Mai 2005 66 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn 6 Programme Prozesse 6 Programme Prozesse In diesem Kapitel geht es um den Zusammenhang zwischen Programmen Prozessen und weiteren automatisierten Diensten sog Daemons von Linux Genauso wie die Administration des Datei systems eine grundlegende T tigkeit eines Administrators ist ist das Pflegen und berwachen von Prozessen eine grundlegende Aufgabe Meistens werden Programme und Prozesse vom Ker nel und vom System automatisiert gehandelt d h b
33. generell f r Diejenigen geschrieben die schon eine Idee haben in welchem Kontext ein gesuchter Begriff zu sehen ist aber unabh ngig davon wieviel Erfahrung man im Umgang mit Linux hat Wenn man zum Beispiel die Man Pages nach einem Kommandozeilen Befehl durchsucht sollte man grob eine Ahnung haben welchem Zweck dieser Befehl dient Die Man Page kann mit einem Tastendruck auf die Q Taste verlassen werden Kerstin Rossek amp Silke Wacker 23 22 Mai 2005 Der letzte Unix Kurs vor der Auto hn 3 1 Man Pages or sammen Hilfe zu einem Kommando etc erh lt man mit folgender Eingabe auf der Kommandozeile man befehl Witzigerweise gibt es f r den man Befehl ebenfalls eine Man Page vgl man man 3 1 2 Aufbau einer Man Page Der Aufbau jeder Man Page folgt einer definierten Struktur die an dieser Stelle n her betrachtet werden soll Dabei h ngt der genaue Inhalt vom Begriff ab f r den man die Man Page abruft Abbildung 3 1 zeigt einen Auszug aus der Man Page f r den Befehl du der Auskunft ber den ben tigten Speicherplatz von Dateien gibt Der Aufbau der Man Pages f r Befehle ist fast immer gleich Dem Kopf der Man Page kann man den Namen des Befehls du entnehmen den man gesucht hat und die Sektion sp ter mehr dazu zu der die angezeigte Man Page geh rt hier die Sektion 1 User Commands Die weitere Struktur l sst sich wie folgt aufgliedern e NAME Benennung des Befehls mit kurzer Erl u
34. gibt Ausgaben aufs Terminal aus Wenn es im Hintergrund background bg ausgef hrt wird dann kann man es nicht direkt beeinflussen son dern nur ber das Senden von Signalen z B mittels kill Wird ein Programm im Hintergrund ausgef hrt spricht man auch von einem Job Was f r einen Sinn macht das Nun es gibt eine vielzahl von Programmen welche nicht direkt eine Eingabe oder Ausgabe mittels Terminal erfordern Startet man z B den Webbrowser Mozilla Firefox will man ja diesen Browser direkt nutzen und nicht ber die Shell Die Shell ist allerdings blockiert wenn man das Programm ausf hrt au er man sagt explizit dass das Programm im Hin tergrund laufen soll Dies geschieht ganz einfach per Anh ngen des amp Zeichens an ein Programm also z B firefox E Man erh lt eine Ausgabe in der Form DI 4711 wobei die Zahl in Klammern die Jobnummer angibt gefolgt von der zugeteilten PID Startet man ein Programm ohne amp 22 Mai 2005 78 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn o vorus oraa l 6 5 Daemons so kann man es nachtr glich auch noch in den Hintergrund versetzen indem man es mit Ctrl Z stoppt und dann per Eingabe von bg in den Hintergrund versetzt Mittels der Eingabe von jobs erh lt man eine Liste aller im Hintergrund laufenden Prozesse in der Form DE Running gimp amp wobei immer die Jobnummer in Klammern steht gefolgt vom Programmname Will man einen Job wieder in d
35. hda1 has 240 heads and 63 sectors per track logical sector size is 512 using Oxf8 media descriptor with 1693440 sectors file system has 2 16 bit FATs and 32 sectors per cluster FAT size is 20 sectors and provides 52906 clusters Root directory contains 512 slots Volume ID is 40c849e3 no volume label Searching for bad blocks 47168 94400 142208 187584 228928 2760963 24352 370816 417792 464688 511344 b559024 602880 635648 68544 700800 733824 766208 799360 833088 Abbildung 5 10 mkfs formatieren Nat rlich kann die Partition entsprechend Kapitel 5 6 gemounted werden F r weitere Optionen und Informationen zu fdisk mkfs stehen Ihnen jederzeit die Man Pages der jeweiligen Pro gramme zur Verf gung 0 5 8 Dateisystem Integrit t Unter Dateisystemintegrit t versteht man die Tatsache dass die Datentr ger keine Fehler im Dateisystem oder Dateibaum enthalten und dass diese auch nicht demn chst vollaufen d h im mer noch Speicherplatz f r das System wichtige Prozesse enthalten Diese Fehler k nnen auftreten wenn z B ein Stromausfall auftritt w hrend der PC l uft oder eben auch ganz einfach techni sche Ursachen haben wie z B dass die maximal Anzahl der Inodes im Dateisystem berschritten wurde und so keine neuen Objekte mehr angelegt werden k nnen F r das Sicherstellen dieser Integrit t gibt es eine Vielzahl von Tools von denen nun eine Reihe vorges
36. ls blae gt bach berg e ls c gt Z b a berg e echo 3 5 gt 3 Buch Tuch Z b a bach berg buch 5 Es sind dar ber hinaus auch Pfadnamen wie ho an te m glich Klammererweiterung Kommt in einem Wort eine geschweifte Klammer vor welche eine durch Kommata getrennte Liste von Zeichenketten erh lt so wird das Wort durch deren Inhalt in mehreren Varianten ausgegeben Beispiele e echo alf 1 2 3 alf1 alf2 alf3 e echo M a i o st 1 2 Masti Mast2 Mist1 Mist2 Most1 Most2 22 Mai 2005 88 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn ue un ora 7 2 Kommandos 7 1 8 Wichtige Dateien fiir die Bash Bevor die Bash gestartet wird liest sie diverse Konfigurationsdateien aus welche sich zum Teil im HOME Verzeichnis des Benutzers befinden In diesen Dateien werden grundlegende Einstellungen Umgebungsvariablen uvm gesetzt Die Dateien werden der Reihe nach gelesen je nachdem ob sie existieren oder nicht Dabei muss man auch noch unterscheiden zwischen einer Login Shell und einer Nicht Login Shell Eine Login Shell ist eine Shell in der man sich initial am System einloggt also z B durch Druck auf Strg Alt F1 bis F6 Diese Shell wird als Login Shell bezeichnet Eine Nicht Login Shell ist eine Shell welche man startet wenn man bereits eingeloggt ist Dies ist der Fall wenn man bereits KDE oder eine andere grafische Oberfl che gestartet hat und per Startmen ein grafisches Termi
37. nicht gesetzt so k nnen keine Informationen ber Dateien ausgegeben werden die sich in dem Verzeichnis befinden 4 5 Benutzerdateien In diesem Abschnitt soll kurz darauf eingegangen werden wo die in diesem Kapitel beschriebenen Informationen innerhalb von Linux abgelegt werden Linux legt alle Benutzer und Benutzergruppen Informationen in Dateien ab Im Einzelnen sind dies die Dateien passwd shadow und groups Sie finden die Dateien im Verzeichnis etc 4 5 1 Die Datei passwd In der Datei etc passwd sind alle Benutzerdaten gepeichert Die einzelnen Benutzer werden in folgenden Format abgespeichert Benutzername Passwort UID GID Info Heimatverzeichnis Shell Benutzername Benutzername Login Passwort bei lteren System das Passwort verschl sselt bei neuen System ein x welches darauf hinweist das das Passwort in der Datei etc shadow gespeichert ist e UID User ID des Benutzers muss gr er als 100 und kleiner als 64000 sein e GID Gruppen ID Info Platz f r zus tzliche Informationen zum Benutzer Heimatverzeichnis Heimatverzeichnis des Benutzers Shell Shell die nach Anmeldung gestartet werden soll 4 5 2 Die Datei shadow Wie bereits erw hnt wurde wurden bei lteren Linux Systemen die Passw rter direkt in der Datei etc passwd abgelegt So verwaltete Passw rter sind jedoch leicht mit einer W rterbuchatacke zu berwinden Aus diesem Grund werden Passw rter in aktuellen Linux Distributio
38. oder anderen Ursprungs finden Sie im Internet auf den folgenden Seiten e The Linux Information Headquarters LWN net 22 Mai 2005 16 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn R 2 2 Abgrenzung zu anderen Betriebssystemen Viele Distributionen kein Standard Wie aus dem vorangegangenen Abschnitten ersichtlich ist gibt es nicht das Linux Man hat die Auswahl aus einer Vielzahl von Distributionen die zwar gewisse Gemeinsamkeiten haben z B Ker nel Paketverwaltung etc aber viele Unterschiede Konfigurationstools Softwareumfang etc Diese Tatsache kann sich als besonders l stig herausstellen bei der Installation von Programmen die nicht mit der Distribution mitgeliefert werden und insbesondere bei kommerziellen Program men Eine fehlende oder veraltete Programmbibliothek ist oft die Ursache daf r dass ein Pro gramm nicht l uft Die Problembehebung ist insbesondere f r Linux Einsteiger fast unm glich Manche Firmen gehen inzwischen so weit dass ihre Softwareprodukte nur eine ganz bestimmte Distribution unterst tzen Nat rlich entscheidet sich jede Firma f r eine andere Distribution Um diese Probleme zu beseitigen wurde vor einigen Jahren das LSB ins Leben gerufen Im Juli 2001 haben die Projektteilnehmer die LSB Spezifikation 1 0 ver ffentlicht Es handelt sich dabei um Vorgaben die alle LSB konformen Distributionen ein halten m ssen Dabei ist die Spezifikation in
39. oo oo nn 39 4 5 Benutzerdateien ee a den eek dee 40 4 5 1 Die Datel passwd 2 oo Coon 40 ie a ee Te m ri rg ar re re a 40 4 5 3 Die Datei groups 2 acida doara a a acida oani aa aoa a 41 5 Dateiverwaltung 42 5 1 Dateisystemhierarchiel o oa a aa a a a a 42 5 1 1 Hierarchischer Aufbau o0 aaa 2 20 200004 42 5 1 2 File Hierarchie Standard FHS e 45 5 2 Dateisysteme 22 2 2 a 2 u a a au ah EN 46 5 2 1 Betriebsebenen auf der Dienste Schicht 46 5 2 2 Da atelsysteMel o es E A et a ee a ee ee el be 47 523 Insdesl a ak 2 a aa Sn a a a ae ae eae a are 48 5 3 Befehle im Zusammenhang mit Dateien und Verzeichnissen e 48 5 4 Verweise Symbolische und Hard Links 2 22 2222 22222222 50 5 4 1 Symbolischer Linkl e 50 5 42 Hard Finkl 208 oe ee a a el ae aa a a 50 5 4 3 Was ist nun besser 51 5 5 Zugriffsrechte e ow AN e e Skee See ee See ROE Se ee Se ROA Ge en G 52 5 5 1 Linux Access Control 2 2 22m 2000200020002 0 00088 52 EE 53 5 6 Einbinden von Dateisystemen Mounten 22222222 nun 55 5 6 1 Mounten e 55 5 6 2 fstab und mtabl 22222 on on nn nn 55 5 6 3 fstab Dateisystemtypen l oaoa aa a a 56 5 7 Partiti nierung 2 eaa ana a ana aE ana DOE ana ROE ana ROE an E aTa 57 5 7 1 Organisation e 57 AO EE 59 5 8 Dateisystem Integritat a 64 581 df disk free 2 2 64 5 8 2 du disk usage ooa aa 65 5 8 3 fsck file system check 65
40. r IBM zSeries Mainframes ist ein typisches Gro rech nerbetriebssystem Das Betriebssystem ist sehr hardwarenah f r eben die Mainframes von IBM entwickelt worden und nutzt deren M glichkeiten vollst ndig aus Im Vergleich zu PC Desktop Betriebssystem oder auch UNIX Varianten f r andere Gro rechner verfolgt zOS komplett andere Konzepte Installation und Wartung von Programmen ist sehr sicher aus gelegt ebenso sind wichtige und auch viele weniger wichtige Systemfunktionen redundant mit hohen Sicherheitsfunktionen ausgestattet e zVM VM steht f r Virtuelle Maschine mit diesem Gro rechnerbetriebsystem von IBM kann man in virtuellen Umgebungen hnlich VMware nahezu beliebige Betriebssysteme laufen lassen so unter anderem auch Linux Systeme Diese m ssen jedoch speziell f r die Gro rechnerarchitekturen also z B zSeries kompiliert sein da Intel x86 Programme einen komplett anderen Bin rcode haben e y v m Dieser Abschnitt macht deutlich dass Linux zum jetztigen Zeitpunkt sicherlich nicht f r alle Anwendungsgebiete geeignet ist aber mehr und mehr an Attraktivit t f r die verschiedenen Ein satzgebiete von Betriebssystemen gewinnt 22 Mai 2005 18 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto hn R dree 2 3 Aufgaben und Aufbau eines Betriebssystems 2 3 Aufgaben und Aufbau eines Betriebssystems Der folgende Abschnitt soll einen kleinen berblick ber die Aufgaben und den
41. sollte eine sehr einfache und benutzerfreundliche Distribution werden Obwohl dies ansatzweise sehr gut gelang blieb Corel Linux der Erfolg verwehrt Im September 2001 verkaufte Corel seine Linux Abteilung an die Firma Xandros Debian W hrend sich hinter den meisten hier geannten Distributionen Firmen stehen die mit ihren Distributionen Geld verdienen m chten stellt Debian in dieser Beziehung eine Aus nahme dar Die Distribution wird von engagierten Linux Anwendern zusammengestellt die gr ten Wert auf Stabilit t und die Einhaltung der Spielregeln freier Software legen Man che Ideen dieser Distribution etwa die professionelle Paketverwaltung waren f r andere Distributionen richtungsweisend und sind diesen in manchen Aspekten immer noch voraus Versuchen Sie einmal ihre Distribution zu aktualisieren ohne den Rechner neu zu starten Debian ist im Laufe der letzten Jahre zwar zunehmend benutzerfreundlicher geworden f r Linux Einsteiger ist diese Distribution aber wegen des schwer zu bedienbaren Paketverwal tungsprogramms dselect nach wie vor ungeeignet vgl Progeny Debian e Mandrake Mandrake Linux ist gewisserma en eine benutzerfreundliche Variante zu Red Hat Linux Die Distribution ist von Red Hat abgeleitet und insofern weitgehend kompatibel als die meisten Software Pakete untereinander austauschbar sind Mandrake Linux zeichnet sich aber durch eigenst ndige und einfacher zu bedienende Installations und Konfigura
42. tgz find name c mtime 1 Findet und verpackt alle vorhandenen C Quelltexte des letzten Tages 24 Stunden ver ndert wurden in das Archiv C tgz find grep i abc txt Sucht nach einer Datei mit dem Namen ABC TXT unabh ngig von Gro oder Kleinschreibung find name xyz txt exec less Finde die Datei xyz txt und zeige diese an Kerstin Rossek amp Silke Wacker 117 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 10 Dienste 10 Dienste In diesem Kapitel sollen einige Dienste vorgestellt werden welche f r Sie vor allen von Interesse sind wenn Sie beabsichtigen z B von Ihrem Internetanschluss zu Hause auf Rechner der BA Stuttgart zuzugreifen Unter Diensten versteht man simpel ausgedr ckt Programme die in der Regel mit dem Hochfahren des Rechners gestartet werden Sie warten best ndig auf Anfragen von Benutzern und beantworten diese Ein Beispiel f r einen Dienst ist zum Beispiel ein Web Server Er wartet best ndig auf Anfragen aus dem Internet und beantwortet diese in Form von HTML Seiten Die folgenden Punkte sind der Inhalt dieses Kapitels e telnet LOZ tp e 110 3 ssh e OA scp 10 1 telnet Der Dienst telnet setzt auf dem gleichnamigen Protokoll Telnet auf Telnet ist ein Urgestein des Internet Die endg ltige Spezifikation des Telnet Protokols wurde bereits im Jahre 1973 verab schiedet Telnet erm glicht den textbasierten Zugriff auf entfernte Rechne
43. verz1 bis verz9 Die Z hlvariable i wird pro Durchlauf in Zeile 8 inkrementiert Die Schleife wird wiederholt solange das hinter dem Schl sselwort while stehende Kommando den Exit Status 22 Mai 2005 94 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn a f 7 4 Shellprogrammierung null liefert Anstelle der untenstehenden Bedingung k nnte wenn dies Sinn macht auch jedes beliebige andere Kommando stehen einzig der Exit Status ist f r die Wiederholung der Schleife ma geblich bin bash i 1 while i lt 10 do mkdir irgendwo verz i i i 1 1 2 3 4 5 echo Lege Verzeichnis irgendwo verz i an 6 7 8 done Schleifen mit until Hier wird wie oben beschrieben die Schleifen Bedingung durch den Exit Status der Pipe beeinflusst die Schleife lauft bis grep erstmals das Wort root in der Liste der angemeldeten Benutzer findet bin bash Warten bis sich der Admin einloggt 1 2 3 4 until who grep root 5 do 6 sleep 30 30s warten 7 done 8 echo Big Brother is watching you Aufz hlungsschleife for 1 bin bash 2 for datei in c h 3 do 4 cp datei datei bak 5 done In Zeile 2 ist datei ein Variablenname dieser Variable wird dann nacheinander jeder Wert aus der Liste nach dem Schliisselwort in zugeordnet Die Schleife wird damit einmal durchlaufen Im Kerstin Rossek amp Silke Wacker 95 22 Mai 2005 Der letzt
44. 01 kapmd 4 root 34 19 0 0 05 0 0 0 0 0 00 01 ksoftirgd_CPUO 5 root 25 0 0 0 0S 0 0 0 0 0 00 00 kswapd 6 root 25 0 0 0 05 0 0 0 0 0 00 00 bdf lush d root 15 0 0 0 05 0 0 0 0 0 00 00 kupdated 8 root 25 0 0 0 05 0 0 0 0 0 00 00 kinoded 10 root 25 0 0 0 0S 0 0 0 0 0 00 00 mdrecoveryd 14 root 15 0 0 0 05 0 0 0 0 0 00 08 kjournald 104 root 0 20 0 0 05 0 0 0 0 0 00 00 lum mpd 563 root 15 0 592 592 4 5 0 0 0 2 0 00 02 syslogd 566 root 15 0 1356 1356 428 5 0 0 0 4 0 00 19 klogd 618 root 22 0 0 0 05 0 0 0 0 0 00 00 khubd 741 root 24 0 680 680 5005 0 0 0 2 0 00 01 cardmgr 768 root 15 0 648 648 5605 0 0 0 2 0 00 00 resmgrd 775 bin 15 0 384 384 3165 0 0 0 1 0 00 01 portmap 908 root 15 2960 2960 1312 S 0 0 0 8 0 00 50 cupsd 974 root 17 D 1504 1504 12445 0 0 0 4 0 00 14 sshd 1117 root 15 1252 1252 1000 S 0 0 0 3 0 00 02 master 1137 postfix 15 0 1200 1200 9725 0 0 0 3 0 00 03 pickup 1138 postfix 15 0 1228 1228 9925 0 0 0 3 0 00 01 qmgr 1155 at 15 0 564 564 500 5 0 0 0 1 0 00 00 atd 1179 root 15 0 652 652 576 5 0 0 0 2 0 00 00 cron Abbildung 6 5 Ausgabe des Befehls top zur Anzeige aller laufenden Prozesse Ausschnitt 22 Mai 2005 84 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn 7 Shell 7 Shell Die Shell das Grundlegende Interface f r jeden Benutzer eines Computersystems besonders bei Linux und Unix Bei aktuellen Distributionen wird die bash Bourne Again SHell als Standard Shell f r jeden Benut
45. 2 1405 1407 1408 1410 1412 1414 1417 1420 1422 1425 1428 1430 1438 1439 1475 1478 1487 1493 1494 1495 1496 1609 1668 1717 TTY Ki ci zl vc eil zl v i zl vc v i zl v i el zl v i zl vc i zl v i z i el pts 1 pts 1 pts 2 dd pts 3 pts 3 STAT DABANNNNNNNNANANNANNANANMNNANNANNNMNANNNN TIME 00 00 00 00 00 01 00 01 00 00 00 02 03 03 00 00 00 01 00 00 00 03 00 58 00 00 18 00 00 00 00 00 00 9999999999999 999999990999 90999999909 COMMAND bin sh usr X11R6 bin kde usr bin ssh agent s kdeinit Running kdeinit dcopserver nosid kdeinit klauncher kdeinit kded kdeinit klaptopdaemon opt kde3 bin artsd F 10 S 4096 s 5 m artsmessage 1 3 f kdeinit knotify kurapper ksnserver kdeinit ksmserver kdeinit kwin session 117f000002000107369039800000085810000_1086966018_780380 kdeinit kdesktop kdeinit kicker kdeinit kio_file file tmp ksocket alex klauncher iRaJLa slave socket tmp ksocket alex kdeinit klipper kdeinit kurited susewatcher caption SuSE Updater icon kinternet png miniicon kinternet png quiet kdeinit kmix session 117f000002000107369041400000085810009_1086966015_413216 kdeinit konqueror preload kalarmd login kdeinit konsole bin bash kile O6programme_prozesse_3pipes xml bin bash bin sh home alex firefox run nozilla sh home alex firefox firefox bin home alex f
46. 2 Bash History DO 7 3 Bash Sonderzeichen 22 Mai 2005 vi Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn e e i e mensen B Abbildungsverzeichnis 8 1 _Startbildschirm des Editor vi 99 8 2 Anzeige New File im Editor vi e 100 8 3 Anzeige der Zeilen und Zeichen im Editor vu 101 8 4 Die Modi des Editor vi DU 8 5 Befehle im Kommandomodus 20 8 6 Befehle im Zeilenmodus 9 1 Konsolenausgabe des Kommandos gcc A 105 9 2 Beispieldatei ugmu txt o 110 10 1 Telnet im OSI Schichtenmodell 10 2 Schematische Darstellung einer FT P Verbindung 10 3 Schematische Darstellung der Kommunikation 10 4 Aufruf von ssh keygen e 127 11 1 X Window System Schichten und Komponenten 11 2 Beispiel XF86Config s sca 2 22 22 2a u a2 40000 nenn nenn 135 11 3 Window Maker 138 IIASKDES Ulloa ee He ee dt E 140 ELE GhOMe 2 4445444454445 4442 LEER EL EE EAE dd 142 Kerstin Rossek amp Silke Wacker vil 22 Mat 2005 e Der letzte Unix Kurs vor der Autol Achn Abbildungsverzeichnis dmpspsees S 22 Mai 2005 viii Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn 23 o cati n 1 Unix Linux f r Anf nger 1 Unix Linux f r Anf nger F r viele Neueinsteiger und Umsteiger von anderen Betriebssystemen sind Linux und Unix auch nach einigen Semestern ein Buch mit sieben Siegeln Woran liegt das Linux ist wesentlich m ch tiger als andere
47. 2 entsprechende Bin rfolge 010 e Oktalzahl 3 entsprechende Bin rfolge 011 e Oktalzahl 4 entsprechende Bin rfolge 100 e Oktalzahl 5 entsprechende Bin rfolge 101 e Oktalzahl 6 entsprechende Bin rfolge 110 e Oktalzahl 7 entsprechende Bin rfolge 111 Anderes Beispiel m chte man z B eine Datei vor Lesen und ndern durch andere Benutzer sch t zen allerdings Gruppenmitglieder das lesen erlauben darf man nur den enstprechenden Benutzern Rechte dazu geben und es allen anderen verweigern Die entsprechenden Mode Bits m ssen also f r user auf 111 f r group auf 100 und f r other auf 000 gesetzt werden was der Bin rfolge 111 100 000 entspricht Ausgedr ckt als Oktalzahlen ist dies 7 4 0 also muss man f r die Datei den Befehl chmod 740 datei verwenden 22 Mai 2005 54 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto hn igh a p Son nun aan 5 6 Einbinden von Dateisystemen Mounten 5 6 Einbinden von Dateisystemen Mounten Unter dem Einbinden Einh ngen von Dateisystemen oder auch mounten genannt versteht man das Einbinden von Partitionen von Festplatten CD ROMs DVDs oder anderen Wechselmedien wie USB Sticks Dieses Konzept wird durchgehend in allen Unix und Linux Systemen verfolgt 5 6 1 Mounten Um eine Partition zu mounten muss man zuerst einen Mountpoint also eine Art Ankerpunkt defi nieren an dem im Dateibaum das Dateisystem gemountet werden soll F r
48. 5 Zugriffsrechte o C 5 5 Zugriffsrechte Das Konzept der Zugriffsrechte spielt eine sehr gro e Rolle bei Linux sowohl die Systemsicherheit betreffend als auch die Sicherheit jedes einzelnen Benutzers Datenschutz und Datensicherheit sind somit in jedem Linux System einfach zu realisieren In jedem Multiuser Betriebssystem sind diese Sicherheiten zwingend jeder Benutzer k nnte potentiell wichtige Betriebssystemteile wie Kernel Konfigurations Dateien und Programme versehentlich oder absichtlich l schen Benut zerdaten m ssen vor nderungen durch andere Nutzer gesch tzt werden und manchmal auch komplett uneinsehbar f r andere sein 5 5 1 Linux Access Control Die Zugriffsrechte in Linux entsprechen einer Menge von Eigenschaften welche f r jedes Objekt in dessen Inode gespeichert wird Diese Eigenschaften werden auch Access Mode oder kurz Mode genannt Es gibt drei unterschiedliche Rechte e r read Leserecht Inhalt der Datei einsehen bzw Verzeichnisinhalt anzeigen e w write Schreibrecht In Datei schreiben od ndern bzw in Verzeichnis Dateien anlegen oder l schen e x excecute Ausf hrungsrecht Datei als Programm ausf hren bzw lesen od schreiben von Dateien im Verzeichnis Man unterscheidet zwischen drei verschiendenen Klassen von Benutzern erwX user der Benutzer welcher die Datei besitzt owner e rwx group die Gruppe welche die Datei besitzt rwx other alle anderen Ben
49. 512 7741440 bytes Device Boot Start End Blocks Id System deu hdal 1 1500 11339968 7 HPFS NTFS zdeu hda2 1501 1570 529200 82 Linux swap deu hda3 1571 2472 6819120 83 Linux deu hdat4 2473 2584 846720 c Win95 FAT32 LBA Abbildung 5 9 fdisk neue Partitionstabelle Formatieren der neuen Partition Nat rlich muss die neue Partition auch noch f r die Verwendung formatiert werden Dies geschieht mit dem Befehl mkfs Normalerweise werden Linux Partitionen mit dem ext2 Dateisystem forma tiert jedoch k nnen auch beliebige andere DS erzeugt werden Tats chlich ist mkfs ein Frontend f r Programme wie mkfs ext2 mkfs ext3 mkfs msdos Diese Programme werden auch noch mal spezifisch verlinkt durch z B mke2fs und mkdosfs mkfs bietet ein Front End f r all diese Programme Kerstin Rossek amp Silke Wacker 63 22 Mai 2005 a x a Der letzte Unix Kurs vor der Auto hn 5 8 Dateisystem Integritat oan cts once a Wir legen nun ein neues Dateisystem f r unsere Transferpartition an mit dem Befehl e mkfs t msdos dev hda4 cv Hierbei bedeuten die Optionen t msdos dass eben ein MSDOS Dateisystem zur Grundlage liegt dev hda4 ist die Partition welche formatiert werden soll und cv bedeutet dass nach Bad Blocks gesucht werden soll check und alles detailliert ausgegeben werden soll verbose Man erh lt Beispielsweise die folgende Ausgabe gonzo mkfs t msdos deu hda4 cu mkfs msdos 2 8 28 Feb 2001 dev
50. Befehle im Kommandomodus w Dateiname speichert unter Dateiname q verl t den Editor nach dem Speichern q verl t Editor ohne zu speichern x entspricht wq o Dateiname editiert die entsprechende Datei HI nimmt den letzten Editierbefehl zur ck Zeichenkette sucht vorw rts nach Zeichenkette Zeichenkette sucht r ckw rts nach Zeichenkette r Dateiname die Datei nach dem Cursor einf gen Abbildung 8 6 Befehle im Zeilenmodus 20 Kerstin Rossek amp Silke Wacker 103 22 Mai 2005 Der letzte Unix Kurs vor der Auto hn 9 Externe Kommandos kl es tet once 9 Externe Kommandos W hrend interne Kommandos direkt von der Shell interpretiert werden handelt es sich bei externen Kommandos genau genommen um eigenst ndige Programme die in der Shell ausgef hrt werden Externe Kommandos werden im Suchpfad erwartet So ist cd ein internes Kommando und Is ein externes Kommando Das Programm zum Kommando Is findet sich im Regelfall im Verzeichnis bin In diesem Kapitel soll auf einige externe Kommandos eingegangen werden welche oft im Umgang mit Linux gebraucht werden Die folgenden Punkte sind der Inhalt dieses Kapitels die hier genannten Befehle stellen nur eine bersicht ber die wichtigsten Befehle der nachfolgenden Kapitel dar 9 1 Compilieren eines Quelltextes gcc e 9 2 grep e 9 3 Regul re Ausr cke e 9 4 gzip und gunzip e 9 5 tar e 9 6 mtools e 9 7 find e 9 8 Weitere
51. DE Standard Runlevel der meissten aktuellen Distributionen e Runlevel 6 Reboot des Systems Reserviert Die Runlevel 0 1 und 6 sind also reserviert theoretisch k nnen auch die Runlevel 7 9 benutzt werden diese sind aber nicht wirklich dokumentiert Die Runlevel S und s werden nicht direkt benutzt und sind an dieser Stelle uninteressant f rs weitere Verst ndnis 6 6 3 Struktur von rc d Die Runlevel selbst sind eher gegenstandslos da sie auf den ersten Blick nur auf die Verzeich nisstruktur etc rc d verweisen Es ist eigentlich der Init Prozess welcher aufgrund der Runlevel Spezifikation Systemeinstellungen ndert und Prozesse startet welche eben in den Verzeichnissen von rc d vorhanden sind Im Verzeichnis etc init d befinden sich Skripte f r System Services wie z B httpd ftpd sshd Mittels diesen Skripten k nnen die entsprechenden Dienste gestartet werden meistens kennen die se Skripte Argumente wie start stop restart oder status Man kann also z B den Webserver starten mittels httpd start Im Verzeichnis etc rc d befindet sich f r jeden Runlevel ein eigenes Unterverzeichnis also etc rc d rc0 d bis rc6 d Diese Verzeichnisse beinhalten Symbolische Links auf die Skripte in etc init d und zwar in der Form K S nn nit d_ name also z B e KO7alsasound gt alsasound oder auch e S14sshd gt init d sshd Die Symbolischen Links haben eine Menge Vort
52. GNU Linux Zur gleichen Zeit l ste sich BSD aus seiner urspr nglichen Abh ngigkeit von AT amp T Eine Grup pe von BSD Entwicklern ersetzte alle Anweisungen im Quellcode die noch AT amp T beigesteuert waren durch neue und erstritt in einem langwierigen Gerichtsverfahren f r BSD die Freiheit Dar aus gingen die Projekte FreeBSD NetBSD und OpenBSD hervor die auch eine betr chtliche Verbreitung gefunden haben und manchmal als Linux Vettern bezeichnet werden Wie die Geschichte zeigt gibt es nicht das eine Betriebssystem UNIX Vielmehr handelt es sich um eine Familie von Betriebssystemen Linux in Jahreszahlen Seither hat sich Linux zu einem bedeutenden UNIX entwickelt Kommerzielle UNIX Anbieter haben Marktanteile an Linux verloren und mussten neue Strategien entwickeln Nicht selten m ndeteten diese berlegungen in offener Unterst tzung f r Linux dessen weitere Verbreitung ohnehin nicht mehr zu stoppen war Im Folgenden nun ein Abriss wichtiger Jahreszahlen in der Erfolgsgeschichte von Linux 01 01 1991 Der 21 j hrige finnische Student Linus Benedict Torvalds beginnt aufbauend auf dem Minix Betriebssystem ein unixartiges Betriebssystem f r AT 386 Computer zu schrei ben 01 02 1992 Linus Torvalds verteilt die Version 0 12 seines Kernels per anonymous FTP im Internet was zu einem sprunghaften Anstieg der Zahl interessierter Benutzer f hrt Da diese Zahl so gro wird dass die n tige Kommunikation
53. ILE DESCRIPTION Summarize disk usage of each FILE recursively for direc tories Mandatory arguments to long options are mandatory for short options too write counts for all files not just directories apparent size print apparent sizes rather than disk usage although the apparent size is usually smaller it may be larger due to holes in sparse files internal fragmentation indirect blocks and the like block size SIZE use SIZE byte blocks bytes equivalent to apparent size block size 1 total produce a grand total dereference args dereference FILEs that are symbolic links human readable print sizes in human readable format e g 1K 234M 26 Manual page du 1 line 1 119 32 Abbildung 3 1 Man Page zum Befehl du Kerstin Rossek amp Silke Wacker 22 Mai 2005 3 3 HOWTOs a oi anni EX Manual Page mon a Options Sections Directory of 1 User Connands Manual Browser dirname discrete display geg djpeg dipsh dnsdomainname domainname dos2unix dprofpp drift dsafssl dsaparam ssl du dumpkeys dycont i DCL User Commands NAME 7 A du estimate file space usage 5 SYNOPSIS TA du OPTION FILE N DESCRIPTION e gt Summarize disk usage of each FILE recursively f tories f T 4 Mandatory arguments to long options are mande short options too a all write counts for all files not just direc Abbildung 3 2 Man Page zum Befehl d
54. Kommandos e Weitere Beispiele 22 Mai 2005 104 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn age A oe iets orca 9 1 Compilieren eines Quelltextes 9 1 Compilieren eines Quelltextes 9 1 1 Das Kommando gcc Im Laufe Ihres Studiums werden Sie fters in die Verlegenheit kommen C Sourcen zu compilieren An dieser Stelle sollen die grundlegenden Funktionalit ten des externen Kommandos Program mes gcc erl utert werden welches Ihnen eben das erm glicht GCC ist eigentlich eine Abk rzung f r eine Sammlung mit der Bedeutung GNU C Compiler Da GCC aber heute mehr als nur einen C Compiler beinhaltet spricht man mittlerweile von GNU Compiler Collection Die Bezeichnung gcc klein geschrieben steht weiterhin f r den C Compiler Dieser Kurs wird sich ausschlie lich mit dem C Compiler besch ftigen Die meisten Linux Distributionen installieren gcc automatisch mit Um festzustellen ob gcc bei Ihnen korrekt installiert ist geben Sie folgendes Kommando in eine Shell ein gcc v ramnstein etc gce v Reading specs from fusr lib gec lib i186 suse linux 3 Configured with contigure enab le threacis posix prefix usr wi th local prefix usr local infodir usr share info mandir usr shar efran libdir usr lib enable languages c crr 77 o0bjc java ada di sable checking enable 11ibgc3 with gxx inciude dir usr include g with slibdir lib with system zlib ena
55. Man Pages vorliegt Die info Dokumentationen liegen dementsprechend in eige nen von den Man Pages unabh ngigen Format vor info Format welches von der Free Software Foundation FSF bereitgestellt wird Es ist das bevorzugte Dokumentationsformat f r alle GNU Werkzeuge zum Beispiel die Befehle find und grep Abbildung 8 3 zeigt die info Dokumentation zum Befehl du Der info Befehl wird wie folgt aufgerufen info thema Die Dokumentation wird in der Vollansicht innerhalb der Kommandozeile angezeigt Mit der Leer Kerstin Rossek amp Silke Wacker 27 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 3 3 HOWTOs Qe coria rana taste und der Backspace Taste kann man innerhalb der info Dokumentation nach unten bezie hungsweise nach oben scrollen Mit der Tabulator Taste und der Return Taste kann man den n chsten Querverweis erkenntlich durch ein vorangestelltes Zeichen selektieren und diesen dann zu einem anderen info Dokument verfolgen 3 3 HOWTOs In beiden vorangegangenen Abschnitten wurde die Suche nach Informationen beziehungsweise Hilfetexten zu einer einfachen Problemstellung beschrieben zum Beispiel Suchen einer Datei man find Wie findet man aber Hilfe zu komplexeren Problemstellungen wie zum Beispiel die Installation und Konfiguration ein HTTP Servers unter Linux vgl Apache HT TP Server Project F r diesen Zweck stehen sogenannte HOWTO Texte zur Verf gung Dabei handel
56. Rechner usr index html scp l sst auch die Verwendung von regul ren Ausdr cken zu scp r meinBenutzer ferner_Rechner usr index html kopiert alle Dateien und Unterverzeichnisse des aktuellen Verzeichnisses Um Dateien vom entfernten Rechner auf Ihr System zu bertragen ist ein Befehl in der Form scp meinBenutzer ferner_Rechner home index html home index html notwenig In diesem Fall wird die Datei index html an Ihr lokales System bertragen 10 4 2 N tzliche Paramter r kopiert rekursiv alle Unterverzeichnisse mit q schaltet die Ausgabe des Kopierfortschrittes aus p die Informationen ber letzte nderung letzten Zugriff und Zugriffsrechte der kopierten Dateien bleiben erhalten u l scht die Quelldateien nach dem kopieren e P Angabe eines alternativen Ports 22 Mai 2005 128 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn 10 4 scp 10 4 3 SCP unter Windows Auch den scp Dienst k nnen Sie unter Windows benutzen Beispielsweise mit dem Programm WinSCP Kerstin Rossek amp Silke Wacker 129 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 11 X Window System 11 X Window System F r Linux wie auch bei anderen Betriebssystemen gibt es eine grafische Oberfl che f r den Benutzer als Teil des sogenannten X Window System vgl grafische Benutzerschnittstelle Das folgende Kapitel beschreibt die wichtigsten Elemente und die Konfiguration des X Win
57. Suche nach Informationen zu einer bestimmten Problemstellung sein k nnen 3 2 1 Die Befehle whatis und apropos whatis ist besonders gut geeignet f r die Suche nach Informationen falls man schon einen Begriff zur Problemstellung wei jedoch nicht sicher ist ob der Befehl etc der richtige Schritt in Richtung Probleml sung ist whatis begriff Es wird eine kurze Beschreibung meist einzeilig des angegebenen Begriffes ausgegeben whatis greift auf den NAME Abschnitt innerhalb der Man Pages zur ck und durchsucht diesen nach dem gew nschten Begriff Folglich ist der whatis Befehl auf die Man Pages als Grundlage angewie sen Der Nachteil von whatis ist dass es nur exakte bereinstimmungen mit dem Suchbegriff zur ckgibt Der Befehl apropos erm glicht eine breitere Suche nach Informationen Er gibt auch kurze Be schreibungen bei Teil bereinstimmungen zur ck birgt jedoch in sich den Nachteil bei relativ allge meing ltigen Begriffen zum Beispiel conf dass eine Vielzahl von Kurzbeschreibungen zur ck gegeben werden Die Grundlage f r die Suche sind ebenfalls die Man Pages apropos thema 3 2 2 Der info Befehl info ist ein wesentlich leistungsst rkeres Programm als man Es eignet sich besonders zur Darstel lung umfangreicherer Hilfetexte weil es mit Querverweisen ber mehrere Dateien zurecht kommt Dementsprechend findet man auch eine ausf hrlichere Dokumentation mit dem info Befehl als die wie sie in den
58. Unix Kurs vor der Aug Dh bn eee o veus oraaa 5 7 Partitionierung Partitionen anzeigen Die Partitionen der Festplatte kann man sich dann ganz einfach per Befehl p ausgeben lassen Command m for help p Disk dev hda 20 0 GB 20003880960 bytes 240 heads 63 sectors track 2584 cylinders Units cylinders of 15120 512 7741440 bytes Device Boot Start End Blocks Id System deu hdal 1 1500 11339968 7 HPFS NTFS deu hdaZ 1501 1570 529200 82 Linux swap deu hda3 1571 2472 6819120 83 Linux Abbildung 5 6 fdisk Anzeige der Partitionen In dieser Konfiguration hat die Festplatte eine NTFS Partition dev hdal eine Swap Partition dev hda2 eine Partition mit einem Linux System dev hda2 Weiterhin kann man noch sehen dass f r jede Partition eine ID angegeben wird Diese IDs geben den Partitionstyp an man kann sich alle m glichen Typen mit dem Befehl I anzeigen lassen Command m for help 1 0 Empty ic Hidden Win95 FA 70 DiskSecure Mult bb Boot Wizard hid 1 FAT12 le Hidden Win95 FA 75 PC IX be Solaris boot 2 XENIX root 24 NEC DOS 80 Old Minix ci DRDOS sec FAT 3 XENIX usr 39 Plan 9 81 Minix old Lin c4 DRDOS sec FAT 4 FAT16 lt 32M 3c PartitionMagic 82 Linux swap c6 DRDOS sec FAT 5 Extended 40 Venix 80286 83 Linux Cd Syrinx 6 FAT16 41 PPC PReP Boot 84 05 2 hidden C da Non FS data d HPFS NTFS 42 SFS 85 Linux extended db CP M CTOS 8 AIX 4d QNX4 x 86 NTFS volume set de Dell Utility 9 AIX bootable
59. Unix Kurs vor der Auto hn o taza l 2 1 Begriffskl rung Umfang Aktualit t Die Anzahl Auswahl und Aktualit t der mitgelieferten Programme und Bibliotheken unterscheidet sich von Distribution zu Distribution Manche Distributionen berbieten sich in der Anzahl der mitgelieferten CD ROMs Um den Anwendern bei der Installation bzw sp teren Updates ein st ndiges CD Wechseln zu ersparen werden manche Distributionen auch als DVD ROMs ausgeliefert Vorreiter war hier die Distribution der Firma SuSE Installations und Konfigurationswerkzeuge Die mitgelieferten Programme zur Installati on Konfiguration und Wartung des Systems helfen dabei Hunderte von Konfigurationsda teien des Systems auf einfache Weise richtig einzustellen Funktionierende Installations und Konfigurationstools stellen eine enorme Zeitersparnis dar Konfiguration des Desktops z B KDE Gnome Manche Distributionen lassen dem Anwender die Wahl zwischen KDE Gnome und eventuell auch verschiedenen Window Ma nagern Andere legen den Anwender auf eines dieser Systeme fest Es gibt aber auch Un terschiede in der Detailkonfiguration von KDE oder Gnome zum Beispiel inwieweit deren Startmen s mit den tats chlich installierten Programmen bereinstimmen Hardware Erkennung und Konfiguration Linux kommt zwar nicht mit allen PC Hardware Komponenten zurecht aber doch mit ziemlich vielen Angenehm ist nat rlich wenn die Dis tribution die vorhandene Hardware autom
60. Variabel oder Funktion wird nicht benutzt entspricht dem Paramter Wunused Au erdem werden durch den Paramter g3 Debugging Informationen mit eingef gt mit deren Hilfe das Programm sp ter Schritt f r Schritt durchlaufen werden kann Der Wert 3 gibt dabei den Detailgrad der Debugging Informationen an Werte zwischen 1 3 sind zul ssig gcc 02 std c99 meinesource c o meinlaufendesprogramm Mit dem Aufruf dieses Kommandos wird gcc angewiesen den iso9899 1999 Standard zu verwenden Dies ist vor allem dann notwendig wenn sie Erweiterungen dieses Standards verwenden Au erdem wird der Quelltext durch den Parameter O2 optimiert Der Wert 2 gibt dabei an wie stark die Optimierung ist Werte zwischen 1 3 sind zul ssig 9 2 grep Mit dem Kommando grep k nnen Sie einen Textstream nach dem Auftreten von bestimmten Ausdr cken durchsuchen grep gibt alle Zeilen in denen die gesuchten Ausdr cke auftreten aus Sie k nnen mit grep eine oder mehrere Dateien durchsuchen Die Standardeingabe von grep kann auch auch in Pipes verwendet werden z B 1s lisa grep Stuttgart Dieses Beispiel gibt nur die Verzeichnisinhalte aus welche Stuttgart beinhalten grep Optionen Ausdruck Datei M glich sind u a folgende Optionen e i ignoriert Gro und Kleinschreibung e n gibt die Zeilennummer zu jeder Fundstelle aus Kerstin Rossek amp Silke Wacker 107 22 Mai 2005 e Der letzte Unix Kurs vor der Auto Ahn 9 3 Regul re Au
61. Verzeichnis etc rc d In diesem Verzeichnis sind viele Skripte enthalten welche Dienste auf dem Linuxsystem starten und stoppen z B einen Webserver Apache httpd oder Fileserver Samba Im genannten Verzeichnis gibt es noch Unterverzeichnisse rc0 d rcl d rc2 d welche verschiedenen Runleveln des Systems entsprechen Jeder Runlevel entspricht einem anderen Zustand des Linuxsystems d h welche Dienste gestartet sind und welche nicht Also macht es Sinn ein generisches Verzeichnis mit allen Skripten welche laufen k nnen zu definieren dies ist das Verzeichnis etc init d In jedem Verzeichnis rcx d werden nun symbolische Links auf das etc init d Verzeichnis gesetzt Z B enth lt das Verzeichnis rc3 d die folgenden Eintr ge e S30syslog gt init d syslog e S40crond gt init d crond e S85httpd gt init d httpd Man sieht dass alle Links auf die Skripte im Verzeichnis init d verweisen Dies hat eine Menge Vorteile da so z B nderungen an den Skripten nur an einer Stelle n mlich in init d gemacht werden m ssen und nicht separat in jedem rcx d Verzeichnis Weiterhin wird dadurch eine Menge Festplattenplatz eingespart da ein Link nur einen Bruchteil einer richtigen Kopie des Skripts im jeweiligen Verzeichnis ausmacht Das Konzept von init d rc d und Runleveln wird im Kapitel 6 6 ausf hrlicher ausgef hrt Kerstin Rossek amp Silke Wacker 51 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 5
62. Ziffern und _ e W Alle nicht alphanumerischen Zeichen e s Whitespace Zeichen meistens f n r t v e S Kein Whitespace Zeichen e um Passt auf Wort Anfang e M Passt auf Wort Ende e Entwertet Sonderzeichen Kerstin Rossek amp Silke Wacker 109 22 Mai 2005 8 Der letzte Unix Kurs vor der Auto hn 9 3 Regul re Ausdr cke eee ites orc index html idiot html idiot htm haus hans hanse hannes mausi hase haas XXXX XXXXXX XYXYXY alfa mm num734 Abbildung 9 2 Beispieldatei lugmu txt 9 3 1 Beispiele Die folgenden Beispiele beziehen sich auf die Datei ugmu txt siehe Abbildung 9 2 0 9 A Z a z 19 0 9 0 9 Passt auf ein Datum zwischen 1900 und 1999 welches am Zeilenende steht grep x lugmu txt findet alle Zeilen in ugmu txt die ein x enthalten grep ha s lugmu txt findet alle Zeilen welche die Zeichenfolge has enthalten wobei genau ein Zeichen ersetzen kann haus hans hansel haas grep m i lugmu txt 22 Mai 2005 110 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn A y 9 4 gzip und gunzip findet alle Zeilen welche mit m beginnen und mit i aufh ren mausi grep hlaeiouls lugmu txt findet eine Zeichenfolge bestehend aus 3 Zeichen welche mit Wi beginnt irgend einen Vokal besitzt und mit s aufh rt hase grep lug
63. ai 2005 Der letzte Unix Kurs vor der Auto Ahn 10 3 ssh o C Passwort basierte Authentifizierung ssh login informatik ba stuttgart de ssh baut mit diesem Befehl eine Verbindung zum BA Server auf Bel einem ersten Verbindungs aufbau zu diesem Server werden Sie gefragt ob Sie die Verbindung tats chlich aufbauen wollen da Ihrem Client der Server noch unbekannt ist Best tigen Sie diese Abfrage mit ja yes so wird der durch den BA Server bermittelte Fingerprint bei Ihnen lokal abgelegt Sie werden nun zur Eingabe ihres Logins und Ihres Passwortes aufgefordert Diese Daten werden nat rlich schon verschl sselt bertragen Sinnvoll ist es den Benutzernamen gleich im ssh Befehl mit anzugeben ssh benutzer login informatik ba stuttgart de Nach erfolgreicher Authentifizierung k nnen Sie ganz normal in der Shell arbeiten Diese Art der Verbindung weist allerdings einige Schwachpunkte auf Die RSA basierte Authentifizierung ist hier wesentlich sicherer Die SSH Sitzung k nnen Sie einfach durch Eingabe des Kommandos exit beenden RSA basierte Authentifizierung Um die RSA basierte Authentifizierung benutzen zu k nnen sind zun chst einige kleine Vorarbeiten notwendig um einen ffentlichen und einen privaten Schl ssel zu erzeugen Hierzu m ssen Sie zun chst mittels ssh keygen t rsa einen ffentlichen und einen privaten Schl ssel erzeugen Sie werden zun chst nach der Datei gefragt in welcher der Schl ssel gespeichert werd
64. altung Dieses Kapitel erkl rt Ihnen die Grundlagen der Nutzerverwaltung Neben den Aspekten eines Multi User Systems werden die unterschiedlichen Arten von Benutzern unter Linux erl utert Au erdem erfahren Sie wie Sie Benutzer und Benutzergruppen anlegen und verwalten k nnen Die folgenden Punkte sind Inhalt dieses Kapitels e 4 1 Einleitung Multi User System e 4 2 Benutzer e Benutzergruppen e 4 4 Benutzerklassen Berechtigungsklassen e Benutzerdateien 4 1 Multi User System Linux ist ein Multi User System Dies bedeuted dass an einem System mehrere Benutzer gleich zeitig arbeiten k nnen Dies mag auf den ersten Blick etwas seltsam erscheinen da ja in der Regel an einem Rechner Peripherieger te wie Tastatur Maus und Monitor nur einmal vorhanden sind Allerdings k nnen sich beliebig viele Nutzer z B ber ein Netzwerk an einem Linux System anmel den und auf diesem arbeiten Zudem werden auf einem Linux System eine Vielzahl von Prozessen unter einer anderen Benutzerkennung gestartet als der unter welcher man sich selbst angemeldet hat siehe Abbildung 14 1 Ein Multi User System setzt nat rlich ein geeignetes Berechtigungssystem voraus um zum Einen das System selbst vor den Handlungen seiner Nutzer zum Anderen die Nutzer vor Handlungen anderer Nutzer zu sch tzen Auf einem Linuxsystem k nnen Benutzer und Benutzergruppen angelegt und verwaltet werden Ein Benutzer kann hierbei Mitglied einer oder mehre
65. am 28 5 auf Grund einer Studie f r die Umstellung seiner 14 000 Computer von Microsoft Windows auf Linux entschieden KDE Desktop 3 1 erscheint OpenOffice wird in der Version 1 1 ver ffentlicht welches etliche Erweiterun gen gegen ber den Vorg ngerversionen bietet Sambal erscheint in der Version 3 0 welche gerade im Einsatzbereich als Domain Controller viele Erweiterungen und Verbesserungen er fahren hat Auch eine Integration in das von Windows 2000 eingef hrte Active Directory ist nun m glich GNOME Desktop 2 4 erscheint Die Entwicklerserie 2 5 des Linux Kernels wird geschlossen und in die Serie 2 6 0 test bergef hrt Am 17 Dezember wird Version 2 6 0 des Linux Kernels freigegeben Ende 2004 Kernel Version 2 6 10 2 1 2 GPL amp Co Ist Linux frei Linux ist frei aber was bedeutet das eigentlich Oft wird frei mit kostenlos verwechselt Es stimmt zwar das Linux auch kostenlos verf gbar ist zumindest ber das Internet der Begriff frei bezieht sich aber auch und vor allem auf die Verf gbarkeit des gesamten Quellcodes Open Source Damit sind gewisse Komplikationen verbunden Was passiert wenn eine Firma den Linux Code verwendet in einigen Punkten erweitert und das System anschlie end verkauft Auch das ist erlaubt allerdings mit einer Einschr nkung Der Programmcode des neuen Systems muss abermals frei verf gbar sein Diese Regelung stellt sicher dass Erweiterungen am System allen Anwendern zu
66. an darf dies allerdings nicht mit Multiprocessing verwechseln dies bedeuted dass bei entsprechender Hardware und angepasstem Linux Kernel ein Linux System mehrere Prozesse parallel auf verschiedenen Prozessoren verarbeiten kann Genau eres hierzu finden Sie im Kapitel 6 2 6 1 2 Prozesse Jeder Prozess der im Linux System l uft wird vom Kernel berwacht So ist z B auch die Shell in welche man Kommandos eintippt ein Prozess und ebenso der Webbrowser auf welchem Sie gerade diese Zeilen lesen oder der X Server durch welchen der Webbrowser dargestellt wird Prozesse k nnen auch Subprozesse beinhalten d h Prozesse die von einem bergeordneten Prozess abh ngig sind und von diesem Vater Prozess gesteuert werden oder eben unabh ngig von diesem laufen Zu jeder Zeit k nnen mehrere Zehn bis Hundert Prozesse gleichzeitig reibungslos im System laufen Damit all dies gemanagt werden kann haben Prozesse mehrere Attribute und verfolgen verschie dene Konzepte Lebenszeit Lifetime jeder Prozess lebt wenn er sich in Ausf hrung befindet so wer den Programme wie z B Is nur f r kurze Zeit ausgef hrt ein Ergebnis wird generiert und ausgegeben und danach wird der Prozess terminiert Wenn ein Prozess terminiert so stirbt er deshalb gibt es zum Beenden von Prozessen auch das Programm kill Prozess ID Process ID PID f r jeden Prozess eindeutige Integer Nummer Benutzer ID und Gruppen ID User ID UID Group ID
67. as Dateiformat nicht offenlegt Auf der anderen Seite kann Windows standardm ig nicht auf Linux Dateisysteme zugreifen hier bedarf es Zusatzsoftware Die einfachste L sung ist es also auf der Festplatte eine Art Transfer Partition einzurichten welche von beiden Betriebssystemen gelesen und geschrieben werden kann Zum einfachen Datenaustausch eignet sich hierf r am besten eine FAT16 FAT32 Partition F r das folgende Beispiel nehmen wir an dass sich am Ende der Festplatte noch ca 820MB Platz befinden um die Partition erstellen zu k nnen Alle Schritte k nnen in Bild 5 8 im Screenshot nachvollzogen werden Command m for help n Command action e extended p primary partition 1 4 D Selected partition 4 First cylinder 2473 2584 default 2473 Using default value 2473 Last cylinder or size or sizeM or sizeK 2473 2584 default 2584 800M Command m for help t Partition number 1 4 4 Hex code type L to list codes c Changed system type of partition 4 to c Win95 FAT32 LBA Command m for help w The partition table has been altered Calling ioct1 to re read partition table WARNING If you have created or modified any DOS 6 x partitions please see the fdisk manual page for additional information Syncing disks Abbildung 5 8 fdisk neue Partition anlegen Die Schritte gliedern sich also wie folgt e Command n mit diesem Command wird das Untermen f r das Anlegen einer Partition
68. atei e befehll befehl2 f hrt befehl2 nur dann aus nachdem befehl1 nicht erfolgreich beendet wurde Beispiel rm datei echo Fehler Datei kann nicht gel scht werden e befehll befehl2 Die Kommandos werden in einer Subshell ausgef hrt nderungen z B des aktuellen Verzeichnisses werden in der aktuellen Shell nicht wirksam 22 Mai 2005 90 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn 7 2 Kommandos 7 2 4 Arithmetische Ausdr cke Berechnen Die Bash ist zwar ein m chtiges Werkzeug doch ist sie nicht in der Lage Berechnungen aus zuf hren Wenn man z B 4 5 eingibt so weiss die Bash nicht was Sie damit tun soll Um eine Berechnung ausf hren zu k nnen muss man den Ausdruck in Eckige Klammern setzen also z B e echo 4 5 dies gibt das Ergebnis 9 aus Innerhalb der eckigen Klammern sind die meisten Operationen aus der Sprache C erlaubt also f r die Grundrechenarten f r Modulo lt gt lt gt f r Vergleiche lt lt gt gt f r Bitverschiebungen amp amp und f r logisches NICHT UND ODER etc Man kann diese Berechnungen auch einer Variable zuweisen so z B i 4 5 und diese Variable dann per echo i wieder ausgeben lassen 7 2 5 Kommandosubstitition Wenn man innerhalb einer Kommandozeile ein Ergebnis aus einem Kommando also dessen stdout ben tigt um dieses Ergebnis in ein anderes Kommando einzusetzen so kann man dies mitt
69. ateien e etc hier sind rechnerspezifische Konfigurationsdateien aller Art enthalten z B f r Netz werkeinstellungen e home Home Verzeichnisse der Benutzer des Systems jeder Benutzer hat hier ein eigenes Verzeichnis f r seine pers nlichen Daten Einstellungen etc e lib wichtige Systembibliotheken und Module z B C Library ibc e opt Anwendungsprogramme e root Home Verzeichnis des Systemadministrators auch root genannt e sbin wichtige Programme f r die Systemverwaltung z B fdisk fsck e tmp tempor re Dateien benutzbar von allen Benutzern e usr nicht hostspezifische shareable Daten und Programme e var variable Daten z B Log Files Maildaten Druckerspooler Weitere Informationen ber den FHS finden Sie unter http www pathname com fhs 5 2 Dateisysteme Unter Linux sind eine Vielzahl moderner aber auch ltere Dateisysteme im Nachfolgenden kurz DS genannt nutzbar Die Eigenschaft auch mehrere verschiedene DS im laufenden Betrieb zu unterst tzen einzubinden siehe Kapitel 5 6 und wieder auszuh ngen erm glicht es Linux sehr flexibel vor allem in Multiboot Systemen also Systemen mit mehreren installierten Betriebssys temen zu agieren 5 2 1 Betriebsebenen auf der Dienste Schicht Dateisysteme muss man im Wettsteinschen Schichtenmodell auf der Dienste Ebene ansiedeln Die Dienst Ebene kann man noch unterteilen in eine logische und reale Betriebsebene Die lo gische Betriebsebene stellt d
70. atisch erkennt und damit umgehen kann Gelingt dies nicht ist oft eine m hsame Konfiguration in Handarbeit erforderlich die Linux Einsteiger meist berfordert Landesspezifische Anpassung Manche Distributionen vermitteln noch immer den Ein druck Englisch sei die einzige Sprache dieser Welt Andere Distributionen sind speziell f r den Einsatz in nicht englischsprachigen L ndern vorbereitet Das betrifft nicht nur das Tastatur Layout sondern auch die verf gbaren Zeichens tze die Sprache der Online Dokumentation u v m Ist man jedoch der englischen Sprache nicht abgeneigt so gibt es Anpassungen f r US und UK Englisch ja sogar f r Irisch Englisch Debian In der Zwischenzeit gibt es sogar bersetzungen f r kleinere Sprachr ume z B KDE auf Plattdeutsch Paketsystem Die Verwaltung von Linux Anwendungsprogrammen erfolgt durch Pakete Packages als modulare Einheiten Das Paketsystem hat ein Einfluss darauf wie einfach die Nachinstallation zus tzlicher Programme beziehungsweise die Aktualisierung Update vorhandener Programme ist Zur Zeit sind drei zueinander mehr oder weniger inkompatible Paketsysteme blich RPM verwendet von Caldera Mandrake Red Hat SuSE und TurboLinux DEB verwendet von Debian Corel Progeny und Storm Linux TGZ verwendet von Slackware Kerstin Rossek amp Silke Wacker 11 22 Mai 2005 e Der letzte Unix Kurs vor der Auto hn 2 1 Begriffsklarung ants Es gibt jedoch
71. be bekommen so wird dieser in den Zustand rechenbereit berf hrt und bekommt als N chster Rechenzeit zugewiesen Die typische Auswahlmenge bei Prozessen eines Prozessors sind also rechenbereite Prozesse sowie der auf dem jeweiligen Prozessor rechnende Prozess 22 Mai 2005 70 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn e e o voerus oraa l 6 3 Streams Umleitungen Pipes 6 2 3 Schnittstellen von Prozessen Prozesse haben Schnittstellen welche Ihnen erlauben Steuersignale zu empfangen Jeder laufende Prozess h rt st ndig ob solche Signale an ihn gesendet werden Durch Interprozess Kommunikation werden diese Signale bertragen und sind genauer betrachtet jeweils nur eine Integer Zahl welche ber eine definierte Schnittstelle bertragen wird Genauso ist auch definiert wie die Prozesse auf diese Signale zu reagieren haben Wenn man z B Ctrl C w hrend eines laufenden Programms dr ckt so wird die Nachticht INTERRUPT an das Programm gesendet welches dem Prozess sagt dass dieser stoppen soll Es sind ca 30 Signale in Linux definiert Jedes Signal hat einen Namen und eine Nummer wobei der Name nur zur besseren Unterscheidung f r uns Menschen dient da ja bei der eigentlichen Kommunikation nur eine Integer Zahl bermittelt wird Viele von diesen Signalen werden vom Kernel benutzt und einige sind auch f r den normalen Benutzer n tig Einige h ufig benutzte Signale sind e SIGHUP Inte
72. ber den entsprechenden Men punkt des Startmen s da Gno me ebenfalls Informationen ber die gerade laufenden Programme speichert Kerstin Rossek amp Silke Wacker 143 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 11 5 Desktop Systeme o cta y 22 Mai 2005 144 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn g e A A Literaturverzeichnis A Literaturverzeichnis 1 das ELKO http www elektronik kompendium de 2 Free Software Foundation http www fsfeurope org 3 Gnome http www gnome org 4 GNU Project http www gnu org 5 GTK The GIMP Toolkit http www gtk org 6 EEE POSIX Cerfification Authority http standards ieee org regauth posix 7 KDE Http www kde org 8 Linux Documentation Project http www linuxdoc org 9 Linux Information Systems AG http www 1linux ag de linux LHB node153 html 10 Linux Standard Base http www linuxbase org 11 Pathname Filesystem Hierarchy Standard http www pathname com fhs 12 Trolltech Q Public License http www trolltech com licenses gpl annotated html 13 UnitedL inux 14 Vim the editor 15 Wikipedia Die freie Enzyklop die 16 Window Maker 17 The XFree86 Project Inc 18 X Org 19 Dean Jeffrey LPI Linux Certification in a Nutshell O Reilly Verlag 1st edition May 2001 20 Herrler Hans J rgen Praktische Datenverarbeitung Einf hrung in Linux Un
73. ble shared enable cxa a wf texit i466 suse Linux Thread model posix gcc version 3 3 20030226 prerelease SuSE Linux rammstein ecc Y Abbildung 9 1 Konsolenausgabe des Kommandos gcc v gcc gibt aus wie es konfiguriert wurde und um welche Version es sich handelt So werden u a genannt mit welchem Threading Modell und welchen Optionen gcc erstellt wurde configured with Thread model 9 1 2 Sourcedatei kompilieren Um eine vorhandene C Source Datei zu kompilieren m ssen Sie folgendes Kommando ausf hren gcc meinesource c o meinlaufendesprogramm Die Sourcedatei meinesource c wird nun kompiliert und gelinkt Am Ende steht eine ausf hrbare Kerstin Rossek amp Silke Wacker 105 22 Mai 2005 SE Der letzte Unix Kurs vor der Auto Ahn 9 1 Compilieren eines Quelltextes o cta Datei mit dem Namen meinlaufendesprogramm so keine Programmierfehler vorliegen Sie k nnen das Programm jetzt mit dem Befehl meinlaufendesprogramm starten Weitere Parameter gcc kann mit einer schon fast un bersichtlichen Anzahl von Parametern konfiguriert werden An dieser Stelle folgen einige h ufig gebrauchte Weitere Informationen k nnen Sie sich hier wie gewohnt ber die Man Pages Kapitel 3 1 abrufen c Quelltexte bersetzen aber nicht linken 1 Pfad f r eingebundene Header Dateien e L Pfad zu verwendeten Programmbibliotheken e 02 Compiler soll den Code weiter optimieren e g Symboltabelle zum Debugg
74. chnisses projekt auf die mit menue beginnen und deren Eigent mer student ist find home name tar user student size 100k exec rm Durch diesen Befehl werden im Verzeichnis home alle Dateien gefunden die die Endung tar besitzen Archive deren Eigent mer der Benutzer student ist und die gr er als 100 Kilobyte sind Diese Dateien werden in der Folge ohne R ckfrage gel scht 9 8 Weitere Kommandos Eine kurze Auflistung weiterer n tzlicher Kommandos cmp Dateil Datei2 vergleicht die zwei angegebenen Dateien date gibt Zeit und Datum des Systems aus e df gibt aus wieviel Plattenspeicherplatz belegt und wieviel Speicherplatz frei ist file Dateil Datein ermittelt die Dateitypen der angegebenen Dateien Dateien durch Leerzeichen getrennt sort Datei sortiert die Zeilen einer Datei lexikographisch und gibt das Ergebniss aus e wc Datei z hlt Zeilen W rter und Zeichen in der angegebenen Textdatei 22 Mai 2005 116 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn i ue lt pmumsen 9 9 Weitere Beispiele e who Datei gibt die am System angemeldeten Benutzer aus e md5sum Datei gibt die md5 Checksumme der Datei aus dies ist vor allem n tzlich um zu berpr fen ob Dateien die z B aus dem Internet heruntergeladen wurden korrekt bertra gen wurden 9 9 Weitere Beispiele Noch einige Beispiele die das arbeiten mit Pipes und regul ren Ausdr cken verdeutlichen tar cvzf C
75. chr nkungen hinnehmen so gibt es beispielsweise f r NTFS von Microsoft noch keinen verl lichen Treiber welcher es erm glicht auch schreibend auf NTFS zuzugreifen Dies liegt vor allem an der Lizenzpolitik von Microsoft welche die Funktionsweise von NTFS nicht offenlegt Die im Folgenden aufgez hlten Dateisysteme sind lediglich eine Auswahl derer die unter Linux unterst tzt werden e ext2 das Standard DS von Linux Dateinamen k nnen bis zu 255 Zeichen lang sein die maximale Gr e f r eine Partition liegt bei 2 GB e ext3 basiert auf ext2 wurde jedoch zur Fehlerminimierung und korrektur um Journaling Funktionalit t erweitert e FAT Standard DS von MS DOS und Windows 3 11 Windows95 e FAT32 Standard DS von Windows98 WindowsME e VFAT erweiterte Variante von FAT Dateinamen bis zu einer L nge von 255 Zeichen mit Unterscheidung von Gro und Kleinschreibung erlaubt e NTFS Standard DS ab Windows NT 4 bis zu aktuellen Windows Versionen dieses Dateisys tem kann zuverl ssig nur Read Only betrieben werden Schreibzugriffe sind nur experimentell Kerstin Rossek amp Silke Wacker 47 22 Mai 2005 a e Der letzte Unix Kurs vor der Auto Ahn 5 3 Befehle im Zusammenhang mit Dateien und Verzeichnissen o entes und auf eigene Gefahr hin m glich e HPFS DS von IBM OS 2 e ReiserFS Journaling DS von Hans Reiser hohe Datensicherheit e Linux Swap DS f r die Auslagerungs Partition Swap Part
76. datei txt New File Abbildung 8 2 Anzeige New File im Editor vi Bei einer vorhandenen Datei wird stattdessen hinter dem Dateinamen die Gr e hier 1L 24C angezeigt Dabei handelt sich um die Anzahl der Zeilen engl Lines und der Zeichen engl Characters die die Datei enth lt Abbildung 8 3 8 2 Modi amp Kommandos Nachdem Sie im letzten Abschnitt einen berblick ber die Herkunft das Starten und die An sichtsinformationen des Editor vi bekommen haben soll in diesem Abschnitt nun das Arbeiten mit diesem Editor Ihnen n her gebracht werden 8 2 1 Die drei Modi des Editor vi Der wichtigste Unterschied zu anderen Editoren ist dass der Editor vi verschiedenen Modi unter scheidet die alle durch Tastatureingaben gew hlt werden k nnen Eingabemodus F r die Eingabe von neuem Text ist dieser Modus vorgesehen Jede Tastaturein gabe wird Zeicheneingabe von Editor interpretiert und in den Text eingef gt 22 Mai 2005 100 Kerstin Rossek amp Silke Wacker Das aizia Uni lus wor das Autol Xhn i e eme 8 2 Modi amp Kommandos Dies ist textdateil txf textdatei txt 1L 24C Abbildung 8 3 Anzeige der Zeilen und Zeichen im Editor vi Kommandomodus Der Kommandomodus ist der Ausgangspunkt beim Starten des Editors be ziehungsweise beim ffnen einer Textdatei mit dem Editor Mit der Escape Taste kehrt man aus dem Eingabemodus in diesen Modus zur ck aus dem Zeilenmodus nach erfol
77. de Wirkung auf die normalen Benutzer haben Mehr zu Benutzer und ihren Rechten finden Sie im Kapitel 4 Nutzerverwaltung e Kernel Routinen Sektion 9 Dies ist keine standardisierte Sektion Es ist gedacht f r Kernel Entwickler die neue Routinen testen wollen Wenn gleichlautende Eintr ge in mehreren Sektionen vorkommen kann man die Suche mit Angabe der Sektion als Parameter einschr nken man sektion befehl Kerstin Rossek amp Silke Wacker 25 22 Mai 2005 Der letzte Unix Kurs vor der Auto hn 3 2 Hilfesuche eee vetus orc Kennt man nicht den genauen Befehl den man fiir seine Problemstellung sucht kann man die Man Pages nicht nur nach einem konkreten Befehl Eintrag durchsuchen sondern auch den Teil BESCHREIBUNG einer Man Page man k begriff Es wird dann eine Liste mit Befehlen ausgegeben die dem Suchbegriff gen gen In Klammern steht bei jedem Befehl die Nummer der Sektion 3 1 4 X Man Pages Steht Ihnen eine Desktopumgebung unter Linux zur Verf gung vgl X Window System so k nnen Sie auch ber eine grafische Oberfl che mit dem Programm xman auf die Man Pages zugreifen Abbildung 8 2 zeigt das Lesen der Man Page zum Befehl du mit xman xman l sst sich einfach aus der Kommandozeile starten mit dem Befehl xman amp Durch das amp als Parameter wird xman als Hintergrundprogramm gestartet und die Komman dozeile steht f r weitere Eingaben zur Verf gung Danach erscheint das k
78. der Version XP Professional mitgeliefert und wurde bei seinen vorangegangenen nur durch die Installation einer zus tzlichen Software f r diese Zwecke erm glicht Das X Window System wurde urspr nglich vom Massachusetts Institute of Technology MIT entwickelt und besteht gerade in der Version 11 Release 6 kurz X11R6 oder X11 Kerstin Rossek amp Silke Wacker 131 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 11 2 XFree86 o cdta 11 2 XFree86 XFree86 ist eine freie Implementierung des standardisierten X Window Systems wird f r alle Linux Distributionen verwendet und steht auch f r zahlreiche UNIX Varianten zur Verf gung Es ist das Produkt des XFree86 Project Inc XFree86 stand urspr nglich nur f r Betriebssysteme mit Intel Prozessoren zur Verf gung 386 486 etc daher die Zahl 86 im Namen mittlerweile l uft es aber auf sehr vielen Prozessoren Neben XFree86 gibt es weitere freie Implementierungen wie Xorg und kommerzielle Implementierungen wie Accelerated X Die kommerziellen Implementierungen hatten fr her eine relativ gro e Bedeutung weil XFree86 damals viele moderne Grafikkarten noch nicht unterst tzte Dies hat sich aber gewandelt mit der zunehmenden Leistungsf higkeit von XFree86 Ganz neue Grafikkarten die von XFree86 noch nicht unterst tzt werden sind oft auch den kommerziellen Servern unbekannt XFree86 Version 3 n und Version 4 n Aktuelle Distributionen enthalten die Version 4 n zum
79. die M glichkeit z B RPM in Debian Pakete umzuwandeln und vice versa Wartung Beseitigung von Sicherheitsliicken Linux ist ein sich dynamisch veranderndes System Oft gibt es nach der Fertigstellung einer Distribution noch wichtige Neuerungen im mer wieder werden Sicherheitsm ngel in diversen mitgelieferten Programmen entdeckt Eine gute Distribution zeichnet sich dadurch aus dass sie insbesondere bei Sicherheitsproble men sehr rasch Updates im Internet zur Verf gung stellt Manche Distributionen versuchen mittlerweile einerseits den Vorgang von Sicherheits Updates weitestgehend zu automatisie ren und daraus andererseits einen kostenpflichtige Zusatzleistung zu machen Wie weit sich diese Idee durchsetzen wird ist momentan noch nicht abzusehen Live System Einige wenige Distributionen erm glichen den Betrieb von Linux direkt von einer CD ROM oder DVD Das ist zwar langsam und inflexibel erm glicht aber ein ver gleichsweise einfaches Ausprobieren von Linux Zudem stellt eine Live CD ROM eine ideale M glichkeit dar ein auf der Festplatte vorhandenes aber defektes Linux System zu reparie ren Microsoft Windows Installation Einige Distributionen erm glichen die Installation von Linux in ein Verzeichnis bzw in eine gro e Datei einer MS Windows 9x SE ME Partition Das ist langsam und hat zahllose Nachteile erspart aber die Partitionierung der Fesplatte Wie beim Live System ist auch diese Variante vor allem zum Ausprobieren i
80. die zu l schende Benutzergruppe als Prim rgruppe verwenden In beiden F llen w rde der L schvorgang scheitern 4 4 Benutzerklassen Berechtigungsklassen Um den Zugriff auf Dateien und Ressourcen zu regeln gibt es unter Linux sogenannte Benutzer und Berechtigungsklassen Es werden die drei Benutzerklassen user group und others unterschie den Diese Benutzerklassen teilen sich jeweils wieder in Berechtigungsklassen f r Lese Schreib und Ausf hrrechte auf e user read Leserecht f r Benutzer user write Schreibrecht f r Benutzer user execute Ausf hrrecht f r Benutzer group read Leserecht f r Benutzergruppe group write Schreibrecht f r Benutzergruppe e group execute Ausf hrrecht f r Benutzergruppe other read Leserecht f r alle Benutzer other write Schreibrecht f r alle Benutzer other execute Ausf hrrecht f r alle Benutzer 22 Mai 2005 38 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn So anna 4 4 Benutzerklassen Berechtigungsklassen Dies bedeuted das f r eine Datei jeweils Lese Schreib und Ausf hrrechte f r einen Benutzer user eine Benutzergruppe group und im Bedarfsfall f r alle Benutzer others gesetzt werden k nnen Weiter Informationen wie Sie die hier beschriebenen Rechte im konkreten Fall setzen k nnen finden sie im Kapitel 5 5 Zugriffsrechte 4 4 1 Berechtigungsklassen Im folgenden soll kurz auf die Bedeutung der e
81. diesen Ankerpunkt wird ein normales Verzeichnis verwendet d h man legt ein neues Verzeichnis an z B mnt cdrom und kann nun das CD ROM mit dem Befehl e mount dev cdrom mnt cdrom in dieses Verzeichnis mounten dev cdrom entspricht hier der Quelle d h das Ger t bzw die Partition auf welchem das Dateisystem sich befindet Nat rlich kann dieser Ger tename auf an deren Systeme komplett anders lauten z B dev scdO f r ein SCSI CD ROM Laufwerk I d R werden die DS Typen automatisch erkannt Nun kann man die gemountete CD ROM wie ein ganz normales Verzeichnis benutzen d h Dateien lesen kopieren etc Nat rlich kann man das Dateisystem auch wieder unmounten also aush ngen e umount mnt cdrom Dabei ist zu beachten dass im entsprechenden Befehl tats chlich das n fehlt oi 5 6 2 fstab und mtab In jedem Linux System gibt es die Dateien etc fstab und etc mtab e fstab In dieser Datei werden s mtliche Eintr ge gemacht welche Dateisysteme zum Sys temstart des Linux Systems gemounted werden sollen e mtab Hier werden alle aktuell gemounteten Dateisysteme und Mountpoints aufgelistet Damit ein Linux System berhaupt lauff hig ist wird als erstes das Root Dateisystem ge mountet danach dann w hrend des Starts alle weiteren Mountpoints aus der fstab Hier einige typische Zeilen aus der fstab Kerstin Rossek amp Silke Wacker 55 22 Mai 2005 RE Der letzte Unix Kurs vor der Auto Ahn 5 6 E
82. dieser genaueren Betrachtung des Wettstein schen Schichtenmodells wird ein weiterer Aspekt deutlich Jede bergeordnete Schicht greift auf Funktionen der Unterschicht zu Ein Beispiel e Der Benutzer startet ein Textverarbeitungsprogramm durch einen Klick mit der Maus auf das dazugeh rige grafische Symbol innerhalb der grafischen Benutzerschnittstelle Steuerung e Das installierte Textverarbeitungsprogramm wird gestartet Anwendungen e Die grafische Oberfl che Fenster Schaltfl chen etc des Textverarbeitungsprogramms baut sich innerhalb der grafischen Benutzerschnittstelle auf Dienste e Das Textverarbeitungsprogramm erh lt einen eigenen Prozess und einen eigenen Adressraum im Arbeitsspeicher Infrastruktur Die Abbildung 2 2 zeigt das konkrete Schichtenmodell eines UNIX Systems Die neuen Begriffe die Sie dieser Abbildung entnehmen k nnen werden in die den folgenden den Kapiteln n her erl utert Kerstin Rossek amp Silke Wacker 21 22 Mai 2005 S ix D BA 2 3 Aufgaben und Aufbau eines Betriebssystems Qe it an e Benutzer schnittstelle Benutzer Shell Editor Compiler Standardbibliothek open close read write fork Bibliotheks schnittstel le Systemaufruf Benutzermodus schnittstelle UNIX Betriebssystem e Kern dein Proze verwaltung Speicherverwaltung Dateisystem LO Hardware CPU Speicher Platten Terminals Abbildung 2 2 Die Schichten
83. dow Systems am Beispiel von XFree86 Die folgenden Punkte sind der Inhalt dieses Kapitels e Allgemeines e 11 2 XFree86 Konfiguration Display Manager e 11 3 X Org e 111 4 Window Manager e Desktop Systeme KDE Gnome 11 1 Allgemeines zum X Window System Das X Window System kurz X stellt eigentlich eine Sammlung von Basisfunktionen und Pro tokollen dar mit deren Hilfe grafische Informationen auf dem Bildschirm ausgegeben und Maus und Tastatur verwaltet werden F r UNIX und Linux ist das X Window System der Standard f r grafische Oberfl chen Die folgende Abbildung zeigt den Aufbau und das Zusammenspiel des X Window Systems mit anderen involvierten Komponenten Die einzelnen Komponenten sind wie folgt zu verstehen Hardware Damit sind die notwendigen Komponenten des Rechnersystems gemeint die es ber haupt erm glichen ein Bild zu erzeugen und weitergehend eine grafische Oberfl che dar zustellen und auch diese zu bedienen Prozessor Arbeitsspeicher Monitor Grafikkarte und Eingabeger te wie Tastatur und Maus 22 Mai 2005 130 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn o cantata 11 1 Allgemeines zum X Window System Applikationen Windowmanager Abbildung 11 1 X Window System Schichten und Komponenten 20 X Server Der X Server stellt die Schnittstelle zwischen dem X Window System und der Hardware dar zum Beispiel Ansprechen der Grafikkarte zeichnet gra
84. e Unix Kurs vor der Auto Ahn 7 4 Shellprogrammierung Beispiel befinden sich in der Liste c h Wildcards diese werden von der Shell im vorab durch passende Dateinamen falls vorhanden ersetzt Man k nnte durch Kommandosubstitution noch weiter gehen und die Liste durch eine Datei mit einer Liste ersetzen Zeile 2 w rde dann lauten for datei in cat meine_dateien txt somit werden die zu ladenden Dateien aus der Liste in meine _ dateien txt entnommen Z hlschleife for 1 bin bash 2 for i 3 i lt 6 i 3 do 4 echo i ixi 5 done Dies ist eine Variante der for Schleife und eigenet sich besonders als Z hlschleife Diese Schleife gibt die nat rlichen Zahlen 3 bis 5 mit ihren Quadraten aus 7 4 4 Verzweigungen Bedingte Verzweigungen bin bash if grep abc datei then else 1 2 3 4 5 echo Muster gefunden 6 7 echo nix da 8 fi Fur die Bedingung die in Zeile 3 hinter if steht gilt alles was dazu im Abschnitt Schleifen mit while gesagt wurde auch hier entscheidet der Exit Status welcher Zweig durchlaufen wird Mehrfache Verzweigungen 1 bin bash 22 Mai 2005 96 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn a o voetus oraraa 7 4 Shellprogrammierung 2 a 3 system linux sollte beim Ablauf des Scriptes geeignet gesetzt werden Los 5 jetzt wird system ausgewertet 6 case system in 7 linux echo wir schaffen unte
85. eben die einem Archiv hinzugef gt oder von einem Archiv extrahiert werden w jede Aktion vom Anwender best tigen lassen z Dateien vor der Archivierung mit gzip komprimieren lassen oder beim Extrahieren mit gunzip dekomprimieren lassen N Datum Dateien ignorieren die lter als das angegebene Datum sind W Archiv nach Beendigung der Archivierung auf Integrit t pr fen P keine Schr gstriche am Anfang von Dateinamen entfernen Z Dateien vor der Archivierung mit compress komprimieren oder vor dem extrahieren mit uncompress dekomprimieren mtools Bei den mtools handelt es sich um ein Programmpaket mit dessen Hilfe man auf DOS Disketten zugreifen kann Dabei entspricht die Namensgebung der Befehle denen unter DOS nur das jeweils ein m vorangestellt wird Ein kleine Auswahl der wichtigsten Befehle mdir gibt den Inhalt des aktuellen Verzeichnisses aus 22 Mai 2005 114 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn i 9 7 find e mcopy t Quelle Ziel Kopiert Dateien vom angegebenen Quellverzeichnis in das angegeben Zielverzeichnis Wird die Option t gesetzt so werden Textformate zwischen Unix und DOS konvertiert e mdel l scht eine Datei auf der Diskette e mcd wechselt das Verzeichnis auf der Diskette 9 7 find Das Kommando find sucht unter verschiedenen Kriterien Dateien und kann mit den gefundenen Dateien wenn gew nscht auch Aktionen ausf hren find Verzeichnis Test A
86. eile ndert sich an einem init Skript etwas so muss es nur in der Datei im etc init d Verzeichnis ge ndert werden Sonst m sste man in jedem Kerstin Rossek amp Silke Wacker 81 22 Mai 2005 er Der letzte Unix Kurs vor der Auto hn 6 6 init d Runlevel Verzeichnis das jeweilige Skript ndern Weiterhin wird so Speicherplatz eingespart da die Skripte sonst mehrmals in den Runlevel Verzeichnissen liegen w rden symbolische Links dagegen ben tigen nur einen Bruchteil dieses Platzes Dabei bedeuten die Buchstaben und Zahlen nach einer Konvention e K S Pr fixe f r kill oder start da in jedem Runlevel bestimmte Prozesse laufen oder eben nicht m ssen eben eventuell vorhandene beendet werden und andere laufen e nn Sequenznummer diese Integerzahl gibt an in welcher Reihenfolge die Dienste beendet oder gestartet werden wobei die kleinste Nummer zuerst ausgef hrt wird e init d_ name Der Name des zu beendenden oder startenden Skripts dieser Name wird allerdings nicht von init ausgewertet sondern dient der besseren bersichtlichkeit f r uns Menschen Wenn nun also z B der Runlevel 5 gestartet wird so werden zuerst alle Dienste mit K beendet und alle Dienste mit S gestartet Nachdem alle Skripte nacheinander erfolgreich oder nicht gestartet worden sind wird eine Meldung vom System ausgegeben Runlevel 5 has been reached 22 Mai 2005 82 Kerstin Rossek amp Silke Wacker
87. einem gemeinsamen Teil und architekturbezogenen Teil zu unterscheiden Die aktuelle Spezifikation besteht in der Version 1 3 Die zurzeit aktuelle Version SuSE 9 1 Professional ist zum Beispiel f r 32bit Intel kompatible Architekturen mit dem 1 3 Standard konform Ein anderer Schritt in Richtung Standardisierung von den unterschiedlichen Distributionen ist UNITEDLINUX Dabei handelt es sich um eine Distribution die von den Firmen und unterst tzt wird Im Novem ber 2002 wurde die Version 1 0 herausgegeben Ziel ist es einen weltweiten Linux Standard zu schaffen Abschlie end kann man sagen dass zwar jede Distribution ihre Eigenheiten hat aber dennoch die Gemeinsamkeiten berwiegen Schlie lich nutzen alle Distributionen zum Beispiel die zuvor genannnten GNU Werkzeuge 2 2 Abgrenzung zu anderen Betriebssystemen In diesem Abschnitt sollen ein wenig die Unterschiede zwischen Linux und anderen Betriebssyste men aufgezeigt werden Die Auflistung stellt lediglich eine Auswahl dar und hat keinen Anspruch auf Vollst ndigkeit da das den Rahmen diese Kurses sprengen w rde e Apple MacOS Das Apple eigene Betriebssystem MacOS ist f r die von Apple hergestell ten Rechner vorgesehen Der Grund liegt darin dass diese Rechner keine Intel kompatible Architektur haben sondern es sich bei diesen um PowerPCs handelt Es bietet eine enorm hohe Benutzerfreundlichkeit und wird bevorzugt f r Multimedia Anwendungen eingesetzt Kerstin Ross
88. eines UNIX Systems 20 22 Mai 2005 22 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn A A 3 Hilfe unter Linux 3 Hilfe unter Linux Zu Linux gibt es unglaublich viel Dokumentationen die teilweise gleich mitgeliefert werden und teilweise im Internet zu finden sind Das Kapitel Hilfe unter Linux stellt drei verschiedene M g lichkeiten vor Hilfe zu verschiedenen Problem bzw Aufgabenstellungen unter Linux zu finden Die folgenden Punkte sind Inhalt dieses Kapitels e Man Dages e 3 2 Hilfesuche e HOWTOs 3 1 Man Pages 3 1 1 Allgemeines Die Man Pages Manual Seiten sind in Summe eine Art gro es Benutzerhandbuch f r Linux Sie werden standardm ig bei einer Installation einer Linux Distribution auch mitinstalliert Sie bieten den Vorteil dass man Sie einfach nach einem Schlagwort durchsuchen kann Auf diese Weise erh lt man sofortigen Zugriff auf die Informationen die man ben tigt Es entf llt das gewohnte langwierige Suchen wie man es von gedruckten Benutzerhandb chern kennt Es gibt eine Man Page f r die meisten Kommandos die auf dem System verf gbar sind Es ist blich dass bei der Installation einer neuen Anwendung die passenden Man Pages ebenfalls dem System hinzugef gt werden f r wichtige Dateien z B Konfigurationsdateien Bibliotheksfunktionen shells Sprachen Laufwerke und Ger te und andere Besonderheiten z B YaST2 bei SuSE Linux Die Man Pages sind
89. eiten Aus diesem Grund wird der Editor vi von diversen Programmen automatisch als Editor aufgerufen wenn dies nicht explizit durch eine entsprechende Konfiguration verhindert wird In diesen F llen sollten Sie wenigstens wissen wie Sie den Editor verlassen k nnen Kerstin Rossek amp Silke Wacker 99 22 Mat 2005 e Der letzte Unix Kurs vor der Auto Ahn 8 2 Modi amp Kommandos o a In der Mitte der Ansicht finden Sie eine Auswahl grundlegender Kommandos und deren Bedeutung Rechts am unteren Rand werden beim Editor vi die Zeilen und die Zeichenposition des Cursors im Format Zeile Zeichenposition angezeigt Am linken Rand sind alle Zeilen unter der Zeile in der sich der Cursor befindet mit einer Tilde markiert Auf diese Weise werden leere Zeilen die weder normale Zeichen noch Leerzeichen enthalten markiert In den meisten F llen werden Sie sicherlich den Editor vi starten um eine oder mehrere Textdateien zu ffnen Dies k nnen Sie durch Anf hren der Dateinamen nach dem vi Kommando vi textdateil txt textdatei2 txt Sie haben aber auch die M glichkeit einen beliebigen Dateinamen anzugeben zu dem also keine Datei existiert In diesem Fall wird eine neue tempor re Textdatei mit entsprechendem Namen erzeugt die aber erst nach dem Speichern im Dateisystem abgelegt wird Dies erkennen Sie im Editor vi durch die Anzeige New File hinter dem Dateinamen hier textdatei txt am unteren Rand text
90. ek amp Silke Wacker 17 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 2 2 Abgrenzung zu anderen Betriebssystemen e i Bemerkenswert ist dass in der neuesten Version des Betriebssystems MacOS X r m 10 das gesamte Betriebssystem auf einen FreeBSD Kernel portiert wurde Microsoft Windows XP Das aktuelle Desktop PC Betriebssystem von der Firma Mircosoft besitzt eine umfangreichere Unterst tzung von verschiedensten Hardwarekomponenten im Vergleich zu seinem Vorg nger Windows 2000 Ebenfalls unterst tzen die meisten Software Hersteller je nach Anwendungsgebiet der Software prim r das Microsoft Betriebssystem da dieses die weiteste Verbreitung genie t Des weiteren wurden die Benutzerfreundlichkeit und Multimedia Funktionalit t verbessert Jedoch kann in dieser aktuellen Version von Mi crosoft Windows maximal ein Benutzer zu jedem Zeitpunkt angemeldet sein Weiterhin ist zu bemerken dass Windows XP wie auch seine Vorg nger Opfer vieler Viren und Wurm Attacken durch das Internet ist was sich unter dem Aspekt der Lauff higkeit und Stabilit t nachteilig auswirkt Sun Solaris IBM AIX HP UX Hierbei handelt es sich wie bereits in der Geschichte von Linux eingef hrt um Ableger des klassischen UNIX Sie wurden im Laufe der Jahrzehnte durch die jeweiligen Firmen weiterentwickelt Sie werden vornehmlich als Betriebssystem f r die Gro rechner der jeweiligen Firma eingesetzt e zOS Das 64Bit Betriebssystem f
91. els Kommandosubstitution tun Aufmerksame Leser fragen sich jetzt bestimmt wieso man dies nicht mittels einer machen k nnte zu Recht Oftmals ist es nicht m glich ein stdout eines Kom mandos direkt in den stdin des n chsten Kommandos umzuleiten Oft wird eben das Ergebnis irgendwo mittendrin im n chsten Kommando als Argument oder Option gebraucht Ein Beispiel zum besseren Verst ndnis der folgende Ausdruck w re mit Pipes nicht m glich es soll zuerst im Verzeichnis home alex nach allen Dateien gesucht werden in denen die Zeichenkette studienarbeit vorkommt Dieses Ergebnis soll nun als Verzeichnisliste mittels Is 1 ausgegeben werden Die zwei folgenden Ausdr cke zum bewerkstelligen dieser Aufgabe sind absolut gleichwer tig e ls l find home alex name studienarbeit els 1 find home alex name studienarbeit Das Ganze ist allerdings auch ohne Kommandosubstitution durch das Programm xargs m glich Durch Zuhilfenahme von xargs werden Daten aus der Standardeingabe an das nach xargs ange gebene Kommando weitergeleitet e find home alex name studienarbeit xargs ls 1 Kerstin Rossek amp Silke Wacker 91 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 7 3 Variablen eee veus orc W rde man das Kommando xargs einfach weglassen so funktioniert das Ganze nicht mehr wie gew nscht 7 2 6 Aliase Synonyme Mittels des Befehls alias kann man sich eine M
92. em Benutzer eine logische Sichtweise von Betriebsmitteln dar Zu 22 Mai 2005 46 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn 5 lt omuunn 5 2 Dateisysteme dieser geh rt alles was nicht direkt einer Hardwarekomponente entspricht also z B eine Datei Verzeichnis etc Die reale Betriebsebene entspricht allen Hardwarekomponenten es findet ein Mapping also eine Zuordnung von logischen auf reale Betriebsmittel statt d h im Dateibaum des Systems entspricht die logische Ebene dev hda der realen Ebene der ersten Festplatte am ersten IDE Controller im System 5 2 2 Dateisysteme Festplatten k nnen mehrere Partitionen mit DS enthalten Genaueres zum Erstellen von Parti tionen und den notwendigen Befehlen finden Sie in Kapitel An dieser Stelle gen gt es zu wissen dass eine Partition wenn sie denn genutzt werden soll ein DS enthalten muss Andere Datentr ger und Wechselmedien wie CD ROMs DVDs USB Massenspeicher etc enthalten in der Regel auch DS Grunds tzlich muss man die unterschiedlichen DS die unter Linux nutzbar sind in verschiedene Kategorien aufteilen welche Attribute wie Journaling Einsatzgebiet wiederspiegeln Die Un terscheidung von welchem Betriebssystem bzw Hersteller dieses kommt spielt eher eine unterge ordnete Rolle da Linux wie bereits erw hnt flexibel mit verschiedensten DS von verschiedensten Herstellern umgehen kann Manchmal muss man hierbei allerdings Eins
93. emacht hat kann man s mtliche Mountpoints mittels mount a mounten Folgende Dateisystemtypen auszugsweise k nnen in der fstab verwendet werden auto Dateisystem automatisch bestimmen ext2 ext3 Linux ext2 bzw ext3 iso9660 CD ROMs DVDs nfs Network File System e ntfs WinNT NTFS 22 Mai 2005 56 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn AO e uius araar as 5 7 Partitionierung e reiserfs ReiserFS e smbfs SambaFS Windows Netzwerkverzeichnis e swap Swap Partition e udf Universal Disk Format DVDs CD RWs e usbdevfs USB Ger te proc bus usb e vfat Windows 9x Vfat FS 5 7 Partitionierung Die Festplatten Partitionierung vielleicht sollte man gleich zu Beginn erw hnen dass man mit dem Partitionieren viel kaputt machen kann auf einer Festplatte Man sollte sich jederzeit seines Handelns bewusst sein und nicht voreilig Partitionen anlegen l schen oder ver ndern denn so hat man schnell ein lauff higes Linux oder Windows System unbrauchbar gemacht 5 7 1 Organisation Partitionieren Organisieren In vielen PCs gibt es die Dateisystemorganisation betrachtet nur eine Partition worauf alle Daten gespeichert werden also Betriebssystemdaten Benutzerdaten und Anderes In Windows Systemen ist dies typischerweise das Laufwerk C Wird in einem Windows System nun eine zweite Festplatte installiert und formatiert so werden Laufwerksbuchstaben wie D E usw h
94. en Vordergrund holen so gen gt es dies mittels Eingabe von fg jobnummer zu tun 6 5 Daemons Die meisten Systemdienste welche in einem Linuxsystem laufen werden ber Daemons realisiert Daemons sind Programme welche beim Systemstart ber verschiedene Skripte gestartet werden und dann im Hintergrund laufen um Dienste anzubieten Viele Netzwerk Services sind typische Dameons welche auf einem spezifischen Port lauschen ob Anfragen hereinkommen so lauscht z B der sshd SSH Daemon auf Port 22 Jede Anfrage wird vom Daemon gehandelt angefangen vom Einloggen bis hin zum Anbieten verschiedenster Dienste Weitere typisch Daemons welche laufen k nnen sind z B e dhcpd Daemon um DHCP Anfragen zu beantworten e httpd Webserver z B Apache e inetd der Internet Superdaemon siehe weiter unten e telnetd Telnet Serverdienst e pppd PPP Dienst Point to Point Protocol e Ipd Printerdienst 6 5 1 inetd Damit nicht unn tig viel Daemons im System laufen welche nicht st ndig ben tigt werden gibt es das Konzept des inetd des Internet Superdaemons Anstatt dass viele einzelne Daemons st ndig laufen f r Netzwerkdienste l uft nur der inetd als einziger Daemeon welcher auf alle ben tig ten Portnummern lauscht z B f r SSH Telnet FTP Kommt nun eine eingehende Anfrage herein z B f r SSH so wird der entsprechende sshd gestartet und die Anfrage an diesen weiter gereicht So wird sichergestellt dass nur die Ressourcen auc
95. en an den erzeugten Code anf gen e Wall Ausgabe detailierterer Warnungen e std Angabe des zu verwendenden Sprachstandards mit std c99 wird z B der iso9899 1999 verwendet traditional verwende ANSI C Standard Weitere Beispiele gcc Wall g3 meinesource c o meinlaufendesprogramm Die Sourcedatei meinesource c wird wie oben kompiliert und gelinkt Zudem werden durch die Verwendung des Paramters Wall detaillierte Warnungen zus tzlich f r folgende F lle ausgegeben e es werden Arrays mit Indizes vom Typ char definiert oder verwendet entspricht dem Param ter Wchar subscrips e es wurde der Beginn eines verschachtelten Kommentars gefunden entspricht dem Paramter Wcomment 22 Mai 2005 106 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn 9 2 grep e inkorrekt formatierte printf und scanf Aufrufe entspricht dem Paramter Wformat e Funktionen oder Paramter wurden implizit definiert entspricht dem Paramter Wimplicit e Funktionen sind ohne oder mit falschen R ckgabewert definiert entspricht dem Paramter Wreturn type e Warnung bei switch Anweisungen die Aufz hlungstypen verwenden bei denen nicht alle Wer te des Aufz hlungstyps auftreten entspricht dem Paramter Wswitch e Warnug wenn Debugging Informationen f r C Templates nicht zur Verf gung stehen entspricht dem Paramter Wtemplate debugging e Variabeln wurden nicht initialisiert entspricht dem Paramter Wunitialized e
96. en soll Belassen Sie diese Einstellung wie vorgegeben Return dr cken Danach werden Sie zur Eingabe einer Passphrase aufgefordert Sie wir zur Verschl sselung des privaten Schl ssels ben tigt Hier sind Sonderzeichen Leerzeichen und nummerische Werte erlaubt Damit die Authentifizierung per RSA funktioniert m ssen Sie jetzt Ihren ffentlichen Schl ssel auf den Server kopieren und in authorized keys umbenennen Wechseln Sie zun chst in das Ver zeichnis in dem der ffentliche Key abgelegt wurde Benutzen Sie dann folgendes Kommando zum kopieren 22 Mai 2005 126 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn e id 10 4 scp ranmstein H ssh keygen t rsa Generating public private rsa key pair Enter file in which to save the key fxootf sshfid rea Enter passphrase empty for no passphrase DEE Same passphrase again pur identification has been saved in root ssh id rsa Your public key has been saved in root ssh id_rea pub The key fingerprint is b3 1d3 24 120 d9 5f 87 111 108 70 8b 37 08 98 a8 2f rootliramstein rammstein E Abbildung 10 4 Aufruf von ssh keygen scp id_rsa pub user Zielrechner home user ssh authorized_keys Bitte beachten Sie dass Sie hier Ihren Benutzernamen auf dem entfernten Rechner angeben zudem muss das Verzeichnis ssh in Ihrem Benutzerverzeichnis auf dem entfernten Rechner be reits existieren Sie werden zur Eingabe des Passwortes aufgef
97. enannten Komponenten von Linux zus tzliche Software sammeln dies aufeinander abstimmen und dann vertreiben 2 1 1 Die Geschichte von Linux Nachdem Sie jetzt einen kleinen Einblick bekommen haben was sich hinter dem Begriff Linux verbirgt soll in diesem Abschnitt der Ursprung von Linux beleuchtet werden Die Geschichte von Linux beginnt eigentlich im Jahre 1991 Um aber die Entstehungsgeschichte von Linux ganz zu verstehen muss man sich in das Jahr 1969 begeben Dieses Jahr war der Startschuss f r das Betriebssystem Unix dem Linux wie bereits angedeutet ziemlich hnlich ist Das Betriebsystem UNIX Unix entsprang ironischerweise einem gescheiterten Projekt Zu Beginn des Jahres 1969 gab es ein Gemeinschaftsprojekt des Massachusetts Institute of Technology MIT General Electric und den Bell Labs von AT amp T dass Ideen f r eine neue Generation von Betriebssystemen gesammelt hatte und daran ging diese Ideen unter dem Namen Multics umzusetzen Da weder Zeitplan noch Budget eingehalten werden konnten zog sich Bell Labs sehr schnell aus dem Projekt zur ck Ken Thompson und Denis Ritchie zwei Mitarbeiter von Bell Labs die an Multics mitgearbeitet hatten waren von den Einf llen und Erfahrungen die sie mit Multics gesammelt hatten so beein druckt dass sie kurzerhand eine abgespeckte Version des urspr nglichen Multics selbst schrieben und unter dem Namen Unics sp ter UNIX in die Welt setzten Witzigerweise war ei
98. endig 10 2 4 FTP Clients Neben der Moglichkeit FTP Server komfortabel Uber einen Internetbrowser zu nutzen existiert eine Vielzahl von FTP Clients Dies sind Programme mit denen FTP komfortabel meisst in der Art eines Dateimanagers genutzt werden kann Kerstin Rossek amp Silke Wacker 123 22 Mat 2005 Der letzte Unix Kurs vor der Auto Ahn 10 3 ssh o ctas FTP Clients f r Linux e kbear e gFIP FTP Clients f r Windows e CuteFTP Home e Total Commander 10 2 5 Anonyme FTP Server Es gibt eine gro e Anzahl von FT P Servern die auch einen anonymen Zugang zulassen In diesem Fall ist das Login anonymous und das Passwort die eigene eMail Adresse 10 3 ssh ssh Secure Shell ist ein Protokoll auf dessen Basis der SSH Dienst aufsetzt Standardm ig erfolgt die Kommunikation via SSH ber Port 22 Secure Shell bietet vollen Zugriff auf das Datei system und alle Funktionen eines entfernten Rechners Die Kommunikation findet verschl sselt statt Aus diesem Grund bietet sich ssh als Ersatz f r telnet an Im Augenblick existieren 2 Varianten des SSH Protokoll SSH1 x und SSH 2 x Die beiden Versio nen sind miteinander inkompatibel In der SSH1 x Version sind einige konzeptionelle Schw chen enthalten die einen Angriff auf eine SSH Verbindung erlauben Aus diesem Grund sollte stets die neuere Variante des Protokolls verwendet werden 10 3 1 Kommunikation mit ssh Die Kommunikation mittels SSH sichert 3 Sc
99. enge Tipparbeit sparen man kann Aliase f r beliebige Befehle oder Befehlsfolgen vergeben und ist dabei so gut wie nicht eingeschr nkt Aliase kann man zur Laufzeit definieren oder in der Datei bashrc wo diese beim Start einer neuen Bash Shell automatisch geladen werden Wenn man einfach nur den Befehl alias auf der Bash angibt so bekommt man alle bereits eingerichtete Aliase angezeigt Will man selbst einen Alias definieren so kann man das ganz einfach tun hier einige Beispiele e alias 1 ls lisa dieser Alias w rde bei Aufruf von l den Befehl 1s lisa ausf hren e alias loginserv ssh alex linuxserver muppets heimnetz de wird man den Ali as loginserv aufrufen so w rde automatisch eine SSH Verbindung zum entsprechenden Server aufgebaut 7 3 Variablen Variablen spielen eine wichtige Rolle in einem Linux System seien es Variablen f r Pfade f r Programme Variablen zur Shell Programmierung oder f r andere Dinge 7 3 1 Variablen Setzen und Lesen Eine Zuweisung an eine Variable erfolgt mittels Name Wert Auf beiden Seiten des Zeichens d rfen dabei keine Leerzeichen stehen Um auf den Wert einer Variable zuzugreifen bedient man sich Variable Man kann sich den Wert einer Variable auch wieder ausgeben lassen mittels echo also z B echo Variable Weiterhin sind auch Felder Arrays m glich Feld 2 12345 echo Feld 2 Kindprozesse haben normalerweise keinen Zugriff auf Variablen des Vater
100. er ffentlicht All diesen Standardisierungsversuchen blieb der Durchbruch verwehrt Erfolg hatte dagegen das GNU Projekt welches am Anfang der 80er Jahre am MIT begonnen wur de Sein Ziel war es von Grund auf ein neues UNIX hnliches Betriebssystem zu schreiben das frei verf gbar sein sollte Bis Ende der 90er Jahre entstand eine beachtliche und leistungsstarke Samm lung an UNIX Werkzeugen Auch wenn das System bislang nicht vollst ndig ist konnten sich die GNU Werkzeuge dennoch auf vielen UNIX Varianten etablieren So wurden die GNU Werkzeuge ein system bergreifender Quasi Standard Die Entwicklungsmethode des GNU Projektes hatte er reicht woran die propriet ren Standardisierungsversuche bislang gescheitert waren Auch von akademischer Seite wurde der immer zugekn pfteren Haltung der UNIX Vertreiber be gegnet Wie bereits zu Anfang beschrieben wurde der Quellcode von UNIX durch AT amp T gegen nominelle Geb hren den Universit ten zur Verf gung gestellt Dieser Code wurde vielerorts in Tutorials als Beispiel f r die Arbeitsweise eines Betriebssystems verwendet Nachdem AT amp T je doch den Quellcode unter Verschluss brachte fiel diese M glichkeit weg Andrew S Tanenbaum Informatik Professor an der Freien Universit t Amsterdam entschloss sich daher f r seine Studen ten eine eigene Version von UNIX zu schreiben die nichts mit dem urheberrechtlich gesch tzten Code von AT amp T zu tun hatte Nach zwei Jahren harter Arbeit brac
101. er Baumstrukturartigen Liste auf und entspricht so dem Aufruf von ps f In Abbildung sehen wir beispielhaft einen solchen Baum pstree p Die am h ufigsten gebrauchten Optionen von pstree e a zeige Kommandozeilenargumente an mit welchen Prozesse aufgerufen wurden e c Zusammenfalten von identischen Unterb umen verhindern e h hervorheben der Hostorie des momentanen Prozesses e n sortieren nach PID e p Anzeige aller Prozesse mit PID Befehl top hnlich zum Kommando ps erzeugt top eine st ndig aktualisierende Ansicht aller laufenden Prozes se Dies kann zur forlaufenden Kontrolle eines Prozesses sehr hilfreich sein Beim standardm igen Aufruf von top wird die Anzeige alle 5 Sekunden aktualisiert und die am rechenintensivsten Prozes se werden zuerst aufgef hrt Weiterhin werden eine Reihe Zusatzinformationen wie CPU Status Speicherinformationen uvm angezeigt Abbildung 6 5 Die am h ufigsten gebrauchten Kommandozeilen Optionen von top e d Delay Anzahl der Sekunden zwischen den Updates 22 Mai 2005 76 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto hn o C 6 4 Prozesskontrolle e i Idle Prozesse ignorieren also nur Prozesse anzeigen welche aktiv sind e n Anzahl der Iterationen wie oft Anzeige upgedated wird anstatt unendlich zu laufen danach beenden von top e s secure Modus manche Optionen im interaktiven Modus k nnen gef hrlich sein diese Optio
102. erwacht in Ihrem Zustand ge ndert oder gel scht Manchmal passiert es eben auch dass Prozesse sterben oder anderweitig au er Kon trolle geraten und dann harmlose oder weniger harmlose Effekt ausl sen Genau an dieser Stelle setzt dieses Kapitel an n mlich vom Grundlegenden Verst ndnis von Prozessen aus bis hin zur berwachung und Kontrolle Die folgenden Punkte sind der Inhalt dieses Kapitels die hier genannten Befehle stellen nur eine bersicht ber die wichtigsten Befehle der nachfolgenden Kapitel dar In den jeweiligen Kapiteln werden auch weitere wichtige Befehle aufgezeigt e 6 1 Basics Konzept von Programmen Prozessen Tasks e Prozesszustande e 6 3 Pipes Ein Ausgabeumleitung e 6 4 Prozesskontrolle Befehle ps pstree top kill e Daemons e 6 6linit d rc d 6 1 Programme Prozesse 6 1 1 Programme und Prozesse Programme sind ausf hrbare Dateien welche z B auf der Fesplatte gespeichert sind Kerstin Rossek amp Silke Wacker 67 22 Mai 2005 6 1 Programme Prozesse Qe etna nin Prozesse dagegen sind Instanzen eines Programms d h ein Programm wird geladen und im Hauptspeicher des PCs ausgef hrt es befindet sich in Ausf hrung Prozesse werden oftmals auch als Tasks bezeichnet Dies kann man durchaus als Synonym f r Pro zesse benutzen Allerdings sei an dieser Stelle gesagt dass Linux ein Multitasking Betriebssystem ist in welchem Prozesse parallel laufen k nnen M
103. es Verzeichnisses etc aus allerdings S ohne Unterverzeichnisse e du csh home gibt Summary c f r alle Unterverzeichnisse in home aus 5 8 3 fsck file system check Mittels fsck k nnen bereits aufgetretene und vorhandene Inkonsistenzen im Dateisystem aufge sp rt und beseitigt werden Dabei ist fsck ein Frontend f r Programme wie fsck ext2 oder fsck ext3 Vergleich Kapitel 5 7 mkfs Eine wichtige Information welche auf eine Partition geschrieben wird ist die Superblock Information Der Superblock ist Block 1 der Partition und enth lt wichtige In formationen Wenn der Superblock durch auftretende Fehler zerst rt ist kann fsck diese wieder herstellen Dazu wird der Superblock bereits beim Anlegen des Datesystems redundant im Datei system abgelegt i d R alle 8192 Blocks also ist die erste Kopie bei 8193 die zweite bei 16385 usw zu finden Kerstin Rossek amp Silke Wacker 65 22 Mai 2005 db Der letzte Unix Kurs vor der Auto hn 5 8 Dateisystem Integritat o C i M gliche Aufrufe von fsck e fsck Optionen t Typ DS Optionen Dateisysteme allgemeine Syntax des Befehls e fsck dev hda3 checkt das Dateisystem auf dev hda3 wenn Dateisystem clean aussieht wird check abgebrochen e fsck f dev hda3 checkt das Dateisystem auf dev hda3 f force d h auch wenn DS Clean aussieht wird check gemacht e fsck vf dev hda3 dasselbe wie fsck f dev hda3 jedoch mit erweiterter Anzeige
104. et bezogen werden k nnen erfordert die Zusammenstellung einer aktuellen Distribution eine Menge Zeit und Know how Ein gutes Installationsprogramm allein das auch programmiert und gewartet werden muss ist den Preis einer Distribution oft schon wert Es kann von allem Linux bzw Unix Neulingen eine Menge Zeit bei der Installation und Konfiguration ersparen Auch die Produktion von einer oder mehreren CD ROMs oft begleitet von einem Handbuch kostet Geld Nicht zu vernachl ssigen ist schlie lich das Angebot eines pers nlichen Supports bei Installa tionsproblemen Teuer wird eine Distribution auch dann wenn kommerzielle Software mitgeliefert wird Die richtige Linux Distribution Die Frage welche Distribution die beste sei welche wem zu empfehlen sei artet leicht in einen Glaubenskrieg aus Wer sich einmal f r eine Distribution entschieden und sich an deren Eigenheiten gew hnt hat steigt nicht so schnell auf eine andere Distribution um Ein Wechsel der Distribution ist nur durch eine Neuinstallation m glich bereitet also einige M he Kriterien f r die Auswahl einer Distribution sind die Aktualit t ihrer Komponenten achten Sie auf die Versionsnummer des Kernels und wichtiger Programme etwa des C Compilers die Qualit t der Installations und Konfigurationstools der angebotene Support mitgelieferte Handb cher etc Dass die meisten Kerstin Rossek amp Silke Wacker 13 22 Mai 2005 A e Der letzte Unix Kurs v
105. f hrt Danach erfolgt der Aufbau des Steuerkanals ber TCP Port 21 und des Datenkanals ber TCP Port 20 ber den Steuerkanal werden ausschlie lich FTP Kommandos bertragen Die ei gentlichen Daten Dateien flie en ber den Datenkanal FTP Server Steuerkanal Port 71 FTP Client a MMAa B Datei 1 Datei 1 Datei 2 Datei 2 Datei 3 Datenkanal Port 20 Datei 3 i i i Datei 4 Datei 4 Abbildung 10 2 Schematische Darstellung einer FTP Verbindung Nach Abschluss der Daten bertragung wird die Verbindung durch den Benutzer oder nach einem Timeout durch den Server wieder beendet Die Fehlerkontrolle wird bei der Kommunikation via FTP vollst ndig dem TCP Protokoll berlassen 10 2 2 Verwendung des Kommandos ftp Im folgenden soll die Verwendung von ftp auf Kommandoebene erl utert werden Sie k nnen die Verbindung zu einem FTP Server auf verschiedene Arten aufbauen Folgende Wege sind m glich e ftp Es wird lediglich die ftp Konsole ge ffnet Die Verbindung zum FTP Server m ssen Sie noch mit dem Befehl open herstellen e ftp ferner_Rechner Der Rechnername ist bereits angegeben ftp wird versuchen eine Verbindung zu dem Rechner aufzubauen Benutzer und Passwort werden noch abgefragt Kerstin Rossek amp Silke Wacker 121 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 10 2 fip A e ftp Benutzer ferner_Rechner Eine Verbindung zum fernen _ Rechner wird aufgebaut und der Benutzer wird bereits bergeben Das Pas
106. f in select then until while f I e unddas Zeilenendezeichen A 722050 ES Abbildung 7 3 Bash Sonderzeichen 20 7 1 6 Quotierung Enthalten Datei oder Verzeichnisnamen doch einmal Sonderzeichen so kann man deren Bedeu tung durch Quotierung ausschalten e Fluchtsymbol Backslash entwertet das unmittelbar folgende Sonderzeichen e Hochkomma in Hochkommata eingeschlossener Text verliert seine Sonderbedeutung e Anf hrungszeichen innerhalb von Anf hrungszeichen behalten nur das Dollarzeichen Hochkomma und Backslash ihre Sonderbedeutung Kerstin Rossek amp Silke Wacker 87 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 7 1 Kommandozeile o C l 7 1 7 Erweiterungen Bei Erweiterungen muss man unterscheiden zwischen Wildcards und Klammererweiterungen Wildcards Alle in der Kommandozeile eingegebenen Worte werden durchsucht nach den Zeichen Falls eines der Zeichen gefunden wird wird das Wort als Muster f r einen Pfad oder Verzeichnisnamen genommen e passt auf alle Zeichenketten einschlie lich der leeren Zeichenkette e passt auf ein einzelnes Zeichen e passt auf alle in den eckigen Klammern angegebenen Zeichen dabei k nnen auch Be reiche angegeben werden wie z B 0 9 oder a z Beispiel hat man im aktuellen Verzeichnis die Dateien Buch Tuch Z b a bach berg buch dann wird folgenderma en erweitert e 1s b ch gt bach buch e A Z uch gt Buch Tuch e
107. fische Primitive Punkte Linien Rechtecke und Text und stellt die Netzwerkverf gbarkeit der oberen Schichten bereit Window Manager Der Window Manager ist ein Programm welches auf X aufsetzt und f r die Verwaltung der Fenster zust ndig ist d h er erm glicht das Wechseln zwischen Fenstern das Verschieben von Fenstern das Schlie en von Fenstern etc Wichtig f r das Verst ndnis ist dass diese Aufgaben vom Window Manager und nicht von X selbst erledigt werden und dass die Funktionsweise daher nicht einheitlich sondern vom Window Manager abh ngig ist Applikationen Die sogenannten X Applikationen bedienen Funktionen die durch die unterliegen den Komponenten bereitgestellt werden Ein Beispiel f r eine X Applikation ist das Programm xman welches bereits unter Bl Hilfe unter Linux vorgestellt wurde Die X Applikationen als auch der zuvor angef hrte Window Manager sind die Komponenten mit denen der Benutzer interagiert X selbst stellt keine Benutzeroberfl che zur Verf gung Wie bereits schon beim Gliederungspunkt X Server angedeutet ist der X Server und damit auch die darauf aufsetzenden Komponenten im Netzwerk verf gbar d h man kann eine X Applikation oder den jeweiligen Window Manager auf einem entfernten Rechner aus hren und die Ergebnisse Fenster etc auf dem lokalen Rechner an dem man arbeitet darstellen Zum Vergleich Eine derartige Funktionalit t wird beim Microsoft Windows Betriebssystem erst seit
108. fordern nach erfolgreichen Login k nnen sie ganz normal in der Konsole arbeiten N tzliche telnet Befehle e Strg Z h lt telnet an open host port ffnet eine Verbindung zu einem Telnet Server e close schlie t die laufende Telnet Sitzung und kehrt in den Befehlsmodus zur ck e status zeigt den aktuellen Status von telnet an e quit schlie t alle offenen Telnet Sitzungen und beendet das Programm 10 1 3 Nachteile von Telnet Der Datenverkehr inklusive der bermittlung von Login und Passwort erfolgt bei Telnet unver schl sselt im Klartext Das Telnet Protokoll ist also extrem unsicher Es empfiehlt sich daher die Verwendung von ssh siehe Kapitel 10 3 ssh bietet die selbe Funktionalit t wie telnet der Datenverkehr ist allerdings verschl sselt 22 Mai 2005 120 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto hn 10 2 ftp 10 2 ftp Der ftp Dienst basiert auf dem gleichnamigen FTP Protokoll File Transfer Protocol Das FTP Protokoll ist mit seiner Entstehung im Jahr 1971 das lteste Protokoll des Internet Mit Hilfe von ftp k nnen Sie zwischen zwei auch r umlich weit entfernten Rechnersystemen Daten austauschen Die bertragung findet nach dem Client Server Prinzip statt Das Betriebssystem der beiden miteinander kommunizierenden Rechner spielt dabei keine Rolle 10 2 1 Kommunikation via FTP Zu Beginn jeder FTP Verbindung wird zun chst eine Authentifizierung des Benutzers durchge
109. g reicher Eingabe eines Befehls Der Kommandomodus erm glicht das schnelle Durchf hren gr erer nderugen im zu editierenden Text zum Beispiel das L schen von 5 Zeilen ab der Cursor Position 5dd Zeilenmodus Operationen auf Datei Ebene zum Beispiel das Speichern der nderungen an der gerade ge ffneten Datei w sind in diesem Modus m glich Abbildung 8 4 gibt Ihnen nochmal einen berblick ber die vorgestellten Modi in Form eines Graphen Kerstin Rossek amp Silke Wacker 101 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 8 2 Modi amp Kommandos o i n Kommandomodus Start von vi Jeder Tastendruck wird als Teil ZB r dd u eines Befehls interpretiert ZB i a A o Befehl ausgef hrt O R C Z B sw q Zellenmodus Ausgel st durch Befehle die meist Einf gen berschreibe Sr fiig Uberschreiben mit einem Doppelpunkt beginnen ausgel st durch ausgel st durch Sie werden in der letzten Bild schirmzeile eingegeben i aA00 R C Abbildung 8 4 Die Modi des Editor vi 20 8 2 2 Wichtige Befehle im Kommandomodus Die folgende bersicht Abbildung 8 5 stellt eine Auswahl der wichtigsten Befehle im Komman domodus dar 8 2 3 Wichtige Befehle im Zeilenmodus Die folgende bersicht Abbildung 8 6 stellt eine Auswahl der wichtigsten Befehle im Zeilenmodus dar Wichtig f r das fl ssige Arbeiten mit dem Editor vi ist der gewohnte Umgang
110. g entgegenzuwirken wurden von verschiedenen Seiten Standards f r UNIX spezifiziert AT amp T versuchte 1984 nach der Wandlung zu einem gew hnlichen Wettbewerber einen Standard zu schaffen V entspricht r misch 5 also System Five gesprochen 1985 brachte AT amp T die System V Interface Definition heraus Dieses Dokument stellte ein Standard f r die UNIX Schnittstellen dar Zus tzlich enthielt es auch eine Menge Werkzeuge die 22 Mai 2005 4 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto hn dees l 2 1 Begriffskl rung ein System auf die Konformit t mit dem Standard V berpr fte Diese von AT amp T im Jahre 1983 freigegebene Version UNIX System V war zu dieser Zeit die dominierende Version Sie stellte den Versuch seitens AT amp T dar die Hersteller auf einen Standard zu einen Wegen des Widerstandes der unter anderem dadurch entstand dass man sich nicht von einer einzigen Firma abh ngig ma chen wollte entstanden im Laufe der Zeit andere Standards so z B POSIX Portable Operating System based on UNIX Weil AT amp T alle Rechte an dem Namen UNIX hatte wurde vom Institute of Electrical and Electronic Engineers IEEE dieser Name f r diesen Standard gew hlt Ein ande res Beispiel hierf r ist X Open Das X Open Konsortium ist ein Zusammenschluss verschiedener Computerhersteller die einen De Facto Standard schaffen wollten 1988 wurde der X Open Por tability Guide v
111. g von Lotus Domino Notes an und propagiert seine Linux Strategie 01 10 2000 KDE 2 0 erscheint IBM k ndigt f r 2001 Investitionen in Linux in der H he von einer Milliarde US Dollar an Sun ver ffentlicht den Quellcode von StarOffice unter der LGPL Lesser GPL und legt damit den Grundstein f r OpenOffice 01 11 2001 Die Kernelversion 2 4 erscheint Der Kernel unterst tzt bis zu 64 Gbyte Ar beitsspeicher und 64Bit Dateisysteme Ebenso werden die USB Schnittstelle und das Journaling Filesystem JFS unterst tzt Linux ist portiert auf den IBM Grofrechner Series ehemals AS 400 Kerstin Rossek amp Silke Wacker 7 22 Mai 2005 3 e Der letzte Unix Kurs vor der Auto Ahn 2 1 Begriffsklarung manta S 01 12 2002 Das OpenOffice Projekt bringt OpenOffice in der Version 1 0 auf den Markt Es ist ein komplettes Office Paket mit Textverarbeitung Tabellenkalkulation Pr sentationsmodul und l uft nicht nur unter Linux Der Open Source Browser Mozilla wird nach vier Jahren in der Version 1 0 ver ffentlicht Auch bei den Desktops wird die n chste Runde eingel utet KDE 3 0 erscheint im Fr hling GNOME 2 0 zur Jahresmitte 13 01 2003 Linus Torvalds wechselt von seinem bisherigen Arbeitgeber Transmeta in das Open Source Development Lab OSDL Dort wird er in Zukunft auch beruflich seine Zeit der Ar beit am Linux Kernel widmen Linux findet zusehends Verbreitung auf Embedded Systemen Der M nchener Stadtrat hat sich
112. ger 1 Hang Up dieses Signal wird automatisch gesendet wenn man sich ausloggt von einer Konsole oder eine Modemeinwahl unterbricht e SIGINT Integer 2 Interrupt Stop der Ausf hrung z B durch Ctrl C e SIGKILL Integer 9 Kill sofortiges unkontrolliertes Stoppen des Prozesses dieses Signal kann nicht ignoriert werden vom Prozess z B durch den Befehl kill e SIGTERM Integer 15 Terminate wenn m glich sanft d h der Prozess wird gefragt ob er sich selbst kontrolliert beenden kann e SIGTSTP Integer 20 Stop der Ausf hrung Bereitmachen f r sp teres Fortf hren also so eine Art Pause z B durch Ctrl Z Die komplette Liste der Signale finden Sie unter man 7 signal 6 3 Streams Umleitungen Pipes 6 3 1 Unix Streams Ein Grundlegendes Konzept von Unix Linux wurde bereits in Kapitel besprochen alles im System ist eine Datei Alles das sind u a Festplattenlaufwerke und deren Partitionen CD DVD Laufwerke Tapes Terminals z B die Konsole Serielle Parallele und andere Schnittstellen Maus Kerstin Rossek amp Silke Wacker 71 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 6 3 Streams Umleitungen Pipes oan cts once Tastatur uvm All diese Elemente werden als Datel gemappt und diese Eigenart macht das Hand ling und die Interaktion zwischen diesen Elementen sehr flexibel da Schnittstellen standardisiert sind Eine Festplatte beispielsweise angesprochen als Bloc
113. gs noch eine weitere Datei brief finanzamt txt im selben Verzeichnis so wird per Druck auf die Tabulator Taste nur erg nzt auf less brief_ und nichts weiter Durch einen schnellen zweimaligen Druck auf die Tabulator Taste werden alle m glichen Dateien angezeigt welche auf less brief _ passen eben die beiden Dateien 7 1 4 History das Ged chtnis der Kommandozeile Jeder Befehl den man eingegeben hat wird automatisch in der Datei bash_ history gespei chert meist per Voreinstellung 500 1000 Befehle Man kann einfach auf diese History zugreifen 22 Mai 2005 86 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn 7 1 Kommandozeile entweder ber den eingebauten bash Befehl history welcher alle gespeicherten Befehle in einer nummerierten Liste darstellt Will man auf Befehle zugreifen welche man erst vor kurzem einge geben hat so bieten sich die folgenden Tastenkombinationen an Joder I Bl ttern in der Kommandozeilen History sc zurersten gespeicherten Kommandozeile Esc zur letzten gespeicherten Kommandozeile Abbildung 7 2 Bash History 20 7 1 5 Reservierte Worte und Zeichen mit besonderer Bedeutung In der Bash gibt es einige reservierte Worte und Zeichen welche eine besondere Bedeutung haben z B f r die Shellprogrammierung Diese Worte und Zeichen d rfen nicht in Dateinamen o benutzt werden case do done elif else esac fi for function i
114. gt werden welche meist ausschlie lich von diesem Benutzer genutzt werden Au erdem werden hier Dateien gespeichert die beispielsweise spezifische Einstellungen f r Applikationen beinhalten Jedem Benutzer kann zudem noch eine Arbeitsumgebung zugeordnet werden welche beim Anmel devorgang geladen wird Login Programm Dies kann eine Shell oder auch ein Display Manager sein 4 2 2 Benutzertypen Auf einem Linux System gibt es drei verschiedene Arten von Benutzertypen root Systemverwal ter Superuser Systembenutzer und Standardbenutzer root Der Benutzer root wird auch als Superuser bezeichnet Dem Benutzer root ist stets die UID 0 zugeordnet Er verf gt ber alle Rechte im System kann somit auch s mtliche nderungen an der Konfiguration vornehmen Es gibt Prozesse Programme in einem Linux System die stets mit der Kennung von root ausgef hrt werden Ein Beispiel hierf r ist der Prozess init Der Prozess init ist der erste Prozess der stets nach dem Booten eines Linux System als erster ausgef hrt wird und die Kontrolle bernimmt init initialisiert alle weiteren Prozesse Um dies zu gew hrleisten ben tigt es weitreichende Rechte und wird deshalb mit der Kennung des Benutzers root ausgef hrt Weiteres zum init Prozess finden Sie in Kapitel 6 6 init d Die Tatsache das root ber alle Rechte verf gt hat nicht nur Vorteile Man kann eine Installation nicht nur administrieren sondern auch zerst ren wenn man als root
115. gute kommen Ziel der Entwickler von GNU und Linux war es also ein System zu schaffen dessen Quellen frei verf gbar sind und es auch bleiben Um einen Missbrauch auszuschlie en ist Software die im Sinne von GNU entwickelt wurde und wird durch die GNU General Public License GPL gesch tzt Hinter der GPL steht die Free Software Foundation FSF Diese Organisation wurde gegr ndet um qualitativ hochwertige Software frei verf gbar zu machen 22 Mai 2005 8 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto hn i dree l 2 1 Begriffskl rung GNU General Public License GPL Die Kernaussage der GPL besteht darin dass zwar jeder den Code ver ndern und sogar die resul tierenden Programme verkaufen darf dass aber gleichzeitig der Anwender beziehungsweise K ufer das Recht auf den vollst ndigen Code hat und diesen ebenfalls ver ndern und wieder kostenlos weitergeben darf Jedes GNU Programm muss zusammen mit der vollst ndigen GPL weiterge geben werden Durch die GPL gesch tzte Software ist also nicht mit Public Domain Software zu verwechseln die vollkommen ungesch tzt ist Die GPL schlie t damit aus dass jemand ein GPL Programm weiterentwickeln und verkaufen kann ohne die Ver nderungen ffentlich verf g bar zu machen Jede Weiterentwicklung ist somit ein Gewinn f r alle Anwender Die deutsche bersetzung finden Sie unter http www gnu de gpl ger html GNU Libary General Public License LGPL
116. h wirklich verbraucht werden welche ben tigt werden Jedoch macht dies nur Sinn bei sporadisch gebrauchten Diensten da jedesmal Kerstin Rossek amp Silke Wacker 79 22 Mai 2005 nde Der letzte Unix Kurs vor der Auto hn 6 6 init d der entsprechende Daemon neu gestartet werden muss Will man einen Apache Webserver betrei ben welcher stark frequentiert ist so ist es besser den httpd separat laufen zu lassen damit dieser Verbindungsanfragen selbst entgegennehmen kann F r die Konfiguration des inetd gibt es die Datei etc inetd conf dort findet das Mapping statt welcher Daemon f r welche Verbindungsanfrage benutzt werden soll Als Beispiel soll die Zeile f r einen FTP Server gen gen e ftp stream tcp nowait root usr sbin tcpd vsftpd Hier kann man deutlich sehen dass f r eingehende Verbindungsanfragen f r FTP der tcpd gestartet wird mit einem Handle f r vsftpd welcher einen FTP Server darstellt 6 6 init d 6 6 1 intit Init ist der Vaterprozess aller Prozesse Seine Hauptaufgabe ist es Prozesse zu generieren welche in dem Skript etc inittab hinterlegt sind Hier werden z B die Konsolen gestartet auf welchen man sich dann als Benutzer einloggen kann aber auch viele andere autonome Prozesse die f r den Betrieb des Systems notwendig sind Wird init als Befehl benutzt so kann man mit diesem den sogenannten Runlevel ndern d h Signale an den initd schicken damit dieser den Runlevel ndert 6 6
117. hnt Die Konfiguration von XFree86 erfolgt b licherweise mit der Datei etc X11 XFreeConfig Die Konfigurationsdatei darf sich jedoch an Kerstin Rossek amp Silke Wacker 133 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 11 2 XFree86 kl er ct or verschiedenen Orten befinden und unterschiedliche Namen haben Eine vollstandige Liste aller Verzeichnisse erhalten Sie auf der entsprechenden Man Page man XF86Config 4 Konfigurationshilfen Neben der g ngisten Methode zur Konfiguration unter Linux das Editieren der Konfigurationsdatei mit einem Text Editor vgl Editor vi werden je nach Distribution zus tzliche Werkzeuge zum Konfigurieren bereitgestellt die bei der Konfiguration mehr oder weniger Hilfestellung geben XFdrake Mandrake Linux Xconfigurator Red Hat Linux SAX2 SuSE Linux x86cfg xf86config Diese Konfigurationsprogramme sind Teil des X Basissystems und sollte daher unabh ngig von der Distribution zur Ver gung stehen Struktur der XF86Config Die Konfigurationsdatei in mehrere Abschnitte gegliedert die mit Section name beginnen und EndSection abgeschlossen werden Die wichtigsten Abschnitte sind wie folgt ServerLayout verbindet die Abschnitte Screen und InputDevices Mehrere ServerLayout Abschnitte k nnen beim Betrieb von mehreren Grafikkarten und Monitoren benutzt werden Files Dateinamen Dieser Abschnitt ist daf r vorgesehen Dateipfade zu Fonts und Farbi
118. hte er sein System unter dem Namen heraus Es war weniger f r die praktische Arbeit sondern in erster Linie als Lehrobjekt gedacht Dennoch wurde es von vielen Studenten auch praktisch auf dem heimischen PC eingesetzt da es im Gegensatz zu den kommerziellen UNIX Varianten f r einen moderaten Preis zu haben war Allerdings stie Minix in diesem Einsatzgebiet sehr schnell an seine Grenzen Viele seiner Anwender machten Tanenbaum Vorschl ge und schickten Patches f r Erweiterungen und Verbesserungen Tanenbaum allerdings war damit sehr zur ckhaltend Da er Minix in erster Linie als Tutorial sah kam es ihm mehr auf eine knappe und klare Struktur als auf eine m glichst umfassende Funktionalit t an Ein Minix Anwender mit Namen Linus Torvalds gab sich damit nicht zufrieden Das GNU System war bis auf den Kernel vollst ndig aber das Release des GNU Kernels mit Namen HURD schien noch auf sich warten zu lassen Um die zeitliche L cke bis dahin zu f llen begann er selbst einen Kernel zu schreiben der sehr rasch unter dem Namen Linux Verbreitung fand und eine gro e Entwickler und Benutzergemeinde zusammenbrachte Da die Kerstin Rossek amp Silke Wacker 5 22 Mai 2005 A e Der letzte Unix Kurs vor der Auto hn 2 1 Begriffsklarung ants S meisten Entwickler auf UNIX Varianten arbeiteten auf denen die GNU Werkzeuge liefen lag es nahe den Linux Kernel so einzurichten dass er zusammen mit den GNU Werkzeugen verwendet werden konnte
119. hwerpunkte ab e Authentifizierung Es wird sichergestellt dass der Kommunikationspartner auch tats chlich der ist f r den er sich ausgibt Hierzu pr ft SSH die Identit t von Server und Client 22 Mai 2005 124 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Autol Ahn lt pmmmsen 10 3 ssh e Verschl sselung Alle Daten werden verschl sselt ausgetauscht ssh unterst tzt z Zt die Algorithmen IDEA DES 3DES ARCFOUR und TSS Standardm ig wird IDEA benutzt Beim Verbindungs aufbau handeln die beiden Kommunikationspartner das verwendete Verschl sselungsverfah ren miteinander aus e Integrit t Es wird sichergestellt das alle gesendete Daten unver ndert beim Empf nger ankommen Manipulationen werden von SSH erkannt Client Serve Werbindungsanlrage ber TCP IP Pon 22 Prosokollversion Protokollversion Liste der unterst tzten Algonthmen 119550 Y 213411 Liste der unterst tzten Algorithmen Mitte Hellmann Zahl e Mine Hellmann Kahl d und digitale Signatur Authentifizierung Alb hier beginnt der Austausch der Nutzerdaten 1155 MUSSISA Abbildung 10 3 Schematische Darstellung der Kommunikation 10 3 2 Verbindung zu einem SSH Server herstellen SSH2 bietet zwei M glichkeiten um sich beim Verbindungsaufbau am Server zu authentifizieren Zum einen Passwort basiert und zum anderen RSA basiert Kerstin Rossek amp Silke Wacker 125 22 M
120. iert ist Dieser Scheduler teilt Prozessen Rechenzeit auf dem den real vorhandenen Prozessor en zu Dabei wird dynamisch reguliert hat ein Prozess gerade nichts zu tun so wird diesem Rechenzeit entzogen und einem anderen Prozess zugeteilt Ein anderes Modell ist z B das Zuteilen einer Maximal Zeit f r jeden Prozess Wenn ein Prozess dann eine bestimmte Rechenzeit berschreitet so wird diesem Prozessorzeit entzogen und eben einem Anderen zugewiesen Dabei ist es wichtig wie ein Prozess umgeschaltet wird in der Regel wird ein Prozess angehalten bzw weggeschaltet oder zur ckgestellt und ein anderer Prozess kommt an die Reihe Ist irgend wann der urspr ngliche Prozess wieder an der Reihe so wird dieser fortgesetzt an der Stelle wo er unterbrochen wurde Nat rlich ist es wichtig dass s mtliche Speicherinhalte welche dem Prozess zugeordnet waren zuerst gesichert wurden damit diese wieder genauso hergestellt werden k nnen Es gibt zwei Arten von Multitasking e kooperatives Umschalten cooperative multitasking beim kooperativen Multitasking wird vereinfacht gesagt die Kontrolle des Umschaltens also wann wie und wohin fast komplett den Anwendungsprogrammen berlassen Oftmals kommt es hier eben zu Timing problemen oder berschreibungen im Speicher bzw Prozesse h ngen einfach so dass die Betriebssysteme welche diese Art des Multitasking einsetzen oftmals h ngenbleiben oder abst rzen Beispiel Atari ST Risc OS W
121. igt beispielhaft Gnome 2 wie es bei SuSE Linux 9 0 Professional mitgeliefert wird beispielhaft deswegen weil auch 22 Mai 2005 142 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto hn o veus oraraa 11 5 Desktop Systeme Gnome eine Vielzahl von Anpassungsm glichkeiten bietet so dass es kein Standarderscheinungsbild f r Gnome gibt Auf den ersten Blick erkennt man die hnlichkeit zwischen KDE und Gnome Eine Zusammen f hrung dieser beiden Desktop Systeme w re eine sinnvolle L sung nach nderung der rechtlichen Lage jedoch kam diese viel zu sp t Gnome bietet eine nicht so breite Palette an eigenen Programmen wie man es bei KDE gewohnt ist Auf anderen Seite muss man aber auch beachten dass viele KDE Programme Gegenst cke mit erweiterter Funktionalit t zu bereits vorhandenen Open Source Programmen sind Grunds tze f r Gnome e Im Gegensatz zu KDE ist in Gnome zum Ausl sen von Icon Aktionen also etwa zum Start eines Programms meistens ein Doppelklick notwendig Eine Ausnahme stellen allerdings Icons im Panel dar Bei diesen Icons reicht ein einzelner Klick aus e Bei sehr vielen Programmen beziehungsweise Gnome Komponenten kann man mit der rech ten Maustaste ein Kontextmen aufgerufen werden e Fast alle Gnome Programme kommen mit Drag amp Drop zurecht Wenn Sie zus tzlich zur linken Maustaste die Strg Taste dr cken kopieren gleich das Objekt e Gnome sollten man ebenfalls
122. images bertr gt alle Dateien des Verzeichnisses images vom FTP Server ins aktuelle lokale Verzeichnis Das Unterverzeichnis images muss bereits lokal angelegt sein 22 Mai 2005 122 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn So san nun 10 2 ftp mput myimages bertr gt alle Dateien des lokalen Verzeichnisses myimages zum FTP Server Weitere n tzliche FTP Befehle e bye beendet die FTP Verbindung und schlie t das Programm auch quit m glich status zeigt den aktuellen Status von ftp an rmdir Verzeichnis l scht ein Verzeichnis auf dem FTP Server mkdir Verzeichnis erzeugt ein Verzeichnis auf dem FTP Server chmod Modus Datei ndert die Zugriffsrechte einer Datei auf dem FTP Server prompt schaltet die Abfragen f r die Befehle mget und mput an bzw aus lcd Verzeichnis wechselt das lokale Arbeistverzeichnis rename Alt Neu benennt eine Datei auf dem FTP Server um 10 2 3 FTP Server mit einem Internetbrowser nutzen Die meisten modernen Internetbrowser bieten die M glichkeit direkt auf FTP Server zuzugreifen Dateien k nnen mit Hilfe dieser Browser um einiges komfortabler bewegt werden Der Verbindungsaufbau erfolgt ber die Eingabe einer URL der folgenden Form ftp Benutzer Passwort Host Host ist dabei die Adresse des FT P Servers zB ftp suse de Bei FT P Servern die einen anonymen Zugang zulassen ist die Angabe von Benutzer und Passwort nicht notw
123. inbinden von Dateisystemen Mounten o entes dev hda3 ext3 defaults 1 1 dev hdal windows C ntfs ro auto users 0 0 dev hda2 swap swap pri 42 0 0 dev hdbi windows D vfat rw auto user exec 0 0 Diese Eintr ge mounten die verschiedenen Festplattenpartitionen von dev hda und dev hdb auf die jeweiligen Mountpoints im Dateibaum so z B auch die Swap Partition Hierbei wird f r jedes DS der DS Typ angegeben z B ntfs man kann stattdessen auch auto angeben wobei beim mounten versucht wird automatisch den Typ festzustellen Exemplarisch soll die Zeile f r das mounten der ntfs Partition von Windows genauer betrachtet werden e die Partition dev hdal wird auf den Mountpoint windows C mit Dateisystem Typ ntfs gemountet e hierbei werden weitere Optionen angegeben ro readonly also kann das Dateisystem nur gelesen werden user jeder User darf einen u mount auf das Dateisystem ausf hren e die zwei Ziffern am Ende der Zeile haben eher eine geringf gigere Bedeutung die erste Ziffer wird bei Systemdatentr gern auf 1 gesetzt sonst auf O Die zweite Ziffer gibt an in welcher Reihenfolge die Partitionen bei einem check berpr ft werden sollen f r Systemdatentr ger ist dies 1 f r sonstige Linux Partitionen 2 und alle anderen bekommen el 5 6 3 fstab Dateisystemtypen In der fstab kann man jederzeit weitere Eintr ge vornehmen um neue Dateisysteme zu moun ten Falls man neue Eintr ge g
124. indows95 Kerstin Rossek amp Silke Wacker 69 22 Mai 2005 i Der letzte Unix Kurs vor der Auto hn 6 2 Prozesszust nde e preemptives Umschalten cooperative multitasking auch Umschalten mit Verdrangung genannt die vollstandige Kontrolle Uber die Prozesszeiten werden vom Kern bzw Prozessor bernommen Prozesse k nnen also unfreiwillig stillgelegt bzw vom Prozessor verdr ngt werden Jedes moderne Betriebssystem wie Linux Unix Windows XP benutzt preemptives Multitasking 6 2 2 Prozesszust nde Damit das Umschalten auch funktioniert und die Prozesse angehalten und wieder fortgesetzt werden k nnen vom Scheduler muss es definierte Prozesszust nde geben Diese elementaren Zust nde stellen durch definierte berg nge sicher dass hier kein Prozess einfach so z B zum Geist werden kann Scheduler w hlt diesen Proze aus Scheduler w hlt einen anderen Proze aus Frozen wartet blockiert auf Eingabe Eingabe ist verf gbar Ei Abbildung 6 1 Elementare Prozesszust nde 20 Die zentralen Zust nde sind Rechnend Bereit und Blockiert Wartend Der Scheduler muss nun ausw hlen welcher Prozess als n chster zum Rechenzeit auf dem Prozessor zugewiesen bekommt dies ist der rechenbereite Prozess da nur dieser in Frage kommt Der Blockierte Prozess wartet z B auf eine Eingabe also macht es keinen Sinn dass dieser Rechenzeit zugeteilt bekommt Hat dieser allerdings sp ter dann eine Einga
125. ine Vielzahl von Programmen wie auch grep k nnen regul re Ausdr cke verarbeiten Im folgen den werden einige Vertreter der regul ren Ausdr cke kurz vorgestellt 22 Mai 2005 108 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn a 2 lt ommmenn l 9 3 Regul re Ausdr cke e Der Punkt symbolisiert ein beliebiges Zeichen e Der voranstehende Ausdruck ist optional er kann einmal vorkommen muss es aber nicht d h der Ausdruck kommt null oder einmal vor e Der voranstehende Ausdruck muss mindestens einmal vorkommen darf aber auch mehr fach vorkommen e der voranstehende Ausdruck darf beliebig oft auch keinmal vorkommen e n Der voranstehende Ausdruck muss exakt n mal vorkommen e min max Der voranstehende Ausdruck muss mindestens min mal und darf maximal max mal vorkommen e min Der voranstehende Ausdruck muss mindestens min mal vorkommen e Der Ausdruck passt auf einen Zeilenanfang steht am Zeilenanfang e Der Ausdruck passt auf eine Zeilenende steht am Zeilenende e Bereich Mit eckigen Klammern l sst sich eine Zeichenauswahl definieren Der Ausdruck in eckigen Klammern steht dann f r genau ein Zeichen aus dieser Auswahl Einzeichenmuster a m egh a 135 oder A Za z0 9 e Alternative j Ja passt auf j und Ja e d Passt auf Ziffern e D Passt nicht auf Ziffern e w Alle alphanumerischen Zeichen Buchstaben
126. inzelnen Berechtigungsklassen eingegangen werden Lesen Ist das Leserecht f r eine Datei gesetzt so kann diese durch ein Programm ge ffnet und interpre tiert gelesen werden Zum Ausf hren von Programmen welche ja letztendlich auch in einer Datei gespeichert sind muss das Leserecht nicht gesetzt sein Hierzu reicht das Recht zum Ausf hren Verzeichnisse nehmen hier eine gewisse Sonderrolle ein Da sie lediglich die Informationen ber die in ihnen enthaltenen Dateien und Unterverzeichnisse enthalten regelt hier das Leserecht ob diese Informationen z B durch den Befehl ls ausgelesen werden d rfen oder nicht Allerdings k nnen die Informationen einer Datei welche sich in einem Lesegesch tzten Verzeichnis befindet bei bekannten Dateinamen immer noch abgerufen werden Das Leserecht f r Verzeichnisse ist also unabh ngig von den Rechten der sich darin befindenten Dateien Schreiben Das Schreibrecht regelt wie aus dem Name schon zu erkennen ist ob Dateien Resourcen modi fiziert oder gel scht werden d rfen Ausf hren Das Ausf hren von Programmen kann mit diesem Recht kontrolliert werden Je nachdem ob der Benutzer das Recht zum Ausf hren besitzt kann das Programm ausgef hrt werden Kerstin Rossek amp Silke Wacker 39 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 4 5 Benutzerdateien d ssen Auch hier spielen Verzeichnisse eine gewisse Sonderrolle Ist das Ausf hrrecht f r ein Verzeichnis
127. inzugef gt der Benutzer muss nun wissen auf welchem Laufwerk er seine Benutzerdaten speichert Diese Einfachheit kann f r viele Benutzer von Vorteil sein andere Nutzer bevorzugen es jedoch dass man dies flexibler handhaben kann In Linux Systemen ist dies sehr viel flexibler handhabbar Ein Beispiel In einem Server gibt es f r Benutzerdaten also die Home Verzeichnisse der Benut zer eine Festplatte mit 10 GB Speicherplatz welche nach home gemounted ist Diese Festplatte wird nun langsam voll aufgrund exzessiven Nutzerverhaltens es wird bald mehr Speicherplatz be n tigt Die einfachste M glichkeit ist es f r den Server Administrator s mtliche Daten von der 10GB Festplatte auf eine neue Festplatte mit mehr Kapazit t zu kopieren und die neue Platte ein fach wieder unter home zu mounten Nat rlich muss vorher die alte 10GB Platte geunmounted werden Wenn der Benutzer nun beim n chsten Zugriff auf sein Home Verzeichnis ganz normal Kerstin Rossek amp Silke Wacker 57 22 Mai 2005 seit Der letzte Unix Kurs vor der Auto Ahn 5 7 Partitionierung e eta weiterarbeitet hat er von dieser Erweiterung der Kapazit t nichts mitbekommen da er wie ge wohnt unter seinem Home Verzeichnis weiterarbeiten kann Festplatten Ger te Namen Grundlegend muss man wissen wie Linux Festplatten und Partitionen auf Festplatten benennt dies folgt einem einfachen Schema F r IDE Festplatten gilt die folgende Reihenfolge e de
128. irefox firefox bin home alex firefox firefox bin hone alex firefox firefox bin hone alex firefox firefox bin usr bin ssh agent s bin bash ps x Abbildung 6 3 Ausgabe des Befehls ps zur Anzeige aller laufenden Prozesse des Users Die am h ufigsten gebrauchten Optionen von ps e a zeige alle im System laufenden Prozesse an auch die anderer User normalerweise werden nur die vom jeweiligen User angezeigt e f forest Modus Subprozesse werden in einer baumartigen Struktur an die Vaterprozesse angeh ngt e Langformat zeigt Priorit t Vater PID und andere Informationen an e u Userformat zeigt Benutzernamen und Startzeit der Prozesse an e w Wide Format sehr n tzlich f r die f Option da die Zeilen am Ende nicht abgeschnitten werden e x Prozesse anzeigen welche von keinem Terminal kontrolliert werden z B Systemprozesse wie Daemons Kerstin Rossek amp Silke Wacker 75 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 6 4 Prozesskontrolle Einige Beispiele zum Aufruf von ps e ps zeigt eine einfache Liste von Prozessen an welche dem aufrufenden User geh ren e ps aux zeigt eine Umfassende Liste aller Prozesse im System an inkl Startzeit und Usernamen e ps auxf dasselbe allerdings werden Subprozesse in einer Art Baumstruktur dargestellt Befehl pstree Dieser Befehl erzeugt eine Momentaufnahme aller aktiven Prozesse im System und listet diese in ein
129. ition von Linux Wechseldatentr ger enthalten andere DS CD ROMs aber auch DVDs enthalten das ISO 9660 Dateisystem Dieses Dateisystem ist von der International Standards Organization standardisiert und stellt das Standard Format dar Weitere Informationen zu DS gibt es unter http www linux ag de linux LHB node153 html 5 2 3 Inodes Inodes sind die Verwaltungseinheiten f r das Dateisystem eines Linuxsystems Jedes Objekt im Dateibaum hat ein entsprechendes Inode im Dateisystem d h alle Verzeichnisse Dateien aus dem Verzeichnisbaum haben einen Verzeichniseintrag im Dateisystem Inodes enthalten wichtige Informationen ber die Objekte e den Speicherort des Objekts auf der Festplatte e Zeitstempel der letzten nderung des Objekts e Sicherheitseinstellungen e Eigent mer Multiple Objekte im Dateisystem k nnen sich den selben Inode teilen dieses Konzept nennt man Linking Mehr dazu finden Sie in Kapitel 5 4 5 3 Befehle im Zusammenhang mit Dateien und Verzeichnissen Nachdem im vorangegangenen Kapitel der Dateibaum und Dateisysteme besprochen wurden feh len nur noch Befehle mit denen man navigieren Dateien lesen und ndern Verzeichnisse anlegen und l schen kann e cd ohne weitere Angaben wechselt in das Home Verzeichnis 22 Mai 2005 48 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto hn i A i eee vetus ora 5 3 Befehle im Zusammenhang mit Dateien und Verzeichni
130. iverse Programme und Ger te erlauben Standardm ig sind bereits Icons zum Beispiel f r Wechsellaufwerke CD ROM DVD ROM etc oder Open Office Office Anwendung falls installiert vorhanden Panel Das Panel siehe unterer Rand in Abbildung spielt eine zentrale Rolle bei der Be dienung von KDE und kann in seinen Funktionen mit der Task Leiste wie man sie von Microsoft Windows kennt verglichen werden Das KDE Startmen ber das man die in stallierten KDE Programme aufrufen kann wird ber das erste Symbol links im Panel meist das Symbol des KDE Project hier das SuSE Symbol aufgerufen Danach folgen Symbole von links nach rechts f r das eigene Home Verzeichnis die Kommandozeile das 22 Mai 2005 140 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn o vorus oraa i 11 5 Desktop Systeme KDE Help Center den Konqueror Dateimanager amp Browser und KMail KDE eigener Email Client Danach folgt der Pager Umschalter der es erm glicht zwischen mehreren virtuellen Desktops zu wechseln standardm ig vier In der Mitte findet sich die Taskbar Fensterleiste in der die laufenden Programme angezeigt werden Auf der rechten Seite des Panel finden sich Symbole f r KDE eigene Programme die st ndig im Hintergrund bereitstehen Abbildung 11 4 Klipper KAMix SuSEPlugger und kscd und eine Uhr Konsole Konsole Abbildung Mitte unten ist ein Kommandozeilen Emulator f r KDE Er besitzt
131. ix 6 Auflage Kerstin Rossek amp Silke Wacker 22 Mai 2005 e Der letzte Unix Kurs vor der Auto BAhn A Literaturverzeichnis eens cts once 21 Kofler Michael Linux Installation Konfiguration und Anwendung Addison Wesley 6 Auf lage 2001 An imprint of Pearson Education 22 Stroetmann Karl TCL Skript Vorlesungsskript Berufsakademie Stuttgart 2003 23 Weber Roland Betriebssysteme Vorlesungsskript Berufsakademie Stuttgart IBM Deutsch land Entwicklung 2004 22 Mai 2005 II Kerstin Rossek amp Silke Wacker
132. kdevice tiber dev hda wird durch eben diese Ger tedatei repr sentiert Das gegebene Interface l sst es zu dass mittels einfachen Systembe fehlen wie z B dd von dieser Festplatte ein komplettes Backup in eine Datei also ein sogenanntes Image gemacht werden kann Ein anderes Beispiel w re z B ein Programm welches von der Konsolendatei z B dev ttyx eine Eingabe erwartet d h wenn jemand auf dieser Konsole tippt werden die Zeichen sofort zum Programm umgeleitet Dieses Mapping bernimmt der Kernel Unter Unix Streams versteht man die F higkeit von Objekten ihre Ein und Ausgaben auf stan dardisierte Art und Weise zu verkn pfen Diese F higkeit wird von der Shell zur Verf gung gestellt Wird also ein Programm gestartet so hat es automatisch drei Deskriptoren file descriptors in Abbildung 6 2 sieht man eine bersicht ber den Aufbau der Standard I Os Tastatur Ger t can fcansnle Output eines anderen N Input eines anderen eines andere Programms Programms stderr x a oo console Datei anderes Programm Abbildung 6 2 Standard I O eines Programms DO e stdin Standard Input Standardeingabe dieser Deskriptor ist ein Text Eingabe Stream standardm ig wird dieser aufs Keyboard gemappt wenn man also eine Eingabe macht wird dies von Programmen welche eine Eingabe erwarten ausgewertet Bei vielen Programmen ist stdin auch ein oder mehrere Kommandozeilenargument e welche Dateien Verzeichnis
133. ktion Der Verzeichnisbaum wird ab dem angegebenen Parameter rekursiv durchsucht Gefunden werden die Dateien f r die der Paramter Test erf llt ist 9 7 1 N tzliche Paramter e name Muster findet eine Datei deren Name dem Muster entspricht e iname Muster findet eine Datei deren Name dem Muster entspricht ohne Unterscheidung von Gro und Kleinschreibung e user Name findet Dateien deren Eigent mer der Benutzer Name ist e group gname findet Dateien die zu der mit gname angegebenen Gruppe geh ren size Nk findet Dateien die gr er als N Kilobyte sind type f type d findet nur regul re Dateien oder nur Verzeichnisse e mtime 3 findet Dateien die seit 3 Tagen nicht mehr ver ndert wurden print gibt die gefundenen Dateien und Verzeichnisse mir ihrem kompletten Pfad aus e empty sucht alle leeren Dateien und Verzeichnisse Kerstin Rossek amp Silke Wacker 115 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 9 8 Weitere Kommandos eee vieus oc 9 7 2 Aktionen Gibt man keine Aktion an so werden die Namen der gefundenen Dateien ausgegeben M chte man jedoch Aktionen durchf hren so sieht das Format wie folgt aus find exec Befehl Im Befehl wird durch den jeweils gefundenen Dateinamen ersetzt 9 7 3 Beispiele find HOME print Listet alle Dateien und Unterverzeichnisse des Homeverzeichnisses auf find projekt name menue user student print Listet alle Dateien des Verzei
134. ktion 3 Bibliotheks Aufrufe sind die Schnittstelle f r den norma len High Level Programmierer Es sind Funktionen aus den Programm Bibliotheken wie zum Beispiel der libc vgl C Programmiersprache e Spezialdateien Sektion 4 Die sogenannten Devices werden in dev gef hrt Es sind die Schnittstellen von real existierenden Ger ten zum Beispiele CD ROM Laufwerke oder Fest platten zum Betriebssystem Dies ist eines der tragenden Elemente von Linux Systemen Auf sehr elegante Weise werden die Ger te dabei einfach als normale Dateien angesprochen e Dateiformate und Konventionen Sektion 5 In dieser Sektion findet man haupts chlich Konfigurationsdateien aller Art Sie wird sicherlich am meisten von Linux Administratoren verwendet e Spiele Sektion 6 In dieser Sektion findet man die Man Pages von Spielen die von den meisten Linux Distributionen standardm ig mitgeliefert werden e Makro Packages und Konventionen Sektion 7 Wenn man als Entwickler kompatibel mit anderen arbeiten will wird man oft in dieser Gruppe nachsehen ob bereits ein Konsens auf breiter Basis f r ein Problem oder eine Arbeitsweise geschaffen wurde Dies ist auch die wichtigste Gruppe wenn man tiefer in die Geheimnisse der Man Pages eindringen will Denn das Fundament des Man Formats bildet das Makro Package groff e System Management Kommandos Sektion 8 Programme f r den Systemverwalter der sogenannte root die aber einschneiden
135. leine Steuerungsfenster oben rechts in der Abbildung GA ber das man mit der Schaltfl che Help eine Hilfetext zur Bedienung von xman angezeigt werden kann Die Schaltfl che Manual Page f hrt zum gr eren Fenster oben links in der Abbildung in dem die gew nschte Man Page angezeigt werden kann xman bietet nicht die M glichkeit den gew nschten Begriff gleich beim Aufruf zu bergeben wie es bei man der Fall ist ber den Men punkt Options oben links im Manual Page Fenster k nnen Sie die Ansicht so ndern wie sie in der Abbildung zu sehen ist Show Both Screens Der Men punkt Sections erlaubt die direkte Auswahl einer Sektion Im oberen Teilfenster werden dann die entsprechenden Eintr ge dieser Sektion aufgelistet Durch einen Maus Klick auf einen Eintrag wird die dazugeh rige Man Page im unteren Teilfenster angezeigt Das interessanteste Men kommando ist Search unter dem Men punkt Options Damit kann rasch eine bestimmte Information gesucht und an gezeigt werden 3 2 Hilfesuche Am Ende des letzten Abschnitts wurde bereits eine Methode vorgestellt wie man Hilfe zu einer bestimmten Problemstellung findet ohne Kenntnis eines konkreten Befehls vgl man k In diesem 22 Mai 2005 26 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn i So san nun 3 2 Hilfesuche Abschnitt werden noch zwei weitere Befehle vorgestellt die sehr hilfreich bei der
136. lke Wacker und Kerstin Rossek Alcatel SEL AG Vorarbeit Alexander Rasl IBM Deutschland GmbH Alexander Wettley Agilisys Falk Winthuis IBM Deutschland GmbH Kerstin Rossek amp Silke Wacker 1 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 2 Einordnung or sammen 2 Einordnung Das folgende Kapitel Einordnung soll Ihnen ein berblick ber die Eigenschaften und Entste hungsgeschichte von Linux geben Des Weiteren wird Linux gegen eine Auswahl aktueller Betriebs systeme abgegrenzt Abschlie end werden hier der Zweck und die Aufgaben eines Betriebssystems ausf hrlicher betrachtet Die folgenden Punkte sind Inhalt dieses Kapitels e 2 1 Was ist Linux Geschichte Lizenzen Distributionen e 2 2 Abgrenzung Betriebssysteme e 2 3 Aufgaben und Aufbau eines Betriebssystems 2 1 Begriffskl rung Es soll hier zun chst einmal gekl rt werden was man unter dem Begriff Linux eigentlich ver steht Prinzipiell ist mit dem Begriff Linux nur der Kernel allg Betriebssystemkern gemeint also der Teil des Systems der z B die Ressourcen f r die laufenden Programme und die Anwen der verwaltet Obwohl der Kernel ein essentieller Teil des Systems ist w re er ohne zus tzliche Software nutzlos Um diesen Kernel zu nutzen ist weitere teilweise sehr systemnahe Softwa re notwendig also das eigentliche Betriebssystem Beide Teile zusammen bilden ein vollwertiges Betriebssystem Derzeit wird in den meis
137. mando gt datei Standardausgabe in Datei umleiten Datei wird berschrieben e kommando 1 gt datei Standardausgabe in Datei umleiten Datei wird berschrieben e kommando 2 gt datei Standardfehlerausgabe in Datei umleiten e echo Dies ist das Ende gt gt datei schreibt Dies ist das Ende an Ende der Datei kommando gt datei 2 gt amp 1 leitet stdout und stderr in datei um kommando gt dateil 2 gt datei2 leitet stdout in dateil und stderr in datei2 um 6 3 3 Pipes Aus der Sichtweise eines Programms macht es keinen Unterschied ob die Standardeingabe von der Konsole oder aus einer Textdatei kommt Genauso ist es einem Programm relativ egal ob Kerstin Rossek amp Silke Wacker 73 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 6 4 Prozesskontrolle es seine Standardaushabe auf eine Konsole oder in eine Datei schreibt Als Erweiterung dieser Idee ist es m glich die Standardausgabe eines Programms mit der Standardeingabe eines anderen Programms zu verkn pfen und ist somit ist ein Spezialfall einer Redirection Erreicht wird dies mittels einer Pipe Dabei kann man auch mehr als zwei Programme miteinander pipen in diesem Fall wird der Textfluss auch Pipeline genannt Die Fehlerausgabe mittels stderr kann auch f r alle Programme in Dateien umgeleitet werden siehe Redirection e kommando1 kommando2 leitet stdout von kommandol in stdin von kommando2 um e ko
138. maximal ein Benutzer am System angemeldet sein und mit dem Betriebssystem arbeiten Netzwerkf higkeit Schon sehr fr h wurden die UNIX Kernel mit einem TCP IP Stack ausge stattet und bildeten schnell das R ckgrat des damals noch jungen Internets Plattformunabh ngigkeit Die meisten Betriebssysteme damals und auch noch heute waren auf einen bestimmten Prozessortyp zugeschnitten und diese Abh ngigkeit setzte sich in den Programmen fort Automatisierung Zahlreiche Aufgaben lassen sich unter UNIX sehr einfach automatisieren 1984 trennte sich AT ET von etlichen Tochterfirmen womit auch ihr gestattet wurde sich als ge w hnlicher Wettbewerber auf dem Computermarkt zu bet tigen Damit wurden auch Lizenzgeb h ren f r UNIX drastisch angehoben und der Zugang zum Quellcode mehr und mehr eingeschr nkt Die Folge war dass die Kooperation zwischen den Firmen die UNIX kommerziell vermarkteten immer mehr zur ckging und jeder in seiner UNIX Version seine eigenen Erweiterungen und Ver besserungen einbaute bis UNIX heillos in unterschiedliche Versionen aufgesplittert war SunOS von Sun HP UX von Hewlett Packard AIX von IBM Ultrix von Digital Sinix von Siemens auch Mircosoft versuchte sich auf dem UNIX Markt mit Xenix Ein gro er Vorteil die leichte Portierbarkeit der UNIX Programme drohte mit dieser Zersplitterung zu verschwinden und viele Stimmen prophezeiten auch ein mittelfristiges Ende von UNIX Um dieser Entwicklun
139. mit den verschie denen Modi und deren Kommandos Probieren Sie ruhig das ein oder andere Kommando aus um ein wenig Routine im Umgang mit diesem Editor zu bekommen Weitere Dokumentation zum Editor vi finden Sie unter http www vim org docs php 22 Mai 2005 102 Kerstin Rossek amp Silke Wacker amp Qas aw Uni wo as Sun 82 Modi amp Kommandos Ope RO Eingabemodus Zeichen werden ar aktueller Cursorpostion eingegeben Eingabemodus Zeichen werden nach aktueller Position eingegeben Eingabemodus Zeichen werden am Ende der Zeile angeh ngt Eingabemodus der Rest der Zeile wird durch den neuen Text ersetzt gt Eingabemodus nach der aktuellen Zeile wird neue Zeile eingef gt Eingabemodus vor der aktuellen Zeile wird neue Zeile eingef gt gt Eingabemodus berschreibt den alten Text berschreibt ein einzelnes Zeichen l scht das aktuelle Zeichen l scht die aktuelle Zeile und stellt sie in den Puffer l scht bis zum Ende des aktuellen Wortes und stellt es in den Puffer nimmt den letzten Befehl zur ck undo h ngt die folgende Zeile an die aktuelle an kopiert eine Zeile in einen Puffer f gt Puffer vor bzw nach dem Cursor ein springt an den Dateianfang springt ans Dateiende zeigt die Position innerhalb der Datei an Ep steht der Cursor aufeiner Klammer so springt er daraufhin zur korrespondie renden Klammer wiederholt den letzten Befehl wechselt in den Zeilenmodus Abbildung 8 5
140. mmandol lt eingabendatei 2 gt fehlerdateil kommando 2 gt fehlerdatei2 kommando3 diese etwas komplexere Reihenfolge zeigt dass man recht einfach kommandos pipen und die Fehlerausgabe in Dateien umleiten kann als Status dieser Pipeline wird der Status des letzten Programms angenommen Einige Beispiele f r Pipes els wc 1 z hlt die Anzahl der Objekte in einem Verzeichnis und gibt die Zahl aus e ls alF more zeigt den Verzeichnisinhalt Seitenweise an e grep 70771 kundendatensatz less zeigt eine scrollbare Liste aller Zeilen der Dateien an welche mit 70771 beginnen und deren Dateinamen mit kundendatensatz beginnen 6 4 Prozesskontrolle Prozesskontrolle beinhaltet zum einen das berwachen von Prozessen und deren Zust nde und zum anderen das Senden von Signalen an diese Prozesse um deren Zustand zu beinflussen bzw einen Prozess komplett zu beenden 6 4 1 berwachung von Prozessen Zur berwachung dienen drei Kommandos welche auf jedem Unix Linuxsystem vorhanden sind und welche nun im Einzelnen vorgestellt werden 22 Mai 2005 74 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto hn 6 4 Prozesskontrolle Befehl ps Dieser Befehl erzeugt eine Momentaufnahme aller aktiven Prozesse im System und listet diese in einer Liste auf so z B in Abbildung 6 3 f r den Benutzer ps x alex gonzo gt ps x PID 1340 1359 1376 1379 1382 1385 1393 1395 140
141. mu txt findet Zeilen welche mit einem Punkt beginnen grep x 4 lugmu txt findet eine Zeichenfolge mit vier x 9 4 gzip und gunzip Mit den beiden Kommandos gzip und gunzip k nnen Sie Dateien komprimieren und wieder aus packen 9 4 1 gzip gzip komprimiert die angegebenen Dateien mit der Lempel Ziv Codierung LZ77 dabei werden Zugriffsrechte und Zeitstempel der Dateien beibehalten Symbolische Links werden durch gzip ignoriert gzip 9 index html start html Mit diesem Befehl komprimieren sie die Datei index html und start html Als Ergebnis erhalten Sie die Dateien index html gz und start html gz Die Dateien werden also umbenannt indem die Endung gz angehangen wird Der Parameter 9 gibt dabei den Grad der Komprimierung an hier sind Werte zwischen 9 und 1 erlaubt wobei 9 f r die beste Komprimierung und 1 f r die schlechteste aber auch schnellste Komprimierung steht gzip 9 r sources Mit diesem Befehl k nnen sie alle Dateien des Verzeichnisses sources rekursiv komprimieren gzip t index html gz Kerstin Rossek amp Silke Wacker 111 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 9 4 gzip und gunzip A Dieser Befehl pr ft die gepackte Datei index html gz auf Fehler Weitere Parameter q unterdr ckt alle Meldungen f erzwingt die Durchf hrung der Komprimierung keine R ckfrage wenn z B symbolische Links vorliegen e r komprimiert rekursiv den Inhalt eines Verzeichnisses
142. n formationen hinzuzuf gen InputDevice Mehrere Abschnitte diesen Typs werden verwendet um mindestens die Tas taur und die Maus einzubinden Monitor In diesem Abschnitt werden die Leistungsmerkmale des benutzten Monitors spe zifiziert Device In diesem Abschnitt wird die Grafikkarte und das entsprechende Modul f r den X Server spezifiziert Screen Dieser Abschnitt verkn pft Monitor und Device Abschnitte In den Unterab schnitten werden die erlaubten Bildschirmaufl sungen definiert Mehrere Screen Abschnitte k nnen f r die Verwaltung mehrerer Monitor Device Paare verwendet werden 22 Mai 2005 134 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto hn 11 2 XFree86 Abbildung zeigt beispielhaft den Inhalt der XF86Config Zur besseren Darstellung sind nur die wesentlichen Inhalte enthalten section Berverlayout Idenkifier Layout all InputDevice Keyboard nl Coreh yboard InputDevic Bouse 1 CorsPoint r Ser n Borsen 0 End ck ion section Files End Seck ion section Input Devic Driver Key Identifier Rond cet ion section InputDevice Driver mous Identifier kuss III Det ion Device dev mous Det ion Protocol imps 27 Endsect ion Section Monitor HorizByne 31 68 Identifier Honitor 0 Hod Iams 1024 7658455H2 Vendordlam gt VESA YVertEefresh 50 55 Endsect ion
143. n Weg an welche Datei oder Verzeichnis gemeint ist Jedes Objekt im Dateibaum kann so eindeutig angespro chen werden Beispiel f r einen absoluten Pfad welcher auf die Datei Kapl tex von Benutzer anja zeigt ist home anja Texte Kap1 tex e relative Pfade ausgehend vom aktuellen Verzeichnis in welchem man sich befindet wird ein Pfad angegeben Befinden wir uns z B im Moment im Unterverzeichnis Texte des Benutzers anja und wollen auf die Datei a out Verweisen so ist der Pfad Prog a out Es gibt Abk rzungen f r bestimmte Verzeichnisse e steht f r das Home Verzeichnis e bezeichnet das aktuelle Verzeichnis e bergeordnetes Verzeichnis Man kann also ohne sein Verzeichnis zu verlassen Dateien im gesamten Dateibaum ansprechen Die einzelnen Elemente dieser Pfadangaben werden jeweils durch einen slash abgetrennt Um sich Tipparbeit auf der Kommandozeile zu ersparen kann man mit der Tabulator Taste jederzeit automatisiert Datei oder Verzeichnisnamen erg nzen Kerstin Rossek amp Silke Wacker 43 22 Mai 2005 a Der letzte Unix Kurs vor der Auen 5 1 Dateisystemhierarchie o caia dev home a out Ces jH rit usr 1 local bin var y 5 spool Abbildung 5 1 Verzeichnisbaum eines Linuxsystems Ein Beispiel hierzu befindet man sich im Verzeichnis anja und will in das Unterverzeichnis Texte wechseln so gen gt es den Befehl cd T einzugeben und danach die Tabulator Taste z
144. n deaktiviert diese Einige Optionen im interaktiven Modus von top e Ctrl L Bildschirm neu aufbauen e h Hilfe anzeigen e k kill eines Prozesses also beenden PID muss nach Druck auf k eingegeben werden e n Anzahl der zu zeigenden Prozessen ndern es muss eine Integer Zahl eingegeben werden Standard ist 0 e q Beenden des Programms e s Delay zwischen den Updates es k nnen auch Bruchwerte angegeben werden z B 0 5 6 4 2 Beeinflussung Beeinflussen von Prozessen Zum Beeinflussen von Prozessen stehen mehrere Befehle zur Verf gung Weiterhin kann ber die Shell auch das Verhalten von Prozessen beeinflusst werden Befehl kill Dieser Befehl wird benutzt um einen Prozess zu beenden Genauer gesagt sendet der Befehl kill ein gew nschtes Signal an einen Prozess um diesen entweder auf sanfte oder harte Weise zu beenden vgl Kapitel 6 2 Das Signal kann entweder mit Namen angegeben werden z B kill SIGTERM oder mittels des entsprechenden Integer Wertes z B kill s 15 Mittels kill 1 kann man sich eine Liste ausgeben lassen mit allen m glichen Signalen Wenn ein kill Befehl an einen Prozess geschickt wird so werden i d R auch seine Kindprozesse beendet Im Standardaufruf mit kill PID also unter Angabe der Prozess ID wird versucht den Prozess auf eine sanfte Art und Weise zu beenden und zwar mittels SIGTERM Hiermit wird dem Prozess Zeit gegeben sich kontrolliert zu beenden d h wenn z B
145. n m chten deren Code sie nicht ver f fentlichen wollen Kerstin Rossek amp Silke Wacker 9 22 Mai 2005 P Der letzte Unix Kurs vor der Auto Ahn 2 1 Begriffsklarung nants A e F r einige Programme gelten Doppellizenzen Beispielsweise k nnen Sie den Datenbank Server MySQL f r OpenSource Projekte beziehungsweise f r die innerbetriebliche Anwen dung gem der GPL kostenlos einsetzen Wenn Sie hingegen ein kommerzielles Produkt auf der Basis von MySQL entwickeln und mit MySQL verkaufen m chten ohne Ihren Quellcode zur Verf gung zu stellen kommt die kommerzielle Lizenz zum Einsatz Das bedeutet dass die Weitergabe von MySQL in diesen Fall kostenpflichtig wird e Andere Programme sind dediziert kommerziell obwohl auch in solchen F llen die kosten lose Nutzung meist zul ssig ist Ein bekanntes Beispiel ist der Adobe Acrobat Reader zum Lesen von Dokumenten im PDF Format Zwar ist das Programm unter Linux kostenlos erh ltlich und darf auch in Firmen kostenlos eingesetzt werden aber der Quellcode zu diesem Programm ist nicht erh ltlich Manche Distributionen kennzeichnen die Produkte bei denen die Nutzung oder Weiterentwicklung eventuell lizenzrechtliche Probleme verursachen k nnte So befinden sich bei SuSE Linux alle der artigen Programm Pakete in der Serie pay oder werden nicht mitgeliefer z B Grafikkartentreiber von NVidia Bei Debian Linux werden solche Pakete gleich gar nicht mitgeliefert oder sie befi
146. n vielen Plattformen ausbreiten 01 06 1996 Mit der neuen Version 2 0 des Linux Kernels k nnen nun mehrere Prozesse gleich zeitig angesteuert werden Linux verliert langsam seinen Bastlerstatus und wird zu einer ernst zu nehmenden Alternative f r Firmen 01 07 1997 Nun erscheinen w chentlich neue aktualisierte Versionen des Linux Kernels Ver schiedene namenhafte Firmen beginnen ihre Software auf Linux portieren Netscape seinen Webbrowser Applixware seine Office Anwendung und die Software AG ihre Datenbank Ada bas D Damit gibt es immer mehr kommerzielle Software Pakete f r Linux 01 08 1998 Das Desktop Projekt KDE wird gestartet Es arbeiten etwa 750 Programmierer am dieser heute am weitesten verbreiteten Desktopumgebung Viele namenhafte Hardware und Softwarehersteller k ndigen die Portierung ihrer Produkte auf Linux an Darunter finden sich Firmen wie IBM und fusionierte im Jahr 2002 mit Hewlett Packard die Linux als Betriebssysteme auf ihren Computern unterst tzen Informix bernommen durch IBM im Jahr 2001 und Oracle entwicklen ihre Datenbanken fortan auch unter Linux Netscape gibt die Quellen seines Webbrowsers frei und l sst die zuk nftige Entwicklung durch das Mozilla Projekt vorantreiben 01 09 1999 Die Kernelversion 2 2 erscheint Sie verf gt ber einen verbesserten SMP Support und einen berarbeiteten Netzwerkcode Ein neues Desktop Projekt mit dem Namen ME wird begonnen IBM k ndigt die Portierun
147. nal startet e Login Shell etc profile bash_ profile bash_ login profile e Nicht Login Shell bashrc ndert man nun was an einer der Dateien so muss man sich immer bewusst sein dass man bei einer Login Shell sich erneut einloggen muss damit die nderungen g ltig werden Bei einer Nicht Login Shell gen gt es ein neues Terminalfenster zu starten Nun stellt sich noch die Frage in welcher Datei man was ndert Will man z B Pfadvariablen PATH f r alle Benutzter Systemweit ndern so bietet sich die etc profile an Will man nur Benutzerpfade f r einzelne Benutzer oder sich selbst ndern so kann man das auch in den anderen genannten Dateien tun Etwas schwieriger wird es bei Aliasen Aliase siehe Kapitel sollten unabh ngig davon sein ob es sich um eine Login Shell handelt oder nicht Deswegen definiert man am besten Aliase doppelt sowohl in der den Datei en der Login Shells als auch der Datei der Nicht Login Shell F r genauere Infos hier ber empfiehlt sich 21 S 891 7 2 Kommandos 7 2 1 Wichtige Shell Kommandos In der Bash gibt es eine Anzahl bereits eingebauter Kommandos d h diese Programme m ssen nicht extern ausgef hrt werden sondern sind bereits innerhalb der Shell enthalten e alias legt ein Synonym fest z B f r Befehle Kerstin Rossek amp Silke Wacker 89 22 Mai 2005 Der letzte Unix Kurs vor der Auto hn 7 2 Kommandos or sammen e bg fg bringt ein Programm in den Hinte
148. nd Systementwicklung Turbo Linux Diese von der Firma Pacific High Tech PHT zusammengestellte Distribution wurde speziell f r die Verwendung in Asiatischen Raum optimiert und ist dort nach eigenen Angaben Marktf hrer Die Distribution ist aber auch in einer englischen Version erh ltlich Minimal Distributionen Neben diesen gro en Distributionen gibt es im Internet einige Zu sammenstellungen von Miniatursystemen bis hin zum kompletten Linux System auf einer einzigen Diskette Diese Distributionen basieren zumeist auf alten und daher kleineren Kernel Versionen Sie sind vor allem f r Spezialaufgaben konzipiert etwa f r Wartungsarbei ten oder um ein Linux System ohne eigentliche Installation verwenden zu k nnen direkt von einer oder mehreren Disketten oder einer CD ROM DVD ROM Das ist praktisch wenn Sie Linux vorr bergehend auf einen fremden Rechner nutzen m chten dessen Festplatte Sie nicht neu partitionieren wollen oder d rfen Zwei gute Beispiele f r Linux Distributionen diesen Types ist das Linux Router Project Auf einer einzigen Diskette sind alle Programme vorhanden um einen alten 486er PC in einen Router f r ein kleines Netzwerk umzuwan deln und KNOPPIX Eine recht vollwertige Distribution die sich von einer CD ROM oder DVD ROM starten l t und das vorhandene System meist vollst ndig erkennt Einen ziemlich guten berblick ber die momentan verf gbaren Linux Distributionen egal ob kommerziellen
149. nden sich im Verzeichnis non free Im Allgemeinen k nnen Sie davon ausgehen dass Sie alle Programme die Sie mit einer Linux Distribution erhalten haben auch kostenlos nutzen d rfen Es ist aber nicht immer so dass Sie davon abgeleitete eigene Produkte ohne weiteres weiterverkaufen d rfen Wenn Sie Software Entwickler sind m ssen Sie sich in die bisweilen sehr verwirrende Problematik der unterschiedlichen Software Lizenzen einarbeiten 2 1 3 Distributionen Als Linux Distribution wird eine Einheit bezeichnet die aus dem eigentlichen Betriebssystem Ker nel und systemnahe Software und seinen Zusatzprogrammen besteht Eine Distribution erm glicht eine einigerma en rasche und bequeme Installation unter Linux Alle Distributionen werden in der Form von CD ROMs oder auch DVD ROMs verkauft Die meisten Distributionen sind dar ber hinaus auch im Internet verf gbar Wegen der riesigen Datenmengen Hunderte von Megabytes bis hin zu mehreren Gigabytes ist das Kopieren einer Distribution via Internet oder eine direkte Installation ber das Netz aber zumeist nur in Universit ten bzw Firmen mit Breitbandanbindung an das Internet m glich Allerdings ist es auch m glich Zuhause per DSL in einer relativ kurzen Zeit mehrere Stunden eine Distribution bers Internet zu installieren Die Distributionen unterscheiden sich vor allem durch folgende Punkte voneinander 22 Mai 2005 10 Kerstin Rossek amp Silke Wacker Der letzte
150. ndere f r die Verwendung als Server sehr beliebt weil Sicherheits Updates oft rascher verf gbar sind als bei anderen Distrbutionen Auch legt die Firma Red Hat bei der Auswahl von Paketen und Versionen f r eine Distribution ein gr eres Augenmerk auf Stabilit t anstatt einfach die aktuellste verf gbare Versionen mitzuliefern Im Vergleich zu anderen Distributionen sind die Konfigurationshilfen allerdings un bersicht lich organisiert und zum Teil schwierig zu bedienen Red Hat ist also nicht unbedingt die optimale Distribution f r Linux Einsteiger Die Bezeichnung Red Hat Linux beschreibt allerdings nur noch die kommerziell vertriebene Distribution Die Fedora Community ist f r das Fedora Core Linux zust ndig welches von der letzten frei verf gbaren Red Hat Distribution abgeleitet wurde e Slackware Die Slackware war eine der ersten verf gbaren Linux Distributionen Bez glich Wartung und Installationskomfort kann sie allerdings nicht mehr mit den anderen hier ge nannten Distributionen mithalten Viele Slackware Anwender bevorzugen ihre Distribution aber gerade deswegen weil das Augenmerk eher auf Kontinuit t und Stabilit t denn auf sch ne Installations und Konfigurations Tools gelegt wird e Storm Linux Diese Distribution ist von Debian abgeleitet bietet aber attraktivere Installations und Konfigurationstools als diese Jedoch ist seit April 2001 die Homepage vom Distributor Stormix Technologies inaktiv Die Distributi
151. ne Anzahl von Dateien f r die Arbeit an einem gemeinsamen Projekt ben tigen Mitglied einer Benutzergruppe sein ber welche die Zugriffsrechte gesteuert werden Mit dem Kommando groups k nnen Sie sich die Benutzergruppen anzeigen lassen in denen der Benutzer mit dem Sie ange meldet sind Mitglied ist 4 3 1 Benutzergruppen verwalten Wie bei der Verwaltung von Benutzern stellen auch bei der Verwaltung von Benutzergruppen die meisten Distributionen eigene Tools zur Verf gung An dieser Stelle wird wieder auf die Komman dos eingegangen die ber die Shell ausgef hrt werden k nnen Auch zur Verwaltung der Benut zergruppen muss man nat rlich ber die entsprechenden Rechte verf gen Benutzergruppe anlegen Mit dem Kommando groupadd k nnen neue Benutzergruppen angelegt werden Der Befehl groupadd ba F gt dem System die Benutzergruppe ba hinzu Benutzergruppe modifizieren Mit dem Befehl Kerstin Rossek amp Silke Wacker 37 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 4 4 Benutzerklassen Berechtigungsklassen lt pmumses groupmod ba n ba_stuttgart ndert den Namen der Benutzergruppe ba in ba stuttgart Benutzergruppe l schen Mit dem Befehl groupdel ba_stuttgart wird die Benutzergruppe ba_ stuttgart wieder gel scht Bitte beachten Sie das auf keinen Dateien bzw Verzeichnisesn mehr die Gruppen ID der zu l schen den Benutzergruppe verkn pft sein darf Zudem darf kein Benutzer im System
152. ne Hauptmo tivationen f r UNIX jedoch ein Spiel das Thompson in seiner Freizeit geschrieben hatte UNIX gewann sehr schnell eine gro e Verbreitung innerhalb der Bell Labs AT amp T war es aufgrund ei ner kartellgerichtlichen Entscheidung verwehrt beliebig im kommerziellen Feld t tig zu werden so auch im Falle von UNIX Stattdessen lizensierte AT amp T UNIX gegen nominelle Geb hren an Universit ten an denen UNIX seinen ersten Siegeszug antrat Eine besondere Rolle kam dabei der University of California in Berkeley zu die einen eigenen Zweig des UNIX Systems hervorgebracht hat die Berkeley Software Distribution BSD Sie war eng mit dem Quellcode von AT amp T verwoben zur Verwendung ben tigte man also ebenfalls eine Lizenz Kerstin Rossek amp Silke Wacker 3 22 Mai 2005 A e Der letzte Unix Kurs vor der Auto hn 2 1 Begriffsklarung ants A von AT amp T UNIX zeichnete sich durch Eigenschaften aus die heute selbstverst ndlich sind aber zu dieser Zeit recht neu waren Ein hierarchisches Dateisystem Die ersten DOS Versionen von Mircosoft aus den 80er Jahren halten dies noch nicht Multitasking Bei den Betriebssystemen Microsoft Windows und Apple MacOS war man erst in der zweiten H lfte der 90er Jahre auf dem Weg dorthin Multi User F higkeit Selbst die aktuelle Version von Mircosoft Windows XP kann zwar meh rere Benutzer verwalten wie auch der Vorg nger Windows 2000 aber es kann zu jedem Zeitpunkt
153. nen in der Datei etc shadow abgelegt und durch ein spezielles System besser gesch tzt 22 Mai 2005 40 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn messen 4 5 Benutzerdateien Die Passw rter werden im folgenden Format abgelegt Benutzername Passwort DOC MinD MaxD Warn Exp Dis Res e Benutzername Benutzername Login e Passwort verschl sseltes Passwort oder bedeuten kein Passwort e DOC Tag der letzten Passwort nderungen Format Tage seit 1 1 1970 e MinD Tage die das Passwort minimal g ltig ist e MaxD Tage die das Passwort maximal g ltig ist e Warn Anzahl der Tage die vor Ablauf des Passwortes ab der gewarnt werden soll e Exp Anzahl Tage die das Passwort trotz Verfall noch g ltig ist e Dis Bis zu diesem Tag ist das Benutzerkonto gesperrt Format Tage seit 1 1 1970 e Res Im Augenblick unbenutzt 4 5 3 Die Datei groups Zus tzlich zu der in der Datei etc passwd f r einen Benutzer definierten Benutzergruppe kann der Benutzer in der Datei etc groups weiteren Benutzergruppen zugeordnet werden Die Eintr ge erfolgen in Format Gruppenname Passwort GID Benutzernamen e Gruppenname Name der Benutzergruppe e Passwort wird ein Passwort angegeben so k nnen auch Benutzer die nicht ausdr cklich Mitglied der Gruppe sind durch Passworteingabe Zugang bekommen e GID Gruppen ID e Benutzername Mitglieder der Benutzergruppe durch Komma getrennt
154. nicht mehr per Email zu bew ltigen ist wird in den Usenet News die Gruppe jalt os linux ins Leben gerufen Dies hat zur Folge dass eine explosionsartige Weiterentwicklung des Systems im ganzen Internet entsteht und von Linus Torvalds fortan koordiniert wird 01 03 1993 Bereits ber 100 Programmierer arbeiten am Linux Code mit Durch Anpassung des Linux Kernels an die GNU Umgebung der Free Software Foundation FSF im Jahre 1993 wachsen M glichkeiten von Linux erneut stark an da man nun auf eine gro e Sammlung an vorhandener freier Software und Tools zur ckgreifen kann die unter Linux laufen 01 04 1994 Mit der Linux Version 1 0 wird der Betriebssystem Kernel netzwerkf hig und die Anzahl der Linuxnutzer steigt auf 100 000 an Ein wichtiger Schritt der ebenfalls im Jahre 22 Mai 2005 6 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn P za dree 2 1 Begriffskl rung 1994 geschieht ist auch die Anpassung einer grafischen Benutzerschnittstelle GUI auf Linux Diese wird von einer weiteren Non Profit Gruppe dem XFree86 Projekt beigesteu ert Linus Torvalds stellt auch den Quelltext des Linux Kernels offiziell unter die GNU General Public License mehr dazu im folgenden Abschnitt 2 1 2 Somit ist die freie Existenz von Linux gesichert 01 05 1995 Linux wird auf die Plattformen Digital DEC und Sun Sparc portiert Damit kann sich das neue Betriebssystem nun mit vollem Schwung auf de
155. nteressant Hardware Unterst tzung Alle Distributionen f r Intel kompatible Prozessoren laufen auf jedem Standard PC Wenn Sie spezielle Hardware verwenden Multiprozessor Mainboards RAID Festplattensysteme Notebooks etc h ngt es aber stark von der Distribution ab wie gut derartige Hardware von den Installations und Konfigurations Tools unterst tzt wird Hier sind gro e weit verbreitete Distributionen meist im Vorteil Von SuSE und RedHat gibt es Beispielsweise spezielle Enterprise Distributionen welche auch Gro rechner Architekturen wie z B die zSeries von IBM unterst tzen Ziel Plattform CPU Architektur Viele Distributionen sind nur f r Intel kompatible Pro zessoren erh ltlich Es gibt aber auch Distributionen f r andere Rechnerplattformen zum Beispiel DEC Alpha SUN Sparc und Macintosh PowerPC Dokumentation Manche Distributionen werden mit Handb chern in elektronischer oder gedruckter Form ausgeliefert Support amp Service Bei manchen Distributionen bekommen Sie kostenlos Hilfe bei der Installation via Email oder Telefon Das Ausma des gebotenen Supports schl gt sich meist sehr direkt auf den Preis nieder 22 Mai 2005 12 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto hn dree l 2 1 Begriffskl rung e Mitgelieferte kommerzielle Software Bei manchen Distributionen werden nicht nur die frei verf gbaren Linux Pakete mitgeliefert sondern auch lizenzpflich
156. on ist offiziell nicht mehr verf gbar und es wird auch kein Support mehr gegeben e SuSE SuSE Linux ist dank der hohen Aktualit t der riesigen Anzahl vorkonfigurierter Pa kete den umfassenden Handb chern und der hervorragenden Wartung die in Europa am Kerstin Rossek amp Silke Wacker 15 22 Mai 2005 P Der letzte Unix Kurs vor der Auto hn 2 1 Begriffsklarung manta j weitesten verbreitete Distribution SuSE Linux ist in zahlreichen Sprachen Deutsch Eng lisch etc erh ltlich SuSE ist eine sehr benutzerfreundliche Distribution Das Administra tionstool YaST hilft nicht nur bei vielen Konfigurationsproblemen es l st auch hnlich wie Debian automatisch eventuelle Abh ngigkeitskonflikte zwischen Software Paketen die bei der Paketinstallation auftreten k nnen YaST steht seit der Version SuSE Linux 9 1 unter der GPL dies war jedoch lange Zeit nicht so Aus diesem Grund durfte man SuSE Linux zwar im Freundeskreis frei kopieren es war aber nicht zul ssig SUSE CD ROMs billig zu verkaufen wie dies bei vielen anderen Distributionen blich ist Zu den gr ten Nachteilen von SuSE z hlte das Konfigurationskonzept vgl Datei etc rc config das inkompatibel zu allen an deren Distributionen war und vor allem bei der Administration st rt Man findet es nur bei den lteren Linux Distributionen da dieses Konzept in den neueren Versionen ersetzt wurde Die Abk rzung SuSE steht brigens f r Gesellschaft f r Software u
157. opie einer Datei den Vorteil dass der Speicher nur einmal belegt wird und sich beim Andern einer Instanz auch alle anderen Instanzen ndern Wird eine Instanz des Hard Links also z B die Original Datei worauf mehrere Hard Links verwei sen gel scht so zeigen s mtliche verbliebenen Hard Links immer noch auf dieselbe Inode mit allen Eigenschaften der Datei Au er dem Namen und dem Speicherort im Dateibaum ist der Hard Link nicht von dem urspr nglichen Objekt zu unterscheiden Eine Instanz wird erst gel scht wenn alle Instanzen gel scht sind e ln vorhandene_datei symbolischer_name Achtung Hard Links haben zwei wesentliche Einschr nkungen 22 Mai 2005 50 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto hn i o C 5 4 Verweise Symbolische und Hard Links e Ein Hard Link funktioniert nur im selben Dateisystem Diese Einschr nkung kommt daher dass eben Inodes geteilt werden zwischen der Original Datei und dem Hard Link e Hard Links k nnen nicht auf Verzeichnisse verweisen 5 4 3 Was ist nun besser Symbolische Links werden fters genutzt als Hard Links weil sie vielseitiger und flexibler einsetzbar sind und nur einen sehr kleinen Anteil an Festplattenplatz nutzen Wo werden diese Links benutzt Wie bereits erkl rt wurde dienen Links dazu einen anderen Namen f r eine bestehende Datei oder ein Verzeichnis anzugeben Ein sinnvoller Anwendungsfall ist die Verwendung von Links im
158. or der Auto hn 2 1 Begriffskl rung lt pmumuen A Linux Distributionen wirklich uneingeschr nkt frei verf gbar sind erkennen Sie unter anderem daran dass es von vielen kommerziellen Distributionen Billig CD ROMs mit den sogenannten FTP Versionen GPL Versionen oder Download Versionen gibt Der Name dieser Version ergibt sich daraus dass es sich um jene Dateien handelt die kostenlos im Internet meist auf einem FTP Server verf gbar sind Diesen Versionen fehlen die kommerziellen Komponenten die von der jeweiligen Distribution lizensiert wurden Au erdem gibt es keine Dokumentation und keinen Support Lassen Sie sich aber vom g nstigen Preis der FTP Versionen nicht blenden Gerade f r Einsteiger ist ein gutes Handbuch oder die M glichkeit w hrend der ersten Monate eine Support Abteilung kontaktieren zu k nnen sehr wertvoll Der folgende berblick ber die wichtigsten verf gbaren Distributionen in alphabetischer Rei henfolge und ohne Anspruch auf Vollst ndigkeit soll eine erste Orientierungshilfe geben e Caldera Caldera Open Linux war eine der ersten Linux Distributionen die sich explizit an kommerzielle Anwender wandte Mittlerweile erheben alle Mitbewerber ebenfalls diesen Anspruch Die Distribution wurde jedoch im August 2002 in die Produktpalette vom UNIX Anbieter SCO eingegliedert und besteht seitdem in dieser Form nicht mehr e Corel Corel Linux wurde im Jahr 1999 sehr medienwirksam eingef hrt und
159. ordert Nachdem der Kopiervorgang erfolgreich war k nnen Sie sich einfach mittels ssh user entfernter_Rechner am entfernten Rechner anmelden Nach der Authentifizierung mit der Passpharse k nnen Sie auf dem entfernten Rechner arbeiten Die SSH Sitzung k nnen Sie einfach durch Eingabe des Kommandos exit beenden 10 3 3 SSH unter Windows Wenn Sie den ssh Dienst auch unter Windows nutzen m chten so k nnen Sie dies mit dem Programm Putty tun 10 4 scp scp basiert auf ssh und kann als Ersatz f r FTP verwendet werden da hier alle Daten verschl sselt bertragen werden Kerstin Rossek amp Silke Wacker 127 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn Grunds tzlich hat der scp Befehl die folgende Form scp quellRechner quellDatei zielRechner zielDatei Wird der Rechner nicht angegeben so wird der lokale Rechner angenommen 10 4 1 Beispiele scp index html start html ferner_Rechner usr index html Kopiert die Datei index html und start html auf den fernen_ rechner in das Verzeichnis usr In diesem Fall versucht scp Sie auf dem fernen _ rechner mit dem selben User anzumelden wie auf Ihrem lokalen System Sie werden zur Eingabe des Passwortes aufgefordert Sollten Sie auf dem entfernten Rechner nicht den selben Benutzernamen haben wie auf Ihrem lokalen System so m ssen Sie dem Befehl durch ein getrennt Ihren Benutzernamen voranstellen scp index html meinBenutzer ferner_
160. packt alle Dateien des Verzeichnisses home student in ein komprimiertes Archiv Backup tgz Unterverzeichnisse werden mit verpackt tar tvf Backup tgz gibt alle Dateien aus die im Archiv Backup tgz enthalten sind tar xzvf Backup tgz packt das gesamte Archiv aus tar xvf Backup tgz Brief packt nur die Datei Brief aus dem Archiv Backup tgz aus 9 5 2 Funktionsoptionen Genau eine der folgenden Optionen muss vor allen anderen Optionen angegeben werden e c legt neues Archiv an e d vergleicht im Archiv abgelegt Dateien mit im Befehl angegebenen Dateien Alle Unter schiede wie fehlende Dateien unterschiedliche Gr en Zugriffsrechte u s w werden ausge geben e r Dateien an das Ende des Archives anh ngen e t Ausgabe der Dateien die im Archiv abgelegt sind Kerstin Rossek amp Silke Wacker 113 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 9 6 mtools u Dateien zum Archiv hinzuf gen wenn Sie sich noch nicht darin befinden oder sich ge ndert haben x Dateien aus dem Archiv extrahieren 9 5 3 Weitere n tzliche Optionen 9 6 f Archiv verwendet den mit Archiv angegebenen Dateinamen f r das Archiv k beim extrahieren werden Dateien mit hnlichen Dateinamen nicht berschrieben es wird eine Fehlermeldung ausgegeben m die Zeit der letzten Modifikation wird nicht restauriert sondern auf den Zeitpunkt des Entpackens gesetzt p Besitzer und Gruppen bleiben wie im Original v Dateinamen ausg
161. prozesses Dies hat in terne Systemgr nde welche zuletzt auch mit Sicherheit zu tun haben aber an dieser Stelle nicht weiter erl utert werden Diese Abgrenzung kann man jedoch umgehen indem man die Variablen des Vaterprozesses exportiert und zwar mittels export Name Wert Man kann sich alle Umgebungsvariablen auch anzeigen lassen mittels des Befehls set 22 Mai 2005 92 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn o vorus raa l 7 4 Shellprogrammierung 7 3 2 Auswahl wichtiger Umgebungsvariablen Es gibt eine un berschaubare Vielzahl von Umgebungsvariablen fast jedes Programm ben tigt eigene Umgebungsvariablen damit es funktioniert Hier eine Auswahl sehr wichtiger Variablen welche in fast jedem Linuxsystem gesetzt sein sollten e PATH der PATH auch Suchpfad genannt ist eine elementare Umgebungsvariable in welcher s mtliche Wichtige Verzeichnisse stehen die f r den Gebrauch wichtige Programme enthalten sind e HOME Pfad zum pers nlichen Home Verzeichnis des Benutzers e HISTSIZE Gr e der maximalen Eintr ge in der Bash History e PS1 Zeichenkette f r die Eingabeaufforderung z B export PS1 u h w gt liefert Nutzer Rechner Verzeichnis e alle Positionsparameter e Anzahl der Positionsparameter e Exit Status des zuletzt ausgef hrten Kommandos e Prozess Nummer der aktuellen Shell 7 4 Shellprogrammierung 7 4 1 Wiederkehrende T tigkeiten
162. r Remote Terminal Somit k nnen die Resourcen dieses Rechners online genutzt werden Dies ist ein nicht zu untersch t zender Vorteil wenn man bedenkt wie teuer Rechenleistung im Jahre 1973 war Die Kapazit ten von Gro rechnern konnten somit auch von Benutzern genutzt werden die nicht direkt vor Ort waren Die Eingabe und Ausgabe erfolgt bei einer Telnet Session ganz normal ber die lokalen 22 Mai 2005 118 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto hn 10 1 telnet Peripherieger te Der Benutzer kann alle Kommandos ausf hren als s e er direkt vor der Shell des entfernten Rechners Nat rlich gibt es auch noch heute komplexe Anwendungen die ber ein Remote Login auf Hoch leistungsrechnern durchgef hrt werden Allerdings hat dieser Anwendungsbereich von Telnet im Laufe der Zeit immer mehr an Bedeutung verloren Telnet ist ein wunderbares Werkzeug um einen Rechner Remote zu administrieren oder mal eben die Mails vom Universit tsaccount abzufragen 10 1 1 Kommunikation via Telnet Telnet ist ein Client Server Protokoll welches auf TCP basiert Standardport f r Telnet ist Port 23 Netzzugang Ethernet Esa FDDI Abbildung 10 1 Telnet im OSI Schichtenmodell Der Kommunikationsaufbau l uft folgenderma en ab 1 NVT Network Virtual Terminal Server und Client bilden beim Erstellen der Verbindung ein NVT Mit Beginn einer Telnet Session handeln Server und Client mittels NVT alle
163. r Benutzergruppen sein Rechte k nnen sowohl Benutzergruppen als auch einzelnen Benutzern zugewiesen werden 22 Mai 2005 32 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn 4 2 Benutzer a gt j j Abbildung 4 1 Beispiel mehrere Prozesse mit unterschiedlichen Nutzerkennungen Kommando ps aux 4 2 Benutzer 4 2 1 Eigenschaften eines Benutzers Fur den Nutzer eines Linux Systems besteht ein Benutzer auf den ersten Blick lediglich aus seinem Benutzername und Passwort Das ist f r die t gliche Arbeit auch ausreichend Das System jedoch verwaltet noch eine Reihe weiterer Informationen Linux verwendet intern eine Benutzer ID zur Verwaltung eines Benutzers Die eigene Benutzer ID UID kann einfach mit dem Befehl id u abgefragt werden Als Ausgabe erscheint die vom System an den Benutzer vergebene UID Linux verwendet intern immer in erster Linie die UID um Resourcen zu verwalten die einem Benutzer zugeordnet sind Zus tzlich zur UID ist jedem Benutzer noch eine Gruppen ID G D zugewiesen Kerstin Rossek amp Silke Wacker 33 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 4 2 Benutzer eee vieus oc Diese kann durch den Befehl id g abgerufen werden Neben der Benutzer ID und der Gruppen ID ist jedem Benutzer ein Heimatverzeichnis zugeord net Alle Unterverzeichnisse und Dateien in diesem Heimatverzeichnis gehoren diesem Benutzer Hier k nnen Dateien abgele
164. r Linux 8 aix hpux echo das klingt nach IBM oder HP 9 echo noch was anderes 10 esac Hier wird der Wert der Variablen system nacheinander mit den angegebenen Mustern verglichen Der Die Befehl e beim ersten Treffer werden ausgef hrt und sp tere Treffer nicht mehr ber ck sichtigt Die Befehlsabarbeitung wird hinter esac fortgesetzt Die Muster werden jeweils mit einer abgeschlossen und k nnen Wildcards enthalten in Zeile 9 der Stern passt immer Au erdem kann man in einer Zeile mehrere durch getrennte Muster angeben im Beispiel aix oder hpux Das Ende einer Befehlssequenz die vollst ndig zu einem Muster geh rt wird durch markiert 7 4 5 Funktionen 1 2 Fehler 3 1 4 exitstatus 1 message 2 echo FEHLER message gt 2 exit exitstatus Oo ON DOM Danach kann man die Funktion aufrufen mittels e hello c Fehler 2 Datei nicht gefunden Falls im Beispiel die Datei hello c nicht existiert so erfolgt ein Aufruf der Funktion Fehler mit zwei Argumenten Die Funktion gibt das zweite Argument Zugriff hnlich wie auf Argumente in der Kommandozeile auf stdout aus und beendet das Programm anschlie end mit Exit Status 2 Kerstin Rossek amp Silke Wacker 97 22 Mai 2005 e Der letzte Unix Kurs vor der Auto hn 8 Der Editor vi o C l 8 Der Editor vi F r alle UNIX und Linux Systeme ist ein Text Editor essentiell da die Grundlage f r die Konfi guration
165. rgrund als Job oder in den Vordergrund siehe Kapitel 6 4 echo gibt eine Zeichenfolge zur ck z B echo hallo exec Programm ersetzt die aktuelle Shell durch das Programm z b exec bash exit beendet die Shell e test e datei gibt wahr zur ck wenn die datei existiert e test d datei gibt wahr zur ck wenn die datei ein Verzeichnis ist test zah 1 Je zahl2 gibt wahr zur ck wenn zahl1 kleiner zahl2 ist 7 2 2 Exit Status Wenn man ein Programm in der Bash ausf hrt und dieses beendet wird oder sich selbst beendet dann gibt es immer einen Exit Status an die Bash zur ck Diesen Status kann man auswerten oder sich den letzten Exit Status anzeigen lassen mit echo 7 Genauer gesagt wird eine Integer Zahl zur ckgegeben e Status 0 null wird dieser Status zur ckgegeben so wurde das Programm fehlerfrei be endet anders als in der Programmiersprache C wird dies als wahr interpretiert e anderer Status z B 1 2 jede h here Zahl bedeuted dass ein Fehler aufgetreten ist und das Programm abnormal beendet wurde 7 2 3 Mehrere Kommandos in einer Kommandozeile Man kann in einer Kommandozeile mehrere Kommandos nacheinander ausf hren lassen welche verschiedenen Regeln folgen e befehll befehl2 f hrt befehl nach befehl1 aus e befehll amp amp befehl2 f hrt befehl2 nur dann aus nachdem befehll erfolgreich Status 0 beendet wurde Beispiel cp Vorlage MeineDatei amp amp vi MeineD
166. sdr cke o C e w gibt nur Zeilen aus die den Ausdruck als ganzes Wort enthalten e C gibt auch zwei Zeilen vor und nach der Fundstelle aus c gibt Anzahl der Trefferzeilen aus q unterdr ckt die normale Ausgabe und bricht an der ersten Fundstelle ab s unterdr ckt Fehlermeldungen ber nicht vorhandene ode nicht lesbare Dateien e v gibt alle Zeilen aus auf die das Suchmuster nicht passt X gibt Zeilen nur aus wenn auf die gesamte Zeile das Suchmuster passt I gibt Dateien mit Treffern aus aber keinen detailierten Informationen die Suche wird in einer Datei nach dem ersten Treffer abgebrochen Beispiele grep w Stuttgart MeinText txt Gibt alle Zeilen in der Datei Mein Text txt aus die den Begriff Stuttgart als ganzes Wort enthalten grep i ga MeinText txt AndererText txt Gibt alle Zeilen in den Dateien Mein Text Get und Anderer Text txt aus die den Begriff ga gA Ga oder GA enthalten So wird auch das Wort Stuttgart gefunden who grep root In diesem Fall wird nicht eine Datei durchsucht sondern die Standardeingabe von grep Das Kom manso who liefert alle am System angemeldeten Benutzer zur ck Mittels Pipe wird die Ausgabe auf grep umgeleitet Ist der Nutzer root angemeldet so gibt grep die entsprechende Zeile aus grep 1 include usr include Dieses Kommando gibt alle Dateien im Verzeichnis usr include aus die mindestens einmal die Direktive Zinclude enthalten 9 3 Regul re Ausdr cke E
167. sm glichkeiten bietet so dass es kein Standarderscheinungsbild f r KDE gibt Grunds tze f r KDE In KDE wird standardm ig alles au er in Ausnahmef llen mit einem einfachen Mausklick gest artet kann aber auch entsprechend mit dem KDE Kontrollzentrum umkonfiguriert werden e Das Kontextmen kann bei vielen Programmen beziehungsweise KDE Komponenten mit der rechten Maustaste aufgerufen werden e Fast alle KDE Programme kommen mit Drag amp Drop zurecht Sind weitere Angaben durch den Benutzer notwendig ffnet sich ein Kontextmen und erfragt diese e KDE selbst wird ber das bereits im ersten Gliederungspunkt genannte KDE Kontrollzentrum konfiguriert Zur Konfiguration einzelner KDE Programme stehen entsprechende Men Kommandos zur Verf gung e Verlassen Sie KDE stets ber den entsprechenden Men punkt im KDE Start Men Abbil dung unten links KDE speichert n mlich Informationen ber aktuell laufende Pro gramme und versucht diesen Stand m glichst beim n chsten Start von KDE wiederherzu stellen Kerstin Rossek amp Silke Wacker 139 22 Mai 2005 11 5 Desktop Systeme Abbildung 11 4 KDE 3 1 Der Desktop im berblick An dieser Stelle soll Ihnen ein berblick ber die wesentlichen Elemente des KDE Desktop gegeben werden vgl Abbildung 11 4 Icons Der Desktop kann mit beliebigen Icons gef llt werden siehe Abbildung 11 4 oben links die einen schnellen Zugriff auf d
168. speicher wird jedoch nicht direkt durch die Anwendung allokiert sondern die Anwendung fordert einen Speicherbereich ben tigter Gr e Koordination von Prozessen Ein Prozess ist ein Programm w hrend der Ausf hrung Ein Prozess kann sowohl aus Anwendungen resultieren die durch den Benutzer gestartet wor den sind als auch durch systemnahe Programme die schon beim Start des Betriebssystems initialisiert und gestartet werden Im laufenden Betrieb des Betriebssystems sind meist Pro zesse gleichzeitig aktiv vgl Multi Tasking F higkeit von UNIX Das Betriebssystem koor diniert dabei die Interaktion zwischen den Prozessen Ein Beispiel w re das Warten eines Prozesses auf den Abschluss eines anderen Prozesses Die zuvor beschriebenen Aufgaben machen eines deutlich die Aufgaben eines Betriebssystems ha ben unterschiedliche Granularit t das hei t einen unterschiedlich Grad der Abstraktion hinsichtlich des Rechnersystems und seiner Hardwarekomponenten Der logische Schluss ist ein Schichtenmo dell des Betriebssystems in dem die unterschiedlichen Aufgaben erf llt werden 2 3 2 Aufbau eines Betriebssystems Die im folgenden dargestellte Abbildung zeigt das Wettstein sche Schichtenmodell nach lem Dr Horst Wettstein Von der untersten Schicht Infrastruktur bis hin zur obersten Schicht Steuerung steigt der Grad der Abstraktion zum eigentlichen Rechnersystem und dessen Hardwa rekomponenten Dabei handelt sich um ein sehr abs
169. ssen e cd Pfad wechselt in Verzeichnis Pfad d h erkl rt den angegebenen Pfad zum aktuellen Verzeichnis e Is gibt Verzeichnisinhalt in Liste aus e Is I Dateien listet Dateien auf e Is Verzeichnis listet das Verzeichnis auf e Is lisa listet Verzeichnis in ausf hrlicher Form auf e pwd gibt aktuellen absoluten Pfad aus e mkdir Verzeichnis legt Verzeichnis an e rmdir Verzeichnis l scht Verzeichnis allerdings darf dieses Verzeichnis keine Dateien oder Unterverzeichnisse mehr enthalten e cp Quelldatei Zieldatei legt eine Kopie von Quelldatei unter Zieldatei an e cp Quelldatei Verzeichnis legt eine Kopie von Quelldatei in Verzeichnis an e mv Datei alt Datei neu verschiebt Datei alt in Datei neu Umbenennen e mv Datei Verzeichnis verschiebt Datei alt in Verzeichnis e rm Datei l scht Datei e rm r Verzeichnis l scht Verzeichnis unter R ckfrage ob alle Unterobjekte auch gel scht werden sollen e rm rf Verzeichnis l scht Verzeichnis ohne jegliche R ckfrage ob alle Unterobjekte auch gel scht werden sollen e cat Textdatei gibt Inhalt der Textdatei aus e less Textdatei gibt Inhalt der Textdatei aus Bl ttern und Scrollen ist m glich e more Textdatei gibt Inhalt der Textdatei aus Bl ttern und Scrollen ist m glich e head Textdatei gibt die ersten Zeilen der Textdatei aus z B head 10 brief txt e tail Textdatei gibt die letzten Zeilen der Textdatei aus e file Datei zeigt Informationen zum Dateityp an z B ASCII Bin r
170. st der Display Manager in der Lage entfernte X Server zu verwalten kann also auch Benutzer Logins auf entfernten X Servern bereitstellen Unter Linux gibt nicht nur einen Display Manager sondern eine ganze Reihe e xdm Der X Display Manager ist zu X zugeh rig und schon am l ngsten verf gbar e kdm Der KDE Display Manager ist ein Teilprodukt des KDE Desktop Projektes und wei testgehend kompatibel zum xdm e gdm Der Gnome Display Manager ist ein Teilprodukt des Gnome Desktop Projektes und ebenfalls weitestgehend kompatibel zu xdm Obwohl alle drei Display Manager weitestgehend kompatibel zueinander sind besitzen alle mehr oder weniger unterschiedliche Zusatzfunktionen gegen ber den anderen Des weiteren unterschei den sich alle sowohl in ihrer Konfiguration als auch in der Struktur ihrer Konfigurationsdateien Daher sollte Ihnen an dieser Stelle ein erster berblick ber die verschiedenen Display Manager und deren generelle Funktionen beziehungsweise Aufgaben geboten werden Weitere Informationen zu den einzelnen Display Managern finden unter folgenden Links e he X Display Manager e The kdm handbook e Gnome Display Manager Reference Manual 11 3 X Org X Org ist ein alternativer X Server Er basiert auf dem Quellcode von XFree86 Version 4 3 99 Dies war die letzte XFree86 Version der von den Programmieren noch nicht die Bedingung auferlegt 22 Mai 2005 136 Kerstin Rossek amp Silke Wacker Der letzte Uni
171. swort wird noch abgefragt Bewegen in der Dateistruktur Haben Sie sich am FTP Server authentifiziert k nnen Sie sich frei entsprechende Rechte voraus gesetzt in der Dateistruktur bewegen Mittels des Befehles e dir k nnen Sie sich den Inhalt eines Verzeichnisses anzeigen lassen Mit dem Befehl e cd wechseln Sie wie in Linux gewohnt die Verzeichnisse e pwd zeigt den Namen des aktuellen Arbeitsverzeichniss auf dem entfernten Rechner an Dateien kopieren l schen Grunds tzlich werden Dateien mit den Befehlen get und put transportiert get images test gif myimages test gif Mit dem Befehl get k nnen Sie eine Datei vom FTP Server auf Ihren lokalen Rechner bertragen In diesem Beispiel wird die Datei test gif aus dem Unterverzeichnis images auf den lokalen Rechner in das Verzeichnis myimages bertragen Das Verzeichniss myimages muss bereits existieren put myimages mytest gif images mytest gif Mit dem Befehl put k nnen Sie Dateien von Ihrem lokalen Rechner auf den FTP Server bertragen In diesem Fall wird die lokale Datei mytest gif in das Verzeichnis images auf den FTP Server bertragen delete images mytest gif Mit dem Befehl delete k nnen Sie Dateien auf dem FTP Server l schen Um mehrere Dateien gleichzeitig kopieren zu k nnen stehen die Befehle mget und mput zur Verf gung Allerdings f hren diese Befehle nur eine Dateinamenserweiterung durch und kopieren letztendlich auch wieder mittels get und put mget
172. t es sich um systematisch aufgebaute Grundlagentexte meist im HTML Format zu bestimmten Themen Zu nahezu jeder Problemstellung vor die ein Benutzer oder Administrator eines Linux Systems fr her oder sp ter gestellt wird gibt es einen HOWT O Text e Installation von spezieller Hardware SCSI Festplatten CD ROM Laufwerken Netzwerkkar ten Tastaturen M usen etc e Installation spezieller Software Server Dienste HTTP Server Application Server Daten bank Server etc e Kombination und Integration verschiedener Software e u v m Insgesamt betr gt der Umfang der HOWTO Texte ein Vielfaches dieses Kurses Die HOWTO Dateien befinden sich zumeist in usr doc howto oder in usr share doc howto Die aktuellen Versionen finden Sie im Internet auf der Seite des Linux Documentation Project LDP Innerhalb des LDP sind aus manchen HOWTO Texten die urspr nglich nur in elektronischer Form verf gbar waren ganze B cher entstanden die Sie in einer Buchhandlung erwerben k nnen Um das Beispiel am Anfang dieses Abschnittes aufzugreifen finden Sie relativ schnell auf der Seite des LDP eine sehr ausf hrliche Dokumentation zur Installation und Konfiguration des Apache HTTP Servers http www tldp org HOWTO Apache Overview HOWTO html 22 Mai 2005 28 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn mum 3 3 HOWTOs User Commands NAME du estimate file space usage SYNOPSIS du OPTION F
173. tei brief txt vom Benutzer vollst ndig gelesen bearbeitet und gel scht werden kann Mitglieder der Gruppe des Benutzers d rfen die Datei lesen und ausf hren was bei der Textdatei allerdings keinen Sinn machen w rde und alle Anderen others d rften die Datei ebenfalls lesen also einsehen Wie funktioniert das L sst man sich den Verzeichniseintrag von brief txt mittels Is 1 brief txt anzeigen erh lt man z B folgende Ausgabe rwxr Xr 1 alex users 7 2004 06 06 14 14 brief Lt Betrachtet man die erste kryptische Zeichenfolge so spiegeln diese Buchstaben die Zugriffsrechte fiir die verschiedenen Benutzer wieder Wenn man das erste Bit weglasst nicht weiter wichtig an dieser Stelle so haben die folgenden 9 Bits die Bedeutung Kerstin Rossek amp Silke Wacker 53 22 Mat 2005 Der letzte Unix Kurs vor der Auto hn 5 5 Zugriffsrechte read user read other write user write other ps user p execute other read group write group execute group Abbildung 5 3 Mode Bits einer Datei In unserem Beispiel sind die jeweiligen Bits f r user group und others auf 1 gesetzt wenn diejenigen die Rechte haben sollen Jede Dreiergruppe an Bits kann mittels einer Oktalzahl durch Umrechnung Bin r Oktal darge stellt werden Die entsprechende Umrechnungstabelle sieht dann so aus e Oktalzahl O entsprechende Bin rfolge 000 e Oktalzahl 1 entsprechende Bin rfolge 001 e Oktalzahl
174. tellt werden 5 8 1 df disk free Der Befehl df wird dazu benutzt den freien Speicherplatz auf der Festplatte und die Inodes zu berwachen Wie bereits weiter oben auf dieser Seite angesprochen kann einem Dateisystem die 22 Mai 2005 64 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn DES i 5 8 Dateisystem Integrit t Anzahl der Inodes ausgehen da Inodes bereits beim erstellen des Dateisystems mittels mkfs erstellt werden Inodes k nnen z B dann ausgehen wenn im Dateisystem sehr viele kleine Dateien enthalten sind die jeweils eine eigene Inode ben tigen M gliche Aufrufe von df e df Optionen Verzeichnisse allgemeine Syntax des Befehls e df h gibt freien Speicherplatz auf allen gemounteten Dateisysteme aus h ist die Option f r human readable d h dass die Ausgabe in einem einfach lesbaren Format mit Mega und Gigabyte Angaben erfolgt Die Platzausnutzung wird auch Prozentual ausgegeben e df hiermit kann man einfach feststellen auf welcher Partition man sich gerade befindet 5 8 2 du disk usage du dient der Anzeige des Platzverbrauchs eines oder mehrerer Verzeichnisse M gliche Aufrufe von du e du Optionen Verzeichnisse allgemeine Syntax des Befehls du sh home alex gibt die Speicherplatznutzung des Verzeichnisses home alex aus auch hier wieder im human readable format Option s also mit Unterverzeichnissen e du Ssh etc gibt Speicherplatznutzung d
175. ten F llen die Software des in Ver bindung mit dem Linux Kernel verwendet Heute sind beide Komponenten der Linux Kernel und die GNU Betriebssoftware kaum noch voneinander zu trennen Korrekterweise m sste man also eigentlich wenn man das Betriebssystem meint von GNU Linux sprechen da hier immer der Kernel Linux und die Systemwerkzeuge GNU gemeinsam gemeint sind Es hat sich allerdings heute eingeb rgert dass umgangssprachlich unter dem Begriff Linux die Kombination aus Kernel und Systemwerkzeugen gemeint ist und wird in diesem Sinne auch in diesem Kurs verwendet Der wichtigste Unterschied gegen ber herk mmlichen Unix Systemen besteht darin dass Linux zusammen mit dem vollst ndigen Quellcode frei kopiert werden darf Details dazu finden Sie im 22 Mai 2005 2 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto hn Queries l 2 1 Begriffskl rung Abschnitt GPL amp Co Einschr nkungen in der Funktionalit t gibt es dagegen kaum Linux ist in vielerlei Beziehung besser als so manches teure Unix System Es unterst tzt eine gr ere Palette von Hardware Komponenten und enth lt in vielen Bereichen effizienteren Code Wichtig f r das Verst ndnis von Linux ist auch dass es nicht das eine Linux gibt Grund daf r sind eine Vielzahl sogenannter Distributoren Details dazu in Kapitel Distributionen Dabei handelt es sich um unabh ngige Organisationen die zu den oben bereits g
176. ten Programmierschnittstelle Das Betriebssystem stellt eine Menge von Grundfunktionen bereit mit denen programmiert werden kann um das Betriebs system um zus tzliche Funktionen zu erweitern Auf diese Schnittstellen greifen zum Beispiel die Entwickler von Anwendungssoftware z B ein Text Editor zur ck e Verwaltung der Ressourcen der Maschine Mit Resourcen ist die gesamte Hardware ge meint auf die das Betriebssystem aufsetzt und Zugriff hat zum Beispiel Prozessor en Hauptspeicher Festplatten und andere Medien Drucker etc aber auch logische Ressour cen wie zum Beispiel die Rechenzeit Ein Beispiel w re das Senden von Druckauftr gen an einen Drucker durch den Benutzer Da der Drucker nur ein Dokument zu einem Zeitpunkt ausdrucken kann regelt das Betriebssystem die Abarbeitung der Druckauftr ge unabh ngig von der Anzahl Kerstin Rossek amp Silke Wacker 19 22 Mai 2005 Der letzte Unix Kurs vor der Auto Ahn 2 3 Aufgaben und Aufbau eines Betriebssystems lt omumunn e Verfolgung von Schutzstrategien bei dieser Ressourcenbereitstellung Am Beispiel der Ressource Arbeitsspeicher auf einem Betriebssystem sind meistens mehrere Anwendungen installiert die durchaus zum gleichen Zeitpunkt laufen k nnen Dabei ben tigt jede Anwen dung zur Laufzeit Speicherbereiche aus dem Arbeitsspeicher des Rechners um zum Beispiele Werte tempor r abzulegen zum Beispiel eingelesene Eingaben von der Kommandozeile Der Arbeits
177. terung Einordnung BERSICHT bersicht der Befehlssyntax d h der Anordnung der m glichen Parameter und diverser Optionen BESCHREIBUNG Anmerkungen und Beschreibungen zu den m glichen Optionen des Be fehls AUTOR Angabe des Autors der Autoren des Projekts der verantwortlich f r die Ent wicklung und Pflege des Programms verantwortlich ist FEHLERMELDUNG Angabe eines Kontaktes z B Email Adresse an den man sich wen den sollte im Falle eines Programmfehlers URHEBERRECHT Erl uterungen zum lizenzrechtlichen Hintergrund des Programms SIEHE AUCH Verweise auf weitere Dokumentation oder anverwandte Programme 3 1 3 Sektionen der Man Pages Wie zuvor angedeutet sind die Man Pages in Sektionen eingeteilt 22 Mai 2005 24 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn eee tor ct 3 1 Man Pages e Kommandos Sektion 1 Die Benutzerprogramme die man zum Beispiel von der Kom mandozeile aufrufen kann Diese Sektion wird am h ufigsten benutzt enth lt die meisten Eintr ge und w chst mit der Anzahl der installierten Packages e System Aufrufe Sektion 2 System Aufrufe werden meist von Kernel oder Hardware Programmierern ben tigt F r einfache Benutzer sind sie meist uninteressant Sie hei en bei anderen Betriebssystemen auch Software Interrupts Sie stellen die grundlegende Schnitt stelle zwischen Programmierer und Betriebssystem dar e Bibliotheks Aufrufe Se
178. tet an wie viel Speicher noch frei ist siehe etc fstab kpm kysguard Diese Programme zeigen eine Liste aller laufenden Prozesse vgl top wobei ksysguard deutlich mehr Funktionen zur detaillierten Systemanalyse bietet Kerstin Rossek amp Silke Wacker 141 22 Mai 2005 11 5 Desktop Systeme e 11 5 2 Gnome Das Gnome Project GNU Network Object Model Environment soll einen intuitiven und an sprechenden Desktop f r den Benutzer bieten Gnome ist Teil des GNU Project Der Hauptun terschied zwischen KDE und Gnome wovon stets auch der Konflikt welches nun das bessere Desktop System ist ausgeht sind die Bibliotheken auf den diese beiden Desktop Systeme ba sieren KDE basiert auf Qt einer kommerziellen Bibliothek der Firma Trolltech Diese darf zwar f r freie Softwareprojekte kostenlos genutzt und weitergegeben werden Es galten jedoch f r die Version 1 n eine Menge Einschr nkungen die sich aber gelockert haben aufgrund der neuen OPL Q Public Licence Diese ist zwar nicht so frei wie die LGPL aber doch frei genug um von der Open Source Entwicklungsgemeinde akzeptiert zu werden D D D D D D D D o D Abbildung 11 5 Gnome 2 Gnome basiert dagegen auf dem Gimp Tool Kit also einer Bibliothek die ursp nglich nur f r die Benutzeroberfl che von Gimplentwickelt wurde Gimp ist ein Bildverarbeitungsprogramm Die Gtk ist wirklich freie Software und untersteht der LGPL Abbildung ze
179. tieren der Befehle im Skript angeben so z B usr bin perl oder einen eigenen Interpreter Das macht allerdings nur Sinn wenn dieser Interpreter die Kommandos im Skript auch versteht Die folgenden zwei Zeilen sind eben die Kommandos die ausgef hrt werden sollen Im Prinzip k nnen alle Programme des Systems und Programmierhilfen zur Gestaltung der Skipte behilflich sein im folgenden sollen einige M glichkeiten aufgef hrt werden 7 4 2 Kommentare Kommentare k nnen einfach mit dem Zeichen eingef gt werden alles was zwischen und Zeilenende steht wird als Kommentar aufgefasst 7 4 3 Schleifen hnlich wie in der Programmiersprache C k nnen Schleifen in der Bash verwendet werden Wie in C sind verschiedene Arten von Schleifen m glich folgend in einigen Beispielen aufgegriffen Schleifen k nnen selbstverst ndlich nicht nur in Shell Skripten verwendet werden sondern auch direkt in der Kommandozeile z B f r kleinere Aufgaben Die Shell erkennt selbst ndig dass eine schleife noch nicht abgeschlossen ist und bietet einen Fortsetzungprompt an d h wenn man die folgenden Beispiele einfach Zeilenweise eintippt so kann man dies auch Zeilenweise auf der Shell tun Alternativ kann man Schleifen auch in eine Kommandozeile eingeben mit folgender Schreibweise e while do BEFEHL BEFEHL2 done Schleifen mit while In diesem Beispiel werden in einer Schleife mehrere Verzeichnisse angelegt n mlich irgend wo
180. tige Programme Auch dies erh ht den Preis der Distributionen e Lizenz Die meisten Distributionen sind uneigenschr nkt kostenlos ber das Internet erh lt lich Bei einigen Distributionen gibt es hier aber Einschr nkungen Beispielsweise stellen nicht alle Distributionen so genannte ISO Images zur Verf gung mit denen sich Anwender leicht selbst die Installations CD ROMs brennen k nnen d h ohne die Distribution zu kaufen Manche Distributionen erlauben zwar die kostenlose Weitergabe nicht aber den Weiterverkauf von CD ROMs Da Linux und die meisten mitgelieferten Programme an sich frei erh ltlich sind beschr nkt sich das Verkaufsverbot meist auf die Installations oder Konfigurationssoftware bei SuSE galt dies beispielweise bis vor kurzem f r das Programm YaST Dieses steht alledings seit der Version SuSE Linux 9 1 unter der GPL und darf somit auch frei kopiert werden Weitergabe einschr nkungen gibt es auch wenn mit der Distribution kommerzielle Software mitgeliefert wird Am restriktivsten war Caldera Dessen Linux Distributionen d rfen nur auf einen einzigen Rechner installiert werden was in der Linux Welt vollkommen un blich ist Die Behauptung Linux sei frei steht scheinbar im krassen Widerspruch zu dem Preis die f r die meisten besseren Distributionen verlangt wird oft 50 Euro und mehr Der Grund ist aber leicht verst ndlich Obwohl Linux und die meisten Anwendungsprogramme tats chlich kostenlos ber das Intern
181. tionspro gramme aus Ein weiterer Vorteil besteht darin dass mit Mandrake Linux in der Regel mehr 22 Mai 2005 14 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto hn Kreusa l 2 1 Begriffskl rung und aktuellere Softwarepakete mitgeliefert werden manchmal auf Kosten der Stabilit t Hinter Mandrake steht die Firma MandrakeSoft mit Firmensitz in Frankreich e Progeny Debian Wie der Name bereits andeutet ist diese Distribution von Debian abge leitet Progeny Debian ist eine sehr neue Distribution die erste Version wurde im Jahr 2001 ausgeliefert und unterscheidet sich von Debian vor allem durch komfortablere Installations und Konfigurationswerkzeuge Da aber s mtliche Zusatzfunktionen von Progeny Debian in die Entwicklung von Debian Linux nach und nach eingeflossen sind wurde die Entwicklung einer seperaten Distribution eingestellt e Red Hat Die Red Hat Distribution ist einer der am besten gewarteten Linux Distributionen die zurzeit erh ltlich sind Die Distribution dominiert insbesondere den amerikanischen Markt Die Paketverwaltung auf Basis des RPM Formats eine Eigenentwicklung von Red Hat wurde mittlerweile von vielen anderen Distributionen bernommen Neben der Red Hat Or ginaldistribution gibt es eine ganze Reihe davon abgeleiteter Distributionen die sich durch diverse Verbesserungen oder Sprachanpassungen z B eine Version in spanischer Sprache auszeichnen Red Hat Linux ist insbeso
182. tionsprogramme f r den Window Maker und die gerade ausgef hrten X Applikationen werden durch Kacheln am Rand der Oberfl che repr sentiert Oben rechts in der Abbildung sehen wir das quaderf rmige Men des Window Maker welches mit einen Klick auf die rechte Maustaste ausgew hlt werden kann Eine gute bersicht aktuell verf gbarer Window Manager finden Sie unter 11 5 Desktop Systeme Desktop Systeme gehen ber die Funktion eines Window Managers noch weit hinaus Aufgrund von grafischen Bibliotheken sehen viele Anwendungsprogramme einheitlich aus und sind auch ein heitlich zu bedienen Die Kommunikation zwischen den Programmen ist standardisiert dass bei spielsweise Drag und Drop Kommandos zwischen unterschiedlichen Programmen m glich sind etc Im Folgenden sind einige Merkmale aufgezeigt e Ein Desktop System bietet eine Benutzeroberfl che f r elementare Operationen Umgang Kerstin Rossek amp Silke Wacker 137 22 Mai 2005 11 5 Desktop Systeme Corn anni e Rana E Pre Sens ty To d VI IRAOPIN er General What is Window Maker Abbildung 11 3 Window Maker mit Dateien etc e Die Bedienung ist so intuitiv wie m glich Drag amp Drop Icon Symbole besitzt ein hohes Ma an Benutzerfreundlichkeit e Bereitstellung einer Sammlung von grundlegenden einheitlich zu bedienenden Anwen dungsprogrammen f r h ufig ben tigte Operationen zum Beispiel ein Text Editor oder ein Taschenrechner
183. traktes Schichtenmodell in dass sich eigentlich jedes bestehende Betriebssystem einteilen l t siehe Abbildung R 1 Die einzelnen Schichten sind wie folgt zu verstehen e Infrastruktur Auf dieser untersten Schicht sind grundlegende Dinge wie Prozesse Adre r ume vgl Arbeitsspeicher und die Kommunikation zwischen Prozessen definiert In dieser Schicht findet man auch die bereits oben genannte Programmierschnittstelle e Dienste Mit der Dienstschicht werden Dinge wie zum Beispiel das Dateisystem die Par titionierung der Festplatte Treiber f r Hardwarekomponenten Bildschirmfenster im Falle einer grafischen Benutzerschnittstelle oder die M glichkeit eine Datei anzulegen verbunden 22 Mai 2005 20 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto hn R p 2 3 Aufgaben und Aufbau eines Betriebssystems Steuerung Anwendungen Dienste Infrastruktur Abbildung 2 1 Wettstein sches Schichtenmodell 23 e Anwendungen Diese Schicht ist die Nutz Schicht mit den Anwendungen die der Benutzer des Rechnersystems ausf hren will Ein anschauliches Beispiel w re ein auf dem Betriebs system installierter Text Editor e Steuerung In dieser Schicht wird die Steuerung des Rechners durch den Benutzer erm g licht insbesondere das Starten von Anwendungen Bei einem Betriebssystem mit einer gra fischen Benutzerschnittstelle w rde ein Klick mit der Maus durch diese Schicht erm glicht Nach
184. u dr cken Automatisch wird erkannt dass es sich hier nur um das Unterverzeichnis Texte handeln kann Der Befehl auf der Kommandozeile wird also erg nzt und es steht somit cd Texte auf dem Bildschirm Ein anschlie endes Best tigen mit der Enter Taste wechselt in das Unterverzeichnis Texte Datei und Verzeichnisnamen Datei und Verzeichnisnamen k nnen sehr lang werden und d rfen fast alle Zeichen au er enthalten Jedoch gibt es einige Sonderzeichen Abbildung 5 2 welche in der Shell eine besondere Bedeutung haben Man sollte vermeiden diese zu benutzen Falls ein Datei oder Verzeichnis 22 Mai 2005 44 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn A dFmmeseeg l 5 1 Dateisystemhierarchie name eines der folgenden Zeichen enth lt kann es schwierig werden Befehle mit diesen Namen auszuf hren z B l schen der Datei Abbildung 5 2 Sonderzeichen 20 5 1 2 File Hierarchie Standard FHS Der FHS wird von allen erh ltlichen Linux Distributionen umgesetzt und beschreibt an welcher Stelle sich welche Dateien und Verzeichnisse im Dateibaum befinden und wie diese benannt sind Der Standard wurde 1993 von der Linux Community definiert um propriet ren Entwicklungen das Dateisystem und den Baum betreffend zu vermeiden Eine Organisation welche den Standard in irgendeiner Form betreut gibt es nicht Bei diesem Standard werden alle Dateien in verschiedene Klassen eingeteilt
185. u unter xman 22 Mai 2005 30 Kerstin Rossek amp Silke Wacker a 3 3 HOWTOs EN falk o LinuxServer usr share into Shell Konsole Session Edit View Bookmarks Settings Help ile coreutils info Node du invocation Next stat invocation Pre u df invocation Up Disk usage du Estimate file space usage du reports the amount of disk space used by the specified files and for each subdirectory of directory arguments Synopsis du OPTION FILE With no arguments du reports the disk space for the current directory Normally the disk space is printed in units of 1024 bytes but this can be overridden note Block size Non integer quantities are rounded up to the next higher unit The program accepts the following options Also see Note Common options a all Show counts for all files not just directories apparent size Print apparent sizes rather than disk usage The apparent size of a file is the number of bytes reported by we c on regular files or more generally Is 1 block size 1 or stat zz Info coreutils info gz du invocation 125 lines Top Welcome to Info version 4 5 Type for help m for menu iten New 2 Shell v Abbildung 3 3 info Dokumentation zum Befehl du Kerstin Rossek amp Silke Wacker 31 22 Mai 2005 Der letzte Unix Kurs vor der Auto hn 4 Nutzerverwaltung o cta 4 Nutzerverw
186. uch einer der gr ten Unterschiede zum Windows Dateisystem es gibt keine Laufwerks buchstaben bei Linux Unterschieden werden 22 Mai 2005 42 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn A lt ommmeen l 5 1 Dateisystemhierarchie e Regul re Dateien sind normale Dateien im Text oder Bin rformat welche mit Standard Befehlen les ver nder und schreibbar sind e Verzeichnisse k nnen Dateien oder Ger tedateien beinhalten e Ger tedateien dagegen sind Dateien mit welchen im Linux System installierte Ger te z B Festplatten Schnittstellen angesprochen werden k nnen So ist z B dev hda die Ge r tedatei f r die erste am prim ren IDE Bus installierte Festplatte ber diese Ger tedatei kann die Festplatte als Blockdevice also als Blockorientiertes Ger t angesprochen werden Ein gro er Unterschied zu Windows Dateisystemen ist die Tatsache dass Datei und Verzeich nisnamen Case Sensitive gehandelt werden Befinden sich beispielsweise die drei Dateien tvpro gramm txt TVprogramm txt und tvProgramm txt in ein und demselben Verzeichnis so handelt es sich um drei unterschiedliche Dateien Angesprochen werden all diese Dateien und Verzeichnisse ber absolute oder relative Datei bzw Pfadnamen Pfade e absolute Pfade ausgehend von der Wurzel des Dateibaums auch root Verzeichnis ge nannt Abbildung 5 1 links oben geben diese Pfade einen vollst ndige
187. ues Heimatverzeichnis das Verzeichnis home alexanderNeu und ist Mitglied in der Gruppe root Mehr Parameterinformationen Uber man usermod Benutzer l schen Um einen Benutzer zu l schen verwenden Sie das Kommando userdel userdel alexander Der Benutzer alexander ist nun gel scht Mehr Parameterinformationen ber man userdel Passwort ndern Nat rlich k nnen Sie das Passwort auch mit usermod ndern Allerdings ben tigen Sie hier wie bereits erw hnt die n tigen Berechtigungen Sind Sie als normaler Benutzer angemeldet so k nnen Sie Ihr Passwort mit Hilfe von passwd ndern passwd Sie werden zur Eingabe des neuen Passwortes aufgefordert 22 Mai 2005 36 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn 4 3 Benutzergruppen 4 3 Benutzergruppen Wie bereits erw hnt k nnen auf einem Linux System beliebig viele Benutzergruppen angelegt und verwaltet werden Die meisten Linux Distributionen legen bereits bei der Installation eine Reihe von Benutzergruppen an So finden sich in der Regel immer die Benutzergruppen root und users Mitglied von root sind Benutzer die ber root Berechtigungen verf gen In der Gruppe users sind alle normalen Benutzer beherbergt S Benutzergruppen erleichtern die Administration von Benutzern ungemein da mit Ihrer Hilfe die Zugriffsrechte einer ganzen Anzahl von Benutzern gezielt ver ndert werden kann So k nnen zum Beispiel Benutzer die alle Zugriff auf ei
188. utzer im System Es gibt dar berhinaus noch spezielle Zugriffsrechte welche Benutzerabh ngigkeiten SUID Bit Gruppenabh ngigkeiten SGID Bit und andere Zugriffe auf Dateien und Verzeichnisse Sticky Bit betreffen diese werden an dieser Stelle allerdings nicht weiter vertieft 22 Mai 2005 52 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn dree l 5 5 Zugriffsrechte 5 5 2 Setzen und ndern von Zugriffsrechten Zugriffsrechte k nnen einfach mit verschiedenen Befehlen gesetzt und ge ndert werden Dies kann entweder ber Text oder entsprechenden Oktalzahlen geschehen Der Befehl f r das Setzen von Zugriffsrechten ist e chmod Rechte Objekt Mittels Text Beispiele e chmod g w Objekt gibt Gruppenangeh rigen Schreibrechte e chmod o x Objekt nimmt allen brigen Nutzern die Ausf hrungsrechte e chmod go Objekt setzt die Rechte f r group und other auf keine Rechte Dabei gibt es die Operationen wegnehmen von Rechten hinzuf gen und Recht exakt setzen Alle anderen Buchstaben entsprechen den Benutzergruppen bzw den entsprechenden Rechten Mittels Oktalzahlen Das Setzen und ndern von Zugriffsrechten mittels Oktalzahlen ist etwas schwieriger zu verstehen als mittels Text erwei t sich jedoch in der allt glichen Linux Praxis doch als umso einfacher wenn man das Konzept verstanden hat Wenn z B die Rechte chmod 754 brief txt gesetzt werden bedeuted dies dass die Da
189. v hda primary master IDE oftmals die Festplatte e dev hdb primary slave IDE e dev hdc secondary master IDE oftmals auch CD ROM Laufwerk e dev hdd secondary slave IDE Fur SCSI Devices ist dies hnlich e dev sda erstes SCSI Device e dev sdb zweites SCSI Device e dev sdc drittes SCSI Device usw Festplatten Partitionen Die Partitions Nummerierung folgt nun einem hnlich einfachen Schema f r die 4 prim ren Par titionen primary partitions gilt hier beispielsweise f r dev hda e dev hdal e dev hda2 e dev hda3 e dev hda4 Neben den prim ren Partitionen gibt es noch erweiterte Partitionen extended partitions Eine erweiterte Partition ist eine Variante einer prim ren Partition kann aber kein eigenes Dateisystem beinhalten Anstatt dessen enth lt eine erweiterte Partition logische Partitionen ogical partitions 22 Mai 2005 58 Kerstin Rossek amp Silke Wacker Der letzte Unix Kurs vor der Auto Ahn a a o ee 5 7 Partitionierung welche die Nummern 5 16 besitzen Insgesamt kann es entweder 4 prim re Partitionen geben oder eben anstatt einer der prim ren Partitionen eine erweiterte Partition welche wiederum bis zu 12 logische Partitionen enth lt Mit diesem Schema k nnen also pro Festplatte ein Maximum von 15 Partitionen adressiert werden 3 prim re 12 logische Partitionen Um diesen relativ einfachen Zusammenhang besser zu verstehen folgend ein Beispiel Abbildung 5
190. weiteren Protokoll Elemente aus Das NVT bildet somit die Grundstruktur des Telnet Protokolls Die Hauptaufgabe des NVT be steht darin unterschiedliche Terminals bedingt z B durch unterschiedliche Betriebssysteme auf Client und Server miteinander durch Konvertierung kompatibel zu machen So stellt das NVT beispielsweise an seinen Endpunkten eine virtuelle Tastatur und einen virtuellen Drucker Monitor zur Verf gung welche Eingaben und Ausgaben entsprechend konvertieren 2 Negotiated Options Das Aushandeln dieser Optionen garantiert dass beide Rechner optimal miteinander funk tionieren So kann an dieser Stelle beispielsweise das Tastaturlayout abgeglichen werden 3 Symmetrische Verbindung Kerstin Rossek amp Silke Wacker 119 22 Mai 2005 Der letzte Unix Kurs vor der Auto hn 10 1 telnet In einer Telnet Verbindung sind beide Rechner gleichberechtigt Das heisst dass nicht nur Rechner A kann auf B zugreifen kann sondern auch umgekehrt Rechner B auf A 10 1 2 Verwendung des Kommandos telnet Sie k nnen eine Telnet Session unter Linux mit dem Befehl telnet oder telnet ferner_Rechner aufbauen Geben Sie den fernen_ Rechner mit an so wird automatisch versucht eine Verbindung aufzubauen Ohne Angabe des fernen Rechners befinden Sie sich in der Telnet Konsole und m ssen eine Verbindung mit dem Befehl open unter Angabe des entfernten Rechners ffnen Der Telnet Server wird Sie zur Eingabe von Login und Passwort auf
191. x Kurs vor der Auto Ahn o usus araaras 11 4 Window Manager wurde dass Software f r das X Window System von nun an eine Art Danksagung an die Pro grammierer von XFree86 enthalten musste Nach Ansicht der X Org Foundation l uft dieses Gebahren dem Gedanken von OpenSource Software zuwider Aufgrund der Code Verwandtschaft lassen sich Konfigurationsdateien sowie Anwendungen Windowmanager Desktopsysteme etc weitgehend ohne Anpassung aus einer XFree86 Umgebung bernehmen 11 4 Window Manager Wie bereits am Anfang dieses Kapitels erw hnt wurde stellen Window Manager eine grundlegende grafische Oberfl che dar Sie betten X Applikationen in ihre entsprechenden Fenster ein um diese dann f r den Benutzer bedienbar zu machen zum Beispiel das Verschieben oder das Schlie en eines Fensters Zus tzlich bieten sie meist ein kompaktes Men um X Applikationen direkt und nicht von der Kommandozeile starten zu k nnen Generell gilt f r alle Window Manager dass sie sehr kompakt und leistungsstark sind da sie auf die wesentlichen Dinge reduziert sind Auf der anderen Seite sind sie f r Anf nger sehr ungewohnt da ihre Bedienungsweise keine hnlichkeit zu grafischen Benutzerschnittstellen anderer Betriebssysteme hat vgl Microsoft Windows MacOS etc Beispielhaft soll hier der Window Maker gezeigt werden der bei der Standardinstallation der meis ten Distributionen installiert wird siehe Abbildung 111 3 Die Konfigura
192. x Kurs vor der Auto Ahn 7 1 Kommandozeile machen diverse T tigkeiten auszuf hren Wird eine Shell gestartet also z B die bash dann werden grundlegende Einstellungen get tigt so z B Umgebungsvariablen gesetzt Erst dann ist die Shell bereit Eingaben anzunehmen 7 1 2 Kommandozeileneditor Gibt man also Befehle ein so kann man einfach innerhalb der Kommandozeile navigieren um etwa Tippfehler zu korrigieren Daf r gibt es die folgenden Tastenkombinationen oder gt Bewegung innerhalb der Zeile oder a Cursor zum Zeilenanfang oder Cursor zum Zeilenende Esc gt oder f Cursor ein Wort vorw rts forward Esc oder Cursor ein Wort r ckw rts backward HT E Bildschirm l schen Buchstabe L nicht Ziffer 1 Abbildung 7 1 Kommandozeileneditor Tasten 20 7 1 3 Automatische Kommando und Dateinamenerweiterung Tabulator Taste Wie bereits in Kapitel angesprochen kann man mittels der Tabulator Taste Kommandos oder Dateinamen erweitern Alle dem System bekannten Kommandos genauer diejenigen die sich im Pfad befinden k nnen automatisiert erweitert werden Dies gilt ebenso f r Datei und Verzeichnisnamen Befindet sich z B im aktuellen Verzeichnis die Datei brief_ am oma txt und man m chte sich diese per less anzeigen lassen so gen gt es einzugeben less b und auf die Tabulatortaste zu dr cken Danach wird automatisch der Dateiname zu brief an oma Get erg nzt Gibt es allerdin
193. zer eingerichtet Nat rlich gibt es auch noch weitere Shells wie z B die csh C shell die tcsh eine Variante der csh oder die original Shell sh von Steve Bourne Jedoch werden wir uns hier in diesem Kurs auf die bash konzentrieren Die folgenden Punkte sind der Inhalt dieses Kapitels die hier genannten Befehle stellen nur eine bersicht ber die wichtigsten Befehle der nachfolgenden Kapitel dar In den jeweiligen Kapiteln werden auch weitere wichtige Befehle aufgezeigt e Kommandozeile Grundlagen Editor Tabulator Taste Bash History Reservierte Zei chen Quotierung Erweiterungen Wildcards e 7 2 Kommandos wichtige Shell Kommandos amp amp Substitution Arithmetische Erweiterung Aliase e 7 3 Variablen Auswahl wichtiger Variablen Setzen v Variablen Export Path e 7 4 Shellprogrammierung Grundlagen Beispiele 7 1 Kommandozeile 7 1 1 Bash Basics Die Bash ist ein m chtiges interaktives Werkzeug es gibt fast nichts was man nicht mit der Bash realisieren kann Ist die Bash bereit dann erscheint meist ein Zeichen wie z B In dieser Zeile kann ein Benutzer dann seine Befehle eingeben diese Zeile wird auch Kommandozeile genannt Die Bash selbst ist ein Programm welches ein Interface darstellt zwischen Mensch und Maschine Deshalb ist diese auch mit einer Menge Features ausgestattet welche es dem Benutzer einfach Kerstin Rossek amp Silke Wacker 85 22 Mai 2005 Der letzte Uni
Download Pdf Manuals
Related Search
Related Contents
HP LaserJet 1320N User's Manual Marmitek FM10 compte-rendu de la reunion du 31 janvier 2012 AUTOMATIC DRUM WASHING MACHINE USER MANUAL DK-0917S How to use ArctiClean Thermal Material Remover UNLIMITED および UNLIMITED・プラス 利用規約 Extended Warranty Plan condair cP3 d Copyright © All rights reserved.
Failed to retrieve file