Sonntag, 19. Dezember 2010

Fight global freezing!

Hier wird natürlich nicht versucht, Berlin eisfrei zu bekommen. Das Gebäude gehört (wohl) zu den Klimatechnikern, die Wärmetauscher für Lehrzwecke brauchen...

Sonntag, 28. November 2010

Server mit Migrationshintergrund

Dieser Post soll allen als Warnung dienen, die einen Rootserver gemietet haben. Es kann einem passieren, dass der Provider beschließt, daß die alte Hardware zuviel Strom frisst, und er die Server der Kunden virtualisieren möchte.

Zustimmung des Kunden

Ein normaler Provider würde dann einen Brief schreiben. Oder vielleicht auch eine Email. Dann auf Antwort warten, und wenn der Kunde sein OK gibt und vielleicht noch einen Terminwunsch äussern darf (nicht während der Produktpräsentation z.B.) wird die Migration durchgeführt oder auch nicht.

Alles andere ist eine einseitige Vertragsänderung die unmittelbar Sonderkündigungsrecht des Kunden zur Folge hat.

Handeln ohne Zustimmung?

Bei einem meiner Provider war das leider nicht so. Ich erhielt eine Email, in der man die neue Virtualisierungslösung anpries und dass man wegen Erneuerung von Hardware meinen Server gerne migrieren würde. Das ist für mich Konjunktiv.

Das Problem war nur, dass ich diese Email eine Woche lang nicht zur Kenntnis genommen habe, weil Thunderbird der Meinung war, sie nicht anzeigen zu müssen. Alles halb so schlimm, könnte man meinen, die Nachricht war ja im Konjunktiv, und kein vernünftiger Provider würde einen Kundenserver nehmen, runterfahren, die Festplatte ausbauen, die Daten kopieren, auf ein Storage mit den Daten aller anderen Kunden legen...

Nun, genau das hat dieser Provider aber getan. Er hat nicht auf eine Antwort gewartet und einfach mal so die Festplatte ausgebaut und in einer Stunde Downtime die Daten kopiert.

Gemerkt habe ich es, weil Nagios gemeckert hat, dass der Server down ist.

Als ich nach etwas Suchen dann feststellte, dass mir Thunderbird Mails unterschlägt, fand ich nach einem Index-Rebuild auch die Email, die auf diese Migration "hinwies", bzw. mich eigentlich darauf hinwies, dass man das gerne tun würde, dieses Migrieren

Was ist 'Ausspähen von Daten'?

Auf meine Email hin, dass ich hier einen Fall von "Ausspähen von Daten" sehe und nicht damit einverstanden bin, dass man einfach meine Daten kopiert, erhielt ich dann gegen 16:09 eine Email, in der man mich fragt, ob ich mit einer Rückmigration auf die alte Hardware einverstanden sei. Diesmal war das sogar als Frage formuliert!

Lernresistent? Könnte man meinen.

Ja, nur leider sehe ich im Syslog, dass der Server um 17:05 und 17:10 rebootet. Es wurde wieder keine Antwort abgewartet - diesmal nicht mal eine Stunde lang - und es wurde erneut ohne Absprache mit den Daten hantiert. Die gehosteten Webseiten waren damit mal wieder nicht erreichbar. Und der Nameserver und Mailserver auf der Kiste auch nicht.

Dieser Zustand wurde leider auch 3 Stunden lang nicht besser. Obwohl ssh irgendwann wieder ging. Des Rätsels Lösung: Sie haben beim Rückmigrieren das Routing verbockt. Nach einer Email an die Notfall-Hotline war das aber dann wenigstens in Rekordzeit behoben - unter 10 Minuten.

got root?

Ich habe nach diesem Vorfall unmittelbar einen anderen Hoster gesucht.

Der neue Server war schließlich am Mittwoch einsatzbereit, im Verlauf des Tages habe ich dann einiges an Domains umziehen dürfen, darunter diverse CMS-Systeme, den Mailserver und den Nameserver für eine zweistellige Zahl an Domains und alle Nutzer und Kunden über die neuen IPs bzw. Nameserver informieren müssen, damit sie ihre DNS-Zonen ggf. anpassen.

finally?

Zwischendurch habe ich dann noch Kontakt zu einem Anwalt aufgenommen, um mir die rechtliche Situation mal ein bisschen genauer darlegen zu lassen.

Nun, die Kündigung beim Provider folgt zum 01.12.2010 - der alte Server ist nun endgültig platt. Genullt. Ob der Provider noch eine Kopie der Daten irgenwo im Backup hat - wer weiss....

