horak.net allerwelts blog

Dezember 19, 2005

unix / linux befehle

Abgelegt unter: webmasterei, Unix / Linux — Frank @ 8:02 pm

Alle Anfang ist schwer….
Das dachten und denken sich bestimmt einige die mit Linux zu tun haben und der Teufel steckt im Detail. Selbst einfache Aufgaben können einen zur Verzweiflung treiben nur weil man die einfachsten Befehle nicht kennt. Eigentlich habe ich es als Nachschlagewerk gedacht demnach wird es erstmal auch keine FAQ bzw. HowTo’s geben. Ich habe hier einfach einmal einige die grundlegendsten Befehle und Kommandos aufgelistet die man zum Arbeiten auf einem Linux server braucht.

Unix-Befehle für Anfänger

Geplante Aktion

Unix

bewirkt

Unix-Kommandozeile
Praktisches Beispiel

Hilfe ausführlich

man

Zeigt ausführliche Hilfe zu Unixbefehl

man ls
Manual, Handbuch (englischsprachige Hilfe) zu allen Parametern eines Befehls.

Hilfe einfach

whatis

Zeigt Kurzinfo zu Unixbefehl

whatis ls
Erklärung wird zweisprachig geliefert

In den Manpages suchen

apropos

Sucht einen Begriff in den Manual-Seiten und gibt alle Fundstellen aus. Genial :-)

apropos formatted
Zeigt eine Liste der Fundstellen, in denen das Wort formatted vorkommt.

Wer arbeitet am System?

who

Zeigt mir angemeldete Benutzer und Terminals

who
Es werden angemeldete Benutzer angezeigt

Wer bin ich?

whoami

Zeigt mir angemeldeten Benutzer und Terminals

whoami
Es werden Benutzername, Terminalbezeichnung und Anmeldezeit angezeigt

Wo bin ich?

pwd

Zeigt, in welchem Verzeichnis ich mich gerade wirklich befinde: aktuelles Directory mit absoluter Pfadangabe.

pwd
Im Moment befinde ich mich zum Beispiel hier: /home/user/t/

Wer verbirgt sich unter europäischer / dt. IP?

whois

Personen- / Firmendaten zu einer IP oder Domainnamen anzeigen lassen

whois -h whois.ripe.net was.weiss.ich.de
Europäische IP-Adressen + Domains anzeigen lassen

Wer verbirgt sich unter amerikanischer bzw. internat. IP?

whois

Personen- / Firmendaten zu Ami-IP-Adressen anzeigen lassen

whois -h whois.arin.net 123.123.123.123
Internationale IP-Adressen anzeigen lassen

Datum anzeigen

date

Zeigt aktuelles Datum

date -%d.%m.%y
Gibt Datum aus mit Tag, Monat, Jahr

Infos zu mount count

tune2fs

Zeigt oder setzt den mount count (nur als root)

tune2fs -l /dev/hda1 | grep "[Mm]ount count"
Zeigt, wie oft die Platte vor dem nächsten Plattencheck schon gebootet wurde, und wie hoch der mount count eingestellt ist.

tune2fs -c 50 /dev/hda1
Plattencheck statt nach z.B. 20 Bootvorgängen erst nach 50 durchführen (Zähler für mount count hochsetzen).

Uhrzeit

Uhrzeit anzeigen

date

Zeigt aktuelle Uhrzeit

date +%H.%M.%S
Gibt Uhrzeit aus mit Stunden, Minuten, Sekunden

System-Uhrzeit stellen unter Unix

date

Die Uhrzeit kann nur von root verändert werden.

date -s 10:05
Systemuhr (bis zum nächsten Rechner-Neustart) auf 10:05 Uhr stellen. Also: zuerst die Systemuhr stellen, und dann die Hardware-Uhr danach ausrichten (siehe hwclock).

Hardware-Uhrzeit einstellen

hwclock

Hardware-Uhr kann ebenfalls nur von root verstellt werden.

