Shell


Ein paar nützliche Shell Commands die einem das Leben etwas erleichtern.

Suchen nach Dateien

find sucht automatisch rekursiv :) bei absoluter Pfadangabe !


find . -name "suche*sql" relative Pfadangabe.
find /etc -name samba absolute Pfadangabe.
find /home/xxx -atime +8 -print Dateien auf die vor 8 Tagen und mehr zugegriffen wurde.
find . -atime +200 -exec rm {} \; Löschen von Dateien,die seit 200 Tagen nicht mehr benutzt wurden.
find /home/xxx ! -name '*.c' -print Dateien nicht mit der Endung *.c
find . -size +1M Dateien die => 1 MB (optional +1000K)
find . -name '*.php' | grep -c "\$next" *.php Wie oft kommt in welcher Dateie die Variable $next vor ?

Suchen in Dateien

grep im aktuellen Verz. grep -R für rekursives Durchsuchen (-r).


grep -i 'select \* from' * Inhalt mit Select * FROM in jeder Datei im akt. Pfad.
grep -Rc '<table*' *.html Wieviel Tabellen habe ich wo ?
grep -iR '<br>' * Alte HTML Tags auffinden.
egrep suchwort file.php > /home/xxx/see.txt | cat see.txt gefundene Wörter abspeichern und ausgeben.

Datei und Verz. Grösse

du df Grösse von Dateien und Verzeichnissen.


df -ah komplettes Dateisystem
df -ah /dev/hda2 freier Plattenplatz auf hda2
du -ah /srv/www/ Belegter Plattenplatz im Webverzeichniss. (ausführlich)
du -sh /srv/www/ Belegter Plattenplatz im Webverzeichniss. (schnell)

Netzwerk Verbindungen

netstat Verbindungen zu entfernten Rechnern und offene Ports.


netstat -tap offene Ports, und wer damit verbundnen ist. (PID checken ;-)
netstat -npl Alle offene Ports mit Listen (deutsche Version (Hört))
netstat -net IP Adressen, Ports und Status
netstat -r Routing Tabelle (route)
netstat -inet Schnittstellen : eth[x] & lo (ifconfig)
netstat -tap | grep mail aktive Mailserver.
netstat -tap | grep http aktive Internetverbindungen.

System/Logs beobachten

chkrootkit tail less Cmds kontrollieren, beobachten und ansehen


chkrootkit nachsehen ob Shell Cmds verändert wurden. (Naja zumd. von Bots :)
tail -f /var/log/apache2/erro_log Die letzen Zeilen des Webservers fortlaufend anzeigen.
less /var/log/messages Morgens ansehen, was nachts so los war ;-)
less /var/log/messages | grep sshd Und mal sehen wer so alles drauf war. (Nachtschicht Kontrolle)
lsof | grep /srv/www Geöffnete Dateien auf dem Webserver mal ansehen.
top Serverauslastung.
ps aux | grep httpd WebServer Prozesse.
smbstatus aktive Samba Verbindungen/Freigaben und verwendete Dateien.