Dateiverwaltung

Verlustfreie Rotation von JPEG-Bildern

JPEG-Bilder können verlustfrei gedreht werden. Dazu dient der Befehl jpegtran.

jpegtran -rotate 90 bild.jpg > bild_90.jpeg

Datensicherung auf ein entferntes Bandlaufwerk

Beschreibung

Von der lokalen Maschine aus sollen Daten auf einem Bandlaufwerk gesichert werden, das in einem entfernten Rechner eingebaut ist. Dazu werden die Komponenten tar, rmt und ssh benötigt.

Bei meinem Linux-Zielrechner muss noch eine Verknüpfung hergestellt werden, da das tar-Programm auf dem Zielhost die Datei rmt im Verzeichnis /usr/libexec erwartet:

mkdir /usr/libexec
ln /usr/sbin/rmt /usr/libexec/rmt

Grep mit mehreren Suchmustern

Ist es notwendig, mittels grep mehrere Muster zu prüfen, kann der Kommandoaufruf so aussehen:

find | grep -E '(\.zip$)|(\.tar\.)|(\.log$)'

Kopieren mit tar und ssh

Lokal

tar cf - pfad1/ | tar xpvf - -C /zielpfad

Der Parameter -p sorgt für die Beibehaltung der Zugriffsrechte.

Verschlüsselt mit ssh

Mit dem folgenden Konstrukt können Dateien und Pfad verschlüsselt auf einen anderen Rechner kopiert werden.

tar cf - pfad1/ | ssh remotehost 'cd /zielpfad && tar xpvf -'

Kopieren (Klonen) eines Systems mit dump

Das Klonen eines Linux-Systems lässt sich am leichtesten mit zwei Live-Systemen bewerkstelligen (bspw. Knoppix oder grml). Das Quell- und das Zielsystem sind dabei über Netzwerk gekoppelt. Um nur die benötigten Daten zu kopieren, bietet sich für ext2/ext3-Dateisysteme der Befehl dump und sein Gegenpart restore an.

Fortschrittsanzeige bei dd

dd if=/dev/hda1 | buffer -s 64k -S 10m >image

Quelle: c't 2/2006, S. 182: Hotline

Mehrere Dateien bearbeiten

Oftmals gibt es die Aufgabe, ein Verzeichnis samt Unterordnern nach bestimmten Dateien zu durchsuchen und einen Befehl mit diesen Dateien aufzurufen. Die folgende Tabelle listet Möglichkeiten auf, diese Tätigkeit durchzuführen.

find + xargs

find -iname '*~' -print0 | xargs -0 rm

Unison ohne ssh

In einem lokalen Netz kann der Synchronisationsvorgang beschleunigt werden, wenn die Daten nicht über ssh getunnelt werden. Dazu müssen folgende zwei Schritte unternommen werden:

Serverseite

unison -socket 10404

Unison wird als Serverprozess gestartet, öffnet den Port 10404 und warten auf Anfragen.

Clientseite

Die entfernte Adresse lautet nun:

Zeichensätze umwandeln mit recode

Das Programm recode dient zur Konvertierung einer Datei von einem Zeichensatz in einen anderen, bspw. von Latin-1 in UTF-8. Der Aufruf erfolgt nach folgendem Schema, die Originaldatei wird dabei ersetzt.

recode [-f] KONVERTIERUNG datei

Erstellungsdatum einer Datei

ls -l netzscan_ergebnis --time-style=+%s|awk '{print strftime("%c", $6) }'

Inhalt abgleichen