Hier werden einige nützliche Informationen mit Lösungen und Beispielen für den Linux - Alltag gegeben.
Inhalt:
Dateien / Verzeichnisse mit dem Befehl tar auf Diskette sichern
Gemountete FAT-Partitionen werden Umlaute als Sonderzeichen dargestellt
Wer ist mit meinem Rechner verbunden und welche Ports sind betroffen?
Suchen nach Dateien die gerade angelegt / bearbeitet oder zugegriffen wurde
Platzbedarf aller Unterverzeichnisse feststellen:
# find . -maxdepth 1 -type d -print | xargs du -skh | sort -rn
Dateien /
Verzeichnisse mit dem Befehl tar auf Diskette sichern:
tar benutzt immer ein Standard-Device, welches mit dem Befehl tape gesetzt werden kann.
TAPE=/dev/fd0
tar cvz /home/user
tar cvz /home/user - schreibt den Inhalt des Verzeichnisses /home/user als komprimiertes tar-Archiv auf die Diskette.
tar tvz - wird der Inhalt der Diskette angezeigt.
tar xvz -
wird der Inhalt der Diskette zurück gespielt.
Option: -M
– kann ein größeres tar- Archiv automatisch auf mehrere Floppys verteilen.
Das funktioniert sogar, falls eine einzelne Datei größer ist, als die
Kapazität der Floppy.
Dateien /
Verzeichnisse mit dem Befehl tar sichern:
Es soll z.B. das Verzeichnis /etc gesichert werden - hier die Verfahrensweise:
cd /etc
tar -cvf sicherung.tar . (Punkt nicht vergessen - heißt - aktuelles Verzeichnis sichern)
Beschreibung: -c = create a new archive -v = verbose -f = file ggf. -z = gzip (compress) -x = extract (Archiv entpacken)split -b 1440k QuellDatei Name
-b bedeutet Byteweise 1440k die Größe QuellDatei ist natürlich der Name der aufzuteilenden Datei Name ist der Name der als "Basis" für die Namen der erzeugten kleineren Dateien verwendet wird (z.B. nameaa, nameab, nameac,....)Um eine aufgeteilte Datei später wieder
zusammenzusetzen verwendet man den Befehl "cat":
cat Name* > NameDerZielDatei (alter Quellname)
Beispiel eines Backupskript mit tar und Time-Stamp:
#!/bin/sh
datetag=$(date
+%d_%m_%Y__%H_%M_%S);
tar -czf /tmp/meinedaten__$datetag.tar.gz
/home/user
*das Skript ist ohne Änderung auch auf *BSD und
anderen unixartigen Betriebssystemen lauffähig.
Bei der Fehlersuche (z.B. nach Neuinstallierter Hardware) ist es hilfreich die Meldungen vom System nochmals anzusehen.
# dmesg | grep –i mouse ; Filtern nach Mouse (Groß / Kleinschreibung ignorieren)
# dmesg | grep –i ‘usb serial’ ; wenn Leerzeichen enthalten sind
# dmesg | grep -C 3 -i mouse ; 3 Zeilen vorher / nachher mit anzeigen (z.B. bei langen Fehlermeldungen)
CD als
Imagedatei auf die Festplatte speichern:
-
für z.B. häufig verwendete CDs
# dd if=/dev/cdrom of =/pfad/zum/iso.image
; allgemein
# dd if=/dev/cdrom of=/home/cdverzeichnis/cd.iso ; Beispiel
Mounten des ISO-Images:
# mount –t iso9660 –o ro, loop=/dev/loop0 /home/cdverzeichnis/cd.iso /media/cdrom
Gemountete FAT-Partitionen werden Umlaute als Sonderzeichen dargestellt:
Ursache: mount verwendet das falsche ISO-Set
Lösung:
Sie müssen in der Datei /etc/fstab z.B. bei
floppy die Option iocharset=iso8859-1 angeben,
/dev/fd0 /floppy
auto noauto,user,iocharset=iso8859-1 0 0
Genauso verfahren Sie mit
Windows-Partitionen.
Wenn Sie FAT-Partitionen von Hand mounten verwenden Sie z.B. folgenden Befehl
# mount /dev/hdb1 /mnt -o iocharset=iso8859-1
Wer ist mit meinem Rechner verbunden und welche Ports sind betroffen?
netstat -a optional: netstat -an (ohne Namensauflösung)
Hex / Dez / Binär - Konvertierung auf der Konsole (Shell):
Manchmal ist es notwendig Zahlen zu konvertieren (z.B. beim einstellen von Grafikwerten; hex oder zum Programmieren). Hier werden zwei Beispiele aufgeführt. Die Parameter 'ibase' bzw. 'obase' geben die Zahlenbasis für die Ein- und Ausgabe an.Hexadezimal in dezimal:
# echo -e 'ibase=16;FFFF' | bc FFFF = 65535
# echo -e 'ibase=16;AA00' | bc AA00 = 43520
Dezimal in hexadezimal:
# echo -e 'obase=16;255' | bc 255 = FF
# echo -e 'obase=16;100' | bc 100 = 64
Dezimal in binär:
# echo -e 'obase=2;12345' | bc 12345 = 11000..0111001
# echo -e 'obase=2;12' | bc 12 = 1100
Suchen nach Dateien die gerade angelegt / bearbeitet oder zugegriffen wurde:
# ls –tl Parameter –t sortiert die Ausgabe nach der Zeit der Erstellung Parameter –l liefert eine vollständige Ausgabe # ls –tlr Parameter –r Ausgabe neueste Datei am Ende (bei langen Dateilisten sinnvoll) # ls –turl Parameter –u Ausgabe nach ZugriffszeitFalls eine Datei zu groß ist um sie per Mail oder per Diskette zu transportieren, so kann man diese in kleine Teil zerlegen (aufsplitten):
# split –b 1400k beispiel.pdf
Die Datei beispiel.pdf wird in 1400 Byte große Teile zerlegt. Die durch den Befehl split erzeugten Dateien tragen den Namen xaa, xab, xac ....
Zusammenfügen der Teile: # cat x* > beispiel.pdfAchtung: Um Fehler im teilen und zusammenfügen zu vermeiden bitte in einem extra Verzeichnis durchführen!
kill <pid> ; mit ps ax Prozess-Nummer herausfinden
killall httpp ; alle Prozesse Namens httpp beenden (Signal TERM)
killall -KILL httpp ; die harte Beendigung (auch aus dem Speicher)
System-Informationen anzeigen:
# uname -a ; a = all (Name des Systems, OS, Kernel etc.)
# cat /proc/cpuinfo ; alles zur CPU (MHz, Cache, Prozessor etc.)
# cat /proc/meminfo ; alles zum Speicher
# cat /proc/sys/fs/file-max ; max. Filehandling (Maximale Anzahl gleichzeitig geöffneter Dateien)
Rechte File-System ändern (setzen von ro auf rw):
# mount -o remount,rw /usr ; Bsp.: /usr (Verzeichnis) liegt auf /dev/bda5
Bash - Limitierung umgehen: Sehr viele Dateien löschen:
Hat man ein Verzeichnis mit sehr vielen Dateien - und will man diese löschen - kann eine Fehlermeldung ("Too many arguments" -"zu viele Argumente") hervorgerufen werden. Der Grund dafür ist, dass der rm-Befehl und die Bash nur mit einer begrenzten Zahl an Dateien klarkommt.
# rm * bringt oben beschriebene Fehlermeldung
Lösung:
# find . -name "*" -exec rm -rf {} \;
Hier wird zunächst das find-Kommando aufgerufen, das alle Dateien mit einem zur Wildcard "*" passenden Namen ausfindig macht. Für jede nun gefundene Datei wird das hinter exec angegeben Kommando ausgeführt.
Laufende Überwachung des Systems mit log2ascii
Mit log2ascii kann man das System überwachen.
# log2ascii
Ist die Log-Datei zu groß geworden kann man sich die letzten z.B. 100 Zeilen anzeigen lassen.
# log2ascii -f -l 100
Runlevel beim booten festlegen
Beim booten kann dem Kernel der zu startende Runlevel übergeben werden. Dazu wird z.B. bei Grub mittels Taste <e> für „edit“ folgendes hinzugefügt:
Runlevel 2:
kernel /boot/..linux… root=/dev/hd…. ro quite 2 ….
Runlevel 3:
kernel /boot/..linux… root=/dev/hd…. ro quite 3 ….
....weitere folgen.....
Suche nach Literatur / Bücher zum Thema!
Unsere Seiten nach weiteren Informationen durchsuchen!
Letzte Bearbeitung: 11 / 2006 - Bitte beachten Sie das Copyright und die Hinweise im Inhalt unter www.datahelp.de
Copyright © www.datahelp.de
Modifizierung oder Weitergabe an Dritte nur mit Einverständnis des Autors gestattet !