Archiv März 2013

Sonntag, 24. März 2013

Wenn Apples Mail nach dem Verschieben einer IMAP-Nachricht diese nur noch als Base64-Müll anzeigt

… hilft nur eines: Man selektiert den IMAP-Ordner, welche die E-Mail-Nachricht enthält, und führt dann folgenden Befehl aus der Menuleiste aus:

  1. Mailbox
  2. Rebuild

Quelle: How to Fix Corrupted IMAP Attachments in Apple Mail

Die Nachrichten werden im Zuge dieser „Reinigung“ erneut vom Server heruntergeladen — und statt Base64-enkodiertem Zeichensalat sieht man bald wieder die Nachricht in Originalform.

Tags: , , , , ,
Labels: Apple

Keine Kommentare | neuen Kommentar verfassen

Mittwoch, 20. März 2013

Mit scp eine Datei mit Leerschlägen im Dateinamen kopieren

Das geht ganz einfach — sobald man herausgefunden hat, wie man den Pfad aufschreiben muss:

scp user@server:"'/Movies/Documentaries/The Power Of Nightmares/Documentary.The.Power.Of.Nightmares.01.Baby.Its.Cold.Outside.avi'" ~/Desktop

Konkret: Man schliesst den Pfad in Anführungszeichen und Apostrophs ein: „‚[pfad]'“ (Achtung: WordPress wandelt die Anführungszeichen in diesem Paragraphen in typographische ansprechende Zeichen um — was aber leider zur Folge hat, dass Copy & Paste der Zeichen in ein Shell-Fenster nicht mehr funktioniert).

Via Spaces and SCP

Tags: , , ,
Labels: Linux

Keine Kommentare | neuen Kommentar verfassen

Freitag, 15. März 2013

Photos eines Instagram-Benutzers als RSS-Feed abonnieren

Obwohl Google seinen (RSS-)Reader bald dicht macht, heisst das noch lange nicht, dass RSS-Feeds eine überholte Technologie sind.

Wer die Photos eines Instagram-Benutzers abonnieren möchte, abonniert folgende URL:

http://ink361.com/feed/user/[instagramusername]

Tags: , , , ,
Labels: Web

1 Kommentar | neuen Kommentar verfassen

Sonntag, 10. März 2013

Thunderbird effizient mit einem IMAP-Server und zehntausenden E-Mails verwenden

Neben der lokalen Ablage der Logs meines Linux-Servers unter /var/log leite ich Resultate von Cron-Läufen auch an eine E-Mail-Adresse auf einen in einem Rechenzentrum stehenden IMAP-Server weiter. Einerseits stelle ich so sicher, dass ich im Falle eines verheerenden Hacks auf dem IMAP-Server möglicherweise Informationen extrahieren kann, welche mir bei der Forensik helfen. Ob diese Lösung wirklich das Gelbe des Eis ist sei hier dahingestellt (heute würde ich mich wohl für eine Lösung wie Splunk entscheiden).

Nach langer Zeit habe ich heute wieder einmal per Web-Mail in diesen Account hineingeschaut und musst feststellen, dass sich in zwei IMAP-Ordnern je über 50’000 Mails angesammelt haben. Ich entschied mich, diese Ordner zu säubern. Hierzu verwendete ich aber nicht die vom Hoster angebotene Web-Mail-Lösung Roundcube, sondern Mozilla Thunderbird.

Nachfolgend einige Tipps, wie man mit der riesigen Flut an Mails umgeht:

Alle IMAP-Nachrichte herunterladen

Einerseits habe ich unter

  1. Thunderbird
  2. Preferences
  3. Advanced
  4. General
  5. Config Editor

den Wert von mail.server.default.check_all_folders_for_new auf true gesetzt. Ob dies etwas bewirkt, kann ich leider nicht sagen.

Andererseits habe ich auch bemerkt, dass man alle E-Mails in einem Ordner mittels Command-A auswählt und dann mittels Rechtsklick über die Option „Get Selected Messages“ herunterladen kann.

IMAP-Nachrichten auf dem Server durchsuchen

Unter

  1. Edit
  2. Find
  3. Search Messages…
  4. [x] Run search on server

In meinem Fall funktionierte diese Methode aber nicht; es wurden nur die Bodies derjenigen Mails durchsucht, welche sich bereits lokal auf meiner Festplatte befanden.

Zehntausende E-Mails rasch löschen

Nachfolgende Option verhindert, dass Thunderbird während Minuten nicht mehr reagiert, einen Spinning Beachball anzeigt und in Mac OS X‘ Activity Monitor rot als „not responding“ markiert wird:

  1. Tools
  2. Account Settings…
  3. Server Settings
  4. When I delete a message: (x) Remove it immediately