hwclock –systohc
Hardware-Uhr übernimmt die mit date eingestellte Systemzeit. Zeit bleibt dann auch nach Rechner-Neustart erhalten.

Basics

Diskette lowlevel formatieren

fdformat

Rohformatierung einer 3.5 Zoll Diskette

fdformat /dev/fd0H1440
Diskette wird lowlevel-formatiert.

Diskette formatieren

mformat

3.5 Zoll Diskette mit 1440 kb unter Unix formatieren für Dos

mformat -t80 -h2 -n18 -ldiskname a:
Die Diskette braucht vor dem Formatieren nicht gemountet werden, da "mformat" aus den mtools stammt.

Rechner runterfahren

shutdown

Mit einem Befehl kann der PC heruntergefahren und wieder neu gebootet werden.

shutdown now -f -r
-f
skip fsck on reboot (verhindert einen Festplattencheck beim Neustart
-rreboot after shutdown: PC wird nach dem Runterfahren neu gestartet.
Der häufigste Fehler bei Verwendung des shutdown-Befehls ist, dass keine Zeitangabe gemacht wird (hier: now)

Dateien auflisten

ls

Listet Inhalt eines Verzeichnisses auf.

ls -R
-R listet auch Dateien der Unterverzeichnisse mit auf, -l bedeutet ausführlich, lange Form der Auflistung, -t nach Änderungsdatum sortiert.

Dateien auflisten

ls

Standardanzeige ist Monat-Tag-Uhrzeit für das aktuelle Jahr, für ältere Dateien Monat-Tag-Jahr.

ls -l –full-time
Auflistung mit ausführlicher Datum- und Zeitangabe, auch für das aktuelle Jahr!

Dateien auflisten

ls

Standardmäßig wird die Ausgabe am Bildschirm angezeigt. Sie lässt sich aber auch in eine Textdatei umleiten.

ls -R > beliebig.txt
Erzeugt eine Datei beliebig.txt, in der das Ergebnis der Auflistung inkl. Unterverzeichnissen zu finden ist.

Verzeichnis anlegen

mkdir

Neues Verzeichnis mit neuen Unterverzeichnissen anlegen

mkdir -p test/test2/test3
Legt gleichzeitig mehrere Verzeichnisse hintereinander an

Verzeichnis wechseln

cd

Ohne Parameter wechselt cd ins Home-Verzeichnis

cd ..
Ein Leerzeichen und zwei Punkte nach dem Befehl: Ein Verzeichnis nach oben wechseln. Unter DOS war das Leerzeichen nicht nötig.

Ins Verzeichnis einer Diskette verzweigen

cd

Man kann auch von der Festplatte auf eine Diskette verzweigen.

cd /floppy/
Wechseln in das Rootverzeichnis der Diskette, sofern sie schon gemountet ist.

Diskette mounten

mount

Mountet eine Diskette

mount /floppy/
Die Floppy wird ins Dateisystem eingebunden

Prozesse

Speicherressourcen überwachen zeigen

top

Liste der laufenden Prozesse anzeigen mit Angaben zu Hauptspeicherbelastung

top
Es werden Priorität, Größe, CPU- und Hauptspeicherbelastung angezeigt und laufend aktualisiert.

Aktuelle Prozesse zeigen

ps

Zeigt an, welche Prozesse im Moment laufen

ps -efl
-e Anzeige aller Prozesse, -f volles Format, -l mit allen Attributen, -x alle Systemprozesse

Prozess killen

kill

Bricht einen Prozess sicher ab, der sich sonst nicht mehr stoppen lässt

kill -9 (PID)
Abzubrechender Prozess wird gestoppt und aus dem Speicher entfernt

Suche nach Dateien

Suche nach Dateinamen in einem oder mehreren Verzeichnissen

locate

Durchsucht blitzartig alle Verzeichnisse und indiziert das Suchergebnis, so dass es auch am nächsten Tag noch zur Verfügung steht.

locate index.html
Alle Dateien namens "index.html" werden aufgelistet. Es können auch Platzhalter verwendet werden, wie "*.pdf"

Finden einer bestimmten Datei, deren Dateiname bekannt ist

find

Das angegebene Verzeichnis mit allen darunterliegenden Unterverzeichnissen werden durchsucht.

find ordner/ -type f -name "index.htm"
Alle Dateien namens "index.htm" werden aufgelistet.

Finden von Dateien, die in den letzten 2 Tagen geändert wurden

find

Es wird vom aktuellen Verzeichnis ausgegangen und es werden alle Unterverzeichnisse durchsucht

find . -mtime -2 -print
Das Suchergebnis wird auf dem Bildschirm ausgegeben
find . -mtime -2 -print >2tage.txt

Das Suchergebnis wird in der Textdatei 2tage.txt gespeichert

Suche nach Strings

Löschen

Bestimmte Verzeichnisse löschen

rm

In vielen Unterverzeichnissen nach .xvpics suchen und diese samt Inhalt löschen

fiind * -name .xvpics | xargs rm -r
Die .xvpics sind Verzeichnisse mit Thumbnails, die beim Bilderbetrachten angelegt werden.

Datei löschen

rm

unwiederbringlich eine Datei löschen

rm -i dateiname
Mit Parameter -i muss die Löschung erst mit "y" bestätigt werden

Verzeichnis löschen

rmdir

Verzeichnisse werden gelöscht, sofern sie leer sind.

rmdir -r
Es wird rekursiv gelöscht, d.h. auch alle darunterliegenden leeren Unterverzeichnisse.

Druckauftrag löschen

lprm

Druckaufträge löschen, die unter meinem Namen laufen.

lprm -
Als Root lösche ich sämtliche Druckaufträge aller User, sonst nur meine eigenen.

Umbenennen

Datei umbenennen

mv

Dateien oder Verzeichnisse werden umbenannt oder verschoben.

mv datei.alt datei.neu
-b
sichert Dateien vor dem Überschreiben, -f überschreibt rücksichtslos, -i
will Bestätigung vor dem Überschreiben vorhandener Zieldateien, -u überschreibt nur ältere Versionen gleichnamiger Zieldateien.

Kopieren

Diskette kopieren ähnlich diskcopy unter DOS

dd

Gesamte Quelldiskette in eine Datei kopieren, dann diese Datei auf Zieldiskette

dd if=/dev/fd0 of=disk1.img bs=18k
In unserem Beispiel heißt die Datei "disk1.img". Nach Diskettenwechsel dann die erzeugte Datei auf die Ziel-Diskette schreiben:

dd if=disk1.img of=/dev/fd0 bs=18k

Dateien von Diskette auf Festplatte kopieren und unverändert lassen

cp

unverändert kopieren

cp -p -i /floppy/* .
Dateien unverändert von Diskette auf Festplatte ins aktuelle Verzeichnis kopieren, vor Überschreiben nachfragen

Dateien auf Diskette kopieren

cp

kopieren

cp /home/user/*.* /floppy/
Dateien von Festplattenverzeichnis werden auf Diskette kopiert

Dateien kopieren, die geändert wurden, inkl. Unterverzeichnisse

cp

kopieren

cp -r -u /home/user/*.* /floppy/
Alle Dateien (eines Verzeichnisses inkl. Unterverzeichnisse von Festplatte) auf Diskette speichern, die geändert wurden.

Dateien unverändert aus Linux- ins Win-Verzeichnis kopieren, die in den letzten 30 Tagen geändert wurden

cpio

Dateien seit einem bestimmten Änderungsdatum kopieren

find . -mtime -30 -print | cpio -pvmd /windows/user/
Windowsverzeichnis muss vorher gemountet werden, Datum der Files bleibt unverändert.

Dateien von Diskette unverändert auf HD kopieren

cpio

kopieren

find . -print | cpio -pvmd /home/user/daten/
Beim Kopieren von Dateien in Unterverzeichnissen Datum der Files unverändert lassen

Sicherungskopie eines Verzeichnisbaumes auf HD

cp

kopieren mit aktuellem Datum

cp -pR /home/mein/  /home/dein/neues
Komplettes Verzeichnis wird in ein neues kopiert

Sortieren

Dateiinhalt sortieren

sort

Sortiert Dateiinhalte nach verschiedenen Kriterien

sort -fnr
-f Groß- und Kleinbuchstaben gleich behandeln, -n numerische Werte numerisch sortieren, -r in umgekehrter Richtung sortieren

Dateinamen sortiert in Textdatei schreiben

ls

Die Dateinamen eines Verzeichnisses sortiert nach Änderungsdatum (neueste oben in der Liste), in einer Textdatei auflisten.

ls -c /home/user/*.* >ergebnis.txt
zeigt eine nach Datum sortierte Liste der Dateien im angegebenen Verzeichnis, nur Dateinamen

Datenbank sortieren

sort

wird zum Sortieren von Dateien oder Dateiinhalten benutzt

sort -f -t":" -k2 quelle.txt > ziel.txt
Sortiert Datenbank nach Feld 2, ignoriert Groß- u. Kleinschreibung, der Doppelpunkt wurde als Trennzeichen definiert.

Datei (Text)

Textdatei anlegen

cat

Text eingeben

cat > dateiname
Eine neue Textdatei wird angelegt und geschrieben, STRG+D gespeichert.

Textdatei verändern

cat

Text erweitern

cat >> dateiname
Vorhandene Textdatei wird erweitert

Führende Leerzeichen z.B. in HTML-Datei entfernen.

sed

entfernt in der Quelldatei die Leerzeichen und sichert die neue Datei mit anderem Namen

sed ’s/^ *//g’ index.html > index_neu.html
Kennst du das auch? Du holst dir per Copy + Paste einen Textabschnitt aus dem Net, und der ist völlig unformatiert.. Und da
hilft dieser Befehl!

Wörter zählen

wc

zählt Zeilen, Wörter und Buchstaben einer Datei

wc -wlc
-w zählt words, -l zählt lines, -c zählt characters

Programme unter Unix installieren

rpm-Datei installieren

rpm

Ein fertiges Package (rpm-Datei) als Root installieren. Vorher schauen, was für Pakete installiert sind.

rpm -i package.rpm
In dem Package enthaltene Dateien werden entpackt, das Packet weiß schon, wo es hingehört :-) Evtl. muss noch die Readme oder Hilfedatei für weitere Schritte gelesen werden.

