Auf Nachfrage ein kleines Mini-HowTo:
Ein paar Bilder, wie man Shortcuts mit Firefox einrichtet gibt's unter http://velt.de/gallery/v/Diverses/Screenshots/Firefox_Shortcuts/[
Eine ausfuehrliche Beschreibung folgt noch... hust ;)
Auf Nachfrage ein kleines Mini-HowTo:
Ein paar Bilder, wie man Shortcuts mit Firefox einrichtet gibt's unter http://velt.de/gallery/v/Diverses/Screenshots/Firefox_Shortcuts/[
Eine ausfuehrliche Beschreibung folgt noch... hust ;)
Nachdem mir kurz hintereinander mein Firefox dreimal abgeschmiert ist, hatte ich die Nase voll. Warum auch immer ich es vergessen hatte, man kann ja mit einem wunderbaren AddOn Flash erstmal blocken und dann nur auf Anforderung starten. Hybsche Sache das!
Ach? Link auch noch? Na bitte, hier entlang: Flashblock auf addons.mozilla.org
Hab ich irgendwas verpasst?
sv@babe:~> telnet mx-ha01.web.de 25
Trying 217.72.192.149...
Connected to mx-ha01.web.de.
Escape character is '^]'.
EHLO sinnvoller.domain-name.de
220 mx19.web.de ESMTP WEB.DE V4.108#208 Mon, 05 Nov 2007 17:09:12 +0100
250-mx19.web.de Hello sinnvoller.domain-name.de [XXX.XXX.XXX.XX]
250-SIZE 70254592
250-PIPELINING
250 HELP
MAIL From: <sinnvolle@mail-adresse.de>
250 <sinnvolle@mail-adresse.de> is syntactically correct
RCPT To: <unbekannter_empfaenger@web.de>
250 <unbekannter_empfaenger@web.de> verified
DATA
550 Protocol violation
Connection closed by foreign host.
Es liegt scheinbar an dem Underscore im "RCPT To:". Aber warum sollte das eine "Protocol violation" sein? Und warum gibt man dann "verified" zurück und weist nicht gleich den Empfänger zurück? Fragen über Fragen...
Zuerst die Merkregel:
Vertraue bei Zertifikaten niemals auf das Copy&Paste; deines Systems, lade/kopiere wenn möglich die Datei direkt herunter/hinauf!
Und wie kommt man drauf? Hier mal eben die IMHO drei wichtigsten Kommandos:
Informationen des Zertifikats anzeigen:
openssl x509 -noout -text -in **CERTIFICATE_FILE**
Modulus des Private Keys anzeigen:
openssl rsa -noout -modulus -in **RSA_KEY_FILE**
Modulus des Certificates anzeigen:
openssl x509 -noout -modulus -in **CERTIFICATE_FILE**
Die Modulus' müssen hier übereinstimmen.
Ich hab mich schon immer wieder in den letzten Wochen gewundert, warum mein DSL-Anschluss zu Hause manchmal so langsam ist. Irgendwann bin ich mal drauf gekommen, dass Pakete verloren gehen, aber wo.
Heute morgen war das Phänomen das so schlimm, dass nur noch jede 5. DNS-Anfrage beantwortet wurde und SSH nach Außen bzw. WWW gingen praktisch gar nicht mehr oder nur tröpfchenweise langsam. Also versuchte ich dem Problem auf die Schliche zu kommen.
1. Auffälligkeit:
Am DSL-Modem von Sphairon gibt es eine "Ethernet"-LED. Diese ist normalweise an und blinkt bei Traffic auf dem Ethernet-Interface. Doch beim Nachguggen stellte ich fest, dass sie zeitweise für ein paar Sekunden ausgeht. Huch? Naja, das Modem hängt direkt am Server, der dann PPPoE macht. Also auf den Server:
2. Die Suche
dustpuppy:~# tail -f /var/log/syslog
Jul 21 11:04:09 dustpuppy kernel: e100: eth1: e100_watchdog: link up, 100Mbps, full-duplex
Jul 21 11:04:19 dustpuppy kernel: e100: eth1: e100_watchdog: link down
Jul 21 11:04:21 dustpuppy kernel: e100: eth1: e100_watchdog: link up, 100Mbps, full-duplex
Jul 21 11:04:39 dustpuppy kernel: e100: eth1: e100_watchdog: link down
Jul 21 11:04:41 dustpuppy kernel: e100: eth1: e100_watchdog: link up, 100Mbps, full-duplex
Jul 21 11:04:51 dustpuppy kernel: e100: eth1: e100_watchdog: link down
Jul 21 11:04:55 dustpuppy kernel: e100: eth1: e100_watchdog: link up, 100Mbps, full-duplex
Jul 21 11:05:03 dustpuppy kernel: e100: eth1: e100_watchdog: link down
Jul 21 11:05:07 dustpuppy kernel: e100: eth1: e100_watchdog: link up, 100Mbps, full-duplex
Hupsi! Wie man sieht verliert der Server alle 5-20 Sekunden den Ethernet-Link zum Modem, dann ist für 1-10 Sekunden Ruhe, der Link kommt wieder hoch und die Geschichte geht von neuem los.
3. Fehleranalyse
Es gibt ja mal potentiell 3 verschiedene Fehlerquellen:
Die Netzwerkkarte im Server
Das Netzwerkkabel
Die Netzwerkkarte im DSL-Modem
Da das Netzwerkkabel am einfachsten zu tauschen war, hab ich damit angefangen. Keine Veränderung, der Link brach immernoch weg.
Dann hab ich einfach mal zwei Laptops mit beiden Kabeln (natürlich nacheinander ;-) an das DSL-Modem geklemmt. Und siehe da, der Fehler war immernoch da. Also liegt's definitiv am DSL-Modem. Uff, schonmal nicht die interne Netzwerkkarte des Servers.
4. NEFkom-Support
Auf der NEFkom-Seite (die nach ca. 5 Minuten aufgebaut war...) hab ich die Support-Nummer für Nürnberg rausgesucht und dabei festgestellt, dass in Nürnberg leider nur Support von Montag-Freitag drinsteht. Naja, anrufen kostet ja fast nix, dachte ich mir und siehe da, läßt man es nur lange genug klingeln, geht jemand aus München ran :-)
Kurz und gut: Bekanntes Problem, das Modem macht wirklich gerne Probleme, neues wird zugeschickt, aber ich bekomme noch einen...
5. Der Workaround
Das Netzwerk-Interface des Rechners auf 10MBit, Full-Duplex fest einstellen. Also, ran und testen:
In meinem Fall geht's mit mii-tool
, wo anders muss man evtl. mit ethtool
ran:
dustpuppy:~# mii-tool -F 10baseT-FD eth1
dustpuppy:~# mii-tool -v eth1
eth1: 10 Mbit, full duplex, link ok
product info: vendor 00:aa:00, model 51 rev 0
basic mode: 10 Mbit, full duplex
basic status: link ok
capabilities: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
advertising: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control
Und das soll's gewesen sein?
Na, schauen wir doch einfach nach:
dustpuppy:~# tail -f /var/log/syslog
Jul 21 11:35:24 dustpuppy kernel: e100: eth1: e100_watchdog: link up, 100Mbps, full-duplex
Jul 21 11:35:40 dustpuppy kernel: e100: eth1: e100_watchdog: link down
Jul 21 11:35:42 dustpuppy kernel: e100: eth1: e100_watchdog: link up, 10Mbps, full-duplex
Jul 21 11:37:01 dustpuppy syslog-ng[3051]: STATS: dropped 0
Sieht gut aus :-) Gut, im Moment hab ich damit nur 10MBit statt 16MBit, bis zum Eintrudeln des nächsten Modems werde ich das allerdings verkraften :]
PS: Sehr lustig auch der Kommentar des Hotline-Menschen: "Sie kennen sich ja scheinbar aus, setzen Sie doch einfach mal das Interface auf 10MBit, Full-Duplex, dann sollte es erstmal wieder gehen" ;-)
`
Trying AAA.BBB.CCC.DDD...
Connected to mail.server.net.
Escape character is '^]'.
220 mail.server.net ESMTP
MAIL From: xxx@yyyyyyyyy.net
502 Polite people say HELO first
`
gnihihi
Nachdem ich ja schon heftigst in den Vorbereitungen für das neue Arbeitszimmer bin, gibt's hier 'ne kleine Liste mit Hardware, die ich abgebe - oder im Zweifelsfall zumindest teilweise verschrotten werde, wenn sie keiner will:
P1 im Desktop-Gehäuse
Tastatur mit DIN-Anschluss
2 sehr klapprige Tastaturen mit PS2-Anschluss
SCSI Slot-IN-CD-Rom 32 fach (im P1 noch eingebaut)
SCSI 4fach CD-Brenner DEFEKT (im P1 noch eingebaut)
Motorolla PowerPC "PowerStack"
NEC MultiSync 4FGe
Sparc Station 5 110MHz mit 96MB RAM und 2x540MB HD
Sparc Station LX 50MHz mit 40MB RAM und 400MB HD
Sparc Classic 50MHz mit 32MB RAM und 400MB HD
SUN 9GB HD SCSI extern
Dekfekt? Ein USB2.0 3,5"-HD-Gehäuse. Hab's mit keiner HD zum Laufen überreden können
ELSA MicroLinks ISDN USB Conect - tut NICHT unter Linux
Und dann gibt's auch noch Dinge, die sind allerdings zu neu zum Verschenken:
Interesse? Einfach Mail an mich!
Es war ja jetzt doch eine ganze Zeit still hier, aber ich gelobe Besserung!
Fangen wir mal beim 23C3 zwischen Weihnachten und Silvester an. Das erste mal für mich auf "der" deutschen Hacker-Veranstaltung. Mein persönlicher Eindruck: Es wird da viel zu viel Hype drum gemacht. Ja, die Vorträge waren gut und es waren auch wirklich fähige Leute da, aber das außenrum? schauder Wer zum Dauerkiffen (man konnte im Hackcenter manchmal nicht ohne tränende Augen durchgehen) extra zum Congress fahren muss, der hat IMHO die Welt nicht verstanden. Irgendwie fand ich das alles nicht so dolle, vielleicht auch, weil auf der Fahrt nach Berlin mein Auto kurzfristig den Geist aufgegeben hat und ich mit einem Mietwagen fahren durfte.
Mein Fazit: Für die Vorträge ja, für's Rumhängen, Chillen, Hacken nur noch, wenn eine Gruppe von min. 10 Personen zusammenkommt, damit man sich eine "Ecke" irgendwo reservieren kann.
Wie scheiße können eigentlich 2 Wochen laufen?
Mail-Server: Wahrscheinlich Netzteil im Sack, auf jeden Fall geht die Kiste regelmäßig einfach aus
Ein Server: 2 von 4 Platten verabschieden sich innerhalb von 2 Wochen
WRT54: Bricht beim Flashen mit drin ab, warum weiß kein Mensch
Ich warte auf die nächste kaputte Hardware...
... man muss sich um sie kümmern, sie füttern und wenn man sie vernachlässigt, sterben sie.
Der Spruch kommt grad frisch aus einem Meeting ;-)
Nachdem mir - mal wieder - der Firefox komplett abgestürzt ist und ich die Schnauze von diversen weiteren Problemen mit ihm voll hatte, hab ich nun mal eben alles rausgeschmissen und neugebaut.
Ergebnis gibt's hier in der Gallery
Neben dem ist natürlich auch noch mehr passiert:
Mein MorphOS auf dem Pegasos I hat nun endlich IP! Juche! ;-)
Ubuntu 6.06.1 LTS PowerPC läßt sich leider nicht zum Booten, geschweige denn Installieren auf dem Pegasos I überreden. Ich kann doch auch nix dafür, dass ich noch 'nen I'er hab und keinen II'er :-(
DD-WRT auf einem Siemens SE505 v2 macht sich wunderbar als WLAN-Client mit LAN-Bridging. Dagegen kann ich ehrlich nicht verstehen, was alle an OpenWRT so dolle finden, zumindest für den Standardnutzer, bei dem's "einfach nur funktionieren" soll. Ach ja, OpenWRT ist jetzt auch auf meinem Linksys WRT54GL, ich weiß aber nicht, ob ich dass nicht auch noch gegen DD-WRT tausche ;-)
Faxen mit OpenOffice.org ist ja mal einfach... Danke Christian für den Tipp! Einfach /usr/lib/openoffice/program/spadmin
als root
aufrufen und dann den Screenshots in der OOo_Fax-Gallerie folgen. Achja, doch ein kleiner Haken: Hylfax sollte schon installiert sein :-)
Meine H4x0r-M3-Tastatur (aka "schnurlos ;-) funktioniert wieder. PEBKAC, sach ich nur...
Entgegen der Meinung unter Linuxprinting.org für den Canon i560 sieht der Druck recht bis sehr gut aus. Allerdings hab ich ihn bisher nicht gegen einen Windows-Druck verglichen, ist ja eh nicht meine Baustelle ;-)
Die neue Manowar-EP "The Sons Of Odin hört sich vielversprechend an! Mehr! Mehr! MEHR!
Und schließlich sieht mein Arbeitszimmer etwas aufgeräumter aus
Update: Und was fällt mir direkt nach dem Abspeichern des Eintrags auf? Die "MozEx"-Extension für Firefox fehlt noch... grummel nachinstalliert ;-)
Zum wunderbaren Kommentar bzgl. meines letzten Blog-Eintrags - eigentlich erst als Kommentar gedacht, aber aufgrund der Länge und der IMHO interessanten Beispiel jetzt doch als eigenständiger Eintrag:
Danke für den Auszug des SQLite-Manuals. Aber ich bleib dabei, das ist "unvorteilhaft" und nicht das, was man erwarten kann.
Was für einen Vorteil hat es für mich als User/Programmierer von SQLite, wenn die DB nichtmal den Typen überprüft? Das ich nochmals alles nachprogrammieren darf? Juche! Beispiel gefällig?
sqlite> create table foo ( a datetime );
sqlite> insert into foo values ('2008-09-04');
sqlite> insert into foo values ('04.09.2008');
sqlite> select * from foo order by a;
04.09.2008
2008-09-04
Nein, sorry, das kann man mir nicht mehr als Feature verkaufen. Und ganz so typeless ist sie ja auch nicht... Beispiel?
sqlite> create table int1 ( feld integer );
sqlite> create table int2 ( feld varchar(10) );
sqlite> insert into int1 values ('104');
sqlite> insert into int1 values ('10');
sqlite> insert into int1 values ('4');
sqlite> insert into int2 values (104);
sqlite> insert into int2 values (10);
sqlite> insert into int2 values (4);
sqlite> select * from int1 order by feld;
4
10
104
sqlite> select * from int2 order by feld;
10
104
4
Hier wird also doch das Typenfeld der Definition bzgl. der Suche interpretiert.
Aber halt! Man kann ja den Typen auch weglassen! Was passiert dann?
sqlite> create table int3 ( feld );
sqlite> create table int4 ( feld );
sqlite> insert into int3 values ('104');
sqlite> insert into int3 values ('10');
sqlite> insert into int3 values ('4');
sqlite> insert into int4 values (104);
sqlite> insert into int4 values (10);
sqlite> insert into int4 values (4);
sqlite> select * from int3 order by feld;
10
104
4
sqlite> select * from int4 order by feld;
10
104
4
Der geneigte Bastler entnimmt, das SQLite offensichtlich alles als String behandelt, außer es könnte, unter Umständen, vielleicht, irgendwo, bei Westwind, zunehmenden Mond oder sonstigen nicht durchsehbaren Zuständen doch irgendwo eine Typendefinition finden.
Mein Schluss: Zum Entwickeln auf dem Laptop ja. Produktiv? Never! :-(
Ich mag MySQL und ich mag SQLite, jedes hat für gewissen Anwendungsgebiete seine Vorteile. Nein, kommt mir nicht mit Postgres, ich bin kein Datenbankler und schreibe allerhöchstens datenverarbeitende Programme, keine Datenbankprogramme ;-)
Das schöne an SQLite ist einfach die Tatsache, dass man z.B. auf'm Laptop keinen DB-Server (oder wie auch immer ihr den mysqld bezeichnen wollt ;-) laufen lassen muss. Einfach ein Flat File, direkt drauf und SQL-Querys absetzen. Zum Spielen und Testen definitv ziemlich smart.
Aber das hier stößt mir dann doch auf:
svelt@babe:~> sqlite3 new.db
SQLite version 3.3.7
Enter ".help" for instructions
sqlite> create table date_test ( datum datetime );
sqlite> insert into date_test values ('2006-08-31 9:0:0');
sqlite> insert into date_test values ('2006-08-31 11:0:0');
sqlite> insert into date_test values ('2006-08-31 11:00:00');
sqlite> insert into date_test values ('2006-08-31 09:0:00');
sqlite> insert into date_test values ('2006-08-31 09:00:00');
sqlite> select * from date_test order by datum;
2006-08-31 09:00:00
2006-08-31 09:0:00
2006-08-31 11:00:00
2006-08-31 11:0:0
2006-08-31 9:0:0
Welcher Idiot unterscheidet bitte "9:0:0 Uhr" von "09:00:00 Uhr"? Natürlich ging ich erstmal davon aus, dass mein Programm was flasch macht, aber nein, SQLite war's. Scheiße! Und nein, ich hab bisher nicht nachgesehen, ob das dokumentiert ist. Selbst wenn es das wäre, ist es ein Bug und kein Feature. Myll!
Ach ja, das macht nebenbei MySQL draus (CREATE & INSERTS per copy&paste; an MySQL):
mysql> select * from date_test order by datum;
+---------------------+
| datum |
+---------------------+
| 2006-08-31 09:00:00 |
| 2006-08-31 09:00:00 |
| 2006-08-31 09:00:00 |
| 2006-08-31 11:00:00 |
| 2006-08-31 11:00:00 |
+---------------------+
So sollte das auch aussehen. Seufz Doch wieder full blown MySQL-Server auf den Laptop? Hmmm... :-/
Bereits am Freitag kam die Rücksendung in's Büro, ich war ja in Holland und konnte somit die Sendung nicht in Empfang nehmen.
Also, heute morgen gleich mal ausgepackt, Akku ist leider leer, deswegen konnte ich es bisher nicht gegenprüfen, ABER:
Nach dem beigeleten Reparaturzettel wurde aufgrund von "Problem: Assembly Quality Feedback" folgendes veranlasst: "Repair Result: repair with new components/parts" und "Replaced Parts: L5DF MAIN_BD".
Das find ich mal echt coolen Service! Nachdem ich auf der Garantiekarte noch entdeckt hatte, dass ich doch 3 Jahre Garantie auf den Notebook habe (LCD 2 Jahre, Akku 1 Jahr), obwohl mir an der Hotline was anderes gesagt wurde - ebenso steht's auch auf der Web-Seite falsch - , wurde mir nach über 2 Jahren wegen eines Qualitätsproblems das Motherboard getauscht. Wow! Das gibt mal 'nen ganz fetten Pluspunkt für ASUS!
Angeblich haben die neuen Motherboards (Tobi hat den selben und bei ihn wurde es auch schon getauscht) einen anderen Netzwerk-Chip drauf, sprich, ich sollte es heute abend ganz schnell merken, wenn ich kein Netz mehr habe ;-)
Update wird folgen...
So, nun ist also auch das Wochenende in Holla^Wden Niederlanden vorbei. Vom Wetter her hatten wir etwas mehr Glück, am Samstag nieselte IIRC nur einmal ganz kurz, am Sonntag dann zum Abbau gar nicht mehr. Das war mal sehr angenehm, weil man sich nicht beeilen musste ;-)
Ansonsten wurde ich nochmal richtig produktiv, hab noch die WebCam in Betrieb genommen (hat jemand die Bilder gespeichert? Bitte Mail an mich, THX!), hab diverse Dinge mit dem Pool-Notebook meiner Firma ausprobiert, mit dem Handy gespielt und auch noch ein wenig gecodet.
Was bleibt? Der Eindruck, dass es doch viel mehr Urlaub war, als z.B. das LUG-Camp, da dort immer alles auf nichtmal vier Tage komprimiert ist. Leider war's im Ganzen nicht so produktiv, wie ich mir das gewünscht hätte, aber nagut, dafür war das Wetter einfach zu regnerisch und ungemütlich.
Ob ich wiederkomme? Gerne! Wenn's vom Termin hinhaut und ich da nicht zufälligerweise schon in Urlaub bin.
Hey you guys (and gals!) at Megabit: You did a great job, I'll come back! Thanks for a cool week in the Netherlands!