1und1 – Synonym für “Serviceversagen auf ganzer Linie”

October 29th, 2012

Seit 18 Monaten haben meine Eltern nun den Tarif 1&1 Doppel-FLAT 6000.

Bei der Einschaltung kam es schon zu einer Verzögerung von 3 Tagen. Anlaufschwierigkeiten, kann ja mal passieren. Vor nun aber 12 Tagen startete ein Horror Trip, den man nur so umschreiben kann: “1&1 ist ok, wenn alles funktioniert und man keinerlei Service braucht”. Aber hey – mal im ernst – gilt das nicht für alle Dienstleister?

Was war nun passiert? Der Reihe nach, ok.

17.10.2012
mehr durch Zufall stellen wir im späten Nachmittag fest, dass weder Telefon noch Internet funktionieren. Da hin und wieder die Fritzbox spinnt (wirklich?), wird mal flugs der Stecker gezogen. 2 Minuten Strom aus wirkt manchmal wunder. Fehlanzeige.

18.10.2012
Morgens Anruf beim Kundensupport. Nein, nennen wir es gleich beim Namen: Im Callcenter. Da die – äh – ich nenne sie mal “Servicerufnummer” in Ermangelung eines besseren Wortes. Da also die Servicerufnummer nur aus dem 1&1 Netz kostenlos zu erreichen ist, bedeutet das für meine Eltern: Prepaid Handy mit ca. 30 Euro belasten.
Warum 30 Euro? Nun, der Callcenter-Mitarbeiter machte das Einzige was er konnte: Er arbeitete seine Standardliste ab. Stecker ziehen hier, “Testen Sie mal das” da, viele Ääääähs, noch viel weniger Ahnung von ihm. Ein Horrortrip. Am Ende dann die Meldung: Ich gebe die Störung an die Technik weiter.

Den ganzen Rest des Tages hören wir nix mehr, am Abend dann eine SMS mit StörungsID und der Nachricht, dass die Störung an die Technik übergeben wurde. Moment – sollte das nicht schon morgens erfolgt sein? Mal eben nen ganzen Tag für nix verdaddelt – das kann ja heiter werden…

19.10.2012
Morgens eine erneute SMS: “Wir arbeiten an Ihrem Problem”. Echt? Gibt ja ein warmes Gefühl. Irgendwie.

Abends dann die nächste SMS: Wir konnten die Störung nicht beheben, vereinbaren Sie bitte einen Techniker-Termin. Hierzu können sie rund um die Uhr unter der altbekannten Callcenter-Nummer anrufen.

Ok, Handy zur Hand und angewählt. Neben dem normalen Wahnsinn – Kundennummer im Menü eingeben und das erste, was der CallcenterAgent erfragt ist die Kundennummer – dann der Hammer: Nein, sorry, Technikertermine können nur von 08:00 – 18:00 vereinbart werden. Müssig zu sagen, dass die SMS natürlich nach 18:00 angekommen war. Einmal belogen in der SMS, einmal absichtlich nen weiteren Tag geschunden – und hurra! – jetzt waren wir ja schon im Wochenende. Ich frage also nach: Macht es Sinn, morgen anzurufen, kommt überhaupt jemand am Wochenende? Aussage des Agent (Ihr könnt es euch denken, Lüge nummer zwei): Ja sicher, die kommen auch Samstag. Sollten sie unbedingt machen, um nicht noch mehr Zeit zu verlieren.

20.10.2012
Mangelnde Mitarbeit soll uns ja keiner vorwerfen, also gleich um 08:00 Uhr angerufen. Aussage einer wahnsinnig unfreundlichen Frau: Technikertermin frühestens Dienstag. Auf die Aussage ihres Kollegen vom Vorabend hingewiesen, sagt sie beinahe spöttisch: Am Wochenende? Vergessen sie es. Wollen sie Dienstag oder nicht?
Zähneknirschend Dienstag Morgen zwischen 08:00 und 12:00 akzeptiert.

23.10.2012
Was soll ich sagen? 4 Stunden gewartet. Niemand kam. Niemand rief an. Niemand hat irgendwas beseitigt. Keine SMS, nichts. Gar nichts.

Als auch bis abends nicht passierte – erneuter Anruf bei der “Hotline”. Erst das übliche Blabla. Erst nach 10 minütigem gequatsche über “Subdienstleister” und “haben wir keinen Einfluss drauf” schaffe ich es, dass der Mann nachfasst (huiii – das ist möglich? Warum ist bisher keiner seiner Kollegen darauf gekommen?).

