kolab_smtp_access_policy exit status 1

Wer einen Kolabserver auf einem Ubuntuserver hochzieht, wird aktuell irgendwann (beim Versand oder Empfang von Mails) auf den Fehler „kolab_smtp_access_policy exit status 1“ stoßen. Alle Maßnahmen das logging aufzudrehen, greifen ins leere und man ist verzweifeln …

In diesem Fall sollte man doch einfach das script per hand aufrufen. Wichtig dabei, postfix verwendet pyhton2.7…

Mit hoher Warscheinlichkeit kann das Module pymysql nicht geladen werden. Einfach das Modul nachinstallieren und schon kann es mit dem Mail-Empfang losgehen.

Änderungen bei LVM

Wer wie ich regelmäßig einen Raid 1 (Mirror) mit LVM aufbaut/betreibt, wird seit neusten (zu mindestens wenn er auf den aktuellen Ubuntu LTS setzt) in folgendes Problem laufen. Der bisher gültige Befehl führt nicht mehr zum gewünschten Ergebnis:

Das ganze liegt daran, dass sich die art wie LVM jetzt einen Raid aufbaut wohl geändert haben soll. Ich bin da nicht tiefer hinabgestiegen. Schlussendlich muss man einfach noch den Typ mit angeben, dann klappt es wieder.

CineS2 Treiber „OnTheFly“ laden

Wer wie ich eine CineS2 6.5 im einsatz hat, ist unter Ubuntu ein bisschen gekniffen. Der Treiber wird noch nicht mit dem offizjellen Kernel ausgeliefert. Das führt dazu das man leider auf einem Produktivsystem etwas selber bauen muss. Besonders nach einem Kernel Update nerft das ganze, da man den Treiber im laufenden Betrieb überschreiben muss.

Als erstes brauch man git. Via git clone oder gut pull von https://github.com/DigitalDevices/dddvb die neusten Sourcen downloaden.

Erst mal den alten Treiber „entladen“ (fals man noch weitere DVB-Karten hat müssen deren Treiber auch entladen werden)

anschließend geht es ans bauen

Treiber wieder laden …

So geht es auch ohne Neustart …

Kodi und „fehlende“ Visualisierung

Im neuen Kodi Pakage,das über das PPA des XBMC/Kodi Team verteilt wird, sind die Visualisierungen in eigene Sub-Pakages ausgelagert. Will man also die Balken während des Abspielens von Musik, muss man erst mal die fehlenden Pakages nachinstallieren.

Wenn man nun Kodi startet und die Visualisierungen auswählbar sind, aber nicht dargestellt werden muss man ins log schauen. Dort taucht dann folgende Meldung auf:

Die Addon-Pakages werden nicht mehr in den Kodi-Path entpackt, sondern nach „/usr/lib/x86_64-linux-gnu/addons“. Kodi selbst prüft diesen Pfad nicht. Nun kann man mit der Path-Variable rummspielen oder einfach ein Symbolik Link setzten …

network-manager speichert Passwort nicht

Eine kleine Unschönheit beim Upgrade hab ich beim NetworkManager unter xubuntu festgestellt.

Ich nutze Zertifikate um mich an meinem WLAN anzumelden (Radius). Diese setzen ein Password vorraus (anders lässt es der NM eigendlich nicht zu). Leider war das NM-Applet partou nicht in der Lage, eine ordentliche Config-File zu erzeugen, bei der das Password so hinterlegt wurde, dass das WLAN noch vor der Anmeldung verbunden werden konnte.

Dem konnte ich nur manuell beikommen. Unter /etc/NetworkManager/sysem-connections/ liegen die Config-Files. Die entsprechende Datei öffnen und manuell den passenden Parameter setzten

HTPC mit Ubuntu 14.04

In den letzten zwei Wochen hab ich alle meine Rechner auf Ubuntu 14.04 umgestellt. Eine richtige Bruchlandung hab ich dabei nur bei meinem HTPC (auf Basis XBMC) erlebt. Hier eine kurze Zusammenfassung.

