Unix - Linux. Eine Einführung von Wolfgang Pulina



Ähnliche Dokumente
Das Handbuch zu KNetAttach. Orville Bennett Übersetzung: Thomas Bögel

SFTP SCP - Synology Wiki

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Betriebssystem Windows - SSH Secure Shell Client

Anleitung für die Verwendung des CIP Pools von eigenen Rechner

Novell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar ZID Dezentrale Systeme

Um dies zu tun, öffnen Sie in den Systemeinstellungen das Kontrollfeld "Sharing". Auf dem Bildschirm sollte folgendes Fenster erscheinen:

Gibt Daten im erweiterten Format aus. Dies beinhaltet die Angabe von Zugriffsrechten, Besitzer, Länge, Zeitpunkt der letzten Änderung und mehr.

PC-Kaufmann Supportinformation - Proxy Konfiguration für Elster

Werkzeuge der Informatik UNIX

Anleitung: Webspace-Einrichtung

FTP-Leitfaden RZ. Benutzerleitfaden

Windows 7 Winbuilder USB Stick

Anleitungen zum Publizieren Ihrer Homepage

MetaQuotes Empfehlungen zum Gebrauch von

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

COSA. Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand Copyright

Eine Einführung in die Installation und Nutzung von cygwin

Web-Kürzel. Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter

Konfiguration eines DNS-Servers

SSH Authentifizierung über Public Key

Datensicherung. Beschreibung der Datensicherung

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)

Manuelle Konfiguration einer VPN Verbindung. mit Microsoft Windows 7

Kurzanleitung zu. von Daniel Jettka

Nutzung von GiS BasePac 8 im Netzwerk

Kleines Handbuch zur Fotogalerie der Pixel AG

Programme im Griff Was bringt Ihnen dieses Kapitel?

FastViewer Remote Edition 2.X

Installation / Aktualisierung von Druckertreibern unter Windows 7

Memeo Instant Backup Kurzleitfaden. Schritt 1: Richten Sie Ihr kostenloses Memeo-Konto ein

Aufklappelemente anlegen

Step by Step Remotedesktopfreigabe unter Windows Server von Christian Bartl

Anleitung: Confixx auf virtuellem Server installieren

Lizenzen auschecken. Was ist zu tun?

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.

Bedienungsanleitung für den SecureCourier

Sicherer Datenaustausch zwischen der MPC-Group und anderen Firmen. Möglichkeiten zum Datenaustausch... 2

-Bundle auf Ihrem virtuellen Server installieren.

Sie wollen Was heißt das? Grundvoraussetzung ist ein Bild oder mehrere Bilder vom Wechseldatenträger

Einfügen von Bildern innerhalb eines Beitrages

Installationsanleitungen

Outlook Web App 2010 Kurzanleitung

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

Der Kalender im ipad

Guide DynDNS und Portforwarding

Objektorientiertes Programmieren mit Suse Linux

Inhalt. meliarts. 1. Allgemeine Informationen Administration Aufruf Das Kontextmenü Vorlagen...

Betriebshandbuch. MyInTouch Import Tool

SANDBOXIE konfigurieren

Folgeanleitung für Fachlehrer

Einstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG

Anwenderdokumentation AccountPlus GWUPSTAT.EXE

Speichern. Speichern unter

Anleitung zur Erstellung einer Batchdatei. - für das automatisierte Verbinden mit Netzlaufwerken beim Systemstart -

Die Formatierungsregeln (die so genannte Wiki-Syntax) für Texte in DokuWiki sind zu großen Teilen die selben, wie in anderen Wiki-Systemen.

Anlegen eines DLRG Accounts

Handbuch B4000+ Preset Manager

FTP-Server einrichten mit automatischem Datenupload für

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten

Daten-Synchronisation zwischen dem ZDV-Webmailer und Outlook ( ) Zentrum für Datenverarbeitung der Universität Tübingen

Publizieren von Webs mit SmartFTP

Benutzeranleitung (nicht für versierte Benutzer) SSH Secure Shell

Tapps mit XP-Mode unter Windows 7 64 bit (V2.0)

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7

Eprog Starthilfe. 5. Oktober Einleitung 2

Modul 2.2: Zugang zu Ihren Teilnehmer-Ordnern via ftp (zum Dateientransfer):

Comtarsia SignOn Familie

Folgeanleitung für Klassenlehrer

H A N D B U C H FILEZILLA. World4You Internet Service GmbH. Hafenstrasse 47-51, A-4020 Linz office@world4you.com

Computeria Solothurn

Musterlösung für Schulen in Baden-Württemberg. Windows Basiskurs Windows-Musterlösung. Version 3. Stand:

Wie halte ich Ordnung auf meiner Festplatte?

Achung! User müssen unter Linux schon erstellt sein!

Kennen, können, beherrschen lernen was gebraucht wird

Kurzanleitung BKB-E-Banking-Stick

SAMMEL DEINE IDENTITÄTEN::: NINA FRANK :: :: WINTERSEMESTER 08 09

2. Die eigenen Benutzerdaten aus orgamax müssen bekannt sein

Durchführung der Datenübernahme nach Reisekosten 2011

Kapitel 1: Betriebssystem IX. W indows Explorer und der Arbeitsplatz Teil 2

IBM Software Demos Tivoli Provisioning Manager for OS Deployment

Um über FTP Dateien auf Ihren Public Space Server - Zugang laden zu können benötigen Sie folgende Angaben:

Zentrale Installation

Computer Algebra Plan der Vorlesung. erstes Drittel: linux, emacs, L A TEX zweites Drittel: Sage als Taschenrechner letztes Drittel: Python für Sage

EASYINSTALLER Ⅲ SuSE Linux Installation

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:

KURZANLEITUNG CLOUD OBJECT STORAGE

WebDAV-Zugang unter Windows 7 mit NetDrive

Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me

Artikel Schnittstelle über CSV

ICT-Triengen - Zugang für Lehrpersonen

Step by Step Webserver unter Windows Server von Christian Bartl

Whitepaper. Produkt: combit Relationship Manager / address manager. Dateiabgleich im Netzwerk über Offlinedateien

Installation eblvd (Fernwartung)

Einleitung. Hauptteil. Wir befinden uns nun im Demoarchiv.

Bedienungsanleitung für das IT Center Webhosting

Übung - Konfigurieren einer Windows-XP-Firewall