Dienstag, 2. November 2010

RANT: Wer darf heutzutage eigentlich Mailserver betreiben?

Mir platzt hier gleich die Hutschnur. Man ist mal eine Woche zum Entspannen (und wegen einer Tagung)) aufs Land gefahren, und dann ist man andauernd am Server fixen. Arrgh.

Ein Drama in drei Akten

Dass einer meiner Server am Sonntag (natürlich während des gemütlichen Abendessens bei der Familie) wegen zu wenig RAM ausstieg ist ja meine Schuld, aber was dann gestern und heute sonst noch passierte muss ich einfach mal loswerden.

1. Akt: Die Uni

Gestern Abend hatte die Uni Probleme. Ausnahmslos alle Emails wurden mit einem permanenten Fehler abgewiesen:

 ...
 host localhost [127.0.0.1]: 
   550-Mailbox unknown. Either there is no mailbox associated with this
   550-name or you do not have authorization to see it.
   550 5.1.1 User unknown

Das ist natürlich genial für Mailinglisten - von denen fliegt man dann in der Regel runter - aber auch, wenn man wie ich bei seinem Hoster diese Adresse angegeben hat (weil unabhängig von den Systemen die man dort hosted) und dann die Rechnung oder Trafficabrechnung einen User unknown rauswirft.

Natürlich war gestern der Monatserste und natürlich hat mein Hoster mir versucht an diesem Tag die Rechnung und die Trafficabrechnung zu schicken. Die Trafficabrechnung ist angekommen. Die Rechnung (noch?) nicht.

2. Akt: Der Ticketversender

Ich bin diese Woche weggefahren, weil ich am Donnerstag zu einer Tagung will. Dazu braucht man natürlich ein Ticket. Und wie bekommt man das? Richtig, über einen Dienstleister. Dazu meldet man sich dort an, bezahlt das Ticket und wartet auf das pdf mit dem Ticket.

Und wartet. Und wartet. Und schreibt eine Email an den Support.

Denn: zum Passwort ändern auf der Plattform muss man eine Email bestätigen, aber die kommt ebenfalls nicht an.

Nun bekam ich dann heute eine html-only Email, dass das Ticket nochmal versendet wurde. Aber es kam nicht an, dafür füllte sich mein Maillog:

postfix/smtp[18334]: connect to mail2.amiando.com[213.183.6.102]:25: Connection refused
postfix/smtpd[18137]: NOQUEUE: reject: RCPT from mail.amiando.com[195.71.125.161]: 
  450 4.1.7 <no-reply@mail.amiando.com>: Sender address rejected: unverified address:
      Address verification in progress; from=<no-reply@mail.amiando.com>
      to=<xxxxx@XXXXXXXXX> proto=ESMTP helo=<lnxp-1930.srv.mediaways.net>

Die HTML-Mail löste bei mir leichte Übelkeitsgefühle aus, aber als ich den Eintrag im maillog auswertete wurde mir irgendwie schlecht.

Diese Leute versenden Emails und wundern sich, dass sie als SPAM erkannt wird?

Fassen wir mal zusammen:

Die Email ist HTML-Only, die Absenderadresse existiert nicht, so dass sie bei Fehlzustellungen nichts davon bemerken - deren System wird es also immer wieder versuchen, an eine nicht-funktionierende Adresse von einer ebenfalls nicht-funktionierenden Adresse aus mails zu versenden. Damit macht man sich bei den postmastern, die diese Bounces bekommen, so richtig beliebt.

Dann meldet sich der Mailserver mit dem Namen lnxp-1930.srv.mediaways.net obwohl er laut DNS eigentlich mail.amiando.com heissen sollte. Noch ein SPAM-Kriterium.

Und zur Kröhnung schreiben sie einen Mailserver in ihre Zone, dessen SMTP-Port Verbindungen ablehnt.

3. Akt: Services die verbinden...

Mit dem Spruch wirbt eine andere Firma für ihre Dienste. Leider scheint es damit nich so weit her zu sein. Ich bekomme hier jedenfalls Emails von der Adresse www-data@int3.web.int.fra.privatnetz.org

Mein Mailserver scheitert dann laut syslog aber daran, wenn er versucht mails an die IP 10.1.1.100 zuzustellen.

Die haben doch allerernstes sowohl hostnamen mit privaten IPs in ihrem DNS, als auch MX-Records die auf private IPs zeigen! Stümper! Das ist 'pollution of the public namespace' was den DNS angeht und auch sonst einfach nur kaputt.

