{{tag>Kommandozeile bash shell}} ====== Nützliche Bash-Befehle ====== ==== Befehle suchen: ==== whereis locate which type -a alias | grep ==== Aktuelles Verzeichnis auflisten: ==== ls -alh Unterverzeichnisse werden blau dargestellt. ==== Aktuelles Verzeichnis wechseln: ==== cd [Unterverzeichnisname] cd .. wechselt in die nächst höhere Ebene cd / wechselt auf die höchste Ebene ==== Kernel-Version bestimmen: ==== cat /proc/version Achtung: Das Verzeichnis /proc/ enthält Pseudodateien, deren Anzeige-Inhalt beim Aufruf frisch erzeugt wird und Informationen über das System wiedergibt. Im Webmin-Java-Dateimanager scheinen die Dateien leer zu sein! ==== paedML-(openML)-Version bestimmen: ==== cat /etc/issue ==== Zustand des Software Raid anzeigen: ==== cat /proc/mdstat zeigt an, ob das Softwareraid in Ordnung ist Beispiele: [UUU] die drei Platten des Raidverbundes sind in Ordnung [_UU] eine Platte des Raid-Verbundes ist ausgefallen ==== Paketinstallationen dpkg ==== Ein .deb-Paket installieren oder alle Pakete im aktuellen Pfad: dpkg --install einesoftware_amd64.deb dpkg --install *.deb dpkg -l | grep samba grep filtert die Ausgabe und lässt nur Zeilen durch, die das angegebene Suchwort enthalten. Zeige Installationsstatus und Version von z. B. python: dpkg -l | grep python dpkg versteht auch Wildcards: dpkg -l '*samba*' dpkg -l '*pyth*' ... ==== APACHE ==== **Neustart** des Apache-Servers: apache2ctl restart Überprüfung, ob der Apache **erreichbar** ist (mit telnet - **Syntax**: ''telnet IP-Adresse Port'') telnet localhost 80 (Beispiel-Ausgabe:) Trying 10.16.1.1... Connected to server.xy-online.de. Escape character is '^]'. "connected" zeigt, dass auf dem Port ein Dienst läuft. Das geht natürlich auch mit anderen Ports, z.B. * 443 für https * 22 (2222) für ssh * 25 Mail ==== Prozesse mit ps==== Zeige, ob der Dienst freshclam läuft: ps -ax | grep freshclam Laufende Prozesse zeigen (Anzeige wird ständig aktualisiert): top Alle gestarteten Prozesse zeigen: ps -Af ==== User, Clients und Konten ==== Angemeldete User zeigen: smbstatus Laufende Client-PCs zeigen: smbclient -N -L localhost Zeige ausführliche Informationen über den User jae (3 Varianten): pdbedit -Lv jae smbldap-usershow jae sophomorix-user --user=jae Zeige alle eingerichteten Maschinenkonten: pdbedit -L -w | grep '\$' | grep -v init | sort Zeige alle Benutzerkonten: getent passwd Zeige alle Gruppen und ihre Mitglieder: getent group Anzeige aller **eingeloggten Benutzer**: w User-Datenbank reparieren: sophomorix-dump-pg2ldap ==== Festplatten-Infos ==== Zeige Plattennutzung: df -ah Zeige Größe des verwendeten Plattenplatzes des angegebenen Ordners (hier "/var"): du -hs /var Zeige Quota-Überschreitungen im quotierten Ordner "Beispiel": repquota /Beispiel | grep + Zeige Inhalt der Datei xy: cat xy geschickter ist less (damit kann man scrollen): less xy gezippte Dateien anschauen: zcat .gz Durchsuchen einer Datei nach einem Stichwort mit dem Befehl **grep** (z.B. global): cat /etc/samba/smb.conf | grep global Sucht in alle Dateien, die enthalten: find -type f -exec grep {} + grep -rl 'suchwort' Zeige alle exe-Dateien unter /home: find /home -name *.exe Zeige alle Dateien größer 100 MB unter /home: find /home -size +100M Löscht alle mp3-Dateien in den Schülerhomes (iname - case insensitive), ggf mit Nachfrage (-i): find /home/students -iname "*.mp3" -exec rm -i {} \; find /home/students -iname "*.mp3" -exec rm {} \; ==== Server-Betrieb ==== Auf den IPCop zugreifen (remote-login ohne Passwort): ssh -p 222 ipcop : Strg-D drücken Letzte Logeinträge anschauen: dmesg | more : dmesg (eng. "display messages") ist ein Kommnadozeilenbefehl, der den Ringpuffer des Kernels ausgibt. Er ist ein sehr nützliches Tool, um Fehler beim Systemstart (z.B. beim Laden von Modulen) oder Kernel-Fehler, defektes RAM, etc. zu finden. Am besten lässt man sich die Ausgabe von dmesg über einen Pager anzeigen: dmesg | less vgl. http://linuxgazette.net/issue59/nazario.html Das ganze Log kann man sich anschauen, indem man less /var/log/messages anschaut. Andere Dateien in var/log sind mitunter auch ganz nützlich.... :!: **Aktuell** geschriebene Logs sieht man mit: tail -f /var/log/messages (strg + c zum Beenden) **Installation / Aktualisierung von Paketen:** aptitude update (Neuladen der Paketlisten) aptitude -s -v dist-upgrade (Vorabinformation, welche Pakete installiert werden sollen) aptitude dist-upgrade (Aktualisierung der Pakete) Dienste (stoppen|starten|neu starten): /etc/init.d/[Dienstname] (stop|start|restart) Legt im aktuellen Verzeichnis einen Softlink zum Verzeichnis /var/cache/linuxmuster/logins an und nennt diese Sprungverknüfung logincache: ln -s /var/cache/linuxmuster/logins logincache Abmelden: logout (oder) exit Herunterfahren: init 0 oder shutdown -h now Neustarten: init 6 oder shutdown -r now Auf der Seite http://www.ss64.com/bash/ sind die gängigen Bash-Befehle erläutert. ==== ISO unter Linux brennen ==== Um ein ISO auf eine CD/DVD zu brennen reicht folgende Kommandozeile: cdrecord -scanbus cdrecord -v -dao -isosize dev=0,0,0 driveropts=burnproof meineisodatei.iso Bei dev muss man den Bus seines Brenners angeben, den man zuvor mit -scanbus ermittelt hat.