OP-LOG

Installation und Sicherung von AdmiCash mit airbackup

Transkript:

Unix - Linux Eine Einführung von Wolfgang Pulina Universität Regensburg Rechenzentrum Oktober 2002

Vorwort zur dritten Auflage Seit 12 Jahren halte ich am Rechenzentrum der Universität Regensburg den Kurs Einführung in Unix, und seit 12 Jahren wird dieser Kurs immer wieder von vielen Teilnehmern besucht. Dieses große Interesse ist umso erstaunlicher, als dass ein Betriebssystem wie Unix in der gesamten EDV-Landschaft eine eher periphere Rolle zu spielen scheint. Doch bei genauerer Betrachtung wird man feststellen, dass Unix nach wie vor einen zentralen Platz unter den Betriebssystemen einnimmt, vor allem dann, wenn es darum geht, hochverfügbare, skalierbare Leistungen zur Verfügung zu stellen. Es gibt aber noch einen weiteren Grund für das große Interesse an Unix-Betriebssystemen und dieser Grund heisst Linux. Aus der Spielwiese für Programmierer und Informatiker ist mittlerweile ein ernstzunehmendes System geworden, das sogar auf vielen Schreibtischen der Privatwirtschaft seinen Platz gefunden hat. Auch im häuslichen Bereich wird zunehmend Linux eingesetzt, wobei es hier hauptsächlich darum geht, die Alternativen zu einem anderen marktbeherrschenden Betriebssystem auszuloten. Diese Entwicklung hat mich dazu veranlasst, mein kursbegleitendes Skript zu überarbeiten. Gemeinsamkeiten und Unterschiede zwischen Unix und Linux wurden deutlicher herausgestellt und mit entsprechenden Beispielen dokumentiert. Eine Sammlung ausgewählter Web-Links wurde hinzugefügt, und wird in der online-version des Kurs-Skriptes ständig erweitert. Ein einwöchiger Kurs kann natürlich unmöglich das gesamte Potential von Unix/Linux ergründen. Der Kurs soll vielmehr als Anregung betrachtet werden, sich intensiver mit dem Betriebssystem und seinen Anwendungen auseinanderzusetzen. Ich freue mich, falls mir dies mit vorliegender Publikation gelingen sollte, bin aber auch offen für alle Anregungen, die mir dabei helfen, etwas besser zu machen. Zum Schluss möchte ich mich bei allen bedanken, die in Diskussionen und Gesprächen wertvolle Ideen zum Werden dieses Kurs-Skriptes beigetragen haben: Dr. Christoph Bauer, Rudolf Holzer und Dr. Fritz Wünsch - Vielen Dank. Wolfgang Pulina - 30. September 2002

Inhaltsverzeichnis 1. Einleitung 1 1.1. Typographische Konventionen................................. 1 1.2. Die Entwicklung von Unix................................... 2 1.3. Charakterisierung von Unix................................... 3 2. Erste Schritte 5 2.1. Zugang zu einem Unix-Rechner................................ 5 2.1.1. Login über das Datennetz............................... 5 2.1.2. Dateitransfer über das Datennetz............................ 10 2.1.3. Unix-Desktop über die PC-Xserver-Emulation.................... 12 2.2. Passwörter............................................ 13 2.3. Benutzeroberflächen und Benutzerumgebung......................... 14 2.4. Unix-Dokumentation...................................... 18 2.5. Spezialzeichen und reguläre Ausdrücke............................ 21 3. Kommandos und Prozesse 23 3.1. Der Login-Prozess....................................... 24 3.2. Kommandoeingabe....................................... 25 3.3. Prozesskontrolle......................................... 26 4. Das Dateisystem 31 4.1. Dateiarten und Dateinamen................................... 32 4.2. Kommandos mit Dateien.................................... 34 4.3. Kommandos mit Directories.................................. 37 4.4. Dateischutz........................................... 38 4.5. Drucken von Dateien...................................... 40 5. Editoren 41 5.1. Der vi - Editor.......................................... 41 5.2. Der emacs - Editor....................................... 44 5.3. Sonstige Editoren........................................ 47 6. Die csh/tcsh - Shell 48 6.1. Kommandowiederholung.................................... 48 6.2. Vervollständigung von Kommandos, Variablen und Dateinamen............... 49 6.3. alias - Mechanismus...................................... 50 6.4. Ein- und Ausgabeumlenkung.................................. 51 6.5. Variable............................................. 52 6.5.1. Lokale Variable..................................... 52 6.5.2. Globale Variable.................................... 55

6.6. Shell-Programmierung..................................... 56 6.6.1. Die if - Anweisung................................... 57 6.6.2. Die foreach - Schleife................................. 57 6.6.3. Die while - Schleife.................................. 58 6.6.4. Die shift - Anweisung................................. 59 6.6.5. Fallunterscheidung mit switch und case........................ 59 6.6.6. Die break- und continue-anweisung.......................... 60 6.6.7. Die goto-anweisung.................................. 61 6.6.8. Allerlei Nützliches................................... 61 7. Textmusterverarbeitung mit awk 63 7.1. Aufruf und Programmstruktur................................. 63 7.2. Die Sprachelemente von awk.................................. 65 7.3. Bedingungen.......................................... 67 7.4. Aktionen............................................ 68 7.4.1. Ausgabeanweisungen.................................. 68 7.4.2. Kontrollanweisungen.................................. 69 7.5. Sonstiges............................................ 70 A. Ausgewählte Web-Links 71

