EINFÜHRUNG IN LINUX DR. MATTHIAS M. HÖLZL

Ähnliche Dokumente
Vorsemesterkurs Informatik

Betriebssystem? Übersicht. Ziele. Grundlagen. Das ist nur die Oberfläche... Wissen, was man unter einem Betriebssystem versteht

2 2. Tag. 2.1 Das Dateisystem. das Dateisystem organisiert die Speicherung von Daten. viele Betriebssysteme haben verschiedene Dateisysteme

Die Shell - Das Vorspiel

Ein kleines Computer-Lexikon

UNIX. Linux. UNIX Derivate, die wichtigsten. Free BSD (Open) Solaris MacOS X Linux. UNIX Dateisystem, wichtige Ordner.

Prozesse, Logs und Systemverwaltung

Computer & GNU/Linux Einführung Teil 1

Einführung in die Angewandte Bioinformatik

Benutzer- und Rechte-Verwaltung Teil 2

Grundlagen der Programmierung

Informatik für Schüler, Foliensatz 1 Einführung bis...

Systemprogramme bezeichnen alle Programme, die bestimmte Aufgaben unterstützen, die unabhängig von einer konkreten Anwendung sind

Die Architektur von UNIX/Linux- Betriebssystemen. Mag. Lukas Feiler, SSCP

Benutzer- und Rechte-Verwaltung Teil 1

Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme. Wolfram Burgard

Allgemeines zu Unix (Solaris, Linux, MAC OS X, FreeBSD,Open BSD usw.)

Einführung in das wissenschaftliche Rechnen

Einführung in die Informationstechnik

Geräteverwaltung: Einführung

Verständliche Einführung was Rechte sind, was sie bewirken und wie man diese verändert.

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

Betriebssysteme Kap A: Grundlagen

Werkzeuge der Informatik (CS102) Thema: Login, Desktop, Filesystem

Arbeiten mit der Shell Teil 1

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

Einführung ins Praktikum Wissenschaftliches Rechnen I

Inhatsverzeichnis. 1.Einleitung. Lehrgang: NMM Informatik: Der Computer. Lehrer: Spahr Marcel. Name: E L E M E N T E D E S C O M P U T E R S Datum:

Benutzer- und Rechte-Verwaltung Teil 3

Einführung in die Informationstechnik. II Einführung in Betriebssysteme

S.M. Hartmann GmbH IT Solutions

Betriebssysteme Vorstellung

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Wolfram Burgard

Verzeichnisse unter Linux

Grundlegendes zum PC

Filesystem in Userspace. Jens Spiekermann

Einführung in die Programmierung

Was machen wir heute? Betriebssysteme Tutorium 10. Frage 10.1.a. Frage 10.1.a

Computeranwendung in der Chemie Informatik für Chemiker(innen) 3. Software

UNIX Dateirechte. Michael Hartmann. 7. Oktober Linux User Group Augsburg

Technische Praxis der Computersysteme

Im Original veränderbare Word-Dateien

Rechnernutzung in der Physik. Betriebssysteme

Linux Grundlagen. Wolfgang Scheicher 20. Mai Allgemeines Bootvorgang Verzeichnisstruktur... 2

Dateisystem 1, Suchen & Finden

Systemprogrammierung I - Aufgaben zur Erlangung der Klausurzulassung für Informatiker und Wirtschaftsinformatiker

Einführung Wissenschaftliches Rechnen. René Lamour. Sommersemester 2015

FH Frankfurt am Main WS 2007/2008. Unix-Praktikum

H. Tornsdorf М. Tornsdorf. Das große Buch zu

Betriebssysteme SS Hans-Georg Eßer Dipl.-Math., Dipl.-Inform. Foliensatz E SB 5 ( ) ACLs und Capabilities

HW- und SW-Komponenten eines PC. IBM 5150 aus dem Jahre 1981

GNU/Linux Eine Einführung Jan Tobias Mühlberg. Die Idee

