Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung...

22
Computer & GNU/Linux Einf¨ uhrung Teil 1 Simon Haller, Sebastian Stabinger Inst. f¨ ur Informatik [IFI] September 27, 2016 Inst. f¨ ur Informatik [IFI] Computer & GNU/Linux Einf¨ uhrungTeil 1 Simon Haller, Sebastian Stab 1/22

Transcript of Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung...

Page 1: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Computer & GNU/Linux EinfuhrungTeil 1

Simon Haller, Sebastian Stabinger

Inst. fur Informatik[IFI]

September 27, 2016

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger1/22

Page 2: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Windows / Linux Einfuhrung

Starten von Windows

I Windows auf Linux Zugreifen (WinSCP, PuTTy)

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger2/22

Page 3: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Der Bootvorgang

Der Bootvorgang

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger3/22

Page 4: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Der Bootvorgang Unix

Geschichte

Die Anfange von Unix

I MULTICS (1969)

I UNIX (1971)I ab 1974 Spaltung in Derivate

I IRIXI SolarisI HP/UXI AIXI BSD

http://en.wikipedia.org/wiki/Unix

Unix–Design–Paradigmen

I everything is a file

I one tool for one job

I Multiuser und NetzwerkInst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger4/22

Page 5: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Der Bootvorgang GNU/Linux

Einleitung

Linus und die ersten Schritte

I Start im Jahr 1991

I erster unter der GPL veroffentlichter Linux Kernel(Version 0.99) 1992

I Version 1.0 erst 1994

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger5/22

Page 6: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Kernel

Kernel

Betriebssystem

I Verwaltung von Ressourcen (Prozessor,Hauptspeicher, Platte, Netzwerk, . . . )

I Betriebssystem vergibt diese Ressourcen

I Betriebssystem benotigt Ressourcen

Unterschied zwischen Betriebssystem und Kernel

I Kernel ist Teil des Betriebssystems und verwaltet die Hardware

I Ein Betriebssystem besteht zudem noch aus grundlegendenSystemprogrammen, die dem Bootvorgang und derKonfiguration des Systems dienen.

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger6/22

Page 7: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Kernel Kernel

Kernel

Interaktion zwischen Kernel Space, User Space und Hardware

Bobbo (2008)

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger7/22

Page 8: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Kernel Ubersetzung eines Programms

Vom C–Programm zum Maschinencode

Adapted from Patterson and Hennessy (2011)

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger8/22

Page 9: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Kernel Ubersetzung eines Programms

Kernel

Monolithischer Kernel

I Vorteile:I Schnell

I Nachteile:I Fehlende Flexibilitat und Anpassungsfahigkeit

Mikrokernel

I Vorteile:I Klare Schnittstelle und separierte KomponentenI Geratetreiber mit Benutzerrechten

I Nachteile:I Langsamer (z.B. Hardewarezugriff)

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger9/22

Page 10: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Kernel Die Runlevels

Runlevels und Initialisierung

Runlevels

I 0 Shutdown.

I S Single-User-Runlevel

I 1 Einzelnutzerbetrieb (ohne Netzwerk, nur lokale Ressourcen)

I 2 Lokaler Mehrnutzerbetrieb (ohne Netzwerk, nur lokaleRessourcen)

I 3 Netzwerkbetrieb (keine grafische Oberflache)

I 4 FREI

I 5 Standard (grafische Oberflache)

I 6 Reboot

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger10/22

Page 11: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Kernel Die Runlevels

Runlevels und Initialisierung

rc.d, init.d

I init ist der erste Systemprozess

I In /etc/inittab beginnts

I In rc[S0-6].d/ finden sich die Start und Stopskripte fur dieeinzelnen Runlevels (Links auf init.d scripte)

I /etc/rc.local wird als eines der letzten Skripte ausgefuhrt

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger11/22

Page 12: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Kernel Desktopmanager

Desktopmanager & Windowmanager

Haller (2010)

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger12/22

Page 13: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Kernel Desktopmanager

Das X–Window–System

X-Server

I Kontrolliert die Anzeige, die Tastatur, die Maus sowie andereEingabegerate

I Kommuniziert Ereignisse an den Client

I Ist verantwortlich fur die Prasentation der Fenster und denverfugbaren Zeichensatz

X-Client

I Ist ein Anwendungsprogramm, das die grafischen Ein- undAusgabe-Dienste des X-Servers nutzt

I Kann auf demselben oder einem entfernten Rechner laufen

I Wartet (passiv) auf Ereignisse (events) des X-Servers(Tastenanschlage, Mausbewegungen, Klicks,. . . )

I Fuhrt Applikationscode aus

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger13/22

Page 14: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Kernel Relative und Absolute Pfadnamen

