Logrotate manuell ausführen

Mit dem Tool Logrotate werden unter Linux die Logs periodisch rotiert, damit der Speicherplatz nicht irgendwann durch die Logs erschöpft wird. Beim Schreiben einer neuen Konfiguration für Logrotate kann es vorkommen, das man diese anschließend testen möchte. Dazu gibt man im Terminal:

logrotate --force /etc/logrotate.d/dpkg

ein, womit der Vorgang für die definierte Konfigurationsdatei ausgeführt wird. Eventuelle Fehler und Warnmeldungen werden dabei mit angezeigt.

Bad Interpreter unter Mac OS X

Wenn man unter Mac OS X ein sh-Skript ausführen möchte und dabei die Meldung:

/bin/sh^M: bad interpreter: No such file or directory

bekommt, kann das Skript nicht ausgeführt werden. Das Problem liegt daran das versucht wird den Interpreter „bin/sh^M“ anstatt „bin/sh“ zu starten. Bei dem ^M handelt es sich um das dreizehnte ASCII-Zeichen, das Carriage Return (im deutschen auch Wagenrücklauf genannt). Um das Problem zu beheben muss das entsprechende Skript einfach um das Carriage Return Zeichen bereinigt werden. Dies kann im Terminal einfach mittels:

perl -i -pe 'y|\r||d' script.sh

bewerkstelligt werden. Anschließend sollte das Skript ohne weitere Probleme durchlaufen.

Cannot open your terminal

Wenn man eine Anwendung mittels „screen“ ausführt, kann es passieren das man den Fehler:

Cannot open your terminal '/dev/pts/0' - please check.

zu Gesicht bekommt. Vielfach wird empfohlen bei diesem Fehler die Rechte des Gerätes zu ändern:

chmod 777 /dev/pts/0

Anstatt diese Lösung zu nutzen sollte man vor der Ausführung von „screen“ den Befehl:

script /dev/null

auszuführen. Damit kann „screen“ anschließend ohne Fehlermeldung genutzt werden.

Anzahl der Dateien in einem Ordner unter Linux bestimmen

Möchte man wissen wir viele Dateien sich in einem Ordner unter Linux befinden, so kann man dies leicht durch eine Kombination der Befehle „find“ und „wc“ bewerkstelligen:

find /home/seeseekey/manyfiles/ -type f | wc -l

Der „find“-Befehl listet dabei alle Dateien in dem Ordner auf, während „wc“ (word count) die ausgegebenen Zeilen zählt und man somit die Anzahl der Dateien ermittelt.

Image von einer SD-Karte unter Mac OS X erstellen

Manchmal benötigt man ein Image von einer SD-Karte, z.B. dann wenn man eine Installation einer Raspberry Pi Distribution von einer solchen Karte sichern möchte. Im ersten Schritt muss man ermitteln welche Kennung die SD-Karte trägt. Dies geschieht im Terminal mittels:

diskutil list

Die Ausgabe könnte dann in etwa so aussehen:

/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *251.0 GB   disk0
   1:                        EFI                         209.7 MB   disk0s1
   2:          Apple_CoreStorage                         250.1 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS Macintosh HD           *249.8 GB   disk1
/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *16.1 GB    disk2
   1:             Windows_FAT_32 NO NAME                 16.1 GB    disk2s1

In diesem Fall ist das Gerät „/dev/disk2“ die SD-Karte ist. Mittels des Befehls „dd“ wird dann das entsprechende Image erzeugt:

sudo dd if=/dev/disk2 of=sdcard.img

Der Vorgang nimmt dabei durchaus einige Zeit in Anspruch, in welcher man keine Ausgaben auf der Konsole sieht. Nach der Erzeugung des Images, gibt „dd“ noch eine Auswertung des Kopiervorganges zum Besten und die Kopie ist komplett.