{"id":222,"date":"2019-04-14T21:53:11","date_gmt":"2019-04-14T19:53:11","guid":{"rendered":"https:\/\/www.idioten-notschlachten.de\/blog\/?p=222"},"modified":"2019-04-14T22:04:20","modified_gmt":"2019-04-14T20:04:20","slug":"spass-mit-server-upgrades-heute-debian-stretch-vs-manitu","status":"publish","type":"post","link":"https:\/\/www.idioten-notschlachten.de\/blog\/2019\/04\/14\/spass-mit-server-upgrades-heute-debian-stretch-vs-manitu\/","title":{"rendered":"Spa\u00df mit Server-Upgrades: heute Debian Stretch vs. manitu"},"content":{"rendered":"<p>Zwei Dinge sind passiert:<\/p>\n<ol>\n<li>Es gab ein paar Jahre kein Update mehr in dem Blog.<\/li>\n<li>Es gab schon l\u00e4nger kein gr\u00f6\u00dferes System-Update mehr auf unserem Server.<\/li>\n<\/ol>\n<p>Da musste unweigerlich was passieren.<\/p>\n<p><!--more--><\/p>\n<p>Zun\u00e4chst die gute Nachricht: inzwischen sind Debian-Updates im Regelfall recht pflegeleicht geworden.<\/p>\n<p>Ein Server-Update von Debian Wheezy auf Debian Jessie l\u00e4uft weitestgehend sang und klanglos innerhalb von 20 Minuten durch (trotz Umstellung auf systemd als Init-System!).<\/p>\n<p>Heiter wird es dann allerdings, wenn der Kernel im Rahmen des Umstiegs auf Debian Stretch auf eine 4er Version aktualisiert wird und wir den finalen Server-Reboot wagen und es passiert: nichts.<\/p>\n<p>Jetzt gibt es ja mehrere M\u00f6glichkeiten, woran das liegen k\u00f6nnte:<\/p>\n<ol>\n<li>Die Maschine macht nach einigen Jahren uptime ihren wohlverdienten Plattencheck und m\u00f6chte die n\u00e4chsten Stunden \/ Tage nicht gest\u00f6rt werden.<\/li>\n<li>Beim Bootloader Update ist was schiefgegangen und das Ding bootet gar nicht mehr.<\/li>\n<li>Die Kiste ist sehr wohl gebootet, hat nur bei der Netzwerkeinrichtung Probleme.<\/li>\n<\/ol>\n<p>Jetzt w\u00fcrde man die F\u00e4lle ja gerne unterscheiden k\u00f6nnen. K\u00f6nnte man auch, wenn der Provider eine serielle Konsole anbieten w\u00fcrde &#8211; was er nicht tut, trotz <a href=\"https:\/\/www.hostblogger.de\/blog\/archives\/3200-Kleine-Umfage-zu-serieller-Konsole-fuer-Rootserver-2.html\">allgemeinem Wunsch und eigenem Bekunden<\/a> das doch sinnvollerweise zu tun \ud83d\ude41<\/p>\n<p>Nach einem beherzten Reboot die Erkenntnis:<\/p>\n<p>Die Netzwerkkarte bekommt keine korrekte MAC-Adresse und wird daher auch unter neuem Device-Namen gef\u00fchrt:<\/p>\n<pre>Apr 13 13:26:28 manitu kernel: [ 1.413929] r8169 0000:03:00.0 (unregistered n\r\net_device): rtl_chipcmd_cond == 1 (loop: 100, delay: 100).\r\nApr 13 13:26:28 manitu kernel: [ 1.413996] r8169 0000:03:00.0: irq 44 for MSI\r\n\/MSI-X\r\nApr 13 13:26:28 manitu kernel: [ 1.414177] r8169 0000:03:00.0 eth0: RTL8168b\/8111b at 0xffffc90001b38000, ff:ff:ff:ff:ff:ff, XID 9cf0f8ff IRQ 44\r\nApr 13 13:26:28 manitu kernel: [ 1.414180] r8169 0000:03:00.0 eth0: jumbo features [frames: 4080 bytes, tx checksumming: ko]<\/pre>\n<p>Nach einigen Experimenten stellt sich raus: nicht nur die MAC-Adresse ist futsch, die die Onboard-Netzwerkkarte funktioniert so gar nicht.<\/p>\n<p>Tausend und ein Reboot sp\u00e4ter: es handelt sich um ein Problem in Linux Version 4.0.0 bis einschlie\u00dflich 4.9, weil irgendein Trottel bei Gigabyte nicht in der Lage war korrekte ACPI-Tabellen im BIOS zu hinterlegen und neuere Kernel-Versionen (gr\u00f6\u00dfer &gt;= 4) anf\u00e4lliger wurden. (Siehe \u00e4hnliches aber nicht gleiches Problem <a href=\"https:\/\/www.spinics.net\/lists\/linux-pci\/msg39706.html\">hier<\/a>)<\/p>\n<p>Fix dann zumindest in der Backports-Kernel Version 4.18, da ist das Problem gel\u00f6st.<\/p>\n<p>Bis dahin allerdings eine heitere Reboot-Orgie mit Rettungssystem und regelm\u00e4\u00dfigen Plattenchecks (wenn die Partition clean war, hat der Boot gar nicht geklappt, fsck als Boot-Detector, weil, genau: keine serielle Konsole \ud83d\ude41 ).<\/p>\n<p>Und zus\u00e4tzliche Freude:<\/p>\n<p>Nachdem dann das Hauptsystem uns wieder mochte (zumindest so halbwegs): n\u00e4chste Clown-Nummer: die DNS-Optionen in \/etc\/network\/interfaces sind inzwischen nicht nur obsolet, sondern verhindern zuverl\u00e4ssig die Konfiguration der Schnittstelle.<\/p>\n<p>Selbst wenn man das irgendwann einsieht (hatte ich schon erw\u00e4hnt wie beschissen Fehlerlogs lesen mit systemd eigentlich ist?) kommt die n\u00e4chste Heiterkeit:<\/p>\n<p>Die Container-Infrastruktur bootet nicht mehr.<\/p>\n<p>Weil: naja, irgendein Clown in Linux 4.18 (Debian Stretch Backports-Kernel) nicht r\u00fcckw\u00e4rtskompatible \u00c4nderungen an der Namespace-Infrastruktur gemacht hat, die sich auf alle LXC-Versionen auswirken, die richtig: \u00e4lter sind als die bei Debian Stretch mitgelieferte Version 2.X&#8230;<\/p>\n<p>Es gibt ja noch Kernel aus der 3er-Serie, die sich gut mit Debian Stretch verstehen :-\/ &#8230;<\/p>\n<p>Jetzt gab es dabei auch die ein oder andere WordPress Aktualisierung (so wie dieses Blog z.B. \ud83d\ude42 ).<\/p>\n<p>Dabei kann man auch viel Freude haben, selbst wenn man brav die Distributionspakete verwendet, um zumindest halbwegs mit Sicherheitsaktualisierungen rechtzeitig begl\u00fcckt zu werden.<\/p>\n<p>Zwei wichtige Erkenntnisse:<\/p>\n<ol>\n<li>Eine fehlerhafte SSL-Konfiguration hinter einem Reverse-Proxy lassen alte Versionen noch klaglos \u00fcber sich ergehen, das aktuelle WordPress empfindet es als kompletten Afront und begr\u00fc\u00dft angemeldete Benutzer mit einer nichtssagenden &#8220;Sorry, you are not allowed to access this page&#8221;. Jetzt bin ich nicht der einzige, der diese Fehlermeldung schonmal gesehen hat. Eine fehlerhafte SSL-Konfiguration steht jetzt aber nicht unbedingt auf den einschl\u00e4gigen Seiten zu der Fehlermeldung, was da denn so schiefgegangen sein k\u00f6nnte&#8230; F\u00fcr alle, die auch WordPress hinter nginx betreiben. <a href=\"https:\/\/www.variantweb.net\/blog\/wordpress-behind-an-nginx-ssl-reverse-proxy\/\">Es gibt ja L\u00f6sungen f\u00fcr das Problem, wenn man wei\u00df, wonach man suchen muss.<\/a><\/li>\n<li>Ein Apache-Upgrade ver\u00e4ndert durchaus auch mal, wie Verzeichnisrechte zu konfigurieren sind&#8230; Well, das ist dann doch mehr der allt\u00e4gliche Wahnsinn und schnell gel\u00f6st.<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>Zwei Dinge sind passiert: Es gab ein paar Jahre kein Update mehr in dem Blog. Es gab schon l\u00e4nger kein gr\u00f6\u00dferes System-Update mehr auf unserem Server. Da musste unweigerlich was passieren.<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/www.idioten-notschlachten.de\/blog\/wp-json\/wp\/v2\/posts\/222"}],"collection":[{"href":"https:\/\/www.idioten-notschlachten.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.idioten-notschlachten.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.idioten-notschlachten.de\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.idioten-notschlachten.de\/blog\/wp-json\/wp\/v2\/comments?post=222"}],"version-history":[{"count":5,"href":"https:\/\/www.idioten-notschlachten.de\/blog\/wp-json\/wp\/v2\/posts\/222\/revisions"}],"predecessor-version":[{"id":227,"href":"https:\/\/www.idioten-notschlachten.de\/blog\/wp-json\/wp\/v2\/posts\/222\/revisions\/227"}],"wp:attachment":[{"href":"https:\/\/www.idioten-notschlachten.de\/blog\/wp-json\/wp\/v2\/media?parent=222"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.idioten-notschlachten.de\/blog\/wp-json\/wp\/v2\/categories?post=222"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.idioten-notschlachten.de\/blog\/wp-json\/wp\/v2\/tags?post=222"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}