1. Einleitung 1.1. Typographische Konventionen In dieser Publikation werden häufig Kommandos, Dateiinhalte, Kommunikationsdialoge und Programm- Strukturen widergegeben, die für ein leichteres Verständnis der behandelten Themen dienen sollen. Die Interaktion mit dem Unix-System soll daher auch aus dem Schriftbild logisch erkennbar sein. Folgende typographische Konventionen sind in diesem Zusammenhang gültig. ls -al cp file_old file_new head [-n] [filename...] /etc/hosts <Ctrl> f rechner> Dieser Text kann wörtlich übernommen werden. Meist handelt es sich dabei um Kommandos. Bei diesem Text kann nur das cp wörtlich übernommen werden. Die beiden in Schrägschrift gesetzten Begriffe sind nur Platzhalter für konkrete Werte. Alle in eckigen Klammern stehenden Angaben sind optional. Dateinamen werden immer in Courier dargestellt. Control-Tastensequenz: die Control-Taste wird gedrückt gehalten und gleichzeitig die Taste f betätigt. Bei deutschen Tastaturen entspricht die <Strg>- Taste der <Ctrl>-Taste. Rechner-Prompt; dahinter stehen die Kommandos, die am Bildschirm eingegeben werden können. Dateiinhalte und Bildschirmausgaben werden in einfachem Courier widergegeben. Als Beispiel soll das Kommando ls -l /etc/motd dienen. ls -l /etc/motd -rw-r--r-- 1 root sys 54 Jan 9 2000 /etc/motd Im laufenden Text werden Hervorhebungen entweder in italic oder in bold dargestellt. Nach Kommando- Eingaben ist immer die Betätigung der <Return>- bzw. der <Eingabe>-Taste erforderlich. In den Kommando-Beispielen wird dies nicht explizit dokumentiert.

1. Einleitung 2 1.2. Die Entwicklung von Unix Das Betriebssystem Unix hat bereits eine über 30-jährige Entwicklungsgeschichte hinter sich. Die Entwicklung begann in einer Zeit, in der Computer noch sehr groß und teuer waren. Üblicherweise wurde auf diesen Großrechnern im sog. Stapelbetrieb gearbeitet. Das sah gewöhnlich so aus, dass ein Stapel Lochkarten in den Rechner eingelesen wurde, der Rechner dann die Bearbeitung vornahm und das Ergebnis auf einen Drucker ausgab. Falls das Ergebnis nicht den Wünschen entsprach, mussten die fehlerhaften Lochkarten ersetzt werden und der ganze Zyklus begann von neuem. Der Wunsch vieler Programmierer nach einer Arbeitsumgebung, die den interaktiven Dialog in einem Mehrbenutzerbetrieb und das Teamwork unterstützt, mündete in der Entwicklung eines neuen Betriebssystems: Unix. Ken Thompson entwickelte 1969 bei den Bell Laboratories das erste Unix auf einer PDP-7, einem Rechner der Firma Digital Equipment. Dieses erste Unix war noch vollständig in Assembler geschrieben. Erst mit der Entwicklung der Programmiersprache C von Dennis Ritchie wurde das Betriebssystem 1971 in C umgeschrieben. Die Verbreitung des Systems erfolgte zunächst im akademischen Umfeld, indem es kostenlos an Universitäten und wissenschaftliche Institute verteilt wurde. Vielfach wurde das System an verschiedenen Stellen weiterentwickelt, so dass im Laufe der Zeit unterschiedliche Unix-Derivate entstanden (PWB/UNIX, IS/1, XENIX). Seit 1982 werden Unix-Betriebssysteme von kommerziellen Systemanbietern wie z.b. IBM, HP und Sun vertrieben. Da die Entwicklung verschiedener Unix-Systeme zu immer mehr Inkompatibilitäten führte, entschloss man sich, Anfang der 90er Jahre durch die Definition von Standards die konsequente Weiterentwicklung zu einem konvergenten Basissystem voranzutreiben. Eine wichtige Rolle spielten dabei Standardisierungsorganisationen wie IEEE und X/Open. Das Institute of Electrical and Electronic Engineers, kurz IEEE, ist eine der vielen industriellen Organisationen, die vom American National Standards Institute (ANSI) mit der Definition und Spezifizierung von Standards beauftragt worden sind. Das als POSIX-Ausschuss bekannte Gremium der IEEE besitzt die Aufgabe, den Schnittstellenstandard für alle Aspekte der Betriebsumgebung festzulegen. Ziel von X/Open ist es, eine Grundlage für die Entwicklung einer gemeinsamen Anwendungsumgebung zu schaffen. So hat X/Open beispielsweise POSIX als Basisbetriebssystem-Schnittstelle unterstützt und das X Window System des MIT (Massachusetts Institute of Technology) als Benutzerschnittstelle übernommen. Die Arbeit der Organisation ist in Form von Referenzdokumenten mit der Bezeichnung X/Open Portability Guide oder XPG erhältlich, die als Leitfaden für Portierbarkeit dienen sollen. 1991 schlug schließlich die Geburtsstunde von Linux. Der Finne Linus Thorvalds entwickelte einen Betriebssystemkern, um vor allem die Leistung der damals aktuellen Intel 80386-Prozessoren ausnutzen zu können. Dabei bediente er sich freier Software, die im Rahmen des GNU-Projekts zur Verfügung gestellt wurde (GNU C-Compiler). Von Anfang an wurde darauf Wert gelegt, dass auch Linux den POSIX- und X11-Standards entspricht. Das besondere an Linux ist die Tatsache, dass die Entwicklung nicht in den Händen einer Firma liegt, sondern aufgeteilt ist auf Software-Entwickler, die verteilt über die ganze Welt arbeiten und über das Internet miteinander kommunizieren. Zusammenfassend kann festgestellt werden, dass alle existierenden Unix- und Linux-Betriebssysteme im wesentlichen die von den oben beschriebenen Gremien definierten Standards (POSIX, X11) implementieren. Als kleinste gemeinsame Betriebssystembasis wird von nahezu allen Unix- und Linux-Varianten System V Release 4 unterstützt. Dies garantiert eine hohe Äquivalenz der Systeme untereinander.