Bernd Bleßmann, Jörg Bleßmann. Linux. Aufbau und Einsatz eines Betriebssystems. 1. Auflage. HLuHB Darmstadt. Bestellnummer Bildungsverlag EINS

KURZANLEITUNG DUPLICITY MIT CLOUD OBJECT STORAGE

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz

Multibooting mit Windows 2000 und Windows XP

Basiskonzepte des Rechnerbetriebs

3 ORDNER UND DATEIEN. 3.1 Ordner Ordner anlegen

Computergruppe Heimerdingen Grundkurs. Karlheinz Wanja & Richard Zeitler

Linux-Einführung Übung

Betriebssysteme - Benutzerverwaltung

Computer & GNU/Linux Einführung Teil 1

Benutzer, Gruppen, Zugriffsrechte

Linux gefahrlos testen

Bibliographix installieren

Arbeiten mit der Shell Teil 1

Prozesse und Logs Linux-Kurs der Unix-AG

Laufwerke unter Linux - Festplatten - - USB Sticks - September 2010 Oliver Werner Linuxgrundlagen 1

Prozesse und Logs Linux-Kurs der Unix-AG

Allgemein: Das Mainboard

Persona-SVS e-sync GUI/Client Installation

1 Vorbemerkungen. 1.1 Vorraussetzungen und Ziele. 1.3 Homepage. 1.2 Übungsaufgaben. 1.4 Arbeiten am Computer. Es sind keine Vorkenntnisse nötig

Update Messerli MySQL auf Linux

Verwenden der Druck- und Zurückhaltefunktion

Drucken und Löschen von angehaltenen Druckaufträgen Erkennen von Formatierungsfehlern Bestätigen von Druckaufträgen Reservieren von Druckaufträgen

CPU (Prozessor), Festplatte, Grafikkarte, Soundkarte, diverse Schnittstelle (USB, COM, SERIELL), Arbeitsspeicher (RAM), ROM, CD/DVD-Laufwerk

Beschreibung Text - Display - Software

Bibliographix installieren

1. Übung - Einführung/Rechnerarchitektur

Software-Installation

Installation Messerli MySQL auf Linux

Linux Extension for AIDA64

Desktop Schultz Informatik 1

Verteilte Systeme. Verteilte Systeme. 9 Verteilte Dateisysteme SS 2015

Rechteverwaltung unter Unix/Linux

BERNINA 720/740/770/790 - Firmware Update

I Installation und Erste Schritte 7

Inhalte der heutigen Vorlesung

Einführung in die Kommandozeile

cs106 Informatiklabor Teil 1: Java-Installation

INHALT BETRIEBSSYSTEME... 5

H.-J. Eikmeyer. 1. Computer, Daten und Dateien. 3. Zeichenrepertoires und der EMACS-Editor 4. Reguläre Ausdrücke im EMACS

2.3 - Das Verwaltungsmodul moveon installieren - SQL-Version

Ihr Heimatverzeichnis. Die Ausgangsverzeichnisse für die neu zu erstellenden Verzeichnisse sind folgender Tabelle zu entnehmen:

Aufbau einer Testumgebung mit VMware Server

Staatlich geprüfter EDV-Führerschein

Benutzer- und Rechte-Verwaltung Teil 1

Stellen Sie vor dem Installieren von SYMplus sicher, dass Ihr Computer die folgenden minimalen Systemanforderungen erfüllt:

Leitfaden für die Installation der Videoüberwachung C-MOR

Dateisystem 2, Suchen & Finden, Manpages

Transkript:

EINFÜHRUNG IN LINUX DR. MATTHIAS M. HÖLZL 1. Aufbau eines Computer-Systems Ein Computersystem besteht aus Hardware (dem eigentlichen Rechner) und Software (den Programmen). Zur Hardware zählen der Prozessor (CPU, Central Processing Unit oder ALU, Arithmetic Logic Unit), der Hauptspeicher (RAM, Random Access Memory), die Massenspeicher (z.b. Festplatten (Hard Disks, Winchester Drives), Floppy Disks oder Bandlaufwerke) sowie Ein- und Ausgabegeräte (Monitor, Tastatur, Maus, Bildschirm, Drucker). Bei der Software unterscheidet man das Betriebssystem (Betriebssystemkern, Kernel), die Systemsoftware und Anwendungsprogramme. 1.1. Das Betriebssystem. Das Betriebssystem kann man von zwei Gesichtspunkten aus betrachten: als idealisierter Computer und als Ressourcenverwalter. Das Betriebssystem als idealisierter Computer: Die Programmierung der Hardware ist kompliziert, es ist leicht dabei Fehler zu machen. Um den Programmierern von Anwendungssoftware die Arbeit zu erleichtern stellt das Betriebssystem eine abstraktere Sicht auf den Computer zur Verfügung. Das Betriebssystem als Ressourcenverwalter: Das Betriebssystem teilt die Systemressourcen unter den Anwendern auf. Z.B. kann immer nur ein Programm auf den Drucker zugreifen, alle anderen Druckaufträge müssen warten. 1.2. Systemsoftware. Das Betriebssystem stellt eine Schnittstelle für andere Programme zur Verfügung. Damit der Benutzer mit dem Computer interagieren kann, muss ein Programm die Benutzereingaben in eine für das Betriebssystem verständliche Form umwandeln. Dies geschieht entweder durch eine textbasierte Benutzeroberfläche (Shell, Kommandointerpreter) oder durch eine graphische Benutzeroberfläche (GUI, Graphical User Interface). Auch der Betriebssystemkern nimmt Systemprogramme in Anspruch um gewisse Funktionen auszuführen. Beim Bootvorgang wird zuerst der Betriebssystemkern gestartet; der Kernel ruft dann Systemprogramme 1

2 DR. MATTHIAS M. HÖLZL auf, die Funktionen wie Anmeldung der Benutzer oder Aufbau von Netzwerkverbindungen durchführen. Man fasst oft den Kernel und die Systemsoftware unter dem Begriff Betriebssystem zusammen. Man muss dem Kontext entnehmen, welche Bedeutung gemeint ist. 1.3. Anwendungssoftware. Anwendungsprogramme sind diejenigen Programme, mit denen die eigentliche Arbeit geleistet wird, z.b. Textverarbeitungsprogramme, Datenbanken oder Spiele. 2. Linux Linux ist ein an Unix angelehntes freies Betriebssystem. Wie Unix ist es Multiuser/Multitasking-fähig, d.h. es können mehrere Benutzer gleichzeitig an einem Rechner arbeiten (z.b. über Netzwerkverbindungen) und jeder Benutzer kann mehrere Programme gleichzeitig ausführen. Im Gegensatz zu anderen Betriebssystemen basiert Unix nur auf wenigen grundlegenden Konzepten: Benutzer, Dateien, Prozesse, Pipes und Filter. 2.1. Benutzer. Wenn mehrere Benutzer an einem Rechner arbeiten, muss man die Daten der einzelnen Anwender unterscheiden können und unterschiedliche Zugriffsrechte vergeben können. Unter Unix und Linux geschieht das über Benutzer und Gruppen. Beim Einrichten eines Benutzers durch den Systemverwalter wird ihm ein Name und eine Benutzernummer (UID) zugeordnet, z.b. hoelzl und 500. Außerdem ist jeder Benutzer in mindestens einer Gruppe. Zugriffsrechte auf Daten können sowohl für einen Benutzer als auch für eine Gruppe vergeben werden. 2.2. Das Dateisystem. Um Daten dauerhaft zu speichern oder zwischen Programmen auszutauschen verwendet man Dateien. Eine Datei die Anwendungsdaten wie Texte oder eine Datenbank enthält bezeichnet man als reguläre Datei oder nur als Datei. Um Dateien übersichtlich zu organisieren können sie in Verzeichnissen (Ordnern) organisiert werden. Alle auf dem Rechner gespeicherten Dateien bilden das Dateisystem. Sowohl Systemprogramme als auch Anwendungsprogramme sind in Dateien gespeichert. Jeder Benutzer hat ein eigenes Verzeichnis, in dem

