Linux Systeme

Befehlsübersicht


Arbeiten mit Dateien und Verzeichnissen
Befehl Beschreibung Wichtige Optionen Beispiele
ls list - Listet Dateien und Verzeichnisse auf -l long listing
-a all Files (auch die mit . Versteckten)
-F inkl. Formatstring
-h Human readable
-S nach Größe sortieren
-t nach Änderungsdatum sortieren
-r Sortierreihenfolge umkehren
-R rekursiv
-i Inode anzeigen
cd /bin
ls -l
ls -lhS
ls -tr
cd
ls -aR
cd change directory - Wechselt das aktuelle Arbeitsverzeichnis   cd
cd /usr/share
cd ..
cd share/../local
cd /
pwd print working directory - Gibt das aktuelle Arbeitsverzeichnis aus   cd; pwd
cd /usr/local; pwd
mkdir make directory - Erstellt ein Verzeichnis -p alle Verzeichnisse in der Angabe erstellen cd
mkdir bilder
mkdir bilder/2001
mkdir -p docs/privat
mkdir -p docs/job/anbote
mkdir docs/job/auftraege
rmdir remove directory - Löscht (leere) Verzeichnisse -p alle Verzeichnisse in der Angabe werden rekursiv gelöscht (alle Verzeichnisse müssen leer sein) rmdir docs
rmdir docs/privat
rmdir -p bilder/2001
cp copy - Kopieren von Dateien und Verzeichnissen -i Interaktiv
-r oder -R rekursiv
-a Zeitstempel, Eigentümer usw. wird mitkopiert
-v verbose
cd
cp -v /etc/passwd ~/alleuser.txt
cp alleuser.txt alleuser2.txt
cp -i /etc/passwd ~/alleuser.txt
mv move - Verschieben und umbenennen von Dateien -i Interaktiv
-v verbose
cd
mv alleuser.txt alleuser1.txt
mv alleuser* docs
rm remove - Löschen von Dateien und Verzeichnissen -i Interaktiv
-r rekursiv
-f force (ohne Rückfrage)
cd
rm -i docs/alleuser2.txt
rm -ri docs
ln Link - Erstellt symbolische Links und Hardlinks -s symbolischer Link cp /etc/passwd .
ln -s passwd passwd2; ls -li
ln passwd passwd3; ls -li
ln passwd2 passwd4; ls -li
touch Erstellen einer neuen Datei, sofern diese noch nicht vorhanden ist. Ansonsten wird der Zeitstempel der letzen Änderung aktutalisiert.   touch ~/passwd
locate Sucht in einer Datenbank nach Dateien und Verzeichnissen -i Ignoriert Groß- und Kleinschreibung
-e | --existing Gibt den Treffer nur dann aus, wenn die Datei oder das Verzeichnis immer noch vorhanden ist.
locate passwd
locate -i suse
updatedb Aktualisierung der Datenbank für die Datei und Verzeichnissuche durch locate   updatedb
find Finden von Dateien und Verzeichnissen aufgrund umfangreicher Attribute -name Sucht nach einem Dateinamen oder einem Verzeichnisnamen
-user Sucht nach Dateien und Verzeichnissen eines bestimmten Users
-type Sucht nach speziellen Dateitypen (d = Directory, f = File)
-print Gibt die Treffer aus
-exec Führt pro Treffer ein Comando aus
find / -name passwd -print
find / -name 'passwd*'
find /etc -type d
find /etc ! -type d
find /etc -type d -a \( -name opt -o -name init.d \)
find / -user -exec ls -l {} \;