Bei dem Ergebnis weiss ich nicht, ob das nicht doch wieder nur dummes Gelaber ist, denn die Geschichte klingt abenteuerlich: Er habe mit Vodafone telefoniert, die für den Anschluss zuständig seien, die hätten die Leitung aber auch nur von der Telekom gemietet und daher die Störung weitergeleitet. Dann habe die Telekom die Störung gutgemeldet, aber jetzt auf Nachfrage doch noch ne Fremdspannung darauf gemessen…..
Wie auch immer, der Mitarbeiter verspricht mir: Die arbeiten da jetzt sofort dran weiter, kann also sein, dass es schon in den nächsten Stunden wieder funktioniert. Aha. Telekom arbeitet spät abends an Leitungen um Fremdspannungen einzugrenzen und zu beseitigen? Dass ich nicht lache….

24.10.2012
Morgens ein Anruf von 1&1. Störung beseitigt? Nöööö. Entschuldigung für den verpatzten Termin? Hahahaha – nein.
Es müsste ein neuer Technikertermin vereinbart werden. Frühest möglich – am Freitag!

26.10.2012
Muss ich es noch schreiben? Ich zitiere: 8 Stunden gewartet. Niemand kam. Niemand rief an. Niemand hat irgendwas beseitigt. Keine SMS, nichts. Gar nichts.

Puls auf 180, jetzt reichts. AGB hervorgekramt, Einschreiben aufgesetzt, letztmalige Nachbesserungsfrist 14 Tage laut AGB, danach Vertragsaufhebung wegen Nichtlieferung. Einschreiben ging Samstag in die Post.

Abends dann nochmal zusätzlich ein Ticket im Kundencenter eingestellt. Vielleicht hilft es?

29.10.2012
Das Ticket im Kundencenter wurde kommentarlos von 1&1 geschlossen.

[neu] Antwort auf Twitter: “Das tut mir leid. Auf die Zuverlässigkeit der Telekom-Techniker haben wir leider keinen dir. Einfluss. MfG, at” – Also als Dienstleister, der von der Telekom abhängig ist, aber auch deren größter Reseller ist, hat man keinen Einfluss? Wenn ich nicht wüsste, dass die das ernst meinen, – ich würde schallend lachen!

30.10.2012 [neu]
Anruf von 1&1 um einen neuen Termin auszumachen – der eingeschriebene Brief scheint angekommen zu sein. Neuer Technikertermin für kommenden Samstag. Keine Entschuldigung, stattdessen wird die Schuld (wieder) auf die Telekom geschoben. Klar, es sind ja immer die Anderen schuld…..

Auf Twitter dann auch noch eine Antwort zu meiner Beschwerde über das kommentarlos geschlossene Ticket: “Es kann sein, dass mehrere Anfragen zum gleichen Thema zusammengeführt werden und dann nicht mehr für Sie im CC sichtbar sind. /at” – falsch. Es wurde geschlossen. Kommentarlos. Das ist ein (gar nicht mal) kleiner Unterschied!

 03.11.2012 [neu]
Erneut verstreicht der Technikertermin, ohne dass jemand vorbeikommt oder sich irgendwie meldet – also nach 13:00 das übliche Spiel: Stecker der Fritzbox raus, Stecker wieder rein – und man mag es kaum glauben, das DSL synchronisiert! Nach 17 Tagen ist die Störung endlich behoben! Damit beginnt nun der Kampf um Entschädigung…

Aktueller Stand: Online

17 Tage ohne Internet und Telefon.

60 Euro vom Prepaid nur mit der Servicenummer von 1&1 vertelefoniert.

 

Soviel steht definitiv fest: Von 1&1 kann ich jedem nur abraten, der auch nur ein Minimum an Kundendienst oder Service erwartet…

Gulasch

August 26th, 2012

Heute mal zwei verschiedene Gulasch ausprobiert: Ein feuriges ungarisches und ein mildes Sahnegulasch.

Die Grundzutaten sind die selben:


500g mageres Fleisch (Gulaschfleich, Schulter, vom Rind, vom Schwein oder halb und halb)
1 - 2 Gemüsezwiebeln
1 Paprika (rot oder gelb)
1 Dose passierte Tomaten (der nicht so faule kann sich auch 5 - 6 frische Tomaten schälen und zerkleinern)
Pfeffer, Paprikapulver, ein wenig Salz, eine prise Zucker

ungarische Variation:

1 Dose Champignons geschnitten (oder frische, ich weiss)
1 Brühwürfel
Chilipulver

Sahnegulasch Variante:

1 Becher Craime Freche
1 Becher Sahne

Zubereitung:

Das Fleisch anbraten, Bratensud in einer Tasse abschöpfen, Zwiebeln kleingehackt hinzugeben, schmoren lassen, Sud erneut abschöpfen. In der Pfanne dünsten, bis die Zwiebeln glasig werden.

Umfüllen in einen Topf, Sud wieder hinzugeben, Tomaten hinzugeben, eventuell mit Wasser auffüllen bis das Fleisch bedeckt ist (was aber dazu führt, dass man sehr viel Soße hat). Bei ungarischer Version Brühwürfel hinzugeben. Eine Stunde köcheln lassen.

Paprika hinzugeben, für ungarische Variante Pilze hinzugeben. Eine weitere halbe Stunde köcheln lassen.