Da mein HTPC minimal aufgesetzt ist und keine unnötigen Dienste enthält hab ich erst mal versucht ein einfaches Upgrade aus dem System heraus zu machen. Die hätte den Vorteil gehabt, dass ich mir die folgenden 4 Stunden sparen hätte können. Das nvidia-337 Package hat das „zunichte“ gemacht. In den Trusty Sources zieht das gleich eine ganze Gnome Installation nach sich, die mir dann mein NoDM-Setup zerschossen hat und gleichzeitig die Platte gesprengt hat.

Danach folgte eine Neuinstallation. Eine stunde ging für ein fehlerhaft erstelltes USB-Image drauf, geschenkt, das ist Murphey, aber danach wurde es haarig. Unter Trusty fehlen einigen Paketen schlicht Abhängigkeiten. Ich hab 30 Minuten rumgefriemelt bis ich gemerkt habe, dass ein nodm kein xserver mehr mitinstalliert. Fehlende libraries werden auch nicht im Log erwähnt. Wozu auch ?

Hier meine manuell installierten Pakete:

  • xinit – wird von nodm benötigt
  • alsa-base/alsa-utils – für den sound
  • consolekit, pm-utils – für den shutdwon/suspend aus xbmc herraus.

Nachdem ich XBMC am laufen hatte, hat mich dann noch der „Shutdown/Suspend“ geärgert. Zum einen sind die oben erwähnten Pakete nicht installiert zum anderen wurde etwas an der Struktut geändert, so dass die Beispiele auf xbmc.org einfach nicht mehr passen.

Die korrekte polickit file sieht wie folgt aus:

Wichtig ist die Angabe org.freedesktop.login1.*. Die kann auf Suspend udn Hibernate auch eingeschränkt werden.

Danach lief mein HTPC wieder wie vor der Migration.

Erste Schritte im neuen Ubuntu 14.04 Server

Seit dieser Woche laufen bei mir die Updates auf das neue Ubuntu 14.04. Den Anfang machte gestern mein Server (nach „langer“ Vorbereitung). Nach diversen Problemen bei den letzten Updates hatte ich diesmal alle Vorbereitungen getroffen um die Ausfallzeit so „unauffallig“ wie möglich zu gestellten.

  • Wichtige Dienste wie Kerberos, Radius usw sind mittlerweile auf eigene Maschinen ausgelagert worden.
  • Der Server läuft mittlerweile auf einer „echten“ Serverhardware, inklusive Remote-Shell um im Fehlerfall eine lokale Anmeldung durchführen zu können.

Das größte Problem stellt der DNS-Server (Bind9) dar, der leider nicht auf einen meiner EdgeMax-Router zum Laufen zu bekommen ist. Fällt er längere Zeit aus, geht in meinem Heimnetzwerk nicht mehr viel.

Die Installationsroutine ist mittlerweile geübt. Manuell den aktiven Root-Raid 1 aufbrechen (Festplatte im laufenden Betrieb ausbauen). Anschließend wird die Platte direkt an eine VM weiter gereicht und das neue OS installiert. Die Installation verlief Problemlos, danach traten jedoch die ersten fehler auf. Wenn GRUB von einem RAD-Device starten soll, wirft er einen Fehler, bootet dann jedoch anstandslos weiter. Nach dem (erfolgreichen) Booten wird jedes „sudo“ von einer „memory leak“-Meldung begleitet. Diese wird durch das lib-pam-smb Paket verursacht. Nach dessen Deinstallation lief alles ohne Probleme weiter.

Einzig die Vergabe der Netzwerk-Interface Namen führte noch etwas zu Verwirrung. P4P1 hab ich so noch nie als Namen gesehen. Dem kann man aber mit einer passenden UDEV-Rule beikommen.