EINFÜHRUNG IN LINUX 3 er seine Daten abspeichern kann, das sog Home-Verzeichnis oder Login- Verzeichnis. Neben dem Inhalt einer Datei oder eines Ordners speichert das Betriebssystem noch weitere Informationen: Den Namen, Erstellungsdatum, Datum der letzten Modifikation oder des letzten Zugriffes, Besitzer der Datei (Benutzer und Gruppe): Jede Datei gehört einem Benutzer und einer Gruppe, Zugriffsrechte (Benutzer, Gruppe und Andere). Da Ordner sowohl Dateien als auch andere Verzeichnisse enthalten können, ergibt sich eine baumartige Struktur des Dateisystems. Unter Windows gibt es einen derartigen Verzeichnisbaum für jedes am Computer angeschlossene Laufwerk, unter Linux werden alle Laufwerke in einem einzigen Baum zusammengefasst. Die Wurzel dieses Verzeichnisbaumes nennt man Root-Verzeichnis. Der Name des Root- Verzeichnisses ist /. Den Weg vom Wurzelverzeichnis zu einer Datei nennt man einen Pfad zu dieser Datei oder absoluten Dateinamen. Die einzelnen Bestandteiled eines Pfades werden durch Schrägstriche / getrennt. So würde man z.b. den Pfad zu einer Datei passwd im Verzeichnis etc als /etc/passwd angeben. Der Pfad zu einer Datei xml.ps in einem Verzeichnis tc, das wiederum in einem Verzeichnis home gespeichert ist, wäre /home/tc/xml.ps ; der Pfad zum Verzeichnis tc wäre /home/tc. Oft gibt man bei Verzeichnissen den Pfad auch mit einem nachfolgenden Schrägstrich an: /home/tc/. Jede Datei kann durch die Angabe eines Pfades eindeutig bestimmt werden. Da die Angabe eines absoluten Dateinames oft zu umständlich ist, hat jeder Prozess ein aktuelles Verzeichnis (working Directory). Gibt man nur einen Dateinamen an, so bezieht sich dieser auf die Datei mit diesem Namen im aktuellen Verzeichnis. Einen Weg, der nicht mit einem Schrägstrich beginnt bezeichnet man als relativen Dateinamen. Ein relativer Dateiname wird durch Voranstellen des Pfades des aktuellen Verzeichnises zu einem absoluten Dateinamen ergänzt: Ist das aktuelle Verzeichnis /home/tc, so benennt der relative Dateiname xml.ps die Datei /home/tc/xml.ps, der (relative) Datiname lisp/lmucl/reader.lisp bezeichnet die Datei mit dem absoluten Namen /home/tc/lisp/lmucl/reader.lisp. Das aktuelle Verzeichnis hat den speziellen Namen., das übergeordnete Verzeichnis... Das Login-Verzeichnis hat den Namen ~. Außer regulären Dateien und Ordnern kennt Linux noch verschiedene Arten von speziellen Dateien (special files):