Arbeiten mit Dateiinhalten
Befehl Beschreibung Wichtige Optionen Beispiele
cat concatenate - Inhalt einer oder mehrerer Dateien ausgeben   cat /etc/passwd
cat /etc/passwd /etc/group
tac reverse concatenate - Inhalt einer oder mehrerer Dateien umgekehrt (letzte Zeile zuerst) ausgeben   cat /etc/passwd
cat /etc/passwd /etc/group
sort sort - Inhalt sortiert ausgeben -f | --ignore-case Groß- und Kleinschreibung nicht berücksichtigen
-n Numerisch Sortieren ( ansonsten wäre die Zeile "31 Hans Huber" vor "4 Max Muster" weil 3 < 4)
sort /etc/passwd
head Ausgabe einer bestimmten Anzahl an Zeilen vom Beginn einer Datei -100 Ausgabe der ersten 100 Zeilen head /etc/passwd
head -5 /etc/passwd
tail Ausgabe einer bestimmten Anzahl an Zeilen vom Ende einer Datei -100 Ausgabe der letzten 100 Zeilen tail /etc/passwd
tail -5 /etc/passwd
more Seitenweise Ausgabe einer Datei   more /etc/passwd
less Seitenweise Ausgabe einer Datei mit Scrollfunktion (auch nach oben)   less /etc/passwd
wc word count - Zählt Zeichen, Wörter und Zeilen einer Datei -m | --chars zählt Zeichen
-w zählt Wörter
-l zählt Zeilen
wc /etc/passwd
wc -m /etc/passwd
wc -w /etc/passwd
wc -l /etc/passwd
grep Gibt Zeilen nur dann aus, wenn der Suchausdruck gefunden wurde. -v | --invert-match Invertiert den Suchausdruck. Gibt also nur dann aus, wenn der Suchbegriff NICHT gefunden wurde.
-A2 | --after-context NUM Gibt auch die nächsten 2 Zeilen nach dem Suchbegriff mit aus
-B3 | --before-context NUM Gibt auch die vorangegangenen 3 Zeilen vor dem Suchbegriff mit aus
-i | --ignore-case Ignoriert Groß- und Kleinschreibung
-c | --count gibt die Anzahl der gefundenen Zeilen und nicht die Zeilen selbst aus
-n | --line-number Gibt die Zeilennummer bei einem Treffer mit aus
grep root /etc/passwd
grep -v "/bin/bash" /etc/passwd
grep -c "/bin/bash" /etc/passwd

Befehle zur Informationsbeschaffung
Befehl Beschreibung Wichtige Optionen Beispiele
<CMD> --help Kurzhilfe der meisten Befehle   ls --help
cp --help
locate --help
man Anzeige der Manual-Pages man KAPITELNUMMER BEFEHL - Wenn es für einen Befehl in mehreren Kapitel Einträge gibt, kann durch Angabe der Kapitelnummer der gewünschte gewählt werden.