1. Einleitung 3 1.3. Charakterisierung von Unix Eine Charakterisierung von Betriebssystemen kann aus unterschiedlichen Perspektiven erfolgen. Da wäre zum einen die Unterscheidung von Real-Time- und Time-Sharing-Systemen, zum anderen die Aufteilung in Client- und Server-Systeme. Ferner können Kriterien wie Portierbarkeit und Skalierbarkeit zur Differenzierung herangezogen werden. Abgesehen von den unterschiedlichen Funktionstypen besitzt ein Unix-System eine grundlegende Struktur, die durch nebenstehende Abbildung verdeutlicht Applications wird. Die Basis des Betriebssystems bildet der Kernel, der Betriebssystemkern, Shell der für die Ansteuerung der Hardware verantwortlich ist. Die Hauptaufgaben Kernel des Kernels sind die Prozessverwal- tung die Hauptspeicherverwaltung, die Ein/Ausgabeverwaltung und die Dateiverwaltung. Die Leistungsfähigkeit eines Unix-System hängt maßgeblich von der Qualität der Implementierung dieser Basisfunktionen ab. Als nächste Schicht im Strukturmodell folgen systemnahe Programme wie die Shell und sog. Utilities. Die Shell ist für die kommandoorientierte Interaktion zwischen Benutzer cc Hardware Utilities und System verantwortlich, während die Utilities eine Sammlung nützlicher Abbildung 1.1.: Struktur des Betriebssystems Programme darstellen (das Kommando ls ist eine derartige Utility). Den Abschluss bilden die Applications, also die eigentlichen Anwendungs- Programme. Der Compiler cc gehört ebenso zu den Anwendungen wie z.b. das Office-Paket StarOffice. Für eine kurze Charakterisierung von Unix sollen folgende Aspekte herangezogen werden. Unix ist ein Dialogsystem Dies ist zwar in der heutigen Zeit nichts besonderes, bei der Entstehung von Unix waren aber immer noch die batch-orientierten Systeme in der Mehrzahl. Unix ist primär ein Multi-User/Multi-Tasking-Betriebssystem Multi-User bedeutet, dass an einem Unix-System gleichzeitig mehrere Benutzer arbeiten können. Multi-Tasking heißt, dass jeder Benutzer auch mehrere Programme quasi gleichzeitig ablaufen lassen kann. Nebenbei sei bemerkt, dass es heute noch andere Betriebssysteme gibt, die diese Funktionalitäten entweder überhaupt nicht oder nur sehr eingeschränkt besitzen. Unix unterstützt das virtuelle Speicherkonzept Das bedeutet, dass im Prinzip ein großes Programm auf relativ klein dimensionierter Hardware laufen kann. Erreicht wird dies durch die sog. virtuelle Speicheradressierung. Erst zur Laufzeit des Programms werden die virtuellen Adressen in physikalische Adressen umgesetzt.

1. Einleitung 4 Unix unterstützt das Pipe-Konzept Dabei können die Ausgabedaten eines Prozesses unmittelbar als Eingabedaten einem anderen Prozess übergeben werden. Unix verfügt über eine hierarchische Dateiverwaltung Wie auch bei anderen Betriebssystemen ist die Dateistruktur baumartig aufgebaut. Unix besitzt leistungsfähige Shells als Benutzerschnittstelle Die kommandoorientierte Interaktion mit dem System wird über Shells abgewickelt. Diese Shells bieten vielfältige Möglichkeiten für die Programmierung und Automatisierung von Vorgängen. Unix ist fast vollständig in C programmiert Die Sprache C kombiniert die Effizienz einer Assemblersprache mit den Steuerstrukturen moderner Sprachkonzepte. Heute sind mehr als 95 % in C geschrieben. Unix ist einfach in Datennetze zu integrieren Alle Funktionen für die Integration in Datennetze sind bereits vorhanden. Unix ermöglicht eine hohe Skalierbarkeit Das Betriebssystem kann Rechner unterstützen, die einen, zwei, aber auch 128 Prozessoren besitzen können. Die Leistungsfähigkeit steigt dabei fast linear. Ferner können durch die Vernetzung von Rechner-Knoten in Kombination mit geeigneter Software noch weitere Leistungsreserven mobilisiert werden (Linux-Cluster-Computing). Unix-Rechner werden in den verschiedensten Bereichen eingesetzt: als Computeserver, Datenbankserver, Mailserver, Bootserver und natürlich als Web-Server, aber auch als Firewall-Systeme und für das Netzwerk- Management. Als Desktop-Systeme finden Unix-Rechner vor allem im technischen Computing als CAD- Arbeitsplätze Verwendung. Auch die Filmindustrie hat die Leistungsfähigkeit von Unix erkannt. So entstanden Animationsfilme wie Das große Krabbeln, Toy Story oder Spirit vollständig auf Unix-Rechnern. Im Film Titanic wurden einige Sequenzen auf Linux-Rechnern gerechnet. Unix erfüllt in höchstem Maße die Ansprüche an Zuverlässigkeit und Skalierbarkeit, so dass es aus dem Bereich der Mission-Critical-Anwendungen nicht mehr wegzudenken ist. Im Desktop-Bereich hat sich in den letzten Jahren vor allem Linux als ernsthafte Alternative zu einem anderen, marktbeherrschenden System etabliert.

2. Erste Schritte 2.1. Zugang zu einem Unix-Rechner Der Zugang zu einem Unix-/Linux-System ist generell mit einer Autorisierung des Benutzers verbunden. Der Benutzer meldet sich mit einem Account- bzw. Benutzernamen an und muss anschließend ein Passwort eingeben. Ein Einloggen auf einem Unix-/Linux-System kann direkt am Rechner selbst oder aber über das Datennetz erfolgen. Abbildung 2.1.: Login an einer Sun-Workstation Das Login an der Console eines Unix-/Linux-Rechners erfolgt in der Regel über einen graphischen Login- Bildschirm. Obige Abbildung zeigt einen Login-Bildschirm auf einer Sun-Workstation. Über die Options können Login-Besonderheiten wie alternative Benutzeroberflächen und das Command Line Login eingestellt werden. Mit dem Command Line Login kann ein Einloggen ohne Benutzeroberfläche erfolgen. Auf einer Linux-Console wird meist der kdm-login-manager für die Eingabe von Benutzername und Passwort eingesetzt. Auch hier lassen sich bereits beim Login alternative Benutzeroberflächen anwählen (kde, gnome). Neben dem direkten Login an der Console eines Unix-/Linux-Rechners gibt es noch verschiedene Möglichkeiten, einen Unix-Rechner über das Datennetz zu nutzen. Dabei wird unterschieden zwischen reinen Terminal-Verbindungen, Verbindungen zum Austausch von Dateien und Verbindungen, die die Nutzung von graphischen Unix-Anwendungen zulassen. 2.1.1. Login über das Datennetz Ausgangspunkt für das Login über das Datennetz ist ein lokaler Rechner, auf dem Unix/Linux oder MS- Windows installiert ist. Die Konfiguration des Rechners muss eine fehlerfreie Netz-Kommunikation erlauben (IP-Adresse, Netzmaske, usw.).