Abschmecken mit einer Prise Salz, Pfeffer, Paprika, einer kleinen Prise Zucker. Ungarische Variante: Chilipulver dosiert hinzugeben, Sahnegulasch: Creme Fraiche und Sahne unterrühren. Kurz aufköcheln lassen.

Evtl. 1 EL Stärkemehl in einer Tasse mit kaltem Wasser verrühren, im dünnen Faden unter ständigem Rühren in die Mitte des Gulasch geben, bis die Konsistenz nach Wunsch entsteht.

 

Around the world: Tortilla Espanola

July 16th, 2012

Rezept für 4 Personen

500g Kartoffeln
2 große Zwiebeln
6 Eier
Pfeffer, Salz, Olivenöl

Zubereitung:

Die Kartoffeln roh und geschält in Würfel schneiden, die Zwiebeln fein würfeln.

Olivenöl in eine Pfanne geben, erhitzen und die Kartoffeln und Zwiebeln für ca. 25 Minuten bei mittlerer Hitze garen, nicht braten oder anbraten!
Mit Salz und Pfeffer abschmecken.

Die Eier aufschlagen und verquirlen, Kartoffeln mit den Zwiebeln dazu geben und unterrühren. 30 – 60 Minuten ruhen lassen.

Olivenöl in einer Pfanne erhitzen, die Masse hinzugeben und in etwa 5 bis Minuten bei mittlerer Hitze stocken lassen.

Nun kommt eine Wende, auf die jeder Politiker neidisch wäre:
Entweder Gefühlvoll mit Schwung drehen like a Boss – wenn das aber in Küchenputzorgien wegen Unerfahrung ausartet, dann besser die Pfanne mit einem großen Teller abdecken und beides wenden, dann die Tortilla vom Teller zurück in die Pfanne gleiten lassen. Fertig garen.

Die Tortilla warm oder kalt servieren, mit Tomatenscheiben oder Paprikastreifen garnieren.

Simpel und lecker. Bild folgt…

 

Chili time!

June 30th, 2012

Draussen wird es wärmer, der Hormonausstoß steigt bei den Menschen – Zeit unfrieden zu stiften. Hier kommt das Rezept für die Gasblase unter der Bettdecke, damit mal wieder schwung in die lahmenden Kuschelbeziehungen kommt.

Chili con carne (auf Wunsch auch sin carne für die Veggies – äh Vegetarier unter Euch. Das Rezept ist gut für ca. 8 Personen normale Esser.

What we need...

 

Wir benötigen:


3x 0,5 Liter Tomatensauce
2 kleine Dosen Tomatenstücke (wer es mag macht das selbst aus frischen, ich hasse Tomatenschälen, daher Dosen)
1 grüne Paprika
1 Gemüsezwiebel
4 Knoblauchzehen (frisch)
750g Gehacktes (ich nehme Mett, wegen der Würze)
2 kleine Dosen grüne Bohnen
1 Dose Chili-Bohnen
2 Dosen Kidney-Bohnen
1 Dose Mais

Und für die Würze:

Brauner Zucker
Mehl
Knoblauchpulver
Zwiebelpulver
Cayenne Pfeffer
Chilipulver
Basilikumpulver
gemahlenen Kreuzkümmel

Und los gehts.

Zuerst mal die Würzmischung. Dazu mischen wir:

2 Teelöffel Mehl
2 Teelöffel brauner Zucker
1 Teelöffel Knoblauchpulver
1 Teelöffel Cayenne Pfeffer
2 Teelöffel Kreuzkümmel
4 Teelöffel Chilipulver
1 Teelöffel Zwiebelpulver
1 Teelöffel Basilikum

Sehr gut mischen!

Jetzt ab an die Pfanne. Das Gehackte gut durch braten, dabei schon schön klein krümeln.

Währenddessen die Zwiebel, die Paprika und die Knoblauchzehen klein hacken. Gehacktes aus der Pfanne nehmen und das kleingehackte Gemüse in das ausgebratene Fett geben und anbraten.

Wähgrend dieser Zeit all die restlichen Zutaten in einen großen Topf geben (Mais und Bohnen natürlich vorher abgiessen). Gut durchmengen.

Die angebratenen Veggies dazu, ebenso das Gehackte, gut durchmengen. Flamme an vom Herd, jetzt wirds heiss…

Würzmischung dazu, gut unterrühren. Kurz aufkochen lassen, dann runter und auf kleiner Stufe 2 – 3 Stunden unter gelegentlichem Umrühren köcheln lassen.

ACHTUNG – die Schärfe kommt beim köcheln. Erst nach den 3 Stunden final abschmecken – und beim abschmecken den Schärfen zeit geben, sich auf dem Gaumen und der Zunge zu entfalten.. :-)

Mahlzeit!

what we get!

Fleisch-Pizza

April 9th, 2012