Dies verhindert, dass zu löschende Nachrichten von Thunderbird im Hintergrund in den Ordner „Trash“ verschoben werden, aus welchem man diese danach noch mittels „Empty Trash“ löschen muss.

Tags: , , , , ,
Labels: IT

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 10. März 2013

Web-Sites unter Mac OS X mit Internet Explorer testen

Obwohl ich kaum noch Web-Sites entwickle und seit ein, zwei Jahren auch nie mehr Web-Sites mit HTML und CSS gelayoutet habe, finde ich folgende Anleitung äusserst nützlich:

Internet Explorer for Mac the Easy Way: Run IE 7, IE8, & IE9 Free in a Virtual Machine

Zusammen mit der quelloffenen VirtualBox, welche mittlerweile Oracle gehört, und dem Shell-Script des Github-Benutzers xdissent richtet man sich unter Mac OS X oder Linux insgesamt vier Virtual Machines ein, welche Microsoft Internet Explorer 6 bis 9 bereitstellen.

Tipp: Das Passwort für die Konten Admin und Administrator lautet … Password1.

Tags: , , , ,
Labels: Web

Keine Kommentare | neuen Kommentar verfassen

Mittwoch, 6. März 2013

Wenn Subversion zwar updaten, aber nicht committen kann

Heute habe ich eines meiner Web-Projekte aktualisiert. Ich arbeitete dabei direkt auf dem produktiven Web-Server. Ein svn up klappte problemlos. Doch als ich die direkt auf dem Server neu erstellte robots.txt in das Repository einchecken wolle, kam es zu folgender Fehlermeldung:

$ svn ci -m "robots.txt fehlte"
svn: Commit failed (details follow):
svn: At least one property change failed; repository is unchanged
svn: Server sent unexpected return value (400 Bad Request) in response to PROPPATCH request for '//!svn/wbl/56ef405d-3812-4a6b-a62d-edae457cb0b0/1057'

Die Log-Daten meines Apache-Servers, welcher mittels WebDAV auch den Zugang zum SVN-Repository bereitstellt, vermeldeten folgendes:

access.log:

...
[SOURCE IP] - - [06/Mar/2013:20:08:56 +0100] "OPTIONS /repository HTTP/1.1" 401 772 "-" "SVN/1.6.17 (r1128011) neon/0.28.2"
[SOURCE IP] - [USER] [06/Mar/2013:20:08:56 +0100] "OPTIONS /repository HTTP/1.1" 200 1039 "-" "SVN/1.6.17 (r1128011) neon/0.28.2"
[SOURCE IP] - [USER] [06/Mar/2013:20:08:56 +0100] "PROPFIND /repository HTTP/1.1" 207 741 "-" "SVN/1.6.17 (r1128011) neon/0.28.2"
[SOURCE IP] - [USER] [06/Mar/2013:20:08:56 +0100] "MKACTIVITY /!svn/act/74bcecab-e942-418b-84e4-822ad8581d59 HTTP/1.1" 201 758 "-" "SVN/1.6.17 (r1128011) neon/0.28.2"
[SOURCE IP] - [USER] [06/Mar/2013:20:08:57 +0100] "CHECKOUT /!svn/vcc/default HTTP/1.1" 201 777 "-" "SVN/1.6.17 (r1128011) neon/0.28.2"
[SOURCE IP] - [USER] [06/Mar/2013:20:08:57 +0100] "PROPPATCH //!svn/wbl/74bcecab-e942-418b-84e4-822ad8581d59/1058 HTTP/1.1" 400 478 "-" "SVN/1.6.17 (r1128011) neon/0.28.2"
[SOURCE IP] - [USER] [06/Mar/2013:20:08:57 +0100] "DELETE /!svn/act/74bcecab-e942-418b-84e4-822ad8581d59 HTTP/1.1" 204 302 "-" "SVN/1.6.17 (r1128011) neon/0.28.2"
...

error.log:

[Wed Mar 06 19:48:10 2013] [error] [client [SOURCE IP]] Digest: uri mismatch -  does not match request-uri 

Unterwegs vom Produktionssystem zum Repository-Server kam es zu einem Problem, in welchem die Domain meines Servers aus der Request-URI entfernt wurde. Ich muss hierbei noch erwähnen, dass zwischen den beiden Servern ein (nicht transparenter) Proxy-Server mit Squid werkelt. Inwiefern dieser Server in den Vorgang gepfuscht hat, kann ich nicht sagen.