2. Erste Schritte 6 Lokaler Rechner ist ein Unix/Linux-System Die Programme slogin und ssh bieten die derzeit bevorzugte Methode, sich von einem lokalen in einen entfernten Unix-Rechner einzuloggen. Dabei läuft die gesamte Datenkommunikation dieser sog. secure shell zwischen den Rechnern verschlüsselt ab. Der entfernte Rechner (remote host) kann den Zugang erlauben, verbieten oder differenziert regeln. Beim erstmaligen Login wird im lokalen Home-Verzeichnis der sog. public key des remote host abgespeichert. Dies erfolgt im Rahmen eines interaktiven Dialogs. rechner> slogin hostname rechner> slogin ip-address rechner> ssh hostname rechner> ssh ip-address Remote Login mittels Rechnernamen Remote Login mittels IP-Adresse Remote Login mittels Rechnernamen Remote Login mittels IP-Adresse Abbildung 2.2.: Remote Login mittels secure shell In obigem Beispiel loggt sich ein Benutzer namens teu19147 mittels slogin von dem lokalen Rechner rciplx2 in den Rechner rss6 ein. Da das secure-shell-login zu diesem Rechner zum erstem Mal erfolgt, muss der public key des Rechners rss6 im lokalen Home-Verzeichnis des Benutzers abgespeichert werden (in der Datei.ssh/known_hosts). Diese Speicherung wird aber erst dann vorgenommen, wenn der Benutzer auf die Frage Are you sure you want to continue connecting (yes/no)? mit yes antwortet. Dabei ist wichtig, dass die Antwort yes ausgeschrieben wird! Die Eingabe von y genügt nicht. Das System speichert daraufhin den public key des remote host in der Datei.ssh/known_hosts und fordert den Benutzer auf, sein Passwort einzugeben. Beim wiederholten Login in den Rechner rss6 ist eine Abspeicherung des public keys nicht mehr notwendig. Nach dem slogin-kommando wird sofort die Eingabe des Passworts verlangt. Im allgemeinen ändern sich die public keys der entfernten Rechner nicht. Falls dies aufgrund einer Neuinstallation oder nach Datenverlust doch einmal passiert, ist es notwendig, den public key des entsprechenden Rechners aus der Datei.ssh/known_hosts zu entfernen. Bei erneuter Verbindungsaufnahme wird dann der neue public key abgespeichert.

2. Erste Schritte 7 Die Kommandos slogin und ssh lassen sich völlig identisch handhaben (slogin ist einfach ein symbolischer Link auf das Programm ssh). Beide Kommandos besitzen die gleichen Optionen. Die folgenden Beispiele werden daher nur mit dem Kommando ssh widergegeben. rechner> ssh -l teu19147 rss6 rechner> ssh teu19147@rss6 rechner> ssh rss6 finger Remote Login zum Rechner rss6 als Benutzer teu19147 Remote Login zum Rechner rss6 als Benutzer teu19147 Remote Login mit anschließender Ausführung des finger-kommandos rechner> ssh rss6.rz.uni-regensburg.de Remote Login mit full-qualified Internet-Name Letztes Beispiel zeigt, wie für die Adressierung eines Rechners der full-qualified Hostname verwendet wird. Dies ist immer dann erforderlich, wenn auf Rechner zugegriffen wird, die nicht im lokalen Nameserver verzeichnet sind. Ein Login von Unix- zu Unix-System ist auch mit Programmen wie telnet, rlogin und rsh möglich. Sie stehen in der Regel auf allen Unix/Linux-Systemen zur Verfügung. Voraussetzung für ein erfolgreiches Login ist allerdings, dass der Zielrechner diese Art der Verbindung zulässt. rechner> telnet hostname rechner> telnet rss6 rechner> telnet ip-address rechner> telnet 132.199.38.92 rechner> rlogin hostname rechner> rlogin rss6 rechner> rsh hostname rechner> rsh rss6 Remote Login mittels Rechnernamen Remote Login zum Rechner rss6 Remote Login mittels IP-Adresse Remote Login zum Rechner rss6 Remote Login mittels Rechnernamen Remote Login zum Rechner rss6 Remote Login mittels Rechnernamen Remote Login zum Rechner rss6 Bei der Eingabe des Rechnernamens ist darauf zu achten, dass bei externen Rechnern, also Rechnern, die sich nicht im Intranet befinden, der full-qualified Internet-Name eingegeben werden muss. Die Kommandos rlogin und rsh ermöglichen ferner mit der Option -l das Remote-Login unter einem anderen Benutzernamen. rechner> rlogin rss6.rz.uni-regensburg.de Remote Login mit full-qualified Internet-Name rechner> rlogin -l rar12345 rss6 Remote Login zum Rechner rss6 als Benutzer rar12345 rechner> rsh -l rar12345 rss6 Remote Login zum Rechner rss6 als Benutzer rar12345 Wie beim Login an der Rechner-Console, wird die Eingabe des korrekten Passworts verlangt. Die Abfrage nach dem Passwort kann bei den Programmen rlogin und rsh unterdrückt werden, indem auf dem Zielrechner im Home-Verzeichnis eine Datei namens.rhosts erstellt wird, die den Namen des Herkunftsrechners enthält. Das Login mittels telnet, rlogin und rsh ist allerdings mit einer erheblichen

2. Erste Schritte 8 Sicherheitsproblematik behaftet. Diese drei Programme führen von sich aus keine Verschlüsselung der zu transferierenden Daten durch. Jedes Zeichen, das an der Tastatur eingegeben wird, wird im Klartext über das Datennetz gesendet. So ist es für einen böswilligen Benutzer relativ leicht, mit sog. Schnüffelprogrammen Passwörter auszuspionieren. Seit einiger Zeit gibt es zwar die Möglichkeit, die Verschlüsselung auf Protokollebene (TCP, UDP) zu aktivieren (IPsec), allerdings bleibt dies aufgrund des Aufwands meist auf kleine Netze beschränkt. An der Uni Regensburg werden diese unsicheren Programme nicht verwendet. Lokaler Rechner ist ein MS-Windows-System Voraussetzung für ein remote Login von MS-Windows zu einem Unix-/Linux-Rechner ist eine Terminalemulation, die auf dem MS-Windows-System installiert sein muss. Um auch eine sichere Kommunikation zu gewährleisten, sollte die Terminalemulation die Datenverschlüsselung unterstützen (ssh1- bzw. ssh2- Protokoll der secure shell). An der Universität Regensburg steht für diesen Zweck die SSH Secure Shell 3.0 zur Verfügung. Diese Software muss auf dem PC installiert sein. Ein sicheres Login von einem MS- Windows-Rechner zu einem Unix-/Linux-Rechner wird im folgenden geschildert. Als erstes erfolgt ein Login am PC mit dem NDS-Passwort. Nachdem MS-Windows hochgefahren ist, wird in einem MS-DOS-Eingabefenster das Kommando ssh2 eingegeben. Es erscheint dann folgendes Fenster. In diesem Fenster wird nun unter dem Menü-Punkt File der Unterpunkt Connect angewählt. Abbildung 2.3.: ssh-login von MS-Windows Abbildung 2.4.: Eingabe von Rechner und Benutzer Im nun erscheinenden Fenster muss nun der Rechner (Host Name) und der User Name eingegeben werden. Als Host Name kann z.b. rss6 oder jeder bliebige Name eines öffentlichen Unix- bzw. Linux- Rechners angegeben werden.