Zutaten:
1,5 kg Mett
1 Paprika rot
1 Paprika grün
2 große Gemüsezwiebeln
1 Becher Sahne
1 kleines Glas Zigeunersauce
1 kl. Dose Pilze
1 Gewürzgurke
1 Becher Creme Frâiche

Zutaten reichen für ein Backblech, (ca. 6-8 Personen)

Ein Backblech mit hohem Rand einfetten und möglichst gleichmäßig mit dem Mett auslegen. Es empfiehlt sich hierbei, das Mett an den Rändern des Bleches ein wenig aufzuwölben.

Die Paprikas, die Zwiebel und die Gewürzgurke in kleine Stücke schneiden und zusammen mit den restlichen Zutaten vermischen. Danach das Gemenge gleichmäßig auf dem Mett verteilen.

Das Backblech mit Alu-Folie abdecken und mit einer Gabel Löcher in die Folie stechen.

Bei 175°C eine Stunde im Backofen garen.

Zubereitungszeit: ca. 10 min.
Garzeit: 60 min.

USB device unter Linux neu laden

January 20th, 2012

Hin und wieder kommt es vor, dass man ein USB device “resetten” muss, damit z.B. eine frisch geänderte Partitionstabelle neu eingelesen wird und man anschließend eine saubere Formatierung durchführen kann.

Jetzt kann man sich zwar die Mühe machen, das Device einmal vom Port zu trennen und wieder einzustecken – doch das kann einen Scriptablauf schon gewaltig stören.

Hier die Loesung (am Beispiel von /dev/sdb als unser USB device):

hdparm -z /dev/sdb

Ich habe mir angewöhnt, diesen Befehl mit 2 sleep Kommandos zu umschließen – nicht, dass das nötig wäre, aber ich hasse nunmal race conditions und lebe nach “Better safe than sorry”:

sleep 5
hdparm -z /dev/sdb
sleep 5

Unwissenheit, Homophobie, Beißreflex? Über den Niedergang der Diskussionskultur.

July 26th, 2011

Ich muss hier einmal etwas loswerden. In den letzten Tagen habe ich mehrere Diskussionen intensiv verfolgt und mich über den Verlauf erschrocken und amüsiert, aber amüsiert nur in der Weise des Zehnjährigen, der mit einem Lächeln verfolgt, wie unter seiner Lupe eine Ameise verbrennt. Aber da es sich bei den Diskutanten nur um anonyme Internetuser handelte, hakte ich das als “jugendlichen Unsinn, Kindergarten” ab.

Heute dann kam der Tropfen, der das Fass zum überlaufen brachte, seit ein kleiner nichtssagender Post plötzlich völlig unerwartete Reaktionen bei den Leuten auslöste, die ich zu kennen glaubte.

Doch fangen wir von vorne an.

Heute Morgen ging diese kurze Nachricht durch die Presse: http://www.zdf.de/ZDFmediathek/beitrag/video/1394326/Homo-Ehen-in-New-York-offiziell-erlaubt
Interessant genug, fand ich, sie in meinem sozialen Netzwerk zu posten – und schon hatte ich plötzlich drei Diskussionen am Hals, die mit einer Vehemenz geführt wurden, die mir Angst machte. Drei Diskussionen ist nicht viel gegenüber der schweigenden Mehrheit, doch die Art, wie hier reagiert wurde, ist mir diesen weiteren Post zu dem Thema wert.

Eines vorab: Ich bin ein absolouter Befürworter der Meinungsfreiheit. Jeder soll seine Meinung haben und sie vertreten dürfen, ohne dass ich ihn dafür verurteile. Die Meinung an sich ist mir somit egal. Wer seine Meinung öffentlich postet, sollte auch mit Reaktionen darauf rechnen oder dass seine Meinung hinterfragt wird. Auch klar. Aber die Art, wie eine Meinung vertreten wird, die soll hier einmal an Beispielen näher durchleuchtet werden, denn sie findet sich vergleichbar in allen Diskussionen im Internet wieder.

Was also brachte mich so auf die Palme?

Nur zur Rekapitulation: Obiger Link erklärt, dass in New York homosexuelle Ehen nun erlaubt sind, was zu einem Ansturm bei den Standesämtern führt. Nichts besonderes also, dachte ich, aber für das erzkonservative Amerika ein interessanter Schritt. Nur zur Erinnerung: Gleichgeschlechtliche Ehen sind bereits in 10 Ländern und in 6 US-Bundesstaaten erlaubt.

Erste Reaktion:

Eine direkte Klassifizierung ohne Hinterfragung der Nachricht als ‘Pervers’ – ohne jegliche Begründung. Und das ist schlichtweg diffamierend und beleidigend, stellt es doch Homosexualität auf eine Ebene mit Sadismus, Masochismus und Pädophilie (siehe IDC-10 Klassifizierung psychischer Erkrankungen und Verhaltensstörungen, http://de.wikipedia.org/wiki/Internationale_statistische_Klassifikation_der_Krankheiten_und_verwandter_Gesundheitsprobleme)
Eine derartige Klassifizierung sollte aber seit 1973 der Vergangenheit angehören, nachdem man die Homosexualität aufgrund von Forschungsergebnissen aus dem Katalog der psychichen Störungen strich.

ok. Unwissenheit(?).

Die nächste Klassifizierung erfolgte mit “unnatürlich”. Hmmm. Die Natur bringt Homosexualität bei Mensch und Tier (dokumentiert bei ca. 1500 Arten) hervor. Es ist ja nichts, was man sich “aussucht” oder gar frei entscheiden kann. Ganz im Gegenteil, die Unterdrückung homoerotischer Neigungen aufgrund äußerer Umstände führt oftmals zu schwerwiegenden Störungen bei den jeweiligen Personen.

hmmm. Das würde ich nichtmal unter Unwissenheit fassen, dass ist schon ein (fürs Internet ebenso wie für den Stammtisch) üblicher Beißreflex um seine eigene Meinung hochzupriorisieren. Wenn etwas gegen die natürliche Ordnung ist, muss es ja schlecht sein. In Nebensätzen kommt aber auch eine völlig unbegründete Angst mit zum Vorschein, dass der Fortbestand der Menschheit gar gefährdet sei, da es ja keine Fortpflanzung zwischen gleichgeschlechtlichen Partnern gibt. Eieieiei. Da frage ich mich doch, inwiefern sich die Erlaubnis zur Ehe auf die Zeugung von Nachkommen bei gleichgeschlechtlichen Paaren auswirkt? Oder glaubt der Diskutant ernsthaft, dass wenn man Homosexuellen keine/weniger Rechte einräumt, diese sich ganz normal in den heterosexuellen Pool der Fortpflanzung eingliedern?

Nächster Schritt: Der Gegenangriff. Da ich obige URL geposted hatte, werde ich mal eben kurzfristig als homosexuell abgestempelt. Das birgt tatsächlich schon homophobe Züge, denn damit kann man sich schnell den Rücken freischaufeln. Wenn der “Pro”-Diskutant selber homosexuell ist, dann erklärt sich ja auch, warum er pro ist – und man muss sich mit dem Thema nicht weiter auseinandersetzen. Meist wird das in face-to-face-Diskussionen noch mit einem süffisanten Lächeln unterlegt und applausheischenden Blicken an die Umstehenden, die auch überwiegend darauf anspringen: Schnell noch 2, 3 Schwulenwitze, das Thema ist im Lächerlichen, alles gut. Blos nicht weiter darüber nachdenken….

Die nächste Klassifizierung erfolgt mir ‘anormal’. Auch dieses ist nicht sehr weit gedacht, denn was normal oder anormal ist, bzw. was gesellschaftlichen Normen entspricht, wird zum Glück nicht mehr von einigen Wenigen bestimmt. Aber es hilft, mal schnell eine Diskussion polemisch aufzupeppen, ohne dass man begründen muss was oder warum etwas anormal ist.

Dann kommt aber der Klopper, den man so oder in abgewandelter Form in jeder argumentarmen Internetdiskussion findet: Der Vergleich von Äpfeln mit Birnen. Man zieht einfach ein Totschlagargument, die moralische Keule, indem man gnadenlos übertreibt. In dieser Diskussion wurde dann einfach mal die homosexuelle Neigung in Vergleich gezogen mit einer theoretischen angeborenen Neigung Menschen zu töten (gibt es das überhaupt?), wahrscheinlich nur um eine moralische Rechtfertigung bzw. Abwertung zu bekommen.

Wehe aber, man hält den Leuten den Spiegel vor, zeigt Ihnen auf, dass sie inkonsequent bei der Verdammung “unnatürlicher” Dinge sind, sobald ihnen die Dinge zum eigenen Nutzen gereichen – schon geht es auf die persönliche Beleidigungsebene und Begriffe wie “armselig” etc. werden gezogen – und das ist bei weitem noch eine der positivsten Reaktionen, da sind nach unten alle Wege offen. Gleichzeitig wirft man schnell dem Anderen Intoleranz für die eigene Meinung vor (warum eigentlich? Es wurde doch nur die Meinung hinterfragt – egal).

Den Rest kennt jeder. Ich zitiere einmal von Wikipedia:

“Mit zunehmender Länge einer Online-Diskussion nähert sich die Wahrscheinlichkeit für einen Vergleich mit Hitler oder den Nazis dem Wert Eins an.” – Mike Godwin[1]

Eigentlich kennt die obige Abfolge so (oder in beliebig abgewandelter Form) jeder, der schon mal im Internet diskutiert hat. Warum nun ein langer Aufsatz zu diesem Thema?

1. I had a dream. Ja, ich dachte wirklich, dass wir (wir, die aufgeklärten Internetuser) inzwischen erhaben wären über Diskrimination aufgrund von Unwissenheit oder Angst. Oder beidem.
Nennt mich dumm oder naiv, weil ich das dachte. Ich hoffe und träume weiterhin, dass eines Tages Menschen nicht mehr nach derartigen Attributen vorverurteilt oder bewertet werden. Ich befürchte, ich werde es nicht mehr erleben…

2. Ich bin ehrlich schockiert darüber, von wem ich derartige Äußerungen zurück bekam. Alle drei Diskutanten stellen das perfekte Bild der 60er-Jahre Durschschnittsfamilie dar: Mann, Frau, 1.5 Kinder im Schnitt, Mann und Frau natürlich verheiratet.
Vielleicht erklärt das ja einiges. Die anderen Bekannten und Freunde, die ungebunden, in eheähnlichen Verhältnissen oder gar geschieden leben, äußerten sich interessanterweise offener. (Es scheint noch Hoffnung für Punkt 1 zu geben)
Vielleicht ändert sich die Meinung ja auch, wenn dieser Heile-Welt-Traum der perfekten Familie plötzlich von der Realität eingeholt wird, was die liberalere Meinung der Geschiedenen erklären würde.

3. Eine Frage, die mich schon seit langem umtreibt: Wissen ist heute für (nahezu) jedermann frei zugänglich. Erst recht für Personen, die jeden Tag mit dem Internet arbeiten. Warum wird trotzdem in Diskussionen immer gleich mit polemischen Stammtischparolen und Mangelwissen um sich geschlagen, ohne auch nur einmal Google oder Wikipedia zu bemühen? Alle drei Diskutanten sind täglich im Internet beruflich unterwegs, haben einen recht guten Bildungsstand.

Und genau in letzterem liegt der Grund für meine Dünnhäutigkeit. Warum machen sich die Leute nicht mal die Mühe, nachzuschlagen ob der eigene Wissenstand über ein Thema überhaupt richtig ist, nein, es wird gleich die große polemische Keule ausgepackt. Das war bei dem Norwegen-Attentat genauso, wo die gesamte Presse nahezu ohne Ausnahme erst einmal reflexartig das Wort “Terror” an die Wand warf, dem gleich eine Anfüllung zum islamistischen Terror etc. zu Gute kommen ließ – und raus damit an die Öffentlichkeit. Bevor man nur irgendetwas wusste. Und entgegen jeglicher Logik. Von den 249 terroristischen Anschlägen in Europa in 2010 hatten gerade einmal 3 einen islamistischen Hintergrund. Egal. Erstmal Beißreflex. Bombe = Terrorismus = islamistischer Terror. Jeder schreibt beim anderen ab und springt auf den Zug auf, der mit Volldampf aufs tote Gleis donnert. Lerneffekt daraus? Null. Bei der nächsten Bombe werden alle es wieder exakt gleich tun.

…und vermutlich werden auch die besagten Diskutanten bei der nächsten Nennung eines passenden Stichwortes wieder die gleiche, unsägliche Diskussionskultur an den Tag legen.

Vielleicht aber auch nicht.

I have a dream….

How to run Django apps on a CentOS Plesk server

June 17th, 2011

The reason for this tutorial is quite easy: To make this happen, I had to read about 100 pages, all with different solutions, all of them not or only partially working.

After aprox. 8 hours of trial and error, I finally had the best of all the posts compiled to a working set of instructions – so here is the HowTo:

Login as user root to the server in question.

First of all: The usage with the pre-installed mod_python is no fun at all and leads to many errors, therefore it is better to switch to mod_wsgi. If you need the mod_python, stop NOW and search for a different solution. Honestly: I tried it also with mod_python and wasted 6 of the above 8 hours, banging with my head into wall after wall.

Update: And now, that everything was compiled and done, they tell me to use Python 2.6 instead of 2.4 – so please find below the latest install guide for Python 2.6!

Update: Because some years are gone, I’ve updated this article to current versions: CentOS 5.9 – Python 2.7.2 – Plesk 11 (yeah, the Plesk version doesn’t make a difference, I know):

1. Add the EPEL repository for the correct CentOS version your server runs on:

CentOS 5:
http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm

2. disable this repository (no joke), otherwise it tries always to update stuff and will break Plesk!
Edit the file /etc/yum.repos.d/epel.repo and set everywhere “enabled=0”

3. install the following packages:

yum install gcc httpd-devel rpm-build python-devel yum-utils
yum install rpmdevtools tk-devel tcl-devel expat-devel db4-devel gdbm-devel sqlite-devel 
yum install bzip2-devel openssl-devel ncurses-devel readline-devel 
yum install git --enablerepo=epel

3b. As there are no (good) Python 2.7 RPMs, we will build them ourselves:

cd /usr/src/redhat
wget https://raw.github.com/nmilford/specfiles/master/python-2.7/python27-2.7.2.spec -O ./SPECS/python27-2.7.2.spec
wget http://www.python.org/ftp/python/2.7.2/Python-2.7.2.tar.bz2 -O ./SOURCES/Python-2.7.2.tar.bz2
sed -i 's/^%define config_sharedlib no/%define config_sharedlib yes/' ./SPECS/python27-2.7.2.spec
QA_RPATHS=$[ 0x0001|0x0010 ] rpmbuild -bb ./SPECS/python27-2.7.2.spec
yum localinstall --nogpgcheck /usr/src/redhat/RPMS/`uname -m`/python27-*

4. Now we create the pip (Python package installer) tool

cd /usr/src
curl -O http://python-distribute.org/distribute_setup.py
python2.7 distribute_setup.py
curl -O https://raw.github.com/pypa/pip/master/contrib/get-pip.py
python2.7 get-pip.py
yumdownloader --source mod_wsgi --enablerepo=epel
rpm -ivh mod_wsgi*rpm

5. Enable Python 2.7 support for mod_wsgi

sed -i 's,^%configure --enable-shared.*,%configure --enable-shared --with-python=/usr/bin/python2.7,' redhat/SPECS/mod_wsgi.spec

6. Compile mod_wsgi and install

rpmbuild -ba redhat/SPECS/mod_wsgi.spec
rpm -Uvh /usr/src/redhat/RPMS/`uname -m`/mod_wsgi-*.rpm

7. Disable mod_python in Apache
Edit /etc/httpd/conf.d/python.conf

change:

LoadModule python_module modules/mod_python.so

# Override type-map handler for /var/www/manual
<Directory "/var/www/manual/mod/mod_python">
        <Files *.html>
                SetHandler default-handler
        </Files>
</Directory>

to:

#LoadModule python_module modules/mod_python.so

# Override type-map handler for /var/www/manual
#<Directory "/var/www/manual/mod/mod_python">
#        <Files *.html>
#                SetHandler default-handler
#        </Files>
#</Directory>

8. Enable mod_wsgi
Edit /etc/httpd/conf.d/wsgi.conf

Change:

#LoadModule wsgi_module modules/mod_wsgi.so

to:

LoadModule wsgi_module modules/mod_wsgi.so

 

Now we’re ready to rumble.

The following describes the setup of the Django Fiber example project (ridethepony) to the domain “domain.nl”:

1. lets go to the subdirectory in question:

cd /var/www/vhosts/domain.nl

2. setup a vhost.conf file to redirect dynamic requests to mod_wsgi and static page requests to the common httpdocs directory
Edit conf/vhost.conf, adding the following lines:

Alias /robots.txt /var/www/vhosts/domain.nl/httpdocs/robots.txt
Alias /favicon.ico /var/www/vhosts/domain.nl/httpdocs/favicon.ico

Alias /static/ /var/www/vhosts/domain.nl/httpdocs/
Alias /media/ /var/www/vhosts/domain.nl/httpdocs/media/

WSGIScriptAlias / /var/www/vhosts/domain.nl/django.wsgi

<Directory /var/www/vhosts/domain.nl>
    Order allow,deny
    Allow from all
</Directory>

3. download the application, unpack and rename

git clone git://github.com/ridethepony/django-fiber-example.git
mv django-fiber-example pony

4. prepare the application

chmod 0777 pony
cd pony
pip install -r requirements.txt
cp settings_example.py settings.py

5. Edit settings.py

Change:

'NAME': 'fiber_example',                # Or path to database file if using sqlite3.

to:

'NAME': '/var/www/vhosts/domain.nl/pony/fiber_example',                # Or path to database file if using sqlite3.

6. Edit settings_default.py

Change:

TEMPLATE_DIRS = (
# Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
)

to:

TEMPLATE_DIRS = (
# Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
    '/var/www/vhosts/domain.nl/pony/pages/templates',
)

7. Create the default database and import the content

python2.7 manage.py syncdb
python2.7 manage.py loaddata ./fixtures/example_initial_data.json
chmod 0666 fiber_example

8. copy the static css files into the static directories

python2.7 manage.py collectstatic --link
cp -a pages/static/* ../httpdocs/.

9. create the base WSGI file

cd ..

create file django.wsgi with the following content:

import os
import sys

path = '/var/www/vhosts/domain.nl/pony'
if path not in sys.path:
   sys.path.append(path)

os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

10. activate the Apache and vhost changes:

/usr/local/psa/admin/sbin/httpdmng --reconfigure-all
service httpd restart

11. Enjoy the result at http://domain.nl

Menschenverachtende Profitgier

March 15th, 2011

Liegt es nur an mir, oder warum finde ich es menschenverachtend und ignorant von “sicheren” Kernkraftwerken und “Restrisiko” zu sprechen, angesichts von Katastrophen wie Harrisburg (1979), Tschernobyl (1986) und Fukushima (2011)?

Ich empfehle mal die Lektüre des folgenden Wikipedia-Artikels – dort findet man unter anderem “Im Durchschnitt über die letzten (ausgehend von 1996) 11 Jahre ereignen sich pro Jahr 132 Vorfälle (kumuliert über alle Meldekategorien).”

Sicher kann man jetzt sagen “ach, das sind doch alles nur harmlose Kleinigkeiten” – dem möchte ich mal die Auslöser der aktuellen Fukushima-Katastrophe entgegenhalten. Sicher, Erdbeben und Tsunami sind eines – doch die hätten nicht zu den aktuellen Problemen geführt, wenn nicht da noch eine weitere harmlose Kleinigkeit die Katastrophe initiierte: Fehlende Kabel für mobile Stromgeneratoren.

Noch Fragen?

 

Edit: Frisch vom Tagesschau-Ticker: “Die US-Regierung will trotz der Geschehnisse in Japan nicht auf den geplanten Ausbau der Atomkraft verzichten. Für Atomkraftwerke in den USA gälten “rigorose Sicherheitsbestimmungen”, die “auch Geschehnisse wie Tsunamis und Erdbeben berücksichtigen”, sagte US-Energieminister Steven Chu.” (http://www.tagesschau.de/nachrichtenticker/)

Da frag ich mich doch: Hat das nicht auch Japan zuvor von seinen Atomkraftwerken behauptet?

Mister Steven Chu: Mit Ihrer Aussage unterstützen Sie in eklatanter Weise den Topic dieses Posts…

Yum Install CentOS-5 (Upgrade from CentOS 4 to CentOS 5)

July 1st, 2010

Don’t follow any how-to without having your brain in alarm mode.

I found a nice tutorial (http://www.tocpcs.com/yum-install-centos-5-upgrade-from-centos-44-to-centos-5/) from 2007 for the upgrade from CentOS4 to CentOS5  using yum only – which I tried to use and did NOT follow to the end – otherwise my server, standing in a datacenter 150 km away, would have been wiped out.

First of all: This is not for the unexperienced and I don’t take any responsibilities for your data!

So here is the tutorial for the fearless, double checked and proven:

1. First things first: Tell the system that your core is CentOS 5 (which is not right yet, but that way you will get the right packages):

rpm -Uvh http://ftp.tudelft.nl/centos.org/5/os/i386/CentOS/centos-release-5-5.el5.centos.i386.rpm http://ftp.tudelft.nl/centos.org/5/os/i386/CentOS/centos-release-notes-5.5-0.i386.rpm

2. clean up yum’s cache

yum clean all

2a. check that all 3rd party yum repositories (atomic, rpmforge…) are disabled!!! Otherwise you will never ever solve the dependencies

3. remove packages, that might be in the way during the upgrade:

rpm -e --nodeps hal

4. clean up your kernels (yes, there might be more than one)

uname -a (find out, which kernel is your operational kernel)

rpm -qa | grep kernel (find all installed kernels)

rpm -e ... (for all kernels but your operational kernel)

rpm -e --justdb --nodeps (for the active kernel)

5. Now it’s time for the first try

yum upgrade

6. …yes, and now you have to wait until your system sorts out your problems. In the end you will get a list of problematic packages. For me it was python-elemnttree which is scary, because it belongs to yum. Remove all packages where you are sure you can miss them (and re-install later):

rpm -e --justdb --nodeps python-elementtree

…and VFlib2, which I really don’t need, so I removed it with all dependencies:

rpm -e VFlib2 ghostscript ghostscript-fonts hpijs system-config-printer hal-cups-utils

7. …and off we go:

yum upgrade

8. Now, it takes time – and in the end my yum was broken :-)  So here is the fix:

rpm -Uvh --force http://ftp.tudelft.nl/centos.org/5/os/i386/CentOS/python-sqlite-1.1.7-1.2.1.i386.rpm
yum clean all

9. and that’s it. check your grub configuration and reboot, you’re now the proud owner of CentOS5

10. like to clean up a bit more?

rpm -qa | grep el4

11. all those packages can either be removed or – when you got them from a sneaky RPM mirror with newer versions – downgraded.

just for the record: I found the following on my system:

rhnlib-2.1.2-11.el4
dmraid-1.0.0.rc14-9_RHEL4_U7.el4
mysql-libs-5.0.68-1.el4_6
ash-0.3.8-20.el4_7.1
php-pear-1.4.11-1.el4s1.1
perl-DBD-MySQL-4.006-1.el4.centos
up2date-4.7.1-17.el4.centos
perl-DBI-1.604-1.el4s1
php-pecl-zip-1.8.0-1.el4.centos

…and this is, what I did:

rpm -e up2date rhnlib mysql-libs php-pecl-zip ash
yum downgrade perl-DBI perl-DBD-MySQL php-pear dmraid

finally I brought the RPM-database into a consistent state. Not needed, but sometimes helpful

rm -f /var/lib/rpm/__*
rpm --rebuilddb

And that’s definetly it!

enjoy, it worked for me 4 times on different servers!