Und dann wundern sich Leute, warum ich NAT und Masquerading hasse!

Das Ergebnis ist dasselbe wie oben: Sie werden niemals Fehlermeldungen erhalten und vielfach als SPAMMER erkannt werden.

Fazit

Ich frage mich langsam echt, ob wir einen Internet-Führerschein brauchen - für Diensteanbieter!

Montag, 18. Oktober 2010

uBoot für DockStar

Wie versprochen geht es weiter mit Artikeln zum DockStar

Um einen eigenen uBoot zu übersetzen bedarf es nicht viel...

  1. Crosscompiler/Toolchain für Arm
  2. uBoot-Quellen
  3. patches für uBoot für den Dockstar
  4. meine Anpassungen für Speicher und LEDs

Wer das alles nicht möchte, kann auch einfach das fertige Binary laden, muss dann aber mit den Standardoptionen leben oder die Optionen im Flash anpassen. Meine Version des u-Boot gibt es hier. Vorsicht: Es scheint nicht jeder Kernel damit zu booten. Bitte vorher testen!

Die Toolchain bekommt man nach der Anleitung hier und dann geht es bei ahsoftware weiter mit dem uBoot.

Am Ende gibt es dann noch die Anpassungen für LED's und Speicher von mir:

In der Datei board/Marvell/sheevaplug/sheevaplug.h kann man sich aussuchen, wie man die LED's beim Einschalten gesetzt haben will. Folgende Zeilen schalten einfach die orange LED ein, um den Bootvorgang zu signalisieren:

#define SHEEVAPLUG_OE_LOW        (~(0))           /* This is for DockStar:                    */
#define SHEEVAPLUG_OE_HIGH       (~( (1 << 15) )) /* output enable gpio47 (32+15) = orange,   */
                                                  /*               gpio46 (32+14) = green led */
#define SHEEVAPLUG_OE_VAL_LOW    (1 << 29)        /* USB_PWEN low                             */
#define SHEEVAPLUG_OE_VAL_HIGH    0               /* output low => led on - thus we switch on */
                                                  /* the yellow one above.                    */

Viel wichtiger ist jedoch das korrekte Konfigurieren des Speichers, damit das später startende Linux nicht versucht, auf den nicht vorhandenen Speicher zuzugreifen.

Die Option hierzu findet sich in der Definition des Konfigurationsabbilds der CPU in der Datei board/Marvell/sheevaplug/kwbimage.cfg. Dort gilt es die DATA-Definition an der Adresse 0xFFD01504 zu ändern:

DATA 0xFFD01504 0x07FFFFF1     # CS[0]n Size Register - 07=128MB for DockStar

Wer nun noch eine komfortable Eingabeaufforderung im Bootloader haben will, editiert noch schnell die Datei include/configs/sheevaplug.h und fügt die folgenden Zeilen ein:

#define CONFIG_SYS_HUSH_PARSER
#define CONFIG_AUTO_COMPLETE
#define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
#define CONFIG_CMDLINE_EDITING

Schliesslich wollte ich noch die Standard-Boot-Optionen anpassen:

 #define CONFIG_BOOTCOMMAND \
         "${x_bootcmd_usb}; "    \
         "setenv bootargs ${x_bootargs} ${x_bootargs_root}; echo cmdline: ${bootargs} ; "    \
         "run x_bootload_kernel m_usb_boot;" \
         "reset" /* If loading from USB failed we just reset, my experience was that the second time the device will be found */

[...]
 #define CONFIG_EXTRA_ENV_SETTINGS \
       "x_bootargs=console=ttyS0,115200 mtdparts="CONFIG_MTDPARTS \
       "x_bootargs_root=root=/dev/sda1 ro rootdelay=5\0" \
       "x_bootload_kernel=ext2load usb 0:1 0x800000 /boot/uImage\0" \
       "m_usb_boot=if ext2load usb 0:1 0x1100000 /boot/uInitrd; then bootm 0x800000 0x1100000;else bootm 0x800000;fi;\0" \
        "x_bootcmd_usb=usb start\0"

Damit sucht der u-Boot auf dem usb-stick nach einem uImage und uInitrd und bootet, falls vorhanden, auch mit Initrd.

Flashen des uBoot

Die heikelste Operation ist das Flashen des uBoot. Zum Testen empfiehlt es sich, mit dem vorhandenen Bootloader den neuen uBoot per Netz oder usb-Stick in den Speicher zu laden und direkt anzuspringen (Dazu das bin-file benutzen). Wer seinen eigenen uBoot flashen will sollte unbedingt daran denken, nicht versehentlich das binary sondern immer das Bootfile (kwb) zu flashen.