2. Erste Schritte 9 Falls der Hostkey des Login-Rechners noch nicht bekannt ist, erscheint nun folgendes Bild. Das Abspeichern des public Hostkeys erfolgt nur beim ersten Verbindungsaufbau. Bei allen künftigen Logins auf diesen Rechner unterbleibt diese Abfrage. Abbildung 2.5.: Speichern des public hostkeys Als nächste Interaktion muss das Unix- Passwort eingegeben werden. Abbildung 2.6.: Eingabe des Unix-Passworts Nun kann auf dem Unix-System interaktiv gearbeitet werden. Mit dem Kommando exit erfolgt ein Logout. Soll die Verbindung zum Unix-System beendet werden, so erfolgt dies über die Menü-Punkte File und Disconnect. Abbildung 2.7.: Beenden der ssh-verbindung Neben dem interaktiven Login besitzt dieses Programm noch eine Funktion zum Dateitransfer, die im nächsten Abschnitt beschrieben wird.

2. Erste Schritte 10 2.1.2. Dateitransfer über das Datennetz Die Übertragung von Dateien zwischen Unix-/Linux-Rechnern sowie zwischen Unix-/Linux-Rechnern und MS-Windows-Rechnern setzt wie beim Login eine Autorisierung des Benutzers voraus. Die Funktionalität ist aber ganz speziell auf den Transfer von Dateien ausgerichtet. Auf beiden Rechnern müssen die entsprechenden Programme installiert und aktiviert sein. Dateitransfer zwischen Unix/Linux-Rechnern Die Übertragung von Dateien (files) zwischen Unix-Rechnern wird meist mit Programmen wie scp und sftp durchgeführt. Das s im Namen weist darauf hin, dass es sich hier um eine sichere Art der Datenübertragung handelt. Alle Daten werden verschlüsselt transferiert. Das Programm ftp, das auf jedem Unix-System vorhanden ist, kann zwar auch verwendet werden, allerdings mit dem gleichen Sicherheitsrisiko wie bei den Programmen telnet und rlogin. Passwörter und Daten werden bei ftp unverschlüsselt übertragen. rechner> scp file rechner: sicheres Kopieren einer Datei zu einem anderen Rechner rechner> scp file rechner:subdir sicheres Kopieren einer Datei zu einem anderen Rechner in ein untergeordnetes Verzeichnis rechner> scp file username@rechner: sicheres Kopieren einer Datei in das Home-Directory eines anderen Benutzers auf einem anderen Rechner rechner> scp -r directory rechner: sicheres, rekursives Kopieren eines kompletten Verzeichnisses zu einem anderen Rechner Wie bei den Kommandos ssh und slogin wird bei einem erstmaligen Verbindungsaufbau die Abspeicherung des public hostkeys vorgenommen. Abbildung 2.8.: Sicheres Kopieren über das Datennetz mittels scp In obigem Beispiel wird vom Rechner rciplx8 eine Datei namens user51.ps zum Rechner rss6 in das dort lokal vorhandene Verzeichnis /tmp kopiert. Ein kleines Histogramm veranschaulicht den Fortschritt der Kopieraktion.

2. Erste Schritte 11 Der Dateitransfer mittels sftp funktioniert genauso wie mit dem älteren ftp, nur mit dem Unterschied, dass die Daten verschlüsselt übertragen werden. Abbildung 2.9.: Sicherer Datentransfer mittels sftp Im vorliegenden Beispiel wird eine Datei namens sz.sdw vom Rechner solaris zum Rechner rss6 übertragen. Nach dem sftp-login wird der Transfer mit dem Kommando put sz.sdw angestoßen. Das Kommando exit beendet das Programm. sftp> help sftp> get filename sftp> put filename sftp> mkdir directory gibt Informationen zu sftp aus Datei vom remote Rechner holen Datei zum remote Rechner schicken neues Verzeichnis auf remote Rechner anlegen Weitere Informationen zu sftp können mit dem Kommando man sftp aus den online manual pages abgerufen werden. Dateitransfer zwischen Unix/Linux- und MS-Windows-Rechnern Mit dem an der Uni Regensburg vorhandenen Programm ssh2 können von MS-Windows-Rechnern auch Dateiübertragungen von und zu Unix-Rechnern vorgenommen werden. Dabei wird im Secure-Shell-Fenster der Menü-Punkt Window und dort der Unterpunkt New File Transfer angewählt. Abbildung 2.10.: Sicherer Datentransfer mittels ssh2 unter MS-Windows