Der Tausch der Platten (diesmal bei ausgeschalteten Server) und der folgende „First Boot“ brauchten keine 5 Minuten. Bind und MySQL verrichtete sofort wieder ihre Dienste. Das mounten der XFS Laufwerke ging hingegen sofort auf die Bretter. Ein Blick ins „dmesg“ verrät, dass die Parameter „sunit“ und „swidth“ jetzt nicht mehr stillschweigend ignoriert werden, sondern der mount einfach abgebrochen wird. 5 Minuten später war das Storage gemountet und NFS (inkl. Kerberos) verrichtete seinen Dienst. Ab hier merkten die Endanwender (Familie) von den Arbeiten nichts mehr. Mit zwei Ausnahmen (Logitech Media server/Samba) liefen alle externen Dienste nach ca. 20 Minuten wieder.

Mehr Aufwand machte nur der neue Apache. Konfigfiles müssen immer auf „.conf“ enden, sonst werden sie ignoriert. Blöd das man das nur indirekt mitgeteilt bekommt. Nach einer Stunde rummbasteln ging mir dann ein Licht auf. Eine weitere Stunde später liefen wieder alle internen Monitoring Sites.

Richtig übel hat mir jedoch der Logitech Media Server mitgespielt. Der war am Abend gar nicht mehr zur Zusammenarbeit zu bewegen. Alle Squeezeboxen mussten manuell auf den Server von Logitech umgestellt werden. Da das Logging des Logitech Media Servers nicht sehr ergibig ist, konnte ich erste nach ein bisschen rumm probieren raus finden, dass die aktuelle Version 7.7.3 einfach nicht auf Ubnntn 14.04 lauf kann (Perl Version). Erst das Installieren des Nightly-Builds brachte Besserung,

Samba verrichtete zwar tadellos seinen dienst, jedoch waren die angeschlossenen Windows-Instanzen nicht mehr dazu zu bewegen sich an der Domäne anzumelden. Genauer gesagt konnte keine „Vertrauensstellung hergestellt werden“. Ein „rummfrickeln“ in den Untiefen der WindowsEinstellungen (regedit und policykit) brachten keine Besserung. Da ein Anmelden (Aufnehmen) in die Domäne klappt und auch ein Zugriff von Windows auf Samba hab ich nach 2 Stunden rumprobieren meine arbeiten eingestellt.

Kurzfazit: Ich hatte mehr „Ärger“ als erwartet. Gefühlt hab ich von 10.04 auf 14.04 aktualisiert. Das lag aber weniger an Ubuntu, als an den verwendeten Software-Paketen, bzw. hat 12.04 damals schon veraltete Pakete verwendet und der Sprung war jetzt merklich. Jetzt muss sich das System im Langzeittest beweisen. Da hab ich nun weniger Bedenken. Mahl sehen ob ich eine Uptime > 6 Monate hinbekomme.

Servergespeicherte Profile mit unison

Da CSync leider nicht meine Erwartungen erfüllt hat bzw. nicht im Ubuntu-Repository versorgt wird musste ich mich vor ein Weile nach Alternativen umschauen.

Dabei bin ich auf Unison gestoßen. Installiert man es auf Client und Server kann man via ssh sehr schnell große Datenmengen in beide Richtungen abgleichen. Man kann sogar eine Konfliktlösungsstrategie angeben, falls es sowohl auf Server als auch Clients zu Änderungen kam.
Mittels Exclude-List kann man gezielt steuern was übertragen werden soll. Sogar via Regex.

Beispielconfig:

Das ganze kann man ohne Probleme über ein Skript beim Start oder Login automatisieren:

Bleibt nur noch das Problem wie man den ssh-Daemon auf der Server-Seite dazu bekommt ohne weitere Passwortabfrage eine Verbindung zuzulassen. Da gibt es verschiedene Varianten wie z.b. das Public-Key-Verfahren (wobei der keyring automatisch aufgemacht werden muss) oder GSSAPI. Letztere ist relativ bequem einzusetzen, wenn man mal einen Kerberos eingerichtet hat. Dann muss man einfach folgende Konfiguration im SSH Daemon vornehmen.