Nach installierten Packeten gucken

rpm

Bevor man ein Programm(packet) deinstallieren kann, muss man wissen, wie es genau heißt.

rpm -q -a
Man kann sich diese große Übersicht auch in ein Textfile umleiten, um sie besser lesen oder darin nach Namen suchen zu können.

rpm-Packet de-installieren

rpm

Angenommen, ich will Opera V. 5 deinstallieren und weiß nun, dass er "opera-5.0-1" heißt:

rpm -e opera-5.0-1
Nun wird Opera 5 deinstalliert, und danach kann man eine neuere Version neu installieren :-)

tar-File herstellen

tar

Alle html-Dateien in ein tar-File packen (auch die aus darunterliegenden Unterverzeichnissen)

tar cvzf paeckchen.tgz  *.html
In der Datei "paeckchen.tgz" sind nachher alle Dateien inkl. Subdirectories enthalten, die den Dateinamenszusatz html haben.

tar-File auspacken

tar

tar-File wird entkomprimiert und samt seiner Unterverzeichnisse entpackt.

tar xzf paeckchen.tgz
Die in dem tar-File enthaltenen Dateien werden entpackt, evtl. enthaltene Verzeichnisse hergestellt

1 Kommentar »

  1. Interesting post i foung in this post…

    Trackback von blog alplazolam — Juni 8, 2006 @ 11:23 pm

RSS Feed für Kommentare zu diesem Beitrag. TrackBack URI

Einen Kommentar hinterlassen

You must be logged in to post a comment.

Powered by WordPress