2. Erste Schritte 12 Im neu erscheinenden Fenster wird nun die gewünschte Operation gewählt. Upload überträgt Dateien vom Windows-PC zum Unix-Rechner, Download überträgt Dateien vom Unix-Rechner zum Windows-PC. Abbildung 2.11.: Sicherer Datentransfer mittels ssh2 unter MS-Windows: upload Im Upload-Fenster werden die Dateien markiert, die übertragen werden sollen. Anschließend wird auf Upload geklickt. Beim Übertragen von Dateien zwischen einem Unix-Rechner und einem MS-Windows-Rechner sollten die entsprechenden Dateinamen-Konventionen beachtet werden. So können in einem Eingabefenster von MS- Windows nur Dateinamen beschränkter Länge abgebildet werden. Auch auf die Groß- und Kleinschreibung muss Rücksicht genommen werden. Unix-/Linux-Systeme unterscheiden grundsätzlich zwischen Groß- und Kleinschreibung! Besonders bei Dateitransfers von Unix zu MS-Windows ist dies relevant. Hierzu ein Beispiel: Auf Unix liegen zwei Dateien namens brief.txt und Brief.txt vor, die mittels secure ftp nach MS-Windows übertragen werden sollen. Für das Unix-System sind dies zwei verschiedene Dateien. Werden die beiden Dateien hintereinander übertragen, so wird beim zweiten Transfer der Inhalt der ersten Datei einfach überschrieben. MS-Windows kennt bzgl. der Dateinamen keine Unterscheidung zwischen Groß- und Kleinschrift. Es gibt noch eine weitere Möglichkeit, von MS-Windows auf Dateien von Unix-Systemen zuzugreifen. Ermöglicht wird dies durch einen sog. samba-connect zwischen MS-Windows-Client und einem samba- Server, der üblicherweise auf einem Unix-Fileserver installiert ist. Über den Windows-Explorer kann damit ein Unix-Verzeichnis quasi als MS-Windows-Laufwerk zur Verfügung gestellt werden. Die Vorgehensweise wird in einem Web-Link erläutert. 2.1.3. Unix-Desktop über die PC-Xserver-Emulation Auf MS-Windows-PCs kann ein Xserver-Programm aktiviert werden, das den kompletten Unix-Desktop auf dem PC darstellen kann. Diese sog. X-Win32-Software ist auf allen öffentlichen MS-Windows-Rechnern installiert. Alle notwendigen Schritte für die Nutzung des PCs als graphische Unix-Console werden in einem Web-Link erläutert.

2. Erste Schritte 13 2.2. Passwörter Benutzer-Accounts auf Unix-Rechner sind grundsätzlich passwortgeschützt. Passwörter dürfen nicht an andere Personen weitergegeben werden. Ausserdem ist darauf zu achten, dass das Passwort in bestimmten Zeitabständen geändert wird. Bei der Wahl eines Passworts muss wie bei den Dateinamen auf Groß- und Kleinschreibung geachtet werden. Das Passwort sollte nicht weniger als 6 Zeichen besitzen. Eine Kombination von Buchstaben, Ziffern und Sonderzeichen ist empfehlenswert. Die Zeichen @, $, # und! können, aber sollten nicht unbedingt verwendet werden. Ferner sollte auf nicht sichtbare Zeichen verzichtet werden. Das Ändern eines Unix-Passworts erfolgt in der Regel mit dem Kommando passwd. Diese Möglichkeit der Passwortänderung beschränkt sich allerdings auf Einzelplatz- oder Standalone-Systeme. Oft werden mehrere Rechner zu einer Verwaltungseinheit, einer sog. Domain, zusammengefasst. Die meisten Unix/Linux-Rechner an der Universität Regensburg sind in solch einer Domain integriert. Die Verwaltung der Benutzer-Accounts und damit auch der Passwörter wird daher über einen Namensdienst abgewickelt. Die unter Unix bekanntesten Namensdienste sind NIS, NIS+ und LDAP. Das Kommando zum Ändern des Passwortes hängt vom installierten Namensdienst ab. An der Uni Regensburg wird auf allen Unix/Linux-Rechnern der campusweiten Unix-Domäne das Kommando nispasswd zum Ändern des Passworts verwendet. Als Namensdienst wird also NIS+ eingesetzt. rechner> nispasswd Old password: oldpassword New password: newpassword Verification: newpassword Nach einer kurzen Zeit ist das neue Passwort auf allen Rechnern der Domäne gültig. Obiger Hinweis ist sehr wichtig. Nach einer Passwortänderung wird diese Modifikation auf alle vorhandenen NIS+Server repliziert. Dieser Replikations-Vorgang benötigt natürlich eine gewisse Zeit, und diese Zeit sollte erst verstreichen, bevor der Benutzer sich erneut in einen Unix-Rechner einloggt. Wird dies nicht beachtet, kann es dazu kommen, dass der Benutzer sich nicht mehr einloggen kann. Eine 5-minütige Wartezeit sollte daher eingehalten werden. Der Namensdienst NIS+ besitzt umfangreiche Möglichkeiten, den Zugriff auf sog. NIS+Objekte zu regeln. Das bedeutet, dass eine korrekte Autorisierung gegenüber NIS+ nur durch die explizite Angabe des Passworts beim Login erreicht wird. Wird ein Login mittels public-key-verfahren initiiert, so ist danach der Benutzer zwar im Unix-System eingeloggt, im NIS+Namensdienst ist er aber nicht ordnungsgemäß angemeldet (session-key fehlt). Als Konsequenz kann der Benutzer in dieser Situation sein Passwort nicht ändern. Eine nachträgliche Autorisierung gegenüber NIS+ erfolgt mit dem Kommando keylogin. Dabei muss nochmals das Login-Passwort eingegeben werden. Neben dem Unix-Passwort kann ein Benutzer noch über weitere Passwörter verfügen. So erfordert der oben geschilderte samba-connect das einmalige Setzen des sog. Samba-Passworts. Auch beim Login in einen MS-Windows-Rechner wird ein anderes Passwort verwendet, das sog. NDS-Passwort. Bei der Änderung eines dieser drei Passwörter werden nicht gleichzeitig die anderen Passwörter geändert.