Ich erledige das bequem mit der seriellen Konsole und einem tftp-Server:

setenv ipaddr 10.1.1.17 ; setenv serverip 10.1.1.1 ; tftp 0x6400000 u-boot.kwb
nand erase 0x0 0x40000
nand write 0x6400000 0x0 0x40000
reset
Und wenn man Glück hatte, braucht man nicht so wie ich einen JTAG-Adapter...

Mein Dockstar lebt wieder...

So. Es ist wieder einmal passiert. Ich habe mir Hardware zum Spielen gekauft.

Diesmal: Ein FreeAgent DockStar Network Adapter von Seagate.

Das Schätzchen hat 128MB Ram und 256MB Flash on Board, eine nette ARM CPU, Gigabit-Netzwerk und 4 USB-Ports. Details finden sich zu Hauf im Netz.

Was mich besonders interessiert hat, war die in der CPU vorhandene Crypto-Unit, die sha1, md5 und aes in Hardware berechnen kann.

Linuxkernel

Leider ist es mit der Unterstützung dieser Einheit im offiziellen Kernel noch nicht so wahnsinnig weit - bisher wird das ganze nur rudimentär angesprochen (z.B. kein DMA), so dass es nicht wirklich Spaß macht, das ganze zu nutzen. (1-2MB/s Gewinn)

Etwas mehr verspricht hier ein Kernel des Herstellers - und voilá, GPL-sei-dank gibt es da auch was passendes. Oder naja, etwas das man für passend halten kann.

Vorweg: Ja, ich habe den Kernel letztlich übersetzt bekommen, man darf nur nicht so wahnsinnig sein, und an der config großartig Dinge ändern wollen - weil dann knallt es. Und zwar richtig mit Compiler-Fehlern und Syntax-Errors in den Kernelquellen.

Letztlich habe ich jedenfalls 15MB/sec von einer verschlüsselten USB-Platte lesen können statt 6-7 ohne Hardwareunterstützung.

Details zum Kernel folgen, sobald ich einen stabilen build habe und das dokumentieren kann. Ausserdem will ich die LEDs aus dem Kernel heraus ansprechen können, die GPIO-Konfiguration habe ich im Prinzip bereits.

uBoot - der Bootloader

Damit ich dieses System bequemer booten kann, wollte ich dann einen neuen uBoot bauen.

Die Cross-compiler-chain war ja schon von kernel vorhanden - sollte also alles kein Problem sein. Dachte ich.

Die Konfiguration des DockStar unterscheidet sich leider etwas von der des Sheeva-Plugs. So ist nur die Hälfte des Rams vorhanden, ausserdem sind die beiden LEDs an andere GPIO-Pins angeschlossen.

Kaputtgeflasht

Was mir letztlich das Genick brach war aber ein dummer Fehler: Ich habe das uBoot-Binary direkt in den Flash des DockStar gebrannt - statt des kwb-Images, das die Hardwarekonfiguration enthält.

Letztlich habe ich nun 4 verschiedene Jtag-Adapter hier gehabt, davon zwei selbstgebaute. Der letzte, ein wiggler, funktionierte schließlich - wenn auch nur mit 50kHz statt 500. (Kabellänge)

Folgende Fallen begeneten mir dabei:

  • 74HC244 falschrum im Sockel. Gute Heizwirkung, der Chip hats überlebt, mein Zeigefinger auch...
  • Kabel zu lang und zu wenig abgeschirmt
  • Ein funktionierender DockStar hat das JTAG deaktiviert und ist zum Testen ungeeignet!

Vor allem der letzte Punkt mit dem funktionierenden DockStar hat mich etliche Stunden gekostet. Aber wer rechnet schon damit -.-

Ausblick

Die folgenden Posts werden ausführlich das Wiederbeleben des DockStars, die korrekte Konfiguration des Bootloaders für diese Plattform und die Konfiguration des Kernels enthalten.

Der Bootloader kann hier jedenfalls schon die LED's ansprechen, dem Kernel werde ich das wohl auch noch beibringen. TODO's sind aber noch die Konfiguration des Speichers im uBoot.

Sonntag, 10. Oktober 2010

Vorlesungsverzeichnis der TU-Berlin (Backup)

