Linux Grundlagen: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
(44 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
−
=Einführung=
+
*[[Thomas Will]]
−
==Geschichte Unix==
 
 
*[[Geschichte Unix]]
 
*[[Geschichte Unix]]
−
==Distributionen==
+
*[[Opensource vs. Freeware vs. Shareware]]
 
*[[Distributionen]]
 
*[[Distributionen]]
−
==Bücher==
+
*[[Wo läuft denn überall Linux?]]
−
*[[Linux Bücher]]
 
−
==Betriebssystem==
 
 
*[[Betriebsystem]]
 
*[[Betriebsystem]]
−
 
+
*[[Was ist ein Kernel?]]
−
==Die Installation im Überblick==
 
 
*[[Die Installation im Überblick]]
 
*[[Die Installation im Überblick]]
−
 
+
*[[Erste Schritte (grafisch)]]
−
==Erste Schritte==
+
*[[Erste Schritte (terminal)]]
−
===Anmelden===
 
−
Sie können sich nun mit dem Usernamen und dem Passwort, das sie bei der Installation angelegt haben anmelden!
 
−
[[Image:benutzer.jpg]]
 
−
 
 
−
[[Image:passwd.jpg]]
 
−
 
 
−
===Terminal öffnen===
 
−
 
 
−
Ein Terminal öffnen Sie über das Startmenü:
 
−
 
 
−
[[Image:Terminalde.jpg]]
 
−
 
 
−
Das geöffnete Terminal sieht dann folgendermaßen aus:
 
−
 
 
−
[[Image:Terminalde2.jpg]]
 
−
 
 
−
===Sudo===
 
−
Rootrechte erlangen sie über den "Sudo"-Befehl
 
−
 
−
''Den nächsten Befehl als root ausführen''
 
−
xinux@zero:~$ sudo cat /etc/shadow
 
−
[sudo] password for xinux:
 
−
 
 
−
''Eine komplette Sitzung als root starten''
 
−
xinux@zero:~$ sudo -i
 
−
[sudo] password for xinux:
 
−
root@zero:~#
 
−
 
 
−
===Virtuelle Konsolen===
 
−
 
 
−
In die Virtuelle Konsole gelangen sie über "STRG+ALT+(F1-F6)".
 
−
Sie funktioniert wie ein ganz normales Terminal, und mit "ALT+F7"
 
−
gelangen sie wieder zurück auf die grafische Benutzeroberfläche
 
−
 
 
−
===Abmelden===
 
−
 
 
−
Abmelden können Sie sich wieder über das Startmenu unter:
 
−
 
 
−
[[Image:Logout.jpg]]
 
−
 
 
−
Fals sie nur einzelne Sitzungen in einem der Terminals oder
 
−
den Virtuellen Konsolen Abmelden wollen benutzen sie dazu den Befehl: "exit"
 
−
 
 
−
===Herunterfahren===
 
−
 
 
−
Das Herunterfahren funktioniert auf dem selben Weg.
 
−
 
 
−
Entweder sie Benutzen wieder das Startmenü und benutzen diesmal den "Ausschalten ..." Knopf,
 
−
 
 
−
Oder sie geben den äquivalenten "shutdown"-Befehl in einem Terminal bzw. der virtuellen Konsole ein.
 
−
 
 
−
Allerdings müssen sie dazu als Administrator angemeldet sein s. "Sudo"
 
−
 
 
−
Wenn Sie den "shutdown"-Befehl benutzen wollen muss hinter den Befehl
 
−
 
 
−
eine Zeitangabe in Minuten oder das wort "now" für sofortiges Ausschalten hinzugefügt werden:
 
−
 
 
−
xinux@zero:~$ sudo -i
 
−
root@zero:~# shutdown 60
 
−
 
−
Broadcast message from xinux@zero
 
−
        (/dev/pts/3) at 14:29 ...
 
−
 
−
The system is going down for maintenance in 60 minutes!
 
−
 
 
−
Sollten sie den Befehl widerrufen wollen dann drücken sie "STRG+C",
 
−
 
 
−
in dem Terminal in dem der shutdown Befehl gestartet wurde,
 
−
 
 
−
oder geben sie den "shutdown"-Befehl zusammen mit der Abbruchoption "-c" in einem anderen Terminal ein:
 
−
 
 
−
root@zero:~# shutdown -c
 
−
 
 
−
shutdown: Shutdown cancelled
 
−
root@zero:~#
 
−
 
 
−
Wenn Sie den Rechner Neustarten möchten gibt es dazu die Option "-r" für den "shutdown"-Befehl
 
−
 
 
−
oder den "reboot"-Befehl die beide auch als root ausgeführt werden müssen:
 
−
 
 
−
xinux@zero:~$ sudo -i
 
−
[sudo] password for xinux:
 
−
root@zero:~# shutdown -r now
 
−
 
 
−
root@zero:~# reboot
 
−
 
 
−
===Mögliche Reboots===
 
−
root@zero:~# reboot
 
−
root@zero:~# init 6
 
−
root@zero:~# shutdown -r now
 
−
 
 
−
===Mögliche Halts===
 
−
root@zero:~# halt
 
−
root@zero:~# init 0
 
−
root@zero:~# shutdown -h now
 
−
 
 
−
==="passwd"===
 
−
passwd wechselt Passwörter für User- und Gruppenaccounts. Ein Normaluser darf nur sein Passwort ändern, der Superuser darf die Passwörter aller Accounts ändern. Der Administrator einer Gruppe darf das Passwort dieser Gruppe ändern. passwd kann auch die Account-Informationen wie Kommentar, Loginshell oder Passwort-Auslaufzeiten und -intervalle ändern.
 
−
 
 
−
Der User muss vor der Änderung sein altes Passwort angeben
 
−
thomas@zero:~$ passwd
 
−
Ändern des Passworts für thomas.
 
−
(aktuelles) UNIX Passwort:
 
−
Geben Sie ein neues UNIX Passwort ein:
 
−
Geben Sie das neue UNIX Passwort erneut ein:
 
−
passwd: Passwort erfolgreich geändert
 
−
 
 
−
Root kann das Passwort ohne das alte zu kennen ändern
 
−
root@zero:~# passwd thomas
 
−
Geben Sie ein neues UNIX Passwort ein:
 
−
Geben Sie das neue UNIX Passwort erneut ein:
 
−
passwd: Passwort erfolgreich geändert
 
−
 
 
−
Root kann auch das eigene Passwort ändern
 
−
root@zero:~# passwd
 
−
Geben Sie ein neues UNIX Passwort ein:
 
−
Geben Sie das neue UNIX Passwort erneut ein:
 
−
passwd: Passwort erfolgreich geänder
 
−
 
 
−
 
 
−
==="man"===
 
−
 
 
−
Programm zum Einsehen der Online-Manuals
 
−
 
 
−
Die Manuals sind in folgende Sektionen unterteilt:
 
−
# Ausführbare Programme oder Shellbefehle
 
−
# Systemaufrufe (Kernelfunktionen)
 
−
# Bibliotheksaufrufe (Funktionen in System-Bibliotheken)
 
−
# Spezielle Dateien (gewöhnlich in /dev)
 
−
# Dateiformate und Konventionen, z. B. /etc/passwd
 
−
# Spiele
 
−
# Makropakete und Konventionen, z. B. man(7), groff(7)
 
−
# Systemadministrationsbefehle (in der Regel nur für root)
 
−
# Kernelroutinen [Nicht Standard]
 
−
 
 
−
Aufruf eines Manuals erfolgt durch ''man kommando''
 
−
Beendet wird durch Drücken des Buchstabens q
 
−
Gesucht wird vorwärts durch Eingabe eines /suchausdruck
 
−
Gesucht wird rückwärts durch Eingabe eines ?suchausdruck
 
−
 
 
−
Beispiele:
 
−
 
 
−
      man passwd        Anschauen der Manualseite zum Programm passwd
 
−
      man 5 passwd      Anschauen der Manualseite zur Datei /etc/passwd
 
−
      man -a passwd    Anschauen aller Manualseiten zu passwd
 
−
      man -k passwd    Durchsucht die Kurzbeschreibungen der Manualseite
 
−
                        nach passwd und gibt alle Treffer aus
 
−
      man -f passwd      Gibt alle gefunden Kurzbescheibungen zu passwd aus
 
−
      man -L en passwd Gibt englische Manualseiten aus
 
−
 
 
−
===Wie ist ein Befehl aufgebaut===
 
−
 
 
−
foo -c -a bar  tux 
 
−
 
 
−
*foo Kommando
 
−
*-c  Option(Schalter)
 
−
*-a  Option(Regler)
 
−
*bar Optionsargument
 
−
*tux Kommandoargument
 
−
 
 
−
===Was geht vor auf meinem System? (date,who,id)===
 
−
 
 
−
Das Kommando date dient zur Abfrage von Datum und Uhrzeit.
 
−
 
 
−
xinux@zero:~ > date
 
−
Fre Mär 16 16:35:03 CET 2001
 
−
 
 
−
oder auch Anzeige der Grennwich Zeit:
 
−
 
 
−
xinux@zero:~ > date -u
 
−
Fre Mär 16 15:35:34 UTC 2001
 
−
 
 
−
who zeigt alle angemeldeten Benutzer an
 
−
 
−
thomas@zero:~$ who
 
−
thomas  tty7        2009-07-22 08:33 (:0)
 
−
thomas  pts/0        2009-07-22 10:37 (:0.0)
 
−
 
 
−
Wer bin ich?
 
−
thomas@zero:~$ whoami
 
−
thomas
 
−
 
 
−
Anzeigen der Userid
 
−
thomas@zero:~$ id -u
 
−
 
−
Anzeigen der Gruppenid
 
−
thomas@zero:~$ id -g
 
−
 
 
−
==Linux-Dateisystem==
 
 
*[[Linux-Dateisystem]]
 
*[[Linux-Dateisystem]]
−
 
+
*[[Einfache Linux Kommandos]]
−
==Einfache Linux Komandos==
+
*[[Kommandolokalisierung]]
−
*[[Einfache Linux Komandos]]
+
*[[Bash Dateien]]
−
 
+
*[[Vim]]
−
==Der Standard Editor vi==
 
 
*[[Der Standard Editor vi]]
 
*[[Der Standard Editor vi]]
−
 
+
*[[Nano Crash]]
−
==Reguläre Ausdrücke==
+
*[[Reguläre Ausdrücke]]
−
 
+
*[[Benutzeridentifikation]]
−
{| Border=1 Cellpadding=2
+
*[[Programme zur Benutzerverwaltung]]
−
|c
 
−
|Ein einzelner Buchstabe passt auf sich selbst
 
−
|-
 
−
|.
 
−
|Ein Punkt passt auf jedes Zeichen außer auf das Zeilenende
 
−
|-
 
−
|*
 
−
|Das dem Operator * vorangehende Muster kann 0 oder öfter vorkommen
 
−
|-
 
−
|^
 
−
|(Caret) passt auf den Zeilenanfang
 
−
|-
 
−
|$
 
−
|Passt auf das Zeilenende
 
−
|-
 
−
|\
 
−
|Das folgende Sonderzeichen wird entwertet
 
−
|-
 
−
|[...]
 
−
|Passt auf "genau" eins in [...] angebenen Zeichen
 
−
|-
 
−
|[^...]
 
−
|Passt auf "genau" ein Zeichen welches nicht in [...] angebenen ist
 
−
|-
 
−
|\<
 
−
|Passt auf den Wortanfang
 
−
|-
 
−
|\>
 
−
|Passt auf das Wortende
 
−
|-
 
−
|\+
 
−
|Das dem Operator \+ vorangehende Muster kann 1 oder öfter vorkommen
 
−
|-
 
−
|&
 
−
|Setzt das gefunden Suchmuster ein
 
−
|-
 
−
|\(...\)
 
−
|Speichert den Text auf den das Suchmuster passt zur späteren Verwendung
 
−
|-
 
−
|\n
 
−
|Setzt das vorangehende, mit \(...\) Gefundene wieder ein
 
−
|-
 
−
|(...)
 
−
|Gruppiert Auswahlmöglichkeiten
 
−
|-
 
−
|<nowiki>|</nowiki>
 
−
|Trennt Auswahlmöglichkeiten
 
−
|-
 
−
|\b
 
−
|Passt auf den Anfang oder das Ende eines Wortes
 
−
|-
 
−
|\B
 
−
|Symbolisiert den Raum innerhalb eines Wortes
 
−
|-
 
−
|\w
 
−
|Passt auf alle alphanumerischen Zeichen [A-Za-z0-9]
 
−
|-
 
−
|\W
 
−
|Passt auf alle nichtalphanumerischen Zeichen [^A-Za-z0-9]
 
−
|}
 
−
 
 
−
Die Rangfolge der Operatoren(von der höchsten zur niedrigsten)
 
−
:(, ), ?, *, + | .
 
−
 
 
−
Die anderen Operatoren sind mit den anderen Buchstaben gleichrangig.
 
−
 
 
−
===Beispiel zum Suchen===
 
−
 
 
−
Suchmuster              Passt auf
 
−
^Tuxer                  Tuxer am Zeilenanfang
 
−
[tT]uxer                Tuxer oder tuxer
 
−
80[23]?86                8086, 80286 oder 80386
 
−
 
 
−
===grep===
 
−
 
 
−
Mit grep ist es möglich, in Dateien nach regulären Ausdrücken zu suchen. Wenn
 
−
eine Übereinstimmung gefunden wird, wird die komplette Zeile auf die
 
−
Standardausgabe geschrieben. grep kann auch von STDIN lesen.Es ist
 
−
empfehlenswert, sich anzugwöhnen ,das Suchmuster in Anführungszeichen zu
 
−
schreiben. Es gibt 3 Arten fgrep = fastgrep , grep und egrep egrep
 
−
 
 
−
Beispiel:
 
−
 
 
−
root@zero:~# cat text
 
−
quatsch
 
−
quatsch
 
−
quatsch
 
−
wichtig
 
−
quatsch
 
−
root@zero:~# grep wichtig text
 
−
wichtig
 
−
root@zero:~#
 
−
 
 
−
-c                  meldet nur die Gesamtzahl der Fundstellen
 
−
-v                  zeigt nur Zeilen, die »Ausdruck« nicht enthalten
 
−
-i                  ignoriert Groß- und Kleinschreibung
 
−
-l                    meldet nur Dateinamen mit Fundstellen
 
−
-n                  listet Zeilennummern zu jeder Fundstelle
 
−
-f                  Dateiname »Dateiname« enthält die Such-Ausdrücke
 
−
-E                  ist ein erweiterter regulärer Ausdruck (egrep)
 
−
-F                  (Muster, Ausdruck) ist ein Muster (String) (fgrep)
 
−
-b                  listet auch die Position der Fundstellen
 
−
-C    Anzahl        Anzahl von Zeilen werden nach der Fundstelle ausgegeben
 
−
-B    Anzahl        Anzahl von Zeilen werden vor der Fundstelle ausgegeben
 
−
-r                  Durchsucht Verzeichnisse rekursiv
 
−
 
 
−
==Useridendifikation==
 
−
===/etc/passwd===
 
−
====Beschreibung====
 
−
passwd ist eine ASCII-Datei, die eine Liste der Benutzer des Systems und deren
 
−
Passwörter enthält. Die Passwortdatei sollte für alle Benutzer lesbar sein, was für
 
−
die Verschlüsselung notwendig ist; aber nur vom Superuser beschreibbar. Wenn
 
−
Sie eine neue Kennung einrichten, lassen Sie das Passwort-Feld in der Datei frei
 
−
und benutzen Sie passwd(1), um dem System ein Passwort für die neue Kennung
 
−
mitzuteilen.
 
−
 
 
−
Die Datei /etc/passwd enthält einen Eintrag pro Zeile mit dem Format:
 
−
login_name:passwd:UID:GID:user_name:directory:shell
 
−
 
 
−
====Die Bedeutung der Felder:====
 
−
# login_name Kennung des Benutzers auf dem System.
 
−
# password  Hier steht bei Shadowsystemen ein x. Die Passwörter sind in der Datei /etc/shadow
 
−
# UID        Die numerische Benutzernummer.
 
−
#  GID        Die numerische Gruppennummer des Benutzers.
 
−
# user_name Ein optionales Kommentarfeld, oft benutzt für den vollen Namen des Benutzers und weitere Informationen (Telefon, Raum-Nummer etc.).
 
−
# directory  Das Heimatverzeichnis $HOME des Benutzers.
 
−
# shell      Das Programm, das beim Einloggen gestartet werden soll (falls nicht nötig, benutzen Sie /bin/bash).
 
−
 
 
−
===/etc/group===
 
−
====Beschreibung====
 
−
etc/group ist eine ASCII Datei, die Gruppen definiert, zu denen Benutzer
 
−
gehören. Es gibt nur einen Eintrag pro Zeile; jede Zeile hat folgendes Format:
 
−
        GruppenName:Passwort:GruppenKennung:BenutzerListe
 
−
Beschreibung der Felder:
 
−
#    GruppenName      Die Bezeichnung der Gruppe.
 
−
#    Passwort        Das (verschlüsselte) Gruppen-Passwort. Wenn dieses Feld leer ist, wird kein Passwort benötigt.
 
−
#    GruppenKennung Die numerische Identifikation der Gruppe.
 
−
#    BenutzerListe    Alle Namen der Mitglieder, getrennt durch Kommas.
 
−
 
 
−
===/etc/shadow===
 
−
====Beschreibung====
 
−
shadow beinhaltet Informationen zu den verschlüsselten Passwörten, zu den
 
−
Benutzerzugängen und weitere Informationen zur Laufzeit der Passwörter.
 
−
Name:Passwort:Letzte Änderung:Mintage:Maxtage:Warntage:Inaktiv:Ablauf
 
−
#    Der Loginname
 
−
#    verschlüsseltes Passwort
 
−
##<nowiki>*</nowiki> bedeutet Benutzer kann sich nicht einlogen
 
−
##! bedeutet Benutzer hat kein Passwort gesetzt
 
−
#    Tage seit dem 1 Januar 1970 an dem das Passwort letztmals geändert wurde
 
−
#    Tage, die das Passwort behalten werden muss, bevor es wieder geändert werden kann
 
−
#    Die Anzahl der Tage, nach denen der Benutzer das Passwort wieder ändern muss
 
−
#    Anzahl der Tage bevor das Passwort abläuft und der Benutzer gewarnt wird
 
−
#    Wenn der Zugang diese Anzahl von Tagen nicht benutzt wird, wird der Zugang gesperrt
 
−
#    Tag seit dem 1 Januar 1970, an dem der Zugang gesperrt wird
 
−
#    Reserviertes Feld
 
−
 
 
−
Die Datei sollte aus Sicherheitgründen nicht für einen normalen Benutzer lesbar
 
−
sein.
 
−
 
 
−
==Programme zur Userverwaltung==
 
−
*[[Programme zur Userverwaltung]]
 
−
 
 
−
==Berechtigungen==
 
 
*[[Berechtigungen]]
 
*[[Berechtigungen]]
−
 
−
==Gruppenzugehörigkeit==
 
 
*[[Gruppenzugehörigkeit]]
 
*[[Gruppenzugehörigkeit]]
−
 
−
=Umgang mit der Shell=
 
 
*[[Umgang mit der Shell]]
 
*[[Umgang mit der Shell]]
−
 
−
=INodes=
 
 
*[[INodes]]
 
*[[INodes]]
−
 
−
 
−
===Daten===
 
−
{| border=1 cellpadding=2
 
−
|type
 
−
|Der Typ der Datei wird als einzelner Buchstabe angezeigt. Der Typ einer Datei wird beim Anlegen der Datei festgelegt
 
−
|-
 
−
|Permissions
 
−
|Die Zugriffsrechte der Datei werden in den 12 Bit sstrwxrwxrwx abgespeichert.Die Zugriffsrechte können mit dem Kommando chmod verändert werden.
 
−
|-
 
−
|link count
 
−
|In UNIX kann eine Datei mehr als einen Namen haben. Der Link Count gibt die Anzahl der Namen einer Datei an. Er kann
 
−
mit dem Kommando ln erhöht und dem Kommando rm erniedrigt werden.
 
−
|-
 
−
|owner
 
−
|Für den Dateieigentümer gelten die in der ersten rwx-Gruppe festgelegten Zugriffsrechte. Standardmäßig ist der
 
−
Eigentümer einer Datei derjenige Benutzer, der die Datei angelegt hat.
 
−
|-
 
−
|group
 
−
|Für Benutzer, die in der gleichen Gruppe sind, der die Datei angehört, gelten die in der zweiten rwx-Gruppe festgelegten
 
−
Zugriffsrechte. In System V gehört eine Datei standardmäßig der Gruppe an, in der der anlegende Benutzer gerade ist.
 
−
|-
 
−
|size
 
−
|Bei normalen Dateien und Verzeichnissen gibt diese Information die Länge der Datei in Byte an.
 
−
|-
 
−
|access time
 
−
|Die Zugriffszeit gibt den Zeitpunkt des letzten Lesezugriffes auf eine Datei an. Aus Effizienzgründen wird die
 
−
Zugriffszeit an Verzeichnissen nicht gesetzt, wenn ein Verzeichnis durchsucht wird, obwohl man dies erwarten könnte. ''(ls -l --time=atime)'' '''stat''' zeigt alle Zeiten an.
 
−
|-
 
−
|modification time
 
−
|Die Modifikationszeit gibt die Zeit des letzten Schreibzugriffes auf die Daten der Datei an. Intern speichert UNIX
 
−
die Zeit als Sekunden seit Beginn des Jahres 1970 und in GMT ab. Für die Ausgabe wird dies in ein besser lesbares
 
−
Format in der lokalen Zeitzone umgewandelt. ''(ls -l)''
 
−
|-
 
−
|change time
 
−
|Die Veränderungszeit gibt das Datum der letzten Statusänderung der Datei an. Sie wird immer dann gesetzt, wenn die
 
−
Informationen über die Datei sich ändern (Datum der Erzeugung wird nicht gespeichert) ''(ls -lc)''
 
−
|}
 
−
 
−
===Dateiarten===
 
−
{| border=1 cellpadding=2
 
−
!Zeichen
 
−
!Typ
 
−
!Zweck
 
−
|-
 
−
|<nowiki>-</nowiki>
 
−
|file
 
−
|normale Datei
 
−
|-
 
−
|d
 
−
|directory
 
−
|Verzeichnis
 
−
|-
 
−
|b
 
−
|block device
 
−
|Gerätedatei
 
−
|-
 
−
|c
 
−
|character device
 
−
|Gerätedatei
 
−
|-
 
−
|p
 
−
|named pipe
 
−
|Benannte Pipeline
 
−
|-
 
−
|s
 
−
|socket
 
−
|Netzwerkverbindung
 
−
|-
 
−
|l
 
−
|link
 
−
|Querverweis
 
−
|}
 
−
 
−
====Normale Dateien====
 
−
Unter einer normalen Datei versteht man die Ansammlung von Daten. Dies kann ein Text, Programm, Bild oder sonstiges sein.
 
−
Beispiel
 
−
root@zero:~# ls -l text | cut -c 1
 
−
-
 
−
 
−
====Verzeichnisse====
 
−
Dateien werden in Verzeichnissen gespeichert, nur so ist eine Ordnung möglich.
 
−
root@zero:~# mkdir -v Ordner
 
−
mkdir: Verzeichnis „Ordner“ angelegt
 
−
 
−
root@zero:~# ls -ld Ordner | cut -c 1
 
−
d
 
−
 
−
====Gerätedateien (Block und Char)====
 
−
Gerätedateien ermöglichen Anwendungsprogrammen unter Benutzung des  Kernels den Zugriff auf die Hardwarekomponenten des Systems. Ansprechbar über Major und Minor Nummern
 
−
 
−
Beispiele
 
−
 
−
Sicherung des Master Boot Records der ersten Festplatte
 
−
root@zero:~# dd if=/dev/sda of=/tmp/mbr.img bs=512 count=1
 
−
 
−
Block Device
 
−
root@zero:~# ls -l /dev/sda | cut -c 1
 
−
b
 
−
 
−
Character Device
 
−
root@zero:~# ls -l /dev/ttyS0  | cut -c 1
 
−
c
 
−
 
−
Erstellen einer Gerätedatei
 
−
root@zero:/dev# mknod sata1 b 8 0
 
−
root@zero:/dev# fdisk -l /dev/sata1
 
−
 
−
Platte /dev/sata1: 6442 MByte, 6442450944 Byte
 
−
255 Köpfe, 63 Sektoren/Spuren, 783 Zylinder
 
−
Einheiten = Zylinder von 16065 × 512 = 8225280 Bytes
 
−
Disk identifier: 0x0005efab
 
−
 
−
      Gerät  boot.    Anfang        Ende    Blöcke  Id  System
 
−
/dev/sata1p1  *          1        743    5968116  83  Linux
 
−
/dev/sata1p2            744        783      321300    5  Erweiterte
 
−
/dev/sata1p5            744        783      321268+  82  Linux Swap / Solaris
 
−
 
−
====Named Pipes====
 
−
Benannte Pipes (Named Pipes) können dagegen auch zur Kommunikation zwischen Prozessen eingesetzt werden, die nicht miteinander
 
−
verwandt sind und sich darüber hinaus auf unterschiedlichen Rechnern innerhalb eines Netzwerkes befinden dürfen. Sie sind
 
−
flexibler als anonyme Pipes und eignen sich für sogenannte Client-Server-Anwendungen (es lassen sich auch RPCs realisieren).
 
−
Benannte Pipes ermöglichen die gleichzeitige Kommunikation in beide Richtungen, das heißt, Daten können im Vollduplexbetrieb
 
−
zwischen den Prozessen ausgetauscht werden.
 
−
 
−
Erstelle Named Pipe mit Namen /tmp/roehre. Schreibe "hallo welt" in die Pipe und bleibe
 
−
xinux@zero:~$ mkfifo /tmp/roehre
 
−
xinux@zero:~$ echo hallo welt > /tmp/roehre
 
−
 
−
Gebe Inhalt der Pipe mit cat aus
 
−
root@zero:~# cat < /tmp/roehre
 
−
hallo welt
 
−
root@zero:~# ls -l /tmp/roehre | cut -c 1
 
−
p
 
−
 
−
====Sockets====
 
−
Schnittstelle um es lokalen Anwendungen zu ermöglichen, miteinander Netwerkmässig zu kommunizieren.
 
−
 
−
root@lydia:~# netstat  -lnxp | tail -1
 
−
  unix  2 [ ACC ] STREAM HÖRT 21951 6646/nm-applet /tmp/orbit-thomas/linc-19f6-0-2b9b81095cede
 
−
 
−
root@lydia:~# ls -l /tmp/orbit-thomas/linc-19f6-0-2b9b81095cede  | cut -c 1
 
−
s
 
−
 
−
====Links====
 
−
Bei Links handelt es sich um symbolische Verweise auf andere Dateien
 
−
 
−
'''Softlink'''
 
−
Ein Softlink ist eine Datei die nur auf den Namen einer anderen Datei verweist. Wenn die Originaldatei gelöscht wird, zeigt
 
−
der Link ins Leere.
 
−
 
−
ln -s datei softlink
 
−
 
−
{| border=1 cellpadding=2
 
−
| Vorteile
 
−
| Symbolische Links können auch auf Verzeichnisse angelegt werden<br>Sie sind partitionsübergreifend<br>Man kann sie auf Dateien anlegen, die noch nicht existieren
 
−
|-
 
−
| Nachteile
 
−
| Wenn das Original gelöscht ist, ist kein Zugriff mehr möglich
 
−
|}
 
−
 
−
Beispiel
 
−
Normal
 
−
root@zero:~# ln -s text verweis
 
−
Verbose
 
−
root@zero:~# ln -sv text verweis
 
−
„verweis“ -> „text“
 
−
Erzwungenes Überschreiben
 
−
root@zero:~# ln -sf dat verweis
 
−
Auswirkungen
 
−
root@zero:~# ls -l dat verweis
 
−
-rw-r--r-- 1 root root 4 2009-07-29 13:56 dat
 
−
lrwxrwxrwx 1 root root 3 2009-07-29 13:57 verweis -> dat
 
−
Kopieren(Original wird kopiert)
 
−
root@lydia:~# cp -v verweis /tmp/
 
−
„verweis“ -> „/tmp/verweis“
 
−
  root@lydia:~# ls -l /tmp/verweis
 
−
-rw-r--r-- 1 root root 4 2009-07-29 13:59 /tmp/verweis
 
−
Kopieren(Link wird kopiert)
 
−
root@lydia:~# cp -vd verweis /tmp/
 
−
„verweis“ -> „/tmp/verweis“
 
−
root@lydia:~# ls -l /tmp/verweis
 
−
lrwxrwxrwx 1 root root 3 2009-07-29 14:00 /tmp/verweis -> dat
 
−
 
−
 
−
'''Hardlinks'''
 
−
ln datei hardlink
 
−
Eigentlich ist jede Datei ein Hardlink. Ein Hardlink ist ein Verzeichniseintrag,
 
−
der auf eine Inode verweist. Beim Erzeugen einer Datei verweist ein Eintrag auf
 
−
eine Inode. Man kann dann weitere Verweise erzeugen. Der Linkcounter wird
 
−
jeweils um 1 erhöht. Beim Löschen einer Datei wird er jeweils um 1 reduziert.
 
−
Wird der Wert 0 erreicht, ist die Datei gelöscht.
 
−
{| border=1 cellpadding=2
 
−
| Vorteile
 
−
|Zugriff auf die Daten, selbst wenn das Orginal gelöscht ist.
 
−
|-
 
−
|Nachteile
 
−
|Man kann keine Hardlinks auf Verzeichnisse anlegen.
 
−
Ist nur innerhalb einer Partion möglich.
 
−
|}
 
−
 
−
Beispiel
 
−
root@zero:~# touch 1
 
−
root@zero:~# echo "text" > 1
 
−
root@zero:~# ln 1 2
 
−
root@zero:~# more 2
 
−
text
 
−
root@zero:~# echo "doch kein text" > 1
 
−
root@zero:~# more 1
 
−
doch kein text
 
−
root@zero:~# more 2
 
−
doch kein text
 
−
 
−
Weitere Optionen:
 
−
-b sichert Dateien, statt sie zu überschreiben
 
−
-f Überschreibt bestehende, gleichnamige Dateien
 
−
-i fragt vor dem Überschreiben nach Bestätigung
 
−
-v ausführliche Meldungen
 
−
Softlink mit dem Namen passwd im Homeverzeichnis angelegt
 
−
xinux@zero:~$ ln -vs /etc/passwd .
 
−
„./passwd“ -> „/etc/passwd“
 
−
Softlink mit dem Namen passwd im Homeverzeichnis angelegt(Original exestiert nicht)
 
−
xinux@zero:~$ ln -vs /etc/hund .
 
−
„./hund“ -> „/etc/hund“
 
−
Hardlink mit dem Namen hosts im Homeverzeichnis angelegt
 
−
  xinux@zero:~$ ln -v /etc/hosts .
 
−
„./hosts“ => „/etc/hosts“
 
−
Auf eine nicht existierende Datei kann kein Hardlink angelegt werden!
 
−
xinux@zero:~$ ln -v /etc/katze .
 
−
ln: Zugriff auf „/etc/katze“: No such file or directory
 
−
 
−
==Prozesse==
 
 
*[[Prozesse]]
 
*[[Prozesse]]
 +
*[[Suchen und finden]]
 +
*[[Linux Admin Tools kurz und knapp]]
 +
*[[Linux Grundlagen-Aufgaben]]

Aktuelle Version vom 18. Juni 2024, 11:54 Uhr