4 DR. MATTHIAS M. HÖLZL Gerätedateien (Device Files): Angeschlossene Geräte, z.b. Drucker oder Festplatten, können wie normale Dateien angesprochen werden. Schreibt man Daten in eine mit einem Drucker verbundene Gerätedatei, so werden diese Daten ausgedruckt. Symbolische Links: Diese Dateien stellen einen Verweis auf eine andere Datei dar, so dass eine Datei unter mehreren Namen angesprochen werden kann. (Named) Pipes zur Kommunikation zwischen Prozessen. Für jede Datei lassen sich Zugriffsrechte vergeben. Für den Eigentümer, die Gruppe und alle anderen Benutzer kann getrennt eingestellt werden, ob die Datei lesbar ist in die Datei geschrieben werden kann die Datei ausführbar ist. Dateiberechtigungen werden durch eine Dreiergruppe der Form rwx angegeben. Die Buchstaben stehen für lesen (read), schreiben (write) und ausführen (execute). Ist die entsprechende Berechtigung nicht vorhanden, so ist der Buchstabe durch einen Strich ersetzt: r-- bedeutet, dass für eine Datei nur Leserechte bestehen. Berechtigungen für Verzeichnisse werden genauso abgekürzt, haben aber unterschiedliche Bedeutung: Berechtigung Datei Verzeichnis r Inhalt anzeigen Verzeichnis auflisten w Inhalt ändern Dateien löschen x ausführen als aktuelles Verzeichnis verwenden Die häufigsten Berechtigungen für Verzeichnisse sind: --- Keine Berechtigung. r-x Verbietet das Löschen oder Anlegen von Dateien, erlaubt aber die Arbeit mit vorhandenen Dateien. rwx Erlaubt alle Operationen mit Dateien. Ob eine Datei gelöscht werden kann ist also von den Berechtigungen des Verzeichnisses abhängig, in dem sich die Datei befindet, nicht von den Berechtigungen der Datei selber. Die Berechtigungen für den Eigentümer, die Gruppe und andere Benutzer werden angegeben, indem man die Berechtigungen nacheinander schreibt, z.b. rwxr-x--- für ein Verzeichnis in dem der Eigentümer die Rechte rwx, die Gruppe die Rechte r-x und alle anderen Benutzer keine Rechte haben.

EINFÜHRUNG IN LINUX 5 2.3. Prozesse. Die Programme, die ein Computer unter Linux ausführen kann sind in Dateien auf der Festplatte gespeichert. Ein derartiges Programm ist eine statische Beschreibung der auszuführenden Arbeitsschritte. Wenn der Benutzer ein Programm ausführt wird Platz im Hauptspeicher belegt, das Programm greift auf Dateien zu und gibt Meldungen auf dem Bildschirm aus. Ein derartiges in Ausführung befindliches Programm nennt man einen Prozess. Ein Prozess beschreibt also z.b. welches Programm ausgeführt wird in welchem Zustand sich das Programm gerade befindet, z.b., welche Anweisung gerade ausgeführt wird welcher Benutzer das Programm ausführt das aktuelle Verzeichnis, das zur Ergänzung von relativen Dateinamen verwendet wird die Priorität des Prozesses Wird ein Programm, z.b. eine Textverarbeitung, von mehreren Benutzern gleichzeitig ausgeführt, so erzeugt das Betriebssystem mehrere Prozesse. Jeder dieser Prozesse hat ein eigenes aktuelles Verzeichnis, einen eigenen Zustand usw. Jeder Prozess hat eine eindeutige Prozessnummer (PID). Über diese Prozessnummer kann man Signale an den Prozess senden, die ihn zu einer bestimmten Aktion veranlassen. Prozesse die keine Eingaben des Benutzers benötigen können auch als Hintergrundprozesse gestartet werden. Startet man einen Hintergrundprozess von einer Shell aus, so wartet die Shell nicht bis der Prozess beendet ist sondern gibt gleich eine neue Eingabeaufforderung aus. Die Ausgabe des Prozesses erscheint in der Shell. Einen Hintergrundprozess, der weder Ein- noch Ausgabe benötigt, bezeichnet man als Dämon. 2.4. Pipes und Filter. Viele Programme in Linux nehmen Daten als Eingabe, verarbeiten sie und erzeugen Ausgabedaten ohne weitere Interaktion mit dem Benutzer. Derartige Programme nennt man Filter. Durch Pipes kann man die Eingabe eines Filters mit der Ausgabe eines anderen Filters verknüpfen und dadurch mit einfachen Mitteln relativ komplexe Anweisungen geben. Das Symbol für eine Pipe in der Shell ist ein senkrechter Strich. Der Befehl find -name *.tex durchsucht das aktuelle Verzeichnis nach Dateien mit der Endung.tex; der Befehl wc -l zählt die Zeilen seiner Eingabe. Durch find -name *.tex wc -l erhält man also die Anzahl aller Dateien mit Endung.tex.