Die Freitagsrunde hat sich wieder die Freiheit genommen, eine Kopie des Vorlesungsverzeichnisses der TU-Berlin anzulegen, falls die Server überlastet sein sollten. Bitte weitersagen.

Das Vorlesungsverzeichnis für das Wintersemester 2010/2011 findet sich nun auch hier: offizielles Vorlesungsverzeichnis der TU-Berlin (Kopie).

In den Ordnern sind jeweils die pdf-Versionen der Fakultäten abgelegt. Auf oberster Ebene auch nochmal ein Archiv als zip und tarfile.

Update: Ja, das Backup des Vorlesungsverzeichnis ist in den letzten Jahren rege genutzt worden, weil der Typo3 doch ab und zu ausfällt und das lsf-web einfach überlastet ist. Und ich hoffe dass dieser Eintrag jetzt auch genügend Stichworte für die Google-Trefferliste hat ;o). Die billigen Tricks wie finden sie HIER mehr über TU-Berlin Vorlesungsverzeichnis oder Backup Vorlesungsverzeichnis TU Berlin lasse ich mal weg...öhm - wait... mist ;)

Sonntag, 5. September 2010

md-raids aus USB-Platten und automatische Checks...

Falls ihr externe USB-Platten als Raid einsetzt, werdet ihr wissen, dass es mitunter Tage dauern kann, bis ein Rebuild oder Check des Raids komplett ist:
md4 : active raid5 sdc[0] sdf[3] sde[2] sdd[1]
      2930287488 blocks level 5, 64k chunk, algorithm 2 [4/4] [UUUU]
      [>....................]  check =  0.9% (8861912/976762496) finish=1374.5min speed=11735K/sec

Falls ihr euch nun wundert, warum das Raid an einem Sonntag Abend auf einem Debian System sehr träge reagiert und 50% der CPU durch einen Thread mit dem Namen md4_raid5 belegt sind, empfehle ich euch mal den Cronjob des mdadm anzusehen.

Dieser läuft am ersten Sonntag jedes Monats und prüft das Raid auf Konsistenz. Einerseits recht nützlich kann es aber auch störend sein - dauert es doch wie gesagt relativ lange. Zudem gibt es unter Debian bei manchen Installationen einen Bug, so dass der Cronjob jeden Sonntag läuft.

Um einen laufenden Check abzubrechen genügt ein:

/usr/share/mdadm/checkarray -x --all

Der Cronjob ist in der /etc/cron.d/mdadm definiert.

Komplett deaktivieren ist aber auch unschön, weil es das Erkennen von Fehlern auf dem Raid verhindert. Bei Mirror-Raids ist das Fatal, beim Ausfall einer Platte in einem Raid5 ebenfalls, weil dann unter Umständen keine reduntenten Informationen zum Wiederherstellen vorhanden sind.

Freitag, 28. Mai 2010

How to disable AAAA queries for IPv6 / configure your resolver

Today I stumbled upon a very nasty behaviour of glibc - again.

On a host which has no access to IPv6 at all and no module-support in the kernel, it seems the connect() call fails when there is a AAAA record in place for a remote server.

This means I cannot wget a webpage if an AAAA record exists for the page, etc.

You will find many solutions on how to 'disable IPv6' - but they all miss the resolver in glibc, the part that is behind the 'gethostbyname' call.

I like to disable AAAA DNS-queries for IPv6 completely - and the solution is easy:

#cat /etc/resolv.conf 
options no-inet6
nameserver ...
nameserver ...

Just documenting it here, because the manpage does not document the 'no'-Feature and searching for this on google was not helpful at all.

Dienstag, 18. Mai 2010

bzip2 vs. gzip und gvfs im Allgemeinen

Eben bin ich mal wieder über einige Kleinigkeiten gestolpert, die einfach nur ärgerlich sind.

Ein paar wirklich kleine Bugs, aber trotzdem unendlich nervig!

Gnome bindet Samba-Freigaben (also Windows-Freigaben) innerhalb des virtuellen Dateisystems ~/.gvfs innerhalb des Homes des Nutzers ein. Soweit so gut.

Erster Akt: Zugriff!

Man könnte ja annehmen, dass Gnome dann auch transparent Zugriff darauf erlaubt. Wenn ich ein Terminal starte, kann ich in das Verzeichnis wechseln und mit normalen Kommandozeilentools auf die Freigaben schreiben. Alles toll.