1 = Benutzerkommandos
2 = Systemaufrufe
3 = Bibliotheksaufrufe
4 = Gerätedateien
5 = Konfigurationsdateien
6 = Spiele
7 = Diverses
8 = Kommandos zur Systemadministration
9 = Kernel-Funktionen
man locate
man 8 mount
type Gibt aus, welcher Typ ein Befehl ist (Alias, Shellinterner Befehl oder externer Befehl)   type ls
type cd
type locate
df Disk Free - Zeigt die aktuelle Speicherauslastung aller gemounteten Partitionen an. -h Human readable - Ausgabe in MB/GB usw. df -h
du Disk Usage - Zeigt den Speicherbedarf von Verzeichnissen an -c Count = Zeigt den Gesamtspeicherbedarf an
-s = Zeigt bei Verzeichnissen nur die Summe des Verzeichnis an
-h = Human Readable - Zeigt in MB/GB usw an
du -csh ~/*
uname Gibt die System-Versionen des akutell laufenden Linux Kernels aus -a Vollständige Ausgabe uname -a
hwinfo Hardware Informationen ausgeben   hwinfo
ps process snapshot - Listet alle aktuell laufenden Prozesse auf aux - Optionskombination (-a -u -x) um wirklich alle laufenden Prozesse zu sehen ps aux

Befehle zur Benutzer- und Rechteverwaltung
Befehl Beschreibung Wichtige Optionen Beispiele
id Zeigt die UID, GID des aktuellen Users an   id
whoami Who am i? Zeigt an, mit welchem Useraccount man derzeit angemeldet ist   whoami
who Who? Zeig an, welche User derzeit am System angemeldet sind.   who
su substitute user - Mit diesem Befehl kann man sich als anderer User anmelden -l Startet eine Login-Shell su -l
su -l OtherUser
useradd Anlegen eines neuen Benutzers -m | --create-home Home-Verzeichnis soll erstellt werden
-c | --comment Angabe des Vollständigen Usernamens als Kommentar
-d | --home Angabe eines vom Standard abweichenden Home Verzeichnisses
-s | --shell Angabe einer vom Standard abweichenden Shell
useradd -m --comment "Max Muster" maxm
useradd --create-home --home /srv/data/homes/hans-huber --shell /bin/false hans-huber
usermod Modifizieren eines bestehenden Users -l | --login NEW_LOGIN Ändern des Login Namens
-m | --move-home Verschieben des Home Verzeichnisses
-d | --home Neues Homeverzeichnis
usermod -s /bin/bash hans-huber
usermod --login hans.huber --move-home --home /srv/data/homes/hans.huber
userdel Löschen eines bestehenden Users -r | --remove Löschen des Home Verzeichnisses und des Mail Stores userdel --remove hans.huber
groupadd Erstellen einer neuen Gruppe   groupadd group01
groupmod Bearbeiten einer bestehenden Gruppe -n | --new-name Neuer Gruppenname groupmod -n grp01 group01
groupdel Löschen einer Gruppe   groupdel grp01
getent get entries - Einträge für Benutzer und Gruppendatenbanken auslesen passwd - Listet alle am System verfügbaren User auf
group - Listet alle am System verfügbare Gruppen auf
getent passwd
getent group
passwd Setzen des Passwortes USERNAME - Setzt das Passwort nicht für den aktuellen sondern für den User USERNAME passwd
passwd USERNAME
chown Change Owner - Wechselt den Besitzer einer Datei oder eines Verzeichnisses -R | --recursive Wechselt den Besitzer rekursiv chown myuser myfile
chown myuser.mygroup myfile
chown -r myuser.mygroup mydir
chgrp Change Group - Wechselt die Gruppe einer Datei oder eines Verzeichnisses -R | --recursive Wechselt den Besitzer rekursiv chgrp myfile
chgrp --recursive mydir
chmod Change Mode - Ändert die Berechtigungen auf Dateien und Verzeichnisse -R | --recursive Ändert die Berechtigungen rekursiv chmod 750 myscript.sh
chmod 640 mydata.txt
chmod a+x myscript.sh
chmod u+x myscript.sh
chmod o-wx myscript.sh

Anpassen der Arbeitsumgebungen
Befehl Beschreibung Wichtige Optionen Beispiele
export Exportiert eine Variable damit auch "Kind-Prozesse" darauf zugreifen können   export VARNAME=WERT
printenv Zeigt gesetzte Umgebungsvariablen an   # Anzeige aller gesetzten Variablen
printenv
# Anzeige der Variablen HOME und USER
printenv HOME USER
alias Erstellt einen "virtuellen" Befehl   # Ausgabe aller gesetzten Aliase
alias
# Setzen eines neuen Alias
alias lsh="ls -lh"
unalias Löschen eines gesetzten Alias   unalias lsl
history Zeigt die Befehls-Historie des aktuellen Users an -a Schreibt die aktuelle Sitzungshistory sofort in das History-File
-c Löscht die History
-r Liest die History aus dem History-File
history
history | grep vi

Installation von Software
Befehl Beschreibung Wichtige Optionen Beispiele
apt Wird verwendet, um Software unter Debian und dessen Derivate zu installieren.  
apt search [Suchbegriff] Durchsuchen des Paketkatalogs -n Durchsucht nur den Paketnamen
-d Durchsucht nur die Beschreibung
# Suche nach vim apt search vim
# Eingrenzen der Treffer indem vim am Beginn
# des Paketnamens oder der Beschreibung stehen muss
apt search ^vim
# Eingrenzen dass nur noch im Namen des Paketes gesucht wird
apt search -n vim
# Eingrenzen dass nur noch in der Beschreibung des Paketes gesucht wird
apt search -d vim
apt list Auflistung der Pakete aus dem Software-Repository --installed Nur die aktuell installierten Pakete
--upgradable Nur die Pakete anzeigen, für die Upgrades verfügbar sind
apt list
apt list --installed
apt list --upgradable
apt show [Paketname] Anzeigen von Details zu einem Paket apt show vim
apt install [Paketname] Installation eines Paketes # Installation des Pakets lolcat apt install lolcat
apt remove [Paketname] Entfernen eines Paketes # De-Installation des Pakets lolcat apt remove lolcat
apt autoremove Entfernen nicht mehr benötigter Pakete apt autoremove
apt update Aktualisiert die Repository-Datenbank apt update
apt upgrade Aktualisiert installierte Pakete solange keine neuen Pakete installiert werden müssen oder nicht mehr benötigte entfernt werden. apt upgrade
apt full-upgrade Aktualisiert installierte Pakete, installiert zusätzlich benötigte Pakete und entfernt nicht mehr benötigte Pakete. apt full-upgrade
apt-file Tool um herauszufinden, welche Datei zu welchem Paket gehört # apt-file arbeitet mit einem Cache - dieser muss zuerst aktualisiert werden
apt-file update
# Welches Paket hat die Datei /etc/crontab erzeugt?
apt-file search /etc/crontab
# Welche Dateien gehören zu dem Paket cron-daemon-common?
apt-file list cron-daemon-common
dpkg Tool welches die eigentliche Installation und deinstallation eines .deb Paketes vornimmt --info # Gibt erweiterte Informationen zum Paket aus
--contents # Gibt den Inhalt (Dateiliste) des Pakets aus
--install # Installiert ein Paket
--remove # Entfernt ein Paket
# Anzeige der Informationen zum Paket
dpkg --info google-chrome-stable_current_amd64.deb

# Anzeige der Dateien welche installiert werden
dpkg --contents google-chrome-stable_current_amd64.deb

# Installieren des Pakets
dpkg -i google-chrome-stable_current_amd64.deb