Arbeitsnachweis

Ich hab immer wieder das Problem, dass ich wissen sollte, welche Arbeiten in den letzten 7, 14, 21 oder 28 Tagen von mir / jemand anderem in einem bestimmten Verzeichnis erledigt wurden – also vor allem, welche Dateien angelegt oder verändert wurden. Dazu hab ich mir ein kleines Script geschrieben:

#!/bin/bash
echo „7 TAGE“ > /home/user/workdone.txt
find . -mtime -7 -print >> /home/user/workdone.txt
echo „14 TAGE“ >> /home/user/workdone.txt
find . -mtime -14 -print >> /home/user/workdone.txt
echo „21 TAGE“ >> /home/user/workdone.txt
find . -mtime -21 -print >> /home/user/workdone.txt
echo „28 TAGE“ >> /home/user/workdone.txt
find . -mtime -28 -print >> /home/user/workdone.txt
sed ‚/zuloeschen/d‘  /home/user/workdone.txt > /home/user/workdone2.txt
cat /home/user/workdone2.txt

Der Einschub sed ‚/zuloeschen/d‘ workdone.txt sorgt dafür, dass ich Elemente, die vom Server selbst kommen (im konkreten Fall sind dies täglich erneuerte Steuerdateien) einfach wieder raus werfen kann. Im Beispiel oben würde demnach die Zeile, die das Wort zuloeschen enthält, gelöscht.

USV

Der Strom „wackelt“ bei uns in Nehren – oder bei mir im Haus. Auf jeden Fall zuckte immer mal wieder einer meiner Bildschirme. Also hab ich mir eine USV zugelegt – von APC, damit auch ja nix schief geht.

Die Grundeinrichtung war recht simpel:

sudo apt-get install gapcmon

installiert die grafische Oberfläche für apcmon für gnome, vor allem jedoch den Daemon apcupsd. Die Einrichtung dieses Daemons ist hier umfassend beschrieben:

http://wiki.ubuntuusers.de/USV/Apcupsd

gnome

Nach der Installation liefert gnome unter /System /Einstellungen /Energieverwaltung grundlegende Konfigurationsmöglichkeiten für den Desktop:

gapcmon

Wer es ein wenig bunter haben will, greift direkt auf gapcmon zu:

Sollte man auf die Idee kommen, das tray icon von gapcmon nutzen zu wollen, rennt man gegen einen wohl schon längere Zeit bestehenden bug.

Zwar wird die gewünschte Funktionalität nun im Benachrichtigungsfeld zur Verfügung gestellt, man sieht diese jedoch nicht, weil das Icon fehlt. Vielmehr befindet sich dort nun eine kaum wahrnehmbare dünne Linie, die auch USV Statusmeldungen ausgibt, wenn man mit der Maus drüber fährt.

Nur ein extrem fummeliger Rechtsklick auf diese dünne Linie führt einen dann wieder zurück zum Einstellungsfenster, in dem man die Häkchen in den Checkboxen für das tray icon wieder entfernen kann.

Ein workaround ist hier beschrieben – dieser stammt jedoch aus dem Jahr 2008 und ich habe nicht getestet, ob das heute noch so zu lösen ist.

Apache

Wer mit seinem lokalen Apachen gucken will, kann apcuspd-cgi installieren. Ubuntu trägt dann die nötigen Veränderungen für den Apachen selbst ein:

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory „/usr/lib/cgi-bin“>
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>

Das lässt sich nun noch anpassen – out of the box ist die Anzeige hier zu finden, nachdem man den Apachen neu gestartet hat:

http://localhost/cgi-bin/apcupsd/multimon.cgi

Ein Klick auf Local Host bringt das folgende Fensterchen in den Browser:

Das reicht für den schnellen Blick im Alltag – ist jedoch noch nicht wirklich schön. In

/etc/apcupsd/

liegen genug Dateien, um den Output anzupassen – vor allem die apcupsd.css sollte einen Blick erhalten.

Mehr Informationen hier: http://www.apcupsd.org/manual/

Dumbobackup

Da meine Moodle 2 Installationen im Moment noch nicht vollständig in backup2l integriert werden können, darf ich die Kursräume händisch sichern. Das nervt, wenn man das nicht automatisieren kann.

Auf dem Server schreibt das in Moodle 2 integrierte Backup die Kursräume jede Nacht in das Verzeichnis

/server/dir/mdlbckp/

Aus diesem Verzeichnis sollen dann die Kursraumbackups (im Moodle 2 üblichen mbz Format) auf die lokale Platte in das Verzeichnis

/localpath/bckp_tagmonatjahr/dir1

wandern, wobei dieses Verzeichnis einen „Datumsstempel“ im Pfadnamen tragen soll.

Ich hab das mal so gelöst:

#!/bin/bash
# Datum in Variable schreiben
d=$(date +%d%m%Y)
# Lokales Verzeichnis mit Zeitstempel anlegen
mkdir -p /localpath/bckp_$d/dir1
# Moodle Kursraumbackups vom Server holen
scp -r user@server.de:/server/dir/mdlbckp/* /localpath/bckp_$d/dir1

Für jedes zu sichernde Moodle 2 auf dem Server wird das Skript dann um einen mkdir -p Aufruf und den entsprechenden scp -r Befehl ergänzt.

Wenn scp Dank public key Verfahren auf den Server zugreifen darf, dann ist das Skriptchen – über einen cronjob aufgerufen – nun wenigstens ein workaround.

LibreOffice 3.3

Die Foren und Blogs sind voll davon – ich leg mal meinen Weg für Ubuntu Lucid 64 Bit  dar:

sudo vi /etc/apt/sources.list

Hier dann ergänzend das PPA für LibreOffice eintragen:

deb http://ppa.launchpad.net/libreoffice/ppa/ubuntu lucid main

Dann den key des Repos holen:

sudo apt-key adv –recv-keys –keyserver keyserver.ubuntu.com 1378B444

Kurzform (so gerade eben auf meinem Laptop unter Maverick):

sudo add-apt-repository ppa:libreoffice/ppa

Aktualisieren:

sudo apt-get update ; sudo apt-get dist-upgrade

Jetzt meinte Lucid schon, dass OpenOffice von der Platte müsse. Das habe ich erlaubt.

Es folgt die Installation von LO:

sudo apt-get install libreoffice libreoffice-l10n-de libreoffice-help-de libreoffice-gnome libreoffice-evolution libreoffice-presenter-console libreoffice-presentation-minimizer libreoffice-pdfimport libreoffice-filter-binfilter libreoffice-dtd-officedocument1.0

Leider fehlt im Repo / PPA noch das hyphenation Paket libreoffice-hyphenation-de – aber der Rest funktioniert, inklusive der Writer Tools.

Ich musste LO noch unter /Extras /Optionen /Pfade das Verzeichnis für meine selbst gestrickten Dokumentenvorlagen mitteilen.

Transcoder

Ich bin gerade über arista gestolpert, das sich auch in den Ubuntu Paketquellen befindet und mit Hilfe vieler gstreamer-plugins beim Umwandeln von Mediendateien für viele Gerätetypen zeigt, dass Transkodieren komfortabel sein kann. Arista ist eine wunderbare Ergänzung und oft auch ein Ersatz für tragtor, einem GUI für ffmpeg.

Als Quelle können CD/DVD Laufwerke wie auch lokale Dateien angegeben werden. Im Eintrag Gerät (siehe Bild oben) stehen Profile für die üblichen Verdächtigen bereit und unter Profil können Qualitätseinstellungen vorgenommen werden.

Damit alles mit arista rund läuft sollte die gesammelte Packung gstreamer-plugins installiert sein, was so überprüft werden kann:

dpkg -l | grep gstreamer

Man vergleiche dann mit der Ausgabe von

sudo apt-cache search gstreamer | grep plugins

und installiere fehlende Plugins nach.

Moodle frisst Server

Eigentlich dumpe ich jede Nacht alle Datenbanken auf dem Server und verpacke diese zusammen mit den Webserververzeichnissen in Archive – bzw. backup2l macht das für mich. Diese Archivdateien rsynce ich am frühen Morgen auf meine lokale Platte bzw. auf meinen Backupserver in der Schule.

Jahrelang ging das glatt. Moodle 1.x.y legte brav nur die Dateien in die Unterverzeichnisse von /moodledata, die von den Nutzern hochgeladen wurden. Moodle 2 benimmt sich komplett anders – wie, genau, weiß ich noch nicht. Da komm ich gerade erst dahinter. Auf jeden Fall fressen die frisch installierten Moodle 2 langsam den Plattenplatz auf dem Server und auf den Backupservern auf, weil sich jede Nacht gleich pfundweise Dateien und Verzeichnisse innerhalb von /moodledata verändern und so die Archive aufblähen.

Nachdem in den Foren auf moodle.org zu dem geschilderten Problem keine Reaktion kam, trug ich einen bug report ein. Jetzt kommt Bewegung in die Sache … aber eine saubere Lösung steht wohl noch für einige Zeit aus.

Im Moment packt backup2l nur noch die WordPresse und DokuWikis sowie die Moodle 1.9.x Installation – nicht aber Verzeichnisse, die ein Moodle 2 enthalten – ein. Moodle 2 Backups gibt es nur noch ein paar mal im Monat – und da dann lediglich von den von Moodle 2 selbst angelegten Kursraumbackups.

Was für ein Gewürge.

Inkscape CLI

Iconsets unter GPL sind eine wahre Freude. Leider werden die Icons jedoch selten in den Größen geliefert, die ich für die Nutzung auf Webseiten benötige. Also muss ich mir die Knöpfe hier selbst backen.

In einem ersten Schritt suche ich mir in den herunter geladenen Iconsets die SVG Dateien und kopiere mir diese in einen Ordner auf dem Desktop:

find /home/dirk/Bilder/Icons -name „*.svg“ -exec cp {} /home/dirk/Desktop/icons/ \;

Da mir im Falle von SVGs die Konvertierung mit imagemagick in PNGs zu pfriemelig geriet, nutzte ich hier Inkscape auf der Shell:

for i in $(ls *.svg) ; do inkscape -f $i -e $i-60.png -h 60 ; done

Das läuft zwar wesentlich langsamer ab (pro SVG braucht Inkscape hier bis zu 10 Sekunden – und das auf einem Quadcore mit 8GB RAM), ist aber dafür viel viel schöner im Ergebnis und umgeht alle Probleme mit Transparenzen.

imagemagick rev

Hier hab ich noch Erfolg mit dem Befehl

for i in `ls *.png`; do convert $i -alpha off conv_$i; done

gehabt.

Wenn die Hintergrundfarbe allerdings nicht weiß, sondern schwarz erscheint, dann kann dem abgeholfen werden:

for i in $(ls *.png) ; do convert $i -background white -alpha background whitebg_$i ; done

Weitere Schalter sind hier zu finden:

http://www.imagemagick.org/script/command-line-options.php