Aber in Gnome tauchen diese Freigaben im normalen Datei-öffnen Dialog nicht auf. Entsprechend auch nicht in Firefox, Galeon, Epiphany. Wie soll denn ein Endnutzer jetzt auf einfache Weise einen Download auf dem Share speichern? Vielleicht übersehe ich auch was, aber sowas ist einfach nur ärgerlich. Nicht nur weil das unter Windows ohne Probleme funktioniert.

Navigiert man manuell nach ~/.gvfs/ klappt es aber...

Zweiter Akt: Verknüpfungen

Wer es aus Windows kennt, versucht es auch unter Linux. Hat man nach viel Suchen die richtige Freigabe auf dem richtigen Server gefunden, zieht man die Freigabe aus der Netzwerkumgebung auf den Desktop und hat fortan eine Verknüpfung mit dem Share, die beim Doppelklick wiederhergestellt wird.

Nicht so bei unserem Lieblingsfrickelbetriebssystem mit Gnome. Zuerst beschwert es sich, dass die Freigabe kein normaler Ordner ist. Ach! Dann legt es auf dem Desktop einen leeren Ordner mit dem Namen der Freigabe an. Toll! Wie soll denn ein Endbenutzer jetzt auf die Idee kommen, dass alles was er in diesem Ordner speichert eben nicht auf dem Server landet?!

Nun gut, versuchen wir Rechtsklick auf den Freigabenamen in der Netzwerkumgebung, dann Verknüpfung erstellen. Ooops. Ich habe auf der obersten Ebene des Servers ja keine Schreibrechte, also Fehlerdialog, Verknüpfung kann nicht angelegt werden. Leider erfolgt auch keine Möglichkeit wie bei Windows (sic!) die Verknüpfung statt dessen direkt und automatisch auf dem Desktop anlegen zu lassen. Ergo: Verknüpfungen erzeugt man manuell, indem man einen Starter mit dem Ziel nautilus smb://server/ anlegt.

Wie soll denn ein Endbenutzer....

Wenn man viel Glück hat geht das auch meistens. Oft habe ich aber wie unter Windows nur leere Servereinträge, bekomme skurrile dbus-Fehlermeldungen, kann das Netzwerk nicht durchsuchen, etc. Ja, iptables ist leer und auf ACCEPT.

Dritter Akt: Auf der Kommandozeile ist alles besser?

Nein, nicht wirklich.

Bei dem Gnomefs ist z.B. die Funktion fchmod nicht implementiert. Und das führt zu unnötigen Fehlern.

Situation: Auf dem Share liegt eine Datei, die wir komprimieren wollen.

Also Kommandozeile, cd ~/.gvfs/sharename ; bzip2 file - und wir bekommen einen netten IO-Error um die Ohren gehauen. Vorher hat bzip2 das File übrigens ordnungsgemäß komprimiert. Komplett. Und wieder aufs Share geschrieben. Dann gelöscht.

Das gleiche Experiment mit gzip: Es wird auch ein Fehler geworfen, das File wird aber korrekt abgelegt und die Quelle gelöscht.

Welches Verhalten ist nun besser? gzip, der die Rechte nicht setzt und dem es egal ist, oder bzip2, dass die Datei einmal übers Netz zieht, komprimiert, schreibt und zurücksendet und dann löscht?

Was mich aber am meisten wundert: warum wird das fchmod erst NACH dem Schreiben der Nutzdaten gemacht?

Die Krönung des ganzen: Der Mode, den bzip2 hier übergeben will, unterscheidet sich nicht vom Mode, den die Datei auch so schon hat, wenn sie neu angelegt wird -.-

Fazit: Alle doof außer Mutti!

Mittwoch, 7. April 2010

Erinnert mich irgendwie an George Orwell...

„Bei allem Positiven, das die Online-Welt bietet, wird das Internet zunehmend als Medium für die Vorbereitung und die Ausführung abweichenden Verhaltens, bis hin zur Durchführung krimineller Taten genutzt.“

Das obige Zitat stammt nicht etwa aus einem Roman wie 1984 sondern aus einer offiziellen Pressemitteilung des BDK - des Bund Deutscher Kriminalbeamter.

Ich finde solche Gedankengänge jedenfalls sehr verstörend. Demnächst dann: Wer sich abweichend verhält, wird einstweilig erschossen... Hatten wir so etwas ähnliches nicht schon einmal?

Auch aufschlussreich ist das Folgende:

„Aufgrund ungefilterter Internetzugänge sind aber auch Inhalte wie Pornographie, Pädophilie, Islamismus, Rechts- und Linksextremismus, Terror und vieles mehr für Kinder und Jugendliche frei verfügbar.“