Anschließend akzeptiert der SSH Daemon nach einem Neustart auch Kerberos Tickets anstatt ein Password abzufragen.

Moneyplex auf Ubuntu 12.04 64bit mit PCSC-Treiber

Wer Moneyplex mit auf einem 64Bit system betreibt, wird das ein oder andere Mal verärgert feststellen, dass es immer noch keine native 64 Bit Version des Programms gibt. Um es zu starten muss man unter Ubuntu schon immer das ia32-libs Package installieren. Will man dann auch noch den kartenleser via PC/SC-Treiber ansprechen (oder muss es, weill der Herrsteller nur solche Treiber ausliefert) musste man im 10.04 LTS basteln. Mittlerweile kann man einfach die benötigte Library im 32 Modus nachinstallieren. Einfach das Paket libpcsclite1:i386 nachinstallieren, Moneyplex neustarten und zb den Reiner-SCT ohne gefrickel ansteuern.

So nun muss matrica nur noch eine 64Bit Version raus bringen, dann bin ich 100% zufrieden 😉

Ubuntu Upgrade / Neuinstallation mit geringer Downtime

Wenn man den Ubuntu LTS auf einem Server einsetzt hat mein ein relativ ruhiges Leben. Es gibt kaum wartungsaufwand, da sich die Updates automatisch einspielen (wenn man das will), nur ab und an sollte man den Rechner neustarten.

Will man die Maschine jedoch auf die neue Version hochziehen ist Arbeit angesagt. Ob man nun das Upgrade macht oder ein blankes System aufspielt. Beides kostet Zeit und eine Downtime. Kann man ein ersatzsystem sein eigenen nennen oder eine Weile auf die Services verzichten ist das keine Problem, leider ist dem selten so.

In meinem Fall geht ohne meinen Ubuntu-Server gar nichts und für eine komplettes Spiegelsystem hab ich weder Geld noch Platz. Ich brauchte einen Weg um die Downtime für die gesamte Familie auf unter 4 Stunden zu drücken. Kurz der WLAN Wecker sollte am nächsten Morgen wieder wecken. (Ubuntu-Server = Radius, MediaStorage und MediaServer)

Was es dazu braucht ist ein Software-Raid (Mirror) eine zweite Maschine und eine Virtuelle-Umgebung die eine physikalische Platte „durchreichen“ kann.

Der Trick ist einfach. Man baut im laufenden Betrieb eine der Mirror-Platten aus. Das kann jeh nach Konfiguration (kein HotSwap, „umbauarbeiten“ notwendig) eine kurze Downtime bedeuten. Anschließend schließt man die Platte an einem anderen Rechner an und haut ein VM-Host seiner wahl drauf. Dieser sollte direkt mit Physikalischen Platten umgehen können. (VMWare, VirtualBox) Nun muss man nur noch eine VM erzeugen und anschließend von der Platte booten. In meinem Fall funktionierte das tadellos. Der virtuelle „Server“ meckerte zwar eine defekten Raid und fehlendes Netzwerk an, aber das ließ sich schnell beheben.

Ab diesem moment kann man in aller Sehlenruhe sein Upgrade einspielen oder gleich den ganzen Server neu aufsetzen.

Anschließen muss man nur die eigentliche Hardware runterfahren. Die noch aktive Platte ausbauen und (ganz wichtig) die RAID-Header-Informationen löschen (mdadm –zero-superblock). Die „VM“-Platte wieder in den Rechner einbauen durchstarten und hoffen dass man alles richtig eingerichtet hat. Wenn alles klappt bootet der Rechner ohne murren durch, man richtet den RAID wieder ein und hat eine Downtime von unter einer Stunde.