Relative und Absolute Pfadnamen

Relative PfadnamenEs wird von aktuellen Arbeitsverzeichnis ausgegangen

I cd ./linuxkurs/Beispielverzeichnis

Absolute PfadnamenBeginnen immer mit einem /

I cd /home/simon/linuxkurs/Beispielverzeichnis

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger14/22

Page 15: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Kernel Pfadnamen

Pfadnamen II

Das Arbeitsverzeichnis

I Ist das Verzeichnis, von dem relative Pfadnamen ausgehen.

I Wenn kein Pfadname angegeben wird, dann wird im CWD(current working directory) gesucht

I $ cd Directory wechselt in das Verzeichnis Directory(relativ oder absolut)

I $ cd alleine wechselt ins $HOME

I $ pwd print working directoryI Speziell:

I . aktuelles VerzeichnisI .. ubergeordnetes Verzeichnis

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger15/22

Page 16: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Kernel Stolperfalle

Groß - und Kleinschreibung

Achtung

auf Groß - und Kleinschreibung!

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger16/22

Page 17: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Verzeichnisstruktur

Verzeichnisstruktur I

Root/bin Systemprogramme

/dev Devices

/etc Konfigurationsdateien

/root Home fur root

/home Homes fur User

/home/csaXXXX

/home/c703xxx

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger17/22

Page 18: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Verzeichnisstruktur

Verzeichnisstruktur II

Root/lib ‘‘Shared Libraries’’ fur dynamisch gelinkte

Programme des Betriebssystems

/mnt Verzeichnisse mit Mount Points

/media

/usr (unix system ressources), Anwendungen,

Manpages, alles wichtige fur einen User

/usr/bin

/usr/lib

...

/opt meist kommerzielle Software

/proc Prozess-‘‘Dateisystem’’. stellt Kernel-

informationen in Form von Dateien dar.

/sbin Systemprogramme, die mehr Rechte zum Ausfuhren

benotigen

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger18/22

Page 19: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Verzeichnisstruktur

Verzeichnisstruktur III

LPCCS spezifisch

I /usr/site . . . Universitatsweit zugangliche Programme

I /scratch/cXXX/cXXXXXX . . . Platz fur temporare Dateienund zum Datenaustausch (Unix–Rechtevergabe)

I /scratch/.snapshot . . . Stundliches Backup von /scratchI home/cXXXXXX . . . HomeI $HOME/.snapshot . . . BackupI /share/cXXX/cXXXXXX . . . Share–Verzeichnis

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger19/22

Page 20: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Die Shell

Shell Entwicklung

sh

csh

ksh

tcsh

bash

Syntax &Semantik

Funktionalitat

Fink (2006)

Das Bild zeigt eine schematische Entwicklung beginnend bei derBourne–Shell (/bin/sh) (Ende der 70er Jahre) bis zurBourne–Again–Shell (/bin/bash) Anfang der 90er.POSIX (Portable Operating System Interface): bietet einestandardisierte Schnittstelle zwischen Applikationen undBetriebssystem.

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger20/22

Page 21: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

Hilfe

Manpages und Infoseiten

I $ man Befehl . . . liefert die Manpage

I $ man -k Suchbegriff . . . sucht nach dem Wort inManpages (alternativ $ apropos)

I $ info Befehl

I in /usr/share/doc . . . finden sich Paket- u. Distributionsspezisfische Dokumentation zu Programmen

LPCCS spezifisch

I http://www.uibk.ac.at/zid/systeme/linux

I Linux–User mailing list: http://lists.uibk.ac.at

Im Netz

I http://tldp.org

I Foren, Usegroups, Chats,. . . (Stichwort: HowTo)

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger21/22

Page 22: Computer & GNU/Linux Einfuhr ung Teil 1 · Kernel Die Runlevels Runlevels und Initialisierung Runlevels I 0 Shutdown. I S Single-User-Runlevel I 1 Einzelnutzerbetrieb (ohne Netzwerk,

References

References I

Bobbo (2008). Wikipedia.http://en.wikipedia.org/wiki/Kernel_(computing).

Fink, M. (2006). Unix kurs.

Haller, S. (2010). Lpccs introduction course.

Patterson, D. and J. L. Hennessy (2011).Computer organization and design. The hardware/software interface. WithCD-ROM. (Rechnerorganisation und Rechnerentwurf. Die Hardware/Software-Schnittstelle. Mit CD-ROM. Ubersetzt von Judith Muhr. Herausgegeben von Walter Hower.) 3th completely revised ed.Munchen: Oldenbourg Verlag.

Inst. fur Informatik [IFI] Computer & GNU/Linux EinfuhrungTeil 1 Simon Haller, Sebastian Stabinger22/22