Nun, Kinder und Jugendliche haben auch ungefiltert Zugriff auf die Zigaretten und den Alkohol im elterlichen Haus. Sogar an Küchenmesser und Äxte kommen sie. Man könnte noch diverse andere Gefahren aufzählen, bis zum Fremden im Park der sie belästigt oder entführt. Trotzdem fordert niemand, dass der Staat jedem Heranwachsenden einen Streifenpolizisten zur Seite stellt, der aufpasst, dass die Eltern nichts falsch machen. Es ist verdammt nochmal die Verantwortung der Erziehungsberechtigten, dafür zu sorgen, dass Kinder eben nicht vor dem Computer geparkt werden. Aufgabe der Schule sollte es sein, Medienkompetenz zu vermitteln.

Sehe nur ich das so, dass es bedenklich ist, wenn der Staat sich in die Erziehung der Kinder einmischt und sich zur Aufgabe macht, diese vor allem zu schützen, was seiner Meinung nach schädlich ist?

Gleichzeitig soll hier die Internetzensur wohl mal wieder zum Schutz der Kinder salonfähig gemacht werden. Wenn man einen ungefilterten Zugang vom Provider haben will, kann man das vermutlich bekommen. Aber ich vermute, das traut sich dann keiner, weil oben genannte Dinge will er ja ohnehin nicht abrufen - sich verdächtig machen erst recht nicht.

In diesem Sinne werde ich mich jetzt weiter abweichend verhalten und mit meinem abweichenden Betriebssystem diesen Post beenden und nachher abweichend von der Mehrheit mit dem Rad in die Uni fahren...

Freitag, 2. April 2010

Scrollen mit dem Touchpad...

Kleiner Tipp am Rande: Wer sich wie ich darüber ärgert, dass nach einem Update des X-Servers bzw. des synaptic Touchpad-Treibers das scrollen per Touchpad nur noch an der rechten Seite des touchpads funktioniert und nicht mehr, wenn man zwei Finger auf das Touchpad legt, kann das alte Verhalten schnell durch Aufruf des 'synclient' wiederherstellen.

Die Konfiguration erfolgt bei aktuellen xorg-Versionen ja nicht mehr in der xorg.conf...

Bei der Gelegenheit habe ich auch gleich das vertikale Scrollen aktiviert und Klicks und Doppelklicks eingeschaltet:

   #Scrollen in alle Richtungen gleichzeitig:
   synclient VertTwoFingerScroll=1
   synclient HorizTwoFingerScroll=1
   #Klicken mit linker Taste:
   synclient TapButton1=1
   #Meine default-Werte:
   synclient MaxTapTime=180
   synclient MaxDoubleTapTime=180
Das obige snippet habe ich jetzt einfach in meine .xinitrc eingebaut, fertig.

1. Nachtrag: Die Freude hält sich in Grenzen - nach einem Suspend to RAM muss man das kleine Script nochmal ausführen, damit das Touchpad konfiguriert ist. Offenbar sichert der synaptics-Treiber den Status nicht korrekt bzw. stellt ihn nach dem Aufwachen nicht wieder korrekt her. *grr*

Donnerstag, 1. April 2010

Eduroam soll in Zukunft weiter kein Geld kosten!

Man ist ja einiges gewöhnt, was Ideen der Uni angeht, Geld zu sparen. In einigen Hochschulen sieht man die Studierenden offensichtlich nur als Kostenfaktoren, die den Forschungsbetrieb behindern. Die logische Konsequenz: Die Einführung von Studiengebühren.

In Berlin ist das zum Glück noch nicht der Fall - aber auch hier wächst der Kostendruck unaufhaltsam - die TU soll in den kommenden Jahren Millionen einsparen.

Vergangenes Jahr gab es an einigen Hochschulen schon die Idee, die Stromentnahme für Notebooks nur noch gegen Bezahlung zu ermöglichen, weil der Stromverbrauch durch die mitgebrachte Technik offenbar so hoch war, dass die Hochschule 'in den Ruin' getrieben werde. Wer mag kann ja mal ausrechnen, was 50 Notebooks mit 50 Watt in 2 Stunden an Kosten verursachen...

An der TU gibt es aber eine ganz neue Idee.

Hier steht, eduroam solle demnächst Geld kosten. Klar, WLAN an der Uni ist ja Luxus. Warum auch nicht, bei 30.000 Studierenden kommen da sicher ganz nette Summen zusammen, die angeblich in den Ausbau des Netzes gesteckt werden sollen.

Man darf gespannt sein...

