RT @jonoberheide: rm -rf ~/.cache; ln -s /etc/shadow ~/.cache; ssh localhost (trigger pam_motd by re-logging in and you'll own /etc/shadow)2 months ago
Neu im Blog: Spam mal anders: via Twitter oder Facebook auf SPON und anderen Newsseiten spammen http://bit.ly/ae2RMC2 months ago
Es soll ja Leute geben, die löschen spontan /dev/null oder überschreiben es mit tollen Befehlen wie mv bla /dev/null. Mir ist das kürzlich witzigerweise auch passiert, da ich derzeit die LPIC-Zertifizierungen mache und daher viel am rumtesten bin. Da kann man schonmal die Shell der "echten" Box mit einer VM verwechseln. Wenigstens hat man die Lacher bei solchen Aktionen auf seiner Seite..
Normalerweise ist das kein Problem, so lange man es bemerkt. Wenn nicht, kann schnell mal die Festplatte vollaufen, schließlich schicken diverse Programme, Cronjobs usw. ihren Output nach /dev/null. Wie legen wir das nun also wieder neu an? Ein man null erklärt's:
mknod -m 666 /dev/null c 1 3
chown root:root /dev/null
Funktioniert einwandfrei und lässt uns vor lauter Freude gleich ein echo JUHUUUUU > /dev/null rufen
Mit /dev/zero funktioniert dies übrigens auch, siehe Manpage.
Bei einem meiner "Heavy Load"-Projekte nutze ich seit langer Zeit Pound als Loadbalancer und SSL-Proxy. In letzter Zeit sah ich allerdings immer mehr große Sites zu Nginx switchen, u.A. solche Größen wie wordpress.com. Das machte mich natürlich neugierig, so dass ich die Tage Nginx testweise auf einem der Loadbalancer aufsetzte, konfigurierte und testete.
Zuerst einmal muss man sagen, dass Nginx deutlich besser dokumentiert ist als Pound. Ich brauchte eigentlich keine weiteren Infos als das Wiki - für einen Pound-User nahezu ein Traum. Dort beschränkt sich die Doku eigentlich nur auf das Archiv der Mailingliste. Das kann u.U. sehr mühsam sein. Aufgrund der guten Doku war die Installation von Nginx aus den Sourcen (ich habe mich für die "stable" Version entschieden) sowie die anschließende Konfiguration kein Problem. Auch die Nutzung als SSL-Proxy lässt sich ähnlich wie in Pound konfigurieren, d.h. dass Nginx die SSL-Anfragen annimmt und als normale HTTP-Anfragen an die Backends weiterleitet. Der User bemerkt davon natürlich nichts und befindet sich permanent auf einer "normalen" SSL-Seite.
Ansonsten war die Umstellung eigentlich sehr einfach. Zu beachten ist bei Nginx, ebenso wie bei Pound, die Erhöhung des ulimit via Initscript, um Meldungen wie "too many open files" zu umgehen. So konnte Pound nun beendet und Nginx gestartet werden. Da als Server ein Quad-Opteron zum Einsatz kommt, habe ich Nginx mit 4 "Worker Processes" konfiguriert, um alle Cores optimal zu nutzen.
Das Ergebnis kann sich sehen lassen:
Wie man sieht, ist die CPU-Last massiv gesunken. Um mehr als die 2/3 mindestens, und dass obwohl zum Testzeitpunkt ziemlich viel los war auf dem Loadbalancer (~600-800 requests/sek). Die Load auf dem Server ist dauerhaft unter 0.1. Einfach genial, wenn man das mit der recht hohen CPU-Last und einer Load von 0.5-0.8 von Pound vorher vergleicht.
Für das Monitoring habe ich auch direkt ein paar nette Cacti-Templates gefunden, die prima funktionieren. Abschließend kann ich mich eigentlich nur fragen, warum ich nicht gleich Nginx genommen habe? Pound lief zwar jahrelang stabil und zuverlässig, die deutliche höhere Last und die schlechte Dokumentation von Pound sprechen aber eindeutig für den Einsatz von Nginx als Loadbalancer auf Sites mit hoher Last.
Nachdem mir Vista Business durch massive Arbeitsverweigerung und gähnende Langsamkeit auf diesem Mini-Vaio (im Grunde ein Netbook, nur teurer *g*) massiv auf die Nerven ging, habe ich kurzerhand Vista durch Ubuntu 9.04 ersetzt.
Die Installation ging, wie von Ubuntu gewohnt, einfach und schnell. Als Dateisystem habe ich hier erstmals das neue ext4-Filesystem gewählt. Allerdings konnte ich beim normalen Einsatz keine merklichen Unterschiede feststellen, große Datei- oder Ordnerstrukturen habe ich natürlich nicht. Natürlich (man muss als Linux-Fan sagen: leider) funktionierte folgende Hardware nicht auf Anhieb nach der Installation: das eingebaute Globetrotter UMTS/HSDPA-Modem, das eingebaute Mikrofon und die Motion-Eye Webcam. Die Cardreader habe ich noch nicht getestet, würde mich allerdings nicht wundern, wenn die auch nicht gingen.
Glücklicherweise wurde immerhin der Draft-N WLAN-Chip erkannt, so dass ich Updates und weitere Pakete via WLAN nachinstallieren konnte. So bekam ich nach einiger Foren-Lektüre die Webcam mit einem Treiber aus irgendeinem SVN zum laufen. Nach weiterer Lektüre fand ich dann heraus, dass man via in /sys/devices/platforms/sony-laptop/ befindlicher Files jeweils mit den Werten 0 oder 1 das WLAN, WWAN (UMTS), DVDRW, Bluetooth usw. steuern kann. Das UMTS-Modem aktiviert man dann also via echo 1 > sys/devices/platforms/sony-laptop/wwanpower. Funktioniert, aber wie bitte soll man denn z.B. als Anfänger darauf kommen? Hier hätte ich mir eine Auto-Detection bzw. Einstellungen dazu im Ubuntu-Kontrollzentrum gewünscht.
Nachdem jetzt die WWAN-Lampe bei mir brennt, konnte die Verbindung ins Netz hergestellt werden. Leider taugte der Gnome-Network-Manager trotz angeblichem UMTS-Support dazu nicht, da er schlicht immer das falsche Modem-Device verwendete (korrekt wäre /dev/ttyUSB0, er versuchte es immer mit /dev/ttyUSB1). In Ermangelung eigener Einstellungs-Möglichkeiten testete ich es dann mit wvdial (funktionierende Config für T-Mobile gibts hier). Das klappte auch problemlos, allerdings fehlte mir hier ganz klar die Anzeige der Empfangsstärke bzw. des Service (GPRS/EDGE/UMTS/HSDPA), der am Standort anliegt. Außerdem hätte ich eine weitere Lösung finden müssen, um den verbrauchten Traffic zu monitoren.
Dazu fand ich nach einer Weile das ultimative UMTS-Tool für Linux, nämlich umtsmon. Das Binary funktioniere auch auf anhieb unter Ubuntu und erkannte sogar das Modem (ein Neustart war allerdings nötig, da wvdial das Modem nicht korrekt freigab). Anbei mal ein Screenshot, denn das Tool lässt quasi keine Wünsche offen. Daran kann sich T-Mobile mit seinem lächerlichen "web'n'walk Manager für Windows" mal ein Beispiel nehmen. Man kann verschiedene Profile verwalten (Für TMO lautet der APN dann "internet.t-mobile"), SMS versenden und sogar eine Warnschwelle für das Kontingent festlegen. Einziger Wermutstropfen ist, dass ich das Programm nur als root zum laufen bekomme. Als normaler User startet startet es zwar, kann dann aber keine PPP-Verbindung aufbauen. Damit kann ich aber leben.
Wenn ich jetzt noch das eingebaute Mikrofon zur Arbeit bewegen kann, könnte ich sogar mit Video von unterwegs aus skypen. Schon toll, über was für Selbstverständlichkeiten man sich als Linux-User doch voller Erwartung freuen kann. Aber dieses "Gefrickel" macht natürlich auch Spaß - mir zumindest. Und für die tägliche Arbeit mit der Bash und einem Browser ist die Ubuntu-Lösung deutlich angenehmer und schneller zu bedienen als das träge Vista Business. Vom gefühlt 5 mal so schnellen Bootvorgang ganz zu schweigen.
Mein kleines Tool um Debian Systeme automatisiert upzudaten, UPDIAN, wird ja bereits von einigen Leuten erfolgreich eingesetzt. Ich benutze es natürlich auch noch nahezu täglich. Da es kürzlich das Update auf Debian Lenny gab, habe ich mich kurzerhand dazu entschlossen, UPDIAN zu erweitern.
So verfügt es nun über Multi-SSH. Damit ist es möglich, ein beliebiges Shell-Commando auf allen eingetragenen Servern auszuführen. Im Beispiel des Distributions-Upgrades war das apt-get dist-upgrade. Die Ausgabe der einzelnen Server wird wie gewohnt geloggt.
Für alle Pidgin-User unter Debian oder Ubuntu war heute früh erstmal Stress angesagt, Pidgin funzt nämlich nicht mehr. ICQ hat wohl mal wieder die User von Fremdsoftware ausgesperrt, was ja schon öfter der Fall war. Leider stellen weder Debian noch Ubuntu bisher Pakete für die aktuelle Version 2.5.5 bereit, immerhin gibts aber schon einen Bugreport auf pidgin.im.
Wer nicht von Hand compilen will, findet auf getdeb.org fertige Ubuntu-Pakete (zuerst den Rest, dann erst das Pidgin-Paket installieren). Sicherheitshalber habe ich die Pakete auch hier nochmal in einem Archiv zusammengefasst, erfahrungsgemäß hielt zumindest pidgin.im dem Ansturm bei den letzten dieser Änderungen seitens ICQ nicht stand
Manchmal ist es nötig, diverse Files in einem Arbeitsgang umzubenennen. So war dies vorhin zum Beispiel nötig, um mehrere hundert Digicam-Bilder mit der Endung .JPG in .jpg umzubenennen, da ein Joomla-Gallery-Plugin nur Bilder mit *.jpg erkennt. Klar hätte man auch das Plugin bearbeiten können, umbenennen erschien hier aber die einfachere Lösung zu sein. Anstatt mühsam ein Bash-Script mit einer Schleife zu schreiben, kann man auch einfach das nette Programm mmv (Multiple Move) benutzen (zu haben als Debian- und Ubuntu-Paket via apt).
So ist es mit dem simplen Befehl
mmv -v '*.JPG' '#1.jpg'
ganz einfach möglich, sämtliche Bilder umzubenennen. Da reguläre Ausdrücke unterstützt werden, ist man mit mmv sehr flexibel, in unserem Fall bleibt durch den Platzhalter #1 auch der Dateiname vor der Endung erhalten.
Ein ganz anderes Problem sind die ständigen Scans und Bruteforce-Angriffe auf offene SSH-Server (Port 22). Zwar sollte man generell SSH von außen (zumindest als root) verbieten oder zumindest den sshd auf einem Port >1024 lauschen lassen, dies ist aber nicht in jedem Fall möglich. Abhilfe schafft hier DenyHosts, da es nach einer definierbaren Anzahl von fehlerhaften Logins die IP des potentiellen Angreifers in die Datei /etc/hosts.deny einträgt, woraufhin das System Netzwerkverkehr von dieser IP aus nicht mehr annimmt. Nach einer ebenfalls konfigurierbaren Zeitspanne werden die IP's dann auch automatisch wieder entfernt.
Aktuell umfasst auf dem entsprechenden System hier die Anzahl der Einträge stolze ~800 IP's mit steigender Tendenz - und zwar seit heute 0 Uhr! Dabei wird eine IP nach 3 fehlerhaften Logins gesperrt. Da sich auch Mailreports verschicken lassen, stach mir dadurch direkt der folgende Eintrag ins Auge:
Added the following hosts to /etc/hosts.deny:
174.129.96.xxx (ec2-174-129-96-xxx.compute-1.amazonaws.com)
Da wird doch nicht etwa eine gemiete Computing-CloudFront von Amazon's Webservices versucht haben, sich hier via SSH Zugang zu verschaffen? Aber klar, es handelt sich dort auch nur um *nix-Systeme, die von irgendwelchen Admins gemietet und gewartet werden, soviel ich weiss. Somit kann es gut sein, dass eine Reihe davon mit Rootkits versehen ist oder zumindest nicht mehr komplette unter der Kontrolle des eigentliches Admins steht ...
Jeder, der mehrere Linux-Server unter seiner Verwaltung hat, kennt sicher das Problem namens Logfiles. Sie fallen zu Dutzenden an und müssen in regelmäßigen Abständen kontrolliert werden. Denn ohne diese stetigen Sichtungen blieben die meisten Bugs, Sicherheitslöcher und andere Hard- und Softwareprobleme mit Sicherheit unentdeckt. Während natürlich bei 1-2 Servern locker von Hand die gängigen Logfiles unter /var/log durchgesehen werden können, stellt dies bei beispielsweise 50 Servern ein echtes Problem dar. Denn kein Admin hat Zeit und Lust, hier täglich die Logfiles zu checken und nach Problemen zu schauen.
Aber natürlich gibt es dafür Abhilfe. So steht unter Linux beispielsweise syslog-ng bereit, womit man die Logfiles ohne viel Aufwand auf einen zentralen Loghost lenken kann. Das ist schonmal die halbe Miete, allerdings entsteht hier schnell das Problem mangelnder Übersichtlichkeit. Schließlich kommen bei ein paar dutzend Servern schnell mehrere zehntausend (!) Log-Einträge pro Tag zusammen. Die hat man dann zwar zentral auf einem Server liegen, kann aber anhand der Masse dennoch keine einzelnen Einträge sinnvoll filtern. Glücklicherweise kann man syslog-ng aber recht einfach dazu bringen, die ankommenden Log-Zeilen in eine Datenbank zu schreiben - hier kommt MySql zum Einsatz, andere DB-Server sollten aber ebenso funktionieren.
Um die Datensätze aus der DB übersichtlich via Web darzustellen, waren hier testweise diverse Webinterfaces für syslog-ng im Einsatz. So richtig überzeugen konnte allerdings Keines davon. Teils waren sie zu langsam, teils zu unübersichtlich. Deshalb haben wir uns entschlossen, ein eigenes Interface in PHP zu schreiben, welches die Daten aus der MySql-DB ausliest. Darin ist es problemlos möglich, nach einzelnen Hosts, bestimmten Events (Alert's z.B.), Programmen (Postfix, Apache etc.) oder Zeiträumen zu filtern. Auf dem Screenshot ist beispielsweise zu sehen, was das PHP-Plugin "Suhosin" an sicherheitsrelevanten Ereignissen auf mehreren Webservern abgefangen hat. Nett ist auch die Livelog-Funktion, die via AJAX immer die neusten Logs auf den Schirm bringt. Quasi ein tail -f auf alle Logfiles via Web ...
Und weil die Anwendung recht hilfreich ist, stellen wir sie natürlich der Allgemeinheit gern zur Verfügung. Eine detaillierte Anleitung meines Kollegen Ronny Tiebel zur Installation samt Downloads findet sich wie gewohnt drüben im AdminWiki. Fragen und Probleme können hier gern aufgegriffen werden.
Server, vor Allem unter Linux, laufen ja bekanntlich recht stabil und lange - auch ohne Reboot. Generell wird ein Reboot im Normalfall ja nur nach einem Kernelupdate nötig. Ich habe allerdings einen Debian-Etch Server laufen, der inzwischen eine beachtliche Uptime zu bieten hat. Da kann man locker von 100% Verfügbarkeit im ganzen letzten Jahr sprechen:
Gegen die Erstplatzierten des "Tugs Uptime Projects" habe ich damit noch keine Chance, gleich gar nicht gegen die ewige #1 mit 2 Jahren und 4 Monaten. Aber wer weiss, noch ist auch auf dem Server hier kein Reboot in Sicht. Das ursprüngliche Uptime-Projekt unter uptime-project.net ist ja leider vor knapp einem Jahr eingestellt worden.
In den dortigen Top10 ist sogar ein Win2000-Server mit SP4 vertreten, ja sogar ein XP ist mit über einem Jahr Uptime im Rennen. Da möchte ich lieber nicht wissen, für wieviele Angriffe der momentan offen steht. Vermutlich hängt er aber, wie mein Uptime-Mitstreiter, im internen Netz und ist von außen nicht erreichbar. Alles Andere wäre in gewisser Weise schon fahrlässig.
In der Topliste ist mir auch die große Anzahl von Debian-Systemen sofort aufgefallen. Das liegt wohl an den langen Release-Zyklen und natürlich auch an der Stabilität. Mein System beispielsweise ist nahezu auf dem neuesten Etch-Releasestand, nur ein einziges Kernelupdate fehlt. So läuft aktuell noch Kernel 2.6.18-5-amd64, unter /boot wartet aber schon die Version 2.6.18-6-amd64 auf ihren Einsatz. Da es aber keinen wirklichene Grund dafür gibt, lasse ich das System natürlich erstmal laufen. Zumindest bis zum nächsten Hardware- oder Stromausfall. Vielleicht schaff ichs damit mal in die Top3 beim Uptime-Contest ...
Eurem Einkauf kann ich übrigens folgende Hardware für Langzeiteinsätze empfehlen:
Chainbro Barebone Gehäuse mit Tyan Thunder Mainboard, Dualcore-Opteron's 2216 HE, WD Raptor SATA Platten samt 3Ware-8000-PCIx RAID-Controller
Achja, selbst mein Ubuntu-Desktop hier hat auch schon eine beachtliche Uptime zu bieten - der wird aber spätestens beim nächsten Release in 04/09 neu gestartet:
Wenn man auf mehrere Server exakt die gleichen Befehle absetzen will, kann das schnell nervig werden. Dies kann aber z.B. bei Updates, Paket-Installationen oder Config-Änderungen auf identischen Servern recht oft nötig sein. Sofern man nicht Zeit und Lust hat, verschiedene Terminals zu öffnen, um dort die Befehle einzeln abzusetzen (oder sonstwelche Tools zur Verteilung im Einsatz hat), kann man auch zu ClusterSSH greifen.
Damit ist es einfach und komfortabel möglich, an beliebig viele Hosts via SSH die gleichen Befehle abzusetzen. Das spart in manchen Fällen doch einige Arbeit. Ich habe mit recordmydesktop mal eine solche Session aufgenommen. Da leider sämtliche meiner Versuche scheiterten, das Video bei YouTube oder Vimeo im HD-Format hochzuladen (in den heruntergerechneten Formaten erkennt man leider überhaupt nichts), hier ganz klassisch mal der Downloadlink zu dem 7,6MByte großen .ogv-File (OGG-Video-Container, 1680 x 1040): cluster-ssh.ogv
Ubuntu ist nah dran am perfekten Linux oder auch Betriebssystem ansich. Aber auch hier gibts ein paar Sachen, die immer mal wieder nerven und womöglich recht einfach zu fixen wären. So habe ich, seitdem die 8.10 auf verschiedenen Rechnern bei mir läuft, immer wieder Probleme mit nautilus. Der GNOME-Dateimanager verschlingt in unregelmäßigen Abständen jede Menge CPU-Zeit und bremst das System merklich aus (siehe htop-Screenshot).
Da hilft dann nur ein beherztes "kill prozess_id" auf der Konsole, woraufhin sich nautilus in den meisten Fällen neu startet. In seltenen Fällen half sogar nur ein kompletter X-Neustart. Das Problem tritt auf mehreren Rechnern mit unterschiedlicher Hardware auf und ist daher wohl schlichtweg ein Bug. Da sich der Spaß nicht wirklich reproduzieren lässt, macht das eine Lösung schwer. Ich vermute einen Zusammenhang zwischen SMB-Verbindungen und dem Problem, da es öfter beim Durchsuchen von SMB-Freigaben auftritt.
Ein weiteres Ärgernis sind Probleme mit dem Synaptic-Touchpad meines Dell-Latitude. In unregelmäßigen Abständen zwingt mich ein Fehler in "psmouse.c" zu einem Reboot, da das Touchpad danach komplett tot ist. Via demsg erscheint dann der folgende Fehler:
psmouse.c: GlidePoint at isa0060/serio1/input0 lost sync at byte 3
Auch hier scheint bislang keine Lösung verfügbar zu sein. Gängige Foren und Bugreports schieben das Problem auf den Powersaving-Daemon, der dynamisch die Taktrate der CPU-Core's anpasst. Bewiesen oder gelöst ist das aber offenbar noch nicht. Bis dies der Fall ist, bleibt in der Tat nur der Wechsel auf eine Text-Shell (via STRG + ALT + F-Taste 1 bis 6) samt dortigem Reboot. Ärgerlich und nervig. Wenigstens kann man seine geöffneten Programme vorher noch mit der Tastatur schließen und eventuelle Änderungen speichern.
Apropos "Foren". Bei der Suche nach Lösungen erheiterte mich das offizielle Ubuntu-Forum ubuntuforums.org immer wieder mit Proxy-Fehlern. Das Forum wird offenbar für den Lesezugriff komplett auf Proxy's zwischengespeichert, um die Server nicht mit unnötigen PHP- und Datenbankberechnungen zu quälen. Keine schlechte Idee, wenns denn funktioniert.
Also liebe Windows-User, ihr seid nicht die Einzigen mit fehlerhaften Betriebssystemen und Problemen bei der täglichen Benutzung. Dennoch halte ich Linux natürlich die Treue, denn Ubuntu ist sowohl für den Arbeitslaptop als auch für den Büro-Desktop bei mir die erste Wahl. Und wenn diese sowie einige andere Fehler noch behoben würden, kämen wir der Perfektion wieder ein Stück näher ...
So, genug gejammert für den heutigen Tag. Allerdings wäre ich gespannt, ob der eine oder andere Leser ebenfalls "Ubuntu-Gejammer" beisteuern kann ...
Da freut man sich über das Ubuntu-Update auf Firefox 3.0.5 und installiert es natürlich sofort, nur um sich dann zu ärgern. Nach dem benötigten Browser-Neustart direkt die Ernüchterung: keine Fensterrahmen sind mehr zu sehen. Das heisst, ich kann das Fenster nicht minimieren, schließen oder sonstwas. Mit der Tastatur funktioniert es glücklicherweise noch (STRG+W). Komischweise scheint nur Firefox betroffen zu sein, die restlichen Anwendungen starten problemlos mit Fensterrahmen.
Da ich auf die Schnelle im Netz keine Lösung für das Problem gefunden habe, bleibt nur die Deaktivierung vom Compiz unter "Erscheinungsbild" in den Einstellungen. Dazu stellt man einfach auf "Normal", was sämtliche optischen Animationen deaktiviert. Witzigerweise funktioniert es, wenn man erst Firefox mit den normalen Einstellungen startet und anschließend wieder die Effekte aktiviert. Nach einem erneuten Firefox-Neustart besteht das Problem allerdings weiterhin. Da bleibt also doch vorerst nur der Dauerbetrieb meines Laptops hier oder halt doch lieber der Verzicht auf die netten Effekte.
Falls Jemand eine Lösung hat, bitte Bescheid geben. Ich werde jetzt auch nochmal googlen ...
PS:
Ein Kollege berichtete eben, dass bei ihm das Problem nur im Zusammenhang mit Flash auftritt. Soll heissen, dass bei ihm der Rahmen z.B. beim Besuch von YouTube verschwindet. Das ist wenigstens etwas besser als bei mir, aber trotzdem unschön. Ein Flash-Update für Linux steht derzeit leider auch nicht zur Verfügung.
Hin und wieder schleichen sich nicht nur in Programmen, sondern auch in der Hardware Fehler ein, die es zu erkennen gilt. Linux reagiert in solchen Fällen meist mit einer Kernel-Meldung (zu sehen via dmesg) wie beispielsweise dieser hier:
[1437691.115778] Machine check events logged
Das sagt leider nicht wirklich viel aus darüber, was da nun eigentlich los ist bzw. los war. Sofern der Server noch stabil läuft, gibt es nicht gleich Grund zur Panik! Mit dem Tool mcelog kann man sich dann allerdings die gespeicherte Fehlermeldung ausgeben lassen.
Das sieht dann z.B. so aus:
MCE 0
HARDWARE ERROR. This is NOT a software problem!
Please contact your hardware vendor
CPU 0 1 instruction cache TSC b2404f941ca12
memory/cache error 'evict mem transaction, instruction transaction, level 1'
STATUS 9000000000000171 MCGSTATUS 0
Hier sehen wir immerhin, dass es sich um ein Hardwareproblem handelt, in diesem Falle hatte offenbar der Speicher ein Problem. Da das Problem aber hier nur einmal auftrat und seitdem nie wieder, bin ich noch nicht tätig geworden. Sollten derartige Fehler allerdings periodisch oder gehäuft auftreten, sollte man die Hardware austauschen bzw. auf Fehler prüfen, z.B. mit memtest.
Es ist allerdings natürlich sehr mühsam, auf dutzenden Servern permanent dmesg oder mcelog von Hand auszuführen. Aus diesem Grund hat mein Kollege ein kleines Script geschrieben, welches uns die Arbeit abnimmt. Als Cronjob laufend prüft es periodisch die Ausgabe von dmesg auf beliebig vielen Servern und meldet im Falle von neuen MCE's per Mail die Ereignisse. Dies ist überaus nützlich, zumal normalerweise jede MCE nur einmal aufrufbar ist. Nachdem mcelog einmal ausgeführt wurde, ist der Puffer nämlich sonst wieder leer.
Das Tool samt einer ausführlichen Anleitung gibts drüben im Adminwiki - Rückfragen können gern auch hier gestellt werden ...
Ich habe heute eine Upload-Funktion mit PHP gebaut, da fiel mir auf, dass Firefox 3.0.4 seltsamerweise ab und zu PDF's mit dem MIME-Typ "text/html" versieht. Dies ist natürlich nicht korrekt, denn PDF's sollten den Typ "application/pdf" besitzen. Leider kann ich nicht sagen, wann genau dies geschieht bzw. warum. An einem bestimmten PDF liegt's nicht, ich habe es mit unterschiedlichen Daten versuch
Im Opera unter Ubuntu sowie Firefox 3.0.4 und IE unter Windows funktioniert das gleiche Script problemlos, d.h. der MIME-Typ wird dort korrekt dargestellt. Um einen Fehler im Distributions-Firefox von Ubuntu auszuschließen, habe ich nochmal den Firefox direkt von mozilla.com versucht - das selbe Problem, allerdings auch nur zeitweise und nicht direkt reproduzierbar.
Derzeit scheint mozilla.com bzw. https://bugzilla.mozilla.org/ nicht erreichbar zu sein (wenn man's schonmal braucht ...). Sobald die Seiten wieder da sind, werde ich dieses Problem reporten. Das Uploadscript muss ich derweil wohl oder übel anpassen, so dass es von Linux-Clients auch Files vom Typ "text/html" annimmt. Sonst macht zumindest die MIME-Prüfung beim Upload keinen richtigen Sinn mehr ...
Das lokale System bzw. das Test-PDF scheinen auch in Ordnung zu sein:
rob@robtop:~$ cat /etc/mime.types | grep pdf
application/pdf pdf
rob@robtop:~$ file test.pdf
test.pdf: PDF document, version 1.4
Was ist denn bei MySql/Sun eigentlich los? Erst wird hastig die GA (Generally Available) von Version 5.1 (aka 5.1.30-RC) released, also die Version für den produktiven Einsatz, dann meckert Monty auch noch öffentlich über die falsche Release-Politik und die Arbeitsbedingungen bei Sun rum.
Ich muss zugeben, ich war selbst auch verwundert über plötzliche Veröffentlichung der 5.1.30 als GA, schließlich sind noch rund 20 offene Bugs im Bugtracker zu finden. Dennoch läuft die 5.1 seit Version 5.1.22-RC bei mir im Produktiveinsatz, und das inzwischen (mit der 5.1.29-RC) auch recht stabil. Anfangs gabs zwar 1-2 Bugs, die mir negativ auffielen, die sind aber inzwischen allesamt behoben. Sowohl im Single-Betrieb mit mysqld und MyISAM-Tabellen als auch im Cluster-Betrieb (ndb_mgm und ndbd) kann ich keine echten Probleme mehr feststellen - auch unter starker Last nicht.
Insofern scheint mir die Kritik etwas überzogen zu sein - obwohl Monty wahrscheinlich weiss, was er schreibt. Er steckt schließlich ganz gut in der Materie drin. Er fordert wieder mehr Macht und Antrieb von der Community, z.B. durch freie Forks wie Drizzle. Ich muss sagen, die Idee hinter Drizzle gefällt mir auch sehr gut. Man wird sehen, was sich daraus entwickelt.
Im Oktober hatte erst MySql-Mitbegründer David Axmark gekündigt, da er sich in einem Großunternehmen wir Sun nicht mehr wohl fühlte. Ich kann es ihm nachfühlen ...
Eben las ich die für mich als Linuxfan freudige Nachricht, dass nach dem iPod (ipodlinux.org) auch das iPhone mit Linux läuft. Zwar läuft es nur sehr puristisch, d.h. keine Treiber für WLAN, den Touchscreen, Bluethooth usw. - aber es läuft immerhin, wie man auf dem Video sehen kann. Und dank Bootloader kann man jederzeit wieder auch die normale Apple-Firmware booten, ohne vorher technischen Aufwand betreiben zu müssen.
Generell ist es ziemlich cool, Linux auf alle möglichen technischen Plattformen zu portieren. Natürlich stellt sich die Frage nach dem Sinn, benutzbar wird wohl in diesem Fall auch nie richtig werden. Dazu ist die ursprüngliche Oberfläche einfach zu schön und ausgereift. Aber interessant ist es auf jeden Fall
In der Vergangenheit waren ja die Linux-Implementierungen auch manchmal deutlich besser als das Original. Man denke da nur an XBMC, das MediaCenter für die alte XBOX damals. Absolut traumhaftes Programm, welches ich samt XBOX heute noch im Einsatz habe Ohne XBMC wäre die alte Konsole wahrscheinlich schon längst im Keller gelandet.
Die iPhone-Variante scheint sich sogar recht einfach installieren zu lassen (Anleitung), allerdings werden wohl wichtige Teile des NOR-Speichers überschrieben, um den Boatloader zu installieren. Das vorher erstellte Backup sollte man daher unbedingt sicher verwahren. Mir ist das ehrlichgesagt zu heiss, da ich auch kein Gerät übrig habe derzeit. Es kommt übrigens Ubuntu 8.10 zum Einsatz, natürlich in ARM-Architektur entsprechend der ARM-CPU im iPhone.
Bin sehr gespannt, was da noch auf uns zukommt, Linux rocks on ...
Kommentare