linux:shell

Grundlagen - Linux Shell

Die Linux Shell ist die Kommandozeile aller Linux Distributionen. Es gibt verschiedene Arten von Shells die für unterschiedliche Anwendungen und Anforderungen zugeschnitten sind. Die Standardshell von Linux ist die sogenannte “bash”, die “Bourne Again Shell”.

Eine detaillierte Beschreibung zu Pipes findet sich hier: http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO-3.html

ZeichenBedeutung
> [Dateiname] Übergibt die Ausgabe an eine Textdatei und überschreibt ggf. vorhande Dateiinhalte ohne Nachfrage
» [Dateiname] Hängt die Ausgabe unten in der Datei an
1> [Dateiname] Leitet die Standardausgabe in eine Datei um (STDOUT)
2> [Dateiname] Leitet die Standard-Fehlerausgabe in eine Datei um (STDERR)
< [Dateiname] Gibt eine Textdatei in ein Programm ein
| Pipe: Leitet die Ausgabe eines Befehls in einen weiteren Befehl
[Befehl] & Führt den Befehl im Hintergrund aus und gibt die Konsole wieder frei

Aus Übersichtlichkeitsgründen werden jeweils nur die Grundbefehle sowie deren Bedeutung aufgelistet. Die komplette Befehlssystax für einen Shell-Command kann immer mit der Option

# man [Befehlsname]

auf einem Linux-System nachgeschaut werden.

Im folgenden eine kleine Übersicht über wichtige Netzwerk-Tools:

Befehl Beschreibung
ifconfig Listet die Netzwerkkonfiguration auf
tcpdump Zeigt für ein Interface den gesamten Netzwerktraffic an
arp Zeigt für ein Interface die ARP-Tabellen an, die in lokalen Netzwerken IP-Adressen in MAC-Adressen auflösen
traceroute Zeigt die Route eines Datenpakets im Netzwerk an

netstat

netstat ist ein wichtiges Tool um herauszufinden auf welchen Ports und auf welchen IP's der Server anfragen entgegennimmt. Das ist vor allem für die Konfiguration von Firewalls sehr wichtig. Um ganz einfach herauszufinden welche Ports offen sind gibt man den Befehl

# netstat -anop -4 -6

ein. Dies beachtet dann alle Sockets, auf alles Interfaces für IPv4 und IPv6.

Sudo ist das superuser-Binary auf Debian und all seinen verwanden Distributionen, mit welchem ein User Commands mit erhöhten Rechten ausführen kann. Unter Ubuntu ist der Superuser in der Regel nicht aktiviert, so dass spezielle Befehle explizit als root ausgeführt werden müssen (ggf. muss das Paket “sudo” installiert werden). Anschliessend kann man Superuser Operationen als normalen User einfach mit sudo vor den jeweiligen Befehl als root ausführen.

sudo [Befehl]

Um den zu letzt eingegeben Befehl als root auszführen nutzt man einfach

sudo !!

Um dauerhaft auf die root-shell zu kommen braucht man

sudo -i
  • linux/shell.txt
  • Last modified: 2019/05/03 16:27
  • by michael