Update: Insbesondere interessiert mich, wer auf diesen Aprilscherz reingefallen ist ;o)

Dienstag, 30. März 2010

Präsentationen mit LaTeX und... pdfPres!

Wer so wie ich Fan von LaTeX ist, wird sich über dieses Programm freuen:

pdfPres zeigt die aktuelle Folie, die letzte und die folgende sowie Notizen an. Die Folien sind als pdf Datei vorhanden, die Notizen werden in einer xml-Datei gehalten. Der Clou ist aber, dass ein zweites Fenster nur die aktuelle Folie anzeigt, so dass man dieses auf den zweiten Desktop schieben kann und so per Beamer dem Publikum zeigt.

Außerdem kann man in seiner Vorschau blättern ohne das Publikum durch Folienwechsel zu verwirren.

Download per git von http://github.com/vain/pdfPres/

Montag, 22. März 2010

Presenter-Keyodes mappen

Was tun, wenn die Software zum Blättern die Cursortasten 'Links' und 'Rechts' verlangt, der Presenter aber nur die Bild auf und Bild ab Tasten als Keycodes sendet?

Die Frage wurde mir vorhin in einem telefonischen Notruf 5 Minuten vor Beginn einer Präsentation gestellt... Damit es beim nächsten Mal schneller geht hier die Doku.

Nun, zunächst sucht man per xev die Keycodes der betreffenden Tasten und xmodmap -pr die Namen der Zieltasten.

Man erhält dann sowas:

TasteKeycodeName in X
Bild auf 112 Prior
Bild ab 117 Next
Links 113 Left
Rechts 114 Right

Und nun mappen wir fröhlich die Tasten um:
Bild auf soll Cursor links werden:
xmodmap -e "keycode 112 = Left"
Bild ab soll Cursor rechts werden:
xmodmap -e "keycode 117 = Right"

Und wenn man Ersatz für die Cursortasten will:
Links soll Bild auf werden:
xmodmap -e "keycode 113 = Prior"
Rechts soll Bild ab werden:
xmodmap -e "keycode 114 = Next"

Freitag, 12. März 2010

Unter OpenWRT per DHCP den NTP announcen

Wer sich wundert, warum die Rechner zu Hause den NTP-Server des eigenen Routers einfach nicht benutzen wollen, sollte mal per tcpdump nachsehen, ob die DHCP-Option 42 auch gesendet wird... Wenn nicht muss man auf dem Router in der /etc/config/dhcp das Schlüsselwort dhcp_option benutzen:
config dhcp lan
        option interface        lan
        option start            100        
        option limit            150
        option leasetime        1h
        list dhcp_option '42,10.1.1.1'
Hier wird den Clients im LAN mitgeteilt, dass man 10.1.1.1 als NTP-Server nutzen will...

Dienstag, 9. März 2010

IO-Durchsatz und kernel neuer 2.6.28

Kurze Notiz: Wer auch wie ich das Problem hatte, dass manche Anwendungen wie liferea das gesamte System einfrieren lassen, wenn sie ein bischen IO machen (eine sqlite-db nutzen z.B.) kann ich ein downgrade auf Kernel 2.6.28, z.B. 2.6.28-gentoo-r5, empfehlen. Seitdem ich von 2.6.33 umgestiegen bin, kann ich wieder Multitasking machen und liferea benötigt keine 20-30 Sekunden pro Artikel(!) zum Darstellen, wenn mal ein Bild enthalten ist. Auch insgesamt ist das System wesentlich responsibler geworden und damit wieder benutzbar. Das Problem als solches stellte sich durch 80-90% iowait dar - so dass ich trotz Dualcores nicht mehr arbeiten konnte, weil der IO Scheduler das System schlicht und einfach komplett lahmgelegt hat. Ich hoffe das wird mal wieder besser *seufz*

Donnerstag, 4. März 2010

TU-Berlin: Sicherheitswettbewerb der AG-Rechnersicherheit

Die AG-Rechnersicherheit hat parallel zu ihrer Präsenz auf der CeBit einen Wettbewerb gestartet, an dem nun jeder per Internet teilnehmen kann um sein Wissen im Bereich der IT-Security zu testen... Dabei gibt es neben einfachen Fragen auch einige praktische Knobeleien zu lösen. Wer mitmachem möchte, sollte natürlich die Spielregeln lesen und das Anmeldeformular ausfüllen. Ansonsten sei jedem ein Besuch auf der CeBit am Stand B39 in Halle 9 ans Herz gelegt.