KVM on Hetzner EX4

We used XEN-based virtualization in the last couple of years on several Hetzner root server machines. A couple of days ago a new root server was ordered (Core 3770, 16GB RAM, 2x3TB HD) and we it was decided to go with KVM this time.

This setup caused some troubles because there are several howtos out there but no one provides complete for

  • setting up KVM in Debian Squeeze
  • configuring the network for the guests
  • creating and installing guests without VNC in text mode only

Read more

Debian can’t send E-Mails (shell, php, …)

Server send emails to inform admins about important things – also web applications should be able to send messages.

By default this is not possible in Debian. Perform those commands to change the related settings.

apt-get install mailutils
dpkg-reconfigure exim4-config

XHProf Howto (on Debian with vhost)

XHPROF is a very helpful profile tool including html based reports which makes it easy to analyze and optimize a php application/webpage.

Read more

Eclipse, Tomcat & Mysql

result

It seems like a simple task but on a research on Google for a very specific problem I came across dozens of questions and blog entries complaining about errors like

  • No suitable driver found for jdbc:mysql:// …
  • Connection errors
  • Class not found errors
  • Mysql works as Java programm but not as servlet (in Tomcat)

Again – this is about using mysql (5.1) in tomcat (7) from within eclipse (indigo)

Read more

Upgrade Zimbra 6.0.11 to 7.1.3 on Lenny

Since this is a very easy task simply to following:
As Zimbra
zmcontrol stop
As Root
apt-get install sqlite3
wget http://files.zimbra.com/downloads/7.1.3_GA/zcs-7.1.3_GA_3346.DEBIAN5.20110928134520.tgz
tar zxvf zcs*7.1.3*tgz
cd zcs*7.1.3*
bash install
Follow the wizard und you will be fine – I’ve never experienced any issues.

Quicktip: Debian – Apt-get, “public key is not available”

From time to time it happend to me that I’ve changed the Debain Repository sources in /etc/apt/sources.list and getting a message like:
GPG error: ftp://mirror.hetzner.de lenny Release: The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY AED4B06F473041FA
W: You may want to run apt-get update to correct these problems

Read more

Xen: Upgrade path Etch to Lenny (to Squeeze) with Zimbra 4.0 (5.0, 6.0, 7.0)

My Hetzner root server ist still running Debian 4.0 aka Etch on Dom0 and serves four DomU machins (also on Etch). One of the DomUs even has an old Zimbra 4 installation running which makes it a little more tricky.
This article describes the upgrade path from Debian 4.0 to 6.0 including XEN and Upgrading from Zimbra 4.0 to 7.0 including a transition from a 32bit to 64bit Zimbra installation.

Read more

Moving Zimbra 7 from Debian 5 32bit to Ubuntu 10.04 LTS 64bit

Zimbra marked Debian as deprecated and so far Zimbra 7 is available for Lenny only. Even the Zimbra forum does not mention if there is upcoming support Debian 6 aka Squeeze. Having that in mind for several month it seemed to be a good idea moving from Debian 5.0 to Ubuntu 10.04 LTS which also enables the possibility to migrate to a 64bit system.

This article describes briefly how i did it.

Read more

*buntu 11.04, Nvidia ION and Sound via HDMI

My Mythbuntu Box was 9.10 and was upgrade to 10.10 and 11.04 by and by. I never had any problems – my Zotac ZBOX with Atom330 and Nvidia ION did a great job – FullHD movies, Audio via HDMI and the best thing – only ~20W power consumption on full load. A few days ago I needed to reinstall and went to 11.04 directly – without saving my settings. That was when my troubles began….

Read more

Contacts API before and after Android 2.0

Developing Android is fun. Almost two years ago I wrote my first demo App and a few weeks ago (after a few php and C projects) I felt like I wanted to do some Java/Android again.
So I had a look at the App’s source code to add some features which I did not implement when I created the it in 2009. I reviewed the code and saw that some parts were marked as deprecated by the Android SDK. Concretly I used a EditView element which was able to search for contacts in a background thread when text was entered. This function used the “old” Contacts.People API from Android pre-2.0 which I had to migrate to its successor API ContactsContract.Contacts
In this article I will explain how to migrate from the old to the new API and also how to create a EditView (in detail a AutoCompleteTextView) that searches for contacts in background when text is entered.

Read more

Video Batchbearbeitung mit avidemux

Gerade aktuell ist es passiert – 90 kleine Videos aufgezeichnet und alle sind zu dunkel. Was also tun – klar, Batchbearbeitung heisst das Zauberwort. Wie allerdings ermittelt man die gefühlten tausend Parameter die notwendig sind um einen Videocodec richtig anzusprechen mit der Eleganz eines Bash-Scripts? Oder anders rum – wie bekommt man die Power eines grafischen Videobearbeitungstools auf die Shell?

Read more

Zimbra Upgrade 5.0.10 to 6.0.10, Debian Etch to Lenny

32bit Zimbra 5.0.10 on Debian mixed (Xen Kernel from Lenny, perl libs and others from Etch) and zimbra_posixaccount zimlet made it really hard to upgrade to a newer version of Zimbra AND Debian.
Here is how I did it.

Read more

Drag and Drop mit XmlHttpRequest(2)

Die aktuelle Implementierung des XmlHttpRequest lässt es zu Daten per Drag and Drop als Binary Data an den Server zu senden. Für ein aktuelles Projekt besonders praktisch, da es dabei um Bildupload geht.Die Technologie wird auch in anderen Browser einzug halten (IE9, Chrome, ….) – im FF ab 3.6 funktioniert sie schon.