2. Erste Schritte 14 2.3. Benutzeroberflächen und Benutzerumgebung Graphische Benutzeroberflächen dienen dazu, die Interaktion zwischen Benutzer und Rechner möglichst einfach zu gestalten. Alle Aktionen sollen leicht intuitiv erfasst werden können. Grundsätzlich kann jedes Unix/Linux-System auch ohne graphische Benutzeroberfläche betrieben werden. Auf Server-Systemen wird sogar bewusst darauf verzichtet, da dies nur unnütz Plattenplatz und Rechenzeit kosten würde. Alle graphischen Benutzeroberflächen unter Unix/Linux basieren auf dem system- und netzwerk-unabhängigen X Window System. Der Ursprung des X Window Systems liegt in zwei Projekten der frühen 80er Jahre: ein Window-Projekt der Standford Universität, bekannt als W und ein Projekt Athena des Massachusetts Institute of Technology (MIT). 1983 gegründet und von MIT, Digital und IBM finanziert, hatte das Projekt Athena u.a. die Zielsetzung, ein netzwerkunabhängiges Graphikprotokoll innerhalb der bunt gemischten Rechnerumgebung der Universität zu entwickeln. Die MIT-Gruppe nahm W in ihr Entwicklungssystem auf und gab ihm den zufälligen Namen X Window System. 1986 bot MIT die erste kommerzielle Version des X Window Systems (X10) an und bildete 1987 eine breitere Industriepartnerschaft, das X Konsortium, um eine kontinuierliche Entwicklung zu gewährleisten. Konsortiumsgründungsmitglieder waren u.a. Tektronix, IBM, Sun, HP und AT&T. Das X Window System ist ein Softwarestandard, der einen Rahmen für fensterbetriebene Anwendungen über das Netzwerk bietet. Es handelt als eine Art Mittelsmann zwischen einer Anwendung und einem Darstellungssystem (X Terminal, Workstation, PC). Bei einer Benutzeroberfläche, die auf dem X Window System basiert, spielen grundsätzlich drei Komponenten zusammen: X-Server, X-Client und Windowmanager. Der X-Server läuft als eigener Prozess auf dem Darstellungssystem und verarbeitet den Input von Devices wie Tastatur und Maus. Auch der Input vom X-Client wird für die Darstellung verwendet. Der X-Client ist die eigentliche Anwendung (z.b. xclock, xterm, xmaple) und kommuniziert mit dem X- Server über das standardisierte X11-Protokoll. Der Windowmanager ist verantwortlich für Fensterrahmen, Verschieben, Vergrößern und Verkleinern und Iconisiern von Fenstern. Je nach verwendetem Windowmanager sieht das Layout auf dem Desktop etwas unterschiedlich aus. Das sog. Look and Feel wird also vom Windowmanager bestimmt. Bekannte Windowmanager sind z.b. twm, mwm (Motif Window Manager), fvwm und dtwm (der Windowmanager unter CDE). Bei Linux-Systemen sind außerdem die Windowmanager kwin unter KDE und icewm-gnome unter Gnome weit verbreitet. Durch die Aufteilung der beiden Funktionen Anwendung und Darstellung ist es möglich, X-Client und X-Server auf unterschiedlichen Rechnern ablaufen zu lassen. So kann der X-Client z.b. auf einer Sun Workstation laufen, als Darstellungssystem wird aber ein PC mit X-Server- Software verwendet. Dadurch kann die gleiche Benutzeroberfläche, die man unmittelbar an der Workstation zur Verfügung hat, auch auf dem PC verwendet werden. Für die individuelle Gestaltung des Desktops kommen grundsätzlich zwei Möglichkeiten in Frage: Das interaktive Verändern des Layouts mit anschließendem Abspeichern und das Modifizieren von speziellen Dateien. Je nachdem, welcher Windowmanager eingestellt ist, muss entweder nach der ersten oder der zweiten Methode vorgegangen werden. Erfolgte das Login unter CDE, KDE oder Gnome, so können mittels kleiner Hilfsprogramme (StyleManager, ControlCenter) vielfältige Modifikationen des Desktops interaktiv vorgenommen werden (Hintergrundfarbe, Fensterrahmen, Mausverhalten usw.). Beim Ausloggen wird dann das aktuell vorhandene Desktop- Layout automatisch abgespeichert.

2. Erste Schritte 15 Etwas schwieriger stellt sich die Modifikation des Layouts unter den Windowmanagern twm und fvwm dar. Für eine individuelle Gestaltung müssen hier diverse Dateien editiert werden. Im einzelnen handelt es sich um die Dateien.xinitrc,.twmrc bzw..fvwmrc und.xdefaults bzw..xresources. Um zu erreichen, dass das Programm xterm (Terminalemulation) immer mit bestimmten gewünschten Einstellungen gestartet wird, können z.b. folgende Definitionen in die Dateien.Xdefaults und.xresources eingetragen werden. XTerm.VT100.Background: gray90 XTerm.VT100.Foreground: black XTerm.VT100.font: 8x13 XTerm*saveLines: 200 Die erste Zeile legt die Hintergrundfarbe (Background) der Terminalemulation auf einen bestimmten Grau-Ton fest (gray90). Die zweite Zeile definiert die Vordergrundfarbe, also die Schrift (black). In der dritten Zeile steht die Größe des verwendeten Fonts und die vierte Zeile legt fest, wieviel Zeilen (200) der Text im Fenster zurückgescrollt werden kann. Derartige Modifikationen erfordern eine gewisse Erfahrung im Umgang mit dem X Window System. Gute Hilfen bieten hier die entsprechenden Dokumentationen und die online manual-pages. Im folgenden wird eine kurze Übersicht über die drei am häufigsten verwendeten Desktop-Systeme KDE, Gnome und CDE gegeben. KDE-Desktop

2. Erste Schritte 16 KDE ist im Prinzip in jeder Linux-Distribution enthalten und bietet eine Fülle von Anwenderprogrammen. Augenfälliges Merkmal des Desktops ist der Session-Manager an der Unterkante des Bildschirms. Dieser Session-Manager ist quasi die Schaltzentrale für den Desktop. Ungefähr in der Mitte des Session-Managers befinden sich vier Schaltknöpfe (One - Four) für die Wahl des virtuellen Bildschirms. Links daneben sind zwei Knöpfe zu sehen, die für das Logout und für den LockScreen (Schloss) verantwortlich sind. Alle weiteren Icons ermöglichen entweder den Start von Anwendungen (z.b. Editor) oder den Aufruf von Popup-Menüs (erkenntlich an den kleinen schwarzen Pfeilen). Gnome-Desktop Auch unter dem Gnome-Desktop gibt es in der Standard-Konfiguration einen Session-Manager am unteren Bildschirmrand. Dieses Panel enthält einige Icons für den Start von Anwendungen (mit linker Maustaste nur einmal klicken) und dient auch als Ablageort für laufende Anwendungen, die iconisiert wurden. Zusätzlich befindet sich am oberen Bildschirmrand eine weitere Leiste. In dieser Leiste lassen sich zum einen diverse Popup-Menüs aufrufen, zum anderen befinden sich dort die Schaltflächen für die Wahl des virtuellen Bildschirms. Auf der restlichen freien Bildschirmfläche werden gewöhnlich die graphischen Anwendungen plaziert. In obigem Beispiel sind dies xclock, xconsole, gnome-terminal und Control Center. Das Programm Contol Center bietet die Möglichkeit, den Desktop individuell nach eigenen Wünschen einzustellen.