Nach langem Pröbeln habe ich es irgendwie hingekriegt. Die Lösung des Problems erscheint mir immer noch mysteriös — aber so sei es wohl manchmal halt: Nachdem ich einerseits folgende zwei Konfigurationsdateien umbenannt …

  • /etc/subversion/servers
  • ~/.subversion/servers

… und andererseits den Inhalt des Verzeichnisses

~/.subversion/auth/

komplett gelöscht hatte, klappte es mit dem Commit plötzlich problemlos.

Eine Vermutung habe ich: Da ich mich seit mehr als einem Jahr nicht mehr auf dem Server eingeloggt hatte, könnten unter auth noch Überreste der damals verwendeten HTTP Basic-Authentifizierung gespeichert gewesen sein. Mittlerweile bin ich auf HTTP Digest-Authentifizierung umgestiegen, um Passwörter im schlimmsten Fall nicht mehr im Klartext über ein öffentliches WiFi zu jagen. Indiz dafür ist, dass ich heute nach der Löschaktion gefragt wurde, ob ich das Passwort im Klartext auf dem Server speichern möchte (was ich abgelehnt habe).

Oder aber eine oder beide Konfigurationsdateien enthielten eine Option, welche die Übertragung der Informationen störte — bspw. der hardkodierte Proxy. Wieso die HTTP-Verbindung zum Repository-Server auch nach der Umbenennung der zwei Konfigurationsdateien weiter funktionierte, ist und bleibt schleierhaft. Wobei, jetzt kommt mir in den Sinn, dass die Admins dieses Netzwerks kurz vor meinem Weggang planten, einen transparenten Proxy einzurichten … Das könnte die Lösung sein.

Tags: , , , , , , ,
Labels: IT

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 3. März 2013

Zeitlos aktuell: Boiler Room (2000)

Gestern habe ich Zeit gefunden, den Film Boiler Room aus dem Jahr 2000 anzuschauen. Ich bin über den Artikel What it’s like to uncover a $1 billion fraud auf den Film aufmerksam geworden, welcher wie der Film das berühmt-berüchtigte Pump and Dump-Schema mit Penny Stocks porträtiert.

Meine Überlegungen in Form von Stichworten:

  • Der Rote Faden reicht von diesem Film direkt bis zur Finanzkrise, in der wir immer noch stecken
  • Wer in einem amerikanischen oder amerikanisch geprägten Unternehmen arbeitet wird die alles umfassende „Sell, Sell, Sell“-Mentalität wiedererkennen
  • Lasse dir niemals Investitionen im fünf- oder sechsstelligen Bereich von jemandem andrehen, der dich nur per Telefon kontaktiert, dessen Gesicht du nie gesehen hast und dessen Büro nicht in deiner Umgebung angesiedelt ist
  • Im Film tauchen verschiedene Schauspieler auf, die es in den seither vergangenen 13 Jahren zu Prominenz gebracht haben (Giovanni Ribisi, Vin Diesel, Ben Affleck). Mir war es auch, als hätte ich zu Beginn des Films bei der Information der potentiellen Broker-Kandidaten durch Ben Affleck auch Jonah Hill gesehen (der leicht dickliche Typ mit Rucksack).
  • Jetzt weiss ich, was sich ein ehemaliger Arbeitskollege zu Schulden kommen liess

Tags: , , ,
Labels: Medien

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 3. März 2013

Arte-Videos herunterladen

Vor ein paar Tagen hat arte die Dokumentation Staatsgeheimnis Bankenrettung veröffentlicht. Man kann die Reportage unter dem genannten Link live anschauen.

Wer sich die Dokumentation aber auf die lokale Festplatte laden möchte, um sie danach beispielsweise mit Air Video Server und Air Video.app unter iOS auf den Apple TV zu streamen, muss auf der Kommandozeile aktiv werden:

  1. # port install rtmpdump
  2. Download von Florian Crouzats Shell-Script mittels
    $ wget http://files.floriancrouzat.net/ripArte-v0.9.sh
  3. $ chmod 755 ripArte-v0.9.sh
  4. $ ripArte-v0.9.sh "http://videos.arte.tv/de/videos/staatsgeheimnis-bankenrettung--7340782.html"
  5. Auswahl des vierten RTMP Streams (German High-definition RTMP, rtmp://artestras.fcod.llnwd.net/a3903/o35/mp4:geo/videothek/ALL/arteprod/A7_SGT_ENC_04_048116-000-A_PG_HQ_DE?h=24fceb3242c5803955ac67b8b44ce499)

Und das Resultat sieht folgendermassen aus:

...
340386.493 kB / 3129.09 sec (99.9%)
Download complete

Tags: , , , , ,
Labels: IT, Medien

3 Kommentare | neuen Kommentar verfassen