Dieser Artikel widmet sich vorhanden Implementierungen – auf der Clientseite eine bestimmten jQuery lib – auf der Serverseite herrscht im Netz etwas Verwirrung welche dazu führte, dass ich mich etwas genauer mit der Materie auseinander setzen musste und den Server Part in php umgesetzt habe.

Samsung Galaxy S – Froyo + Root + Lagfix

Das Samsung Galaxy S ist sicherlich eines der besten Android Geräte am Markt – betrachtet man rein die Hardware ist das non-plus-ultra. Das Display des SGS ist zusammen mit dem iPhone4 wohl mit Abstand führend – wie diverse Tests berichten, nicht einmal das neuere HTC Desire Z kann hier mithalten. Von GPU über Akku und Kamera bis zu Gewicht ist es auch in anderen Bereichen spitze und setzt sich tlw markant von der Konkurenz ab.
Gepaart mit der Coolness von Android eigentlich ein rundum begehrenswertes Gerät – hätte da nicht Samsung ein paar Dinge verbockt – so zum Beispiel das verwendete Dateisystem. Glaubt man diversen Benchmarks kostet dies dem Gerät die absolute Performanceführung – in der Praxis nevern tatsächlich alltägliche Aufgaben: 5-10 sek auf die Telefonliste warten wenn man nur schnell jemanden anrufen will, die Navigation hängt 15sek obwohl man gerade wo abbiegen will, SMS schreiben ebenso und manchmal wartet man einfach nur 10sek auf den Homescreen – viele solcher Kleinigkeiten verderben den Spass an der noch so tollen Hardware.
Bei neuen Geräten ist das oft gar nicht merkbar zu Beginn – je mehr man damit arbeitet und auch die eine oder andere App installiert desto auffälliger wird das Problem. Das mag mitunter auch ein Grund sein warum das Gerät bei Neueinsteigern sehr gut bewertet wird.
Zum Glück gibt es gerade im Androidbereich eine mehr als aktive Community die fleißig an Lösungen arbeitet und immer neue Ideen und Hacks umsetzt zu denen große Hersteller offensichtlich nicht in der Lage sind (oder nicht gewillt sind). So verwundert es nicht, dass es für das SGS relativ wenig aufwändig ist, die beschriebenen Mängel zu beheben. Auch das aktuelle Android 2.2 (Froyo) leistet seinen Beitrag um dem SGS etwas Dampf zu machen bzw. bringt sinnvolle Tools mit (Taskkiller, …) um das Problem zu minimieren.
Details dazu werden in diesem Artikel beschrieben

Read more

Kurztip – AVI nach mp4 auf shell

Wer macht nicht schnell ab und an mit dem Fotoapparat oder anderen Geräten ein Video. Nur allzu oft ist das Ergebnis ein unkomprimiertes AVI File – immense Größe, unendliche Bitrate, Qualität aber nur “ok”.
Dieser Kurztip soll zeigen wie man solche Files im Batchverfahren umwandeln kann und die Größe auf 1/10 oder weniger zu bringen.

Read more

C refreshment – pointer of struct pointer array oder “dynamische Arrays in C”

Als gelernter C Programmierer ist es nach jahrelanger Absenz umso interessanter wiedereinmal ein Projekt in C zu schreiben. Der letzte unmittelbare Kontakt zu C ist lange her – danach war der ich lange mit C++ beschäftigt und seither eher von OOP Sprachen verwöhnt. Sogar das letzte Perl Projekt (das mich 16 Monate hauptberuflich beschäftigte) wurde in OOP umgesetzt. Ob Perl da eine “schöne” Sprache ist um mit Objekten zu hantieren sei dahingestellt.
Zurück zum Thema – aus aktuellem Anlass werde ich das eine oder andere C refreshment schreiben.Das erste handelt von Struct-Pointer-Arrays und einer Art einfacher (unverketteter Liste).

Read more

Kurztip – Daten gründlich löschen

Festplatten die zur Reparatur geschickt werden, HDDs die bei gekündigten Root-Servern in einen anderen Besitz übergehen oder beschreibbare Datenträge, die verkauft werden. In jedem dieser Fälle haben plötzlich Dritte theoretisch Zugang zu mölicherweise sensible Daten. Was sensibel ist muss jeder selber entscheiden, aber mit böswilliger Absicht kann sogar ein nicht entfernter Browserverlauf sensible Geheimnisse preis geben.
Reines Formatieren reicht hier nicht – die Daten werden nicht wirklich gelöscht bzw. ist das Wiederherstellen der Daten mölich. Was also wirklich tun?

Read more

Abhilfe – Knetworkmanager startet nicht mehr automatisch

Nach einigen Versuchen mit der Beta-Version und den RCs von OpenSuSE 11.3 und der De-Installation und Re-Installation einiger Komponenten startete der Knetworkmanager nicht mehr automatisch mit KDE4. Eine Abhilfe schafft dieser Kurztip.

Read more

Denyhosts – Whitelist, IP entfernen

Denyhosts leistet gute Dienste im bannen von IP Adressen welche immer wieder am Ssh-Port anklopfen. Wenn sich User oder gar der Admin selber jedoch regelmäig aussperren (falsches Passwort, …) so ist für bestimmte IP Adressen ein De-Listing nötig bzw. das Einrichten einer Whitelist.

Read more

TFTP – Booten über Netzwerk

Nach der Anschaffung eines Barebones oder eines embedded devices steht man oft vor dem Problem, dass ein Betriebssystem zu installieren ohne DVD/CD Laufwerk gar nicht so selbstverständlich ist. Natürlich gibt es mölichkeiten Images auf einem USB Stick bootfähig zu bekommen (mit einem entsprechenden Bootloader) – wesentlich komfortabler ist es jedoch, Images über einen zentralen tftp-Server booten zu können.

Read more