Nachhaltig geht anders

Zwar ziemlich reißerisch aufgemacht, aber nicht wirklich falsch, thematisiert dieser Beitrag auf Golem die Tatsache, dass auslaufende Updates für Windows 10 ab 2025 zu extrem viel Elektroschrott führen, der vollkommen unnötig ist. Denn weder benötigen typische Anwender (einige IT-Profis, Gamer und die paar Leute, welche Videobearbeitung machen außen vor) neue Hardware noch die ganzen „Neuerungen“, die Windows 11 mit sich bringt. Insbesondere der Zwang zu bestimmter Hardware und Konfiguration als Grundvoraussetzung ist reine Wirtschaftspolitik von Microsoft. Kann man auch auf andere kommerzielle OS so übertragen, nur stehen in dem Artikel speziell Windows und Microsoft am Pranger. „Nachhaltig geht anders“ weiterlesen

Es dauert nicht lange

Gestern hatte ich genug und habe die Windows-10-Workstation zurücksetzen wollen. Unter Beibehaltung meiner Daten. Also den passenden Button ausgewählt und dann hat Windows Informationen gesammelt. Mit der Meldung, dass es nicht lange dauern würde. Ca 14 Stunden (über Nacht durchgelaufen) später habe ich abgebrochen, denn bis auf die Anzeige der Meldung gab es rein gar keine Aktion. Zwar ist der PC nebenher halbwegs gelaufen und ich hatte im Internet schon gelesen, dass das Zurücksetzen von Windows 10 teils 12 Stunden dauern könnte, aber ich hatte dann heute morgen doch die Hoffnung aufgegeben. Aber auch das Starten mit erweiterten Optionen ging nicht mehr. Also alles komplett ausgeschaltet, Rechner vom Strom genommen und neuer Versuch. „Es dauert nicht lange“ weiterlesen

Windows 11??

Es wäre falsch bzw. verlogen und manipulierend zu sagen, dass ich überhaupt nichts von dem neuen Windows 11 mitbekommen hätte. Ich zappe ja immer wieder durch PC Magazine im Web und da wohl wirklich interessante Themen im Moment fehlen, wird dort auch immer wieder die kommende Version von Windows thematisiert.

Wenn man an die gedruckte Version eines Magazins denkt, kann man es vielleicht so ausdrücken:

Besser wie ein leeres Blatt Papier!

Woraus zwingend gefolgert werden kann, dass ich nicht die Bohne an dem kommenden Windows 11 interessiert bin. Was ich bisher mitbekommen habe, gibt es rein gar nichts, was ich von den Neuerungen benötige. Nur ein neues Design, was mir am A… vorbeigeht, eine extrem gesteigerte Vernetzung mit noch mehr Datenspionage durch MS & Co sowie erheblich gestiegene Anforderungen an die Hardware.

Werde ich mich also Windows 11 verweigern? Das auch nicht, denn wenn ich mir irgendwann einen neuen PC zulege, wird der das neue OS wahrscheinlich als Basis haben. In dem Fall macht es wenig Sinn, auf einem alten OS zu bestehen. Höchstens ganz auf Windows zu verzichten und Linux zu nehmen, aber das kollidiert mit diversen Prozessen, die ich wegen meiner Arbeit halt mit Windows machen muss oder die zumindest damit bequemer gehen. Aber meine Rechner mit Windows 10 werde ich nicht umstellen und – wenn dann Windows 10 wirklich total veraltet ist – ggf. da nur noch Linux drauf betreiben.

Ich wage die Prognose, dass Windows 11 ein Flop wird. Braucht wohl kaum jemand, der schon Windows 10 hat. Aber es ist ja „gute“ Tradition bei Windows, dass die Versionen mit ungeraden Nummern entweder kompletter Schrott oder zumindest eben ein Flop sind.

Flottenzuwachs bei meiner Hardware

Sieht es nicht aus wie ein Microsoft Surface? Zumindest auf den ersten Blick?

Mein Rechner, den ich als permanenten PC in mein Büro in Eppstein verlagert hatte, macht langsam echte Zicken. Immer wieder versagt der Start. Der Akku des Motherboards scheint den Geist aufgegeben zu haben und auch sonst pfeift das Gerät auf dem letzten Loch. Die Hardware von heute taugt einfach nichts mehr. Nach gerade mal 15 Jahren solche Probleme ;-). Aber im Ernst – den Rechner habe ich nur noch im Dienst, weil ich darauf Windows XP habe und diese Windows-Version für Spellforce brauche. Aber da ersteigere ich mir auf ebay wohl eine Version, die auch unter Windows 10 dann laufen sollte. Und wenn ich mit der Kiste arbeiten will, wird Linux hochgefahren, aber wie gesagt – da muss ich ständig dem MBR rekonstruieren und vermutlich werden die Ratten demnächst die gesamte Hardware fressen. Das Teil werde ich wohl demnächst nur noch mit meinem Live-Linux vom USB-Stick zum Laufen bringen.

Bliebe noch mein halbherziger Apple-Versuch. Meinen Mac mini hatte ich bisher auch in Eppstein deponiert, aber ich komme mit Mac OS bzw. Apple einfach nicht zurecht. Für Musikmachen mit JamKazam ist der Mac mini genial, aber arbeiten kann ich damit einfach nicht. Und ich werde es nicht weiter versuchen, mich auf der Kiste zurechtzufinden. Das Ding trete ich an einen meiner Söhne ab – die sind sowieso schon iPad-verseucht.

Jetzt könnte ich mein Android-Tablet nach Eppstein verlagern, aber auch mein Tablet ist nicht mehr auf dem Stand der Zeit und hat mittlerweile ebenfalls ziemlich Gebrauchsspuren. Das Display ist etwaseit gut einem Jahr gerissen – auch wenn es sich noch bedienen lässt..Aber Tablets erscheinen mir sowieso als ziemlich überflüssige Gerätegattung. Sie können nichts wirklich besser als SmartPhones und alles schlechter als echte PCs. Und nur für ein bisschen im Bett in die Glotze zu schauen oder was zu lesen, brauche ich eigentlich kein Tablet.

Der perfekte Rechner ist im Grunde mein Matebook, Außer, dass die SSD etwas klein ist. Leicht, schmal, schnell, ausdauernd. Aber dennoch möchte ich auch das Ding nicht ständig zwischen meinen beiden Büros hin und her tragen. Vor allen Dingen nicht, wenn ich die 35 Kilometer durch Wald und Feld mit dem Rad fahre. Und es kommt auch vor, dass ich mal spontan in Eppstein vorbei schaue und da sollte dann ein voll synchronisierter Rechner stehen, mit dem ich ohne Einschränkungen arbeiten kann und Zugriff auf alle wichtigen Daten habe.

Was mich zu einem dauerhaften Windows-PC für da als einzige Option bringt. Aber die Möglichkeiten eines Tablets wollte ich dann doch haben und daher kam ich auf ein UBook oder wie das heisst. Also sowas wie eben ein Surface. Nur einmal sind dessen Preise abartig hoch und so oft brauche ich auf der anderen Seite das Ding dann doch nicht, dass es wirklich ein Power-Bolide werden musste.

Beim Prime Day von Amazon gab es nun für wirklich kleines Geld einen chinesischen Surface-Klon, den ich dann auch geschossen habe. Von einer Firma CHUWI, deren Name ich bisher noch nie gehört hatte. Vermutlich ist die aber – wenn man die chinesischen Dimensionen betrachtet – größer als alle Computerfirmen in Europa zusammen.

Egal – es ist ein absolutes Billiggerät und ich bin bewusst das Risiko eingegangen, dass ich Lehrgeld bezahlen muss, wenn das Teil Schrott ist. Nach dem klassischen Lehrsatz: „Wer billig kauft, kauft 2x“.

Aber der erste Eindruck ist gar nicht schlecht. Fühlt sich gar nicht billig an und die Ausstattung ist der Wahnsinn, wenn man den Preis betrachtet. Selbst Stift und Tastatur (leider nicht Deutsch) sind dabei. Leider nur Windows 10 in der Home-Edition, aber bei dem Preis kann man nicht mehr erwarten.

Die reinen Daten sind die:

CHUWI UBook Tablet mit Tastatur und H6 Stift, 11,6 Zoll IPS Touchscreen Windows 10 Tablet PC 2 in 1, Intel Gemini-Lake N4100 Quad-Cores, 8GB RAM 256GB SSD, BT5.0, Dual Band Wi-Fi, Type-C, USB3.0

Ich habe den Kleinen gerade mal gestartet und Windows soweit aktualisiert. Jetzt werde ich noch die nächsten Tage alle wichtigen Programme installieren, den überflüssigen Microsoft Schrott löschen (soweit möglich) und das Gerät so konfigurieren, dass ich damit arbeiten kann. Und ich muss natürlich ein bisschen genauer die Hardware ansehen und ein paar externe Geräte anschließen (das soll ganz gut gehen). Was ich aber schon direkt am Anfang bemerkt habe – der Tablet-Modus von Windows 10 ist ja grauenvoll. Ich hatte bisher noch nie diesen Modus gesehen und war einfach nur entsetzt. Ich werde das Teilchen wohl niemals in dem Modus betreiben – auch wenn ich es als Tablet einsetze.

Aber grundsätzlich scheint dieses kleine Ding für einen Apple-and-a-egg Ressourcen zu bieten, für die man bei anderen Herstellern locker das 5-Fache und auch noch mehr zahlen kann.

Vorteile und Graus der Virtualisierung – Docker & Co

Cordova

Da ich für das kommende Sommersemester an der Technischen Hochschule Bingen wieder einen Lehrauftrag zum Thema Cordova und plattformneutrale App-Entwicklung angenommen und gerade Zeit für die Vorbereitung habe, habe ich die letzten Tage in den aktuellen Stand von Cordova reingeschaut und meine alten Projekte und Matrialien zusammengetragen. Ich hatte dieses Thema eine ganze Weile schleifen lassen, da Python, Big Data, Web-Programmierung, Cobol, C# & „Was auch sonst immer“ die Arbeit in eine andere Richtung gelenkt hatten.

Die meisten Dinge, die ich die vergangenen Jahre zusammengestellt und programmiert habe, sind jedoch noch weitgehend auf Stand. Allerdings haben sich auch durchaus Sachen geändert. Daher bedarf die neue Vorlesung einiger Vorbereitung und eine Anpassung.

Zudem habe ich auch ganz einfach Lust, meine ganzen Apps zu aktualisieren. Parallel will ich aus einigen Apps  Python-Programme machen. Ohne konkrete Ziele, aber vielleicht kommen mir dabei ein paar neue Ideen und ich lerne natürlich was dazu – auch wenn das im Grunde aktuell ein reines Programmieren aufgrund von Zeit und Lust darstellt.

Anyway – bei Cordova gibt es ein paar Sachen, die mich schon stutzig gemacht und zu einigen Arbeiten im Hintergrund sowie grundsätzlichen Überlegungen genötigt haben. Das reine Installieren der neuen Version von Cordova mit npm geht wie gehabt und das Erstellen von Cordova-Projekten in dem Cordova-CLI auch. Ebenso das Hinzufügen der verschiedenen Plattformen und das Ausführen in dem Browser-Emulator ist unverändert. Die eigentlichen Quellcodes auf Basis von JavaScript & Co sowieso.

Aber wenn man etwa beim konkreten Kompilieren Android als Plattform für die Cordova-Apps haben will, wird das JDK 8 vorausgesetzt. Im Moment ist aber schon das JDK 15 aktuell und damit funktioniert es nicht. Zumindest bekomme ich es im Moment nicht hin, mit der derzeit aktuellen Java-Version Android-Apps zu erstellen. Ehrlich gesagt ist mir nicht einmal klar, ob das an Android (da soll ja Java auch sukzessive abgelöst werden) oder Cordova liegt. Wie angedeutet, habe ich die App-Entwicklung eine Weile aus den Augen verloren.

Und dann hatte ich das Android Studio bzw. das Android SDK als auch Xcode komplett von meinen Rechnern gelöscht, da ich eben das Entwickeln für Android und iOS die letzte Zeit nicht gebraucht hatte. Zumal ich mich sowieso auch dabei auf das Visual Studio committed hatte. Dabei kann man ja wunderbar auch Android- bzw. iOS-Apps erstellen.

Aber um die verschiedenen Möglichkeiten im Vorfeld der Vorlesung mal wieder auszutesten, werde ich auf meinem Mac vermutlich Xcode neu installieren (wenn ich die Sache mit meiner Apple-ID geklärt habe – die habe ich auslaufen lassen) und das Android Studio habe ich mittlerweile wieder neu installiert.

Aber irgendwie hat es bei meinem ersten naiven Versuch nicht funktioniert, damit Cordova-Projekte zu öffnen – oder besser –  zum Laufen zu bringen. Irgendwie mag ich das Android Studio aber auch nicht wirklich. Ich sollte der Sache zwar auf den Grund gehen, aber ich werde ja sowieso Visual Studio nehmen.

Wobei es da auch ein seltsames Problem gibt. In Visual Studio 2019 ist die Erweiterung für Cordova nicht mehr dabei und damit kann man weder Cordova-Projekte anlegen noch vorhandene Cordova-Projekte öffnen. Also musste ich die schon gelöschte Version 2017 von Visual Studio mit der Cordova-Erweiterung wieder auf meine Rechner aufspielen. Damit geht aber alles wunderbar und ich habe mittlerweile diverse Cordova-Apps erstellt, aus Visual Studio in verschiedenen Emulatoren sowie per USB-Debugging sogar direkt auf mehreren Geräten ausgeführt. Auch die Installation auf ein paar Testgeräten funktioniert problemlos. Seltsam sind die Begleiterscheinungen jedoch schon und ich bin nicht sicher, ob Cordova noch lange auf dem Markt bleibt. Was Cordova aber nicht als gute Basis für die kommende Vorlesung diskreditiert, um grundsätzlich die Erstellung von plattformneutralen Apps auf Basis von Webtechnologien zu lernen. Denn im Umfeld von Xamarin sind die gleichen Bedingungen/Probleme vorzufinden. Die Frage ist also wohl eher, ob Apps auf Basis von Webtechnologien sich auf Dauer etablieren oder nicht?

Wie dem auch sei – ich habe eigentlich keine Lust, das alte JDK 8 auf meine Rechner zu installieren und auch nicht die ganzen Emulatoren und SDKs von Android Studio auf Teufel komm raus zu konfigurieren. Entweder es geht „out-of-the-box“ wie bei Visual Studio 2017 oder die Sache kann mir im Grunde gestohlen bleiben. Es geht mir um die eigentlich Programmierung innerhalb des Cordova-Wrappers mit JavaScript und HTML/CSS und nicht um das Geraffel rundherum. Das hat mich schon immer an der App-Programmierung genervt.

Und da kam ich auf die Idee, eine andere Sache mal wieder aufzugreifen, die ich vor einigen Monaten angefangen, dann aber wegen anderer Dinge – wie so oft – beiseite gelegt habe: Docker.

Warum nicht einfach ein gut konfiguriertes Docker-Image für Cordova laden und dann ohne das ganze Installieren und Konfigurieren die Apps bauen? Das war meine Idee. Sollte doch einfach sein.

Und wie immer, wenn etwas auf den ersten Blick so einfach und logisch aussieht, steckt der Teufel im Detail. Genau genommen sind es in dem Fall sogar gleich mehrere Teufel gewesen.

Denn obwohl ich mich schon mit Docker beschäftigt und auch schon Images bzw. Container zum Laufen gebracht hatte, habe ich das Zeug zwischenzeitlich wieder von meinen Rechner gelöscht gehabt. Also musste ich Docker erst einmal „schnell“ installieren. Was (natürlich) wieder gar nicht schnell war und letztendlich sogar auf meinen Windows-Rechnern gescheitert ist. Weder unter Windows 10 Pro noch unter Windows 10 Home ist Docker bei mir richtig gelaufen. Natürlich kam ich bei den Problemen mit Windows 10 Pro sofort auf Hyper-V und diesen ganzen Virtualisierungs-Kram im Hintergrund von Windows, denn damit habe ich schon seit Jahren Ärger im Zusammenspiel mit VirtualBox und dem VMWare Player. Und auch wenn der VMWare Player ab der Version 16 wohl mit dem Hyper-V-Geraffel kann und auch Docker in Windows 10 Pro irgendwas mit Hyper-V macht und ich die Anleitungen für die ganzen Einstellungen umgesetzt habe, hat das Zeug irgendwelche Probleme mit den Rechten. Dazu kommt – bei Windows 10 Home gibt es ja kein Hyper-V und da muss man dann andere Sachen konfigurieren bzw. installieren. Alles doch ein elendes Gefuddel, was ich ja ausdrücklich vermeiden wollte und ich habe nach diversen Versuchen die Lust verloren.

Also auf meinen Linux-Rechner gewechselt, auf dem Docker erwartungsgemäß problemlos läuft. Zwischenzeitlich war ich auch in Eppstein und habe Docker mal auf meinem iMac getestet – auch keine Probleme. Also Docker sollte doch ein lohnenswerter Ansatz sein.

Aber dann bin ich auf das nächste blöde Problem gestoßen, erst einmal ein geeignetes Cordova-Image für Docker zu finden. Auf Git gibt es da was, aber der Git-Zugriff scheitert durch Rechteprobleme. Das Image scheint entweder gesperrt oder verschoben worden zu sein. Dann habe ich noch eine Anleitung gefunden, wie ich mir selbst ein Cordova-Image erstellen kann, aber das ist ja das Gegenteil von dem, was ich eigentlich wollte – keine Arbeit mit der blöden Konfiguration. Letztendlich habe ich nur ein Docker-Image gefunden, dass (angeblich) mit einem einfache Pull vom Docker Hub zu installieren wäre. Also so (vermutlich als root notwendig):

sudo docker pull beevelop/cordova:latest

Das Starten des Image soll dann einfach so funktionieren:

sudo docker run -it beevelop/cordova bash

Unter Windows habe ich wie gesagt Docker nicht stabil zum Laufen gebracht und das Image wurde angeblich nicht gefunden. Beim iMac muss ich es noch probieren, aber auf meinem Linux-Rechner ging der Pull einwandfrei. Bis 98% durch waren. Dann kam reproduzierbar immer wieder der Abbruch.

Mittlerweile war es Krieg – die Technik gegen mich. Oder umgekehrt. Und wenn etwas einfach nicht laufen will, werde ich zum Berserker. Auch wenn im Grunde alles Notwendige zur Vorlesung über Cordova mit Visual Studio bereit gestanden hat – ich lasse mich doch nicht von so einem Mist in die Knie zwingen.

Mein Mint Linux-Rechner ist noch in der Version 19 und das System wollte ich auch nicht verpfuschen. Von daher kam mir die Idee, meine Linux-VM (Mint Linux 20) unter Windows 10 zu verwenden. Nur konnte die plötzlich auf meiner Workstation mit VirtualBox nicht mehr gestartet werden und auch die Installation einer neuen Linux-VM ist gescheitert. Möglicherweise aufgrund der Hyper-V-Einstellungen und dem Kram, aber ich hatte einfach keinen Bock mehr auf das Gefummel. Also eine neue Version von VMWare-Player aufgespielt, dort eine Version von Mint-Linux 20 installiert und da ging dann der Pull des Docker-Images. Ohne Probleme. Wenn man „Von hinten durch das Auge“ wortwörtlich haben will, ist das diese Konstruktion – eine Virtualisierung in einer Virtualisierung.

Wer aber jetzt glaubt, die Sache wäre vorbei, täuscht sich. Denn in dem Cordova-Image war kein passendes JDK 8 dabei. Die Erstellung eines Cordova-Projekts ging damit problemlos, aber das geht ja auch in meiner normalen Cordova-CLI und damit bringt mich ein Docker-Image keinen Millimeter weiter.  Als ich eine Android-App kompilieren wollte, war war auch im Docker-Container Schicht im Schacht.

Aber es war mittlerweile schon lange persönlich und jetzt wollte ich es durchziehen. Also in dem Docker-Container das JDK 8 nachinstalliert. Das geht so:

apt-get update && apt-get install -y openjdk-8-jdk && apt-get install -y ant && apt-get install -y gradle && apt-get clean

Unter Umständen tut ein Update der Zertifikate noch gut (bei mir nicht notwendig gewesen):

apt-get update && apt-get install ca-certificates-java && apt-get clean && update-ca-certificates -f

Und letztendlich müssen u.U. die Umgebungsvariablen gesetzt werden (bei mir auch nicht mehr notwendig gewesen):

ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64/

oder

set JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64/

und dann:

export JAVA_HOME

Danach konnte ich endlich eine Android-App im Docker-Container kompilieren. Nur sind Docker-Systeme ja flüchtig und wenn der Docker-Container beendet wird, sind alle Änderungen samt der gespeicherten Daten weg. Also waren Snapshots des aktuellen Stands notwendig. Das geht aus einem zweiten Terminal heraus etwa so:

sudo docker commit -p 532a5b3584e8 container1

Dabei braucht man die ID oder den Namen des Docker-Containers.Bekommt man so:

sudo docker ps

Dann bekommt man was der Art angezeigt:

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
532a5b3584e8 container1 „bash“ 19 minutes ago Up 19 minutes eloquent_liskov

Und dann muss die kompilierte App ja auch noch raus aus dem Docker-Container oder man muss was reinkopieren. Also stellte sich die Frage, wie man aus einem zweiten Terminal aus dem Clientsystem auf den Host rauskopiert oder umgekehrt? Das geht formal so (wieder mit sudo):

docker cp <SRC> <DEST>

Also konkret was der Art (in den Container):

sudo docker cp /home/ralph/Schreibtisch/www eloquent_liskov:/tmp/HalloWelt
sudo docker cp /home/ralph/Schreibtisch/rjsedv.jks eloquent_liskov:/tmp/HalloWelt
sudo docker cp /home/ralph/Schreibtisch/build.json 532a5b3584e8:/tmp/HalloWelt

Aus dem Container auf den Host geht für die generierte Android-App etwa so:

sudo docker cp eloquent_liskov:/tmp/HalloWelt/platforms/android/app/build/outputs/apk/debug/app-debug.apk /home/ralph/Schreibtisch

Die späteren Neustarts der Snapshots zeigten, dass noch (weitgehend) alle Daten waren und jetzt schien alles ok.

Pustekuchen. Denn auf meinem Notebook mit Windows 10 Home konnte der VMWare-Player die virtuelle Maschine nicht starten, die ich auf der Workstation erstellt hatte. Und ist auch beim Neuinstallieren eines Linux-Systems gescheitert. Irgendwas mit der Anzeige ging schief. Warum auch immer.

Also habe ich auf dem Notebook VirtualBox genommen, denn das ist dann dort im Gegensatz zum VMWare Player auch mit Linux als Clientsystem sauber gelaufen. In der damit erzeugten VM für Mint-Linux 20 das ganze Zeug mit Docker nochmal gemacht und das hat dann auch funktioniert.

Letztendlich hat das „Mal schnell“ zu gut einem vollen Tag Arbeit geführt, aber ungelöste Probleme lassen mir keine Ruhe und ich habe dabei vor allen Dingen wieder eine Menge gelernt. Vielleicht kann ich das neue Wissen ja nochmal brauchen.

 

Update: Irgendwann habe ich dann festgestellt, dass das Docker-Cordova-Image die Cordova-Version 9 verwendet hat und mittlerweile die Version 10 aktuell ist. Was im Grunde nicht schlimm ist, aber so kann man das dann im Container noch aktualisieren:

npm i -g cordova to update

 

 

Windows 10 Update – es geschehen Zeichen und Wunder

Gerade ist mir aufgefallen, dass ich nicht mehr bei jedem Start eines MS-Office-Programms eine Fehlermeldung bekomme, sondern Word, Excel oder Access klaglos starten. Das war über ziemlich genau 1 komplettes Jahr nicht der Fall. Denn vor ziemlich genau einem Jahr war mir meine Workstation gecrashed. Ich hatte zu dem Zeitpunkt immer wieder Abstürze von Windows 10 und mein Antiviren-Programm hat mit ständigen Warnungen beim Kompilieren und vor allen Dingen permanenter Werbung genervt. Nur der Austausch des Antivirenprogramm war schiefgegangen und im gesamten Vorgang hat es die Workstation so zersemmelt, dass Programme weg und zig Einstellung zerschossen waren. Zwar keine Daten, aber obwohl ich eigentlich alles wiederherstellen konnte, ist die Workstation in der Folge immer schlechter gelaufen. Regelmäßig (so alle 2 Tage) hatte ich einen Blue Screen of Death und vor allen Dingen fand meine MS-Office-Installation angeblich den Produktschlüssel nicht, aber ich konnte ihn auch nicht eingeben oder Office überhaupt neu installieren. Dennoch ist Office nach dem jeweiligen Wegklicken der Meldung immer ohne weitere Probleme gelaufen. Mittlerweile ein ganzes Jahr.

Im Mai habe ich dann genug von der instabilen Workstation gehabt und den PC komplett zurück- und Windows frisch wieder aufgesetzt. Alles mit dem integrierten Standardtool in Windows 10. Seit der Zeit läuft die Kiste wieder sowohl performanter und vor allen Dingen stabiler. Nur die Fehlermeldungen beim Start von Office sind geblieben.

Und jetzt sind sie auf einmal weg. Nach dem letzten Windows-Update. Keine Ahnung, was da vorher nicht in den Griff zu bekommen war, aber so still und heimlich hat die letzte Update-Routine wohl den Fehler beseitigt.

Mint Linux 20

Mittlerweile bin ich hinsichtlich Betriebssystemen Multisprachler. Selbst einen iMac Mini habe ich gelegentlich im Einsatz (für Remotesessions mit JamKazam), obwohl ich an die Apple-Welt einfach nicht ran will und den eigentlich nur einige Jahre zur iOS-Programmierung mit XCode gebraucht habe. Natürlich muss ich mit Windows arbeiten und in der Version 10 fand ich das Betriebssystem bisher auch durchaus gut. Aber die aktuelle Update-Politik von Microsoft ist ärgerlich und zudem würde ich niemals sicherheitskritische Dinge wie Onlinebanking auf einem Windows-PC machen. Da geht für mich einfach nichts über Linux. Linux ist halt sicher, schnell, bequem, mächtig, ressourcenschonend.

Wobei ich zugeben muss, dass ich im Moment aber nur zwei Rechner unter Linux laufen lasse – die zudem mit Dualboot mit Windows. Und auch meine virtuellen Maschinen mit Linux nutze ich selten. Dennoch – alles in Allem ist und bleibt Linux mein Lieblingsbetriebssystem, wobei ich gar nicht so sicher bin, welche Distribution mein Favorit ist. Aber irgendwie bin ich bei Mint Linux hängen geblieben.

Jetzt habe ich gerade in einer Computerzeitschrift gelesen, dass die Version 20 von Mint Linux freigegeben wurde und dabei ist mir erst bewusst geworden, dass ich bei meinem Linux-Hauptrechner (meinem Terra-Notebook) auf der Version 18 (Sarah) stehen geblieben bin. Die habe ich zwar regelmäßig auf den neusten Stand gebracht, aber eben nicht upgeradet. Die Version 19 habe ich mir nur in einer VM angesehen und verpasst, diese dann in die Praxis zu übernehmen.

Jetzt musste ich den Preis zahlen, denn ein direktes Upgrade von 18 auf 20 geht nicht. Wenn man in Linux Zwischenversionen auslässt, ist das Upgrade leider etwas aufwändiger.

Erst einmal musste ich mit der Aktualisierungsverwaltung auf 18.3 upgraden und dabei zuerst den Displaymanager von MDM auf LightDM wechseln (sudo apt install lightdm lightdm-settings slick-greeter, dann sudo apt remove –purge mdm mint-mdm-themes* und dann sudo dpkg-reconfigure lightdm mit anschließendem Reboot), wobei vorher bereits mit sudo apt install timeshift Timeshift zu installieren und für Snapshots auszuführen war.

Erst danach konnte ich das eigentliche Upgrade durchführen, wobei erst auf die Version 19, dann auf 19.3 mit der Aktualisierungsverwaltung und dann (vermutlich – die genauen Upgrade-Anweisungen kommen erst im Juli raus) mit der gleichen Befehlsfolge auf die Version 20 aktualisiert werden kann:

sudo apt-get update

sudo apt-get upgrade

sudo apt-get install mintupgrade

mintupgrade check

mintupgrade download

mintupgrade upgrade

Wenn alle Rückfragen bejaht wurde und alles sauber durchgelaufen ist, kann man die Versionsnummer mit cat /etc/issue oder inxi -Sz oder auch lsb_release -a überprüfen.

Aber da die konkreten Upgrade-Features für die Version 20 wie gesagt im Juli rauskommen, lade ich mir die ISO-Dateien für XFce und Mate und installiere passende VM. Und darin werde ich mal die nächsten Tage testen, ob Mint Linux 20 wirklich so gut ist, wie es in dem Beitrag in der Computerzeitschrift beschrieben wurde.

Mein Linux-Hauptrechner ist aber zumindest auf die Version 19.3 hochgeschoben.

Update Windows 10 aus der Konsole

Die regelmäßige Aktualisierung von Windows empfinde ich weitgehend als eine Katastrophe. Entweder aktualisiert sich Windows zum unpassenden Zeitpunkt (hatte ich gerade bei einem Kunden, bei dem das erzwungene Update während der Remoteschulung die Teilnehmer ziemlich blockiert hat) oder man deaktiviert das automatische Aktualisieren und dann ist man Out-Of bzw. die Geschichte lässt sich u:u: nicht wieder anschalten oder man sucht sich einen Zeitplan raus, von dem man vermutet, dass die Aktualisierungen nicht irgendwas anderes verhindern. Alles nicht wirklich der Bringer.

Auf meinen drei im Business-Einsatz genutzten Windows-10-Rechnern funktioniert das Windows-Update eigentlich nur auf meiner Workstation ohne großes Eingreifen. Und das auch nicht perfekt.

Auf meinem alten Terra-Notebook kann ich auf wuauserv gar nicht zugreifen. Ich bekomme immer einen Zugriffsfehler, wenn ich den Service starten will. Ich habe schon zig Wege versucht, aber alles ist bisher schief gelaufen (und selbstverständlich habe ich im Administrator-Modus gearbeitet). Auf dem Rechner bin ich mittlerweile mit einem Updates auf einem Stand von Anodazumal :-(. Was mich aber auch nicht extrem beunruhigt, da das Notebook schon mindestens 7 – 8 Jahre auf dem Buckel hat und nur durch ein Schnäppchen einer riesigen Notebook-SSD vor 2 Jahren vom kompletten Ausmustern gerettet wurde. Das Gerät ist wirklich nur noch mein Backup – sowohl als PC als auch Datenbackup vom NAS. Also Backup vom Backup. Dennoch – irgendwie will ich auch da mal ein Update hinbekommen. Ich spiele schon eine ganze Weile in der Powershell und mit net hin und her, aber bisher scheitert alles an den Zugriffsproblemen auf wuauserv.

Noch blöder ist es, dass ich auf meinem aktuellen Huawei-Matebook nur Windows Home mitgeliefert bekommen habe. Eine wirklich armselige Windows-Version (ja – me culpa – ich hätte ja schon auf die Pro-Version umsteigen können, aber bisher hatte ich noch keinen zwingenden Grund gesehen). Da hat man ja so gut wie keine Kontrolle über die Updates. Nicht einmal in den Einstellungen lässt sich der Dialog öffnen (warum auch immer). Ich bin bisher nicht einmal so ganz im Klaren gewesen, ob und welche Updates da installiert waren.

Aber da habe ich jetzt eine sinnvolle Lösung gefunden, um mit NuGet oder in der PowerShell Updates zu dem Zeitpunkt und dem von mir gewünschten Umfang zu erzwingen, wenn ich das will. Da ich die nächsten Wochen ein paar Remote-Schulungen zu C# halten werde, wollte ich vorher sowieso Visual Studio auf den neusten Stand bringen und dabei gleich NuGet ebenso. Und damit kann man dann auch Windows Updates komplett erzwingen. Schön in der Paket Manager-Konsole statt der grafischen, klebrigen Micky-Mouse-Oberfläche der PC Einstellungen. Oder man nutzt eben die PowerShell. Beides natürlich im Administrator-Modus.

Und das geht über die PowerShell so, dass man entweder PSWindowsUpdate oder WindowsUpdateProvider (Install-WUUpdates) verwendet. PSWindowsUpdate soll angeblich gegenüber des von Microsoft bereitgestellten PowerShell-Moduls Install-WUUpdates / Start-WUScan einige Vorteile bringen, aber da bin ich auf Hörensagen angewiesen.
Mit

Get-Command -Module WindowsUpdateProvider

findet man aber erst einmal heraus, welche Windows-Update-Provider auf einem PC verfügbar sind. Damit sieht man dann in etwa so etwas:

PS C:\WINDOWS\system32> Get-Command -Module WindowsUpdateProvider

CommandType Name Version Source
———– —- ——- ——
Function Get-WUAVersion 1.0.0.2 WindowsUpdateProvider
Function Get-WUIsPendingReboot 1.0.0.2 WindowsUpdateProvider
Function Get-WULastInstallationDate 1.0.0.2 WindowsUpdateProvider
Function Get-WULastScanSuccessDate 1.0.0.2 WindowsUpdateProvider
Function Install-WUUpdates 1.0.0.2 WindowsUpdateProvider
Function Start-WUScan 1.0.0.2 WindowsUpdateProvider

Sobald ein ausreichend neuer Build vorhanden ist, kann man dann Updates suchen und installieren (Updates für Windows und andere Microsoft-Produkte):

$Updates = Start-WUScan -SearchCriteria „IsInstalled=0 AND IsHidden=0 AND IsAssigned=1“
Write-Host „Updates gefunden: “ $Updates.Count
Install-WUUpdates -Updates $Updates

Ein anderer Weg führt eben über das PSWindowsUpdate-Modul, das so aus der PowerShell installiert werden kann (oder man nutzt einfach Visual Studio und da dann die Paket-Manger Konsole):

Install-Module -Name PSWindowsUpdate -Force

Danach kann man nach der Version schauen:

Get-Package -Name PSWindowsUpdate

 

Aber das passende NuGet-Version muss dabei vorhanden sein, wobei die auch bei Bedarf nachinstalliert wird. Die Ausgabe wird so etwas sein:

Name Version Source ProviderName
—- ——- —— ————
PSWindowsUpdate 2.2.0.2 https://www.powershellgallery… PowerShellGet

 

Für den nächsten Schritt sollten die Ausführungsrichtlinien für den aktuellen Prozess auf uneingeschränkt gesetzt werden:

Set-ExecutionPolicy -Scope Process -ExecutionPolicy Unrestricted -Force

Und dann holt man die verfügbaren Updates so:

Get-WindowsUpdate -MicrosoftUpdate -Verbose

Die Installation von allem ohne weitere Rückfrage geht dann so:

Install-WindowsUpdate -MicrosoftUpdate -AcceptAll -AutoReboot

Soweit habe ich die Sache mit meinem Matebook auch schon erfolgreich durchgespielt und jetzt werde ich mir das Terra-Notebook und auch die Workstation vornehmen und mal sehen, was ich da aktualisieren kann oder auch nicht.

Wenn das alles nicht hilft, werde ich nochmal den folgenden Tipp in der Admin-Konsole versuchen:

net stop wuauserv

net stop bits

cd %systemroot%

ren SoftwareDistribution SoftwareDistribution.bak

net start bits

net start wuauserv

Ich habe zwar wenig Hoffnung, dass die Geschichte insbesondere bei den Zugriffsproblemen auf wuauserv was hilft, aber vielleicht nutzt die Schrittfolge ja jemand anderem oder in einer anderen Konstellation beim Update.

Alles neu macht der Mai

Es ging einfach nicht mehr. Die Abstürze meiner Workstation haben massiv zugenommen und alle Versuche, das System mit Korrekturmaßnahmen zu retten, haben letztendlich nicht gefruchtet. Vermutlich sogar die Situation verschlimmbessert. Teils hatte ich die letzte Zeit mehrfach am Tag den „Blue Screen of Death“.

Auch wenn ich permanent Daten sichere, nerven solche plötzlichen Neustarts. Sie kosten richtig Zeit, kommen meist vollkommen zur ungelegenen Zeit und so ganz sicher ist es auch nicht, dass nicht doch Daten verloren gehen. Und seien es nur die letzten Absätze in einem Text oder ein paar kleine Änderungen im Quellcode.

Also habe ich ein Ende mit Schrecken dem Schrecken ohne Ende heute vorgezogen. Das ist meist besser. Ich habe den PC komplett zurück- und Windows frisch wieder aufgesetzt. Alles mit dem integrierten Standardtool in Windows 10. Meine Dateien habe ich dabei aber natürlich erhalten.

Zwar sind eine ganze Reihe an Programmen damit weg, aber das Ausmisten führt zwangsläufig dazu, dass man sich Gedanken macht, ob man den ganzen Kram wirklich noch braucht. Das Entschlackt auf jeden Fall das System.

Ich installiere und konfiguriere jetzt den restlichen Tag nebenher alles Notwendige neu und hoffe, dass dann die Kiste sowohl performanter und vor allen Dingen wieder stabliler läuft.

Und da ist wieder die Windows-Hölle

Mittlerweile habe ich auf meiner Workstation wieder einen Zustand meines Windows-Systems, wie er in übelsten XP/ME/Vista-Zeiten üblich war.

  • Regelmäßig (so alle 2 Tage) habe ich einen Blue Screen of Death
  • Meine Office-Installation findet angeblich den Produktschlüssel nicht, aber ich kann ihn auch nicht eingeben oder Office überhaupt neu installieren.
  • Jedes Update von Windows 10 führt dazu, dass Office gar nicht mehr starten, sondern sich neu installieren will. Dabei werden zig Fehler gemeldet, aber wenn man die alle ignoriert, startet Office (inklusive der fehlerhaften Meldung wegen angeblich falschen Produktschlüssel – was man auch ignorieren kann).

Das System ist so zerschossen – ich werde wohl irgendwann man in den saueren Apfel beißen müssen und eine komplette Neuinstallation durchziehen. Aber durch die zig Programme und speziellen Einstellungen ist das verdammt zeitintensiv.

Windows mittlerweile viel sicherer als macOS

Ich bin überzeugt, dass Linux (von BSD ganz zu schweigen) erheblich sicherer und eigentlich auch ganz allgemein besser als Windows ist. Aber Windows 10 ist m.E. dennoch ein richtig gutes Betriebssystem. Was mich aber überrascht – ein ehemaliger Hacker der NSA hat nun dokumentiert, dass macOS erheblich unsicherer als Windows ist. Dabei stehlen sich zahlreiche Anwender von Macs aus der technischen Verantwortung, indem sie das Märchen glauben oder gar verbreiten, dass ein Mac nicht zu hacken wäre.

Windows-10-Update hat funktioniert

Das Update hat funktioniert. Außer den üblichen Fehlern mit gelöschten Zertifikaten und Ändreungen von Einstellungen etc. scheint nix schiefgelaufen zu sein.

Vielleicht hat das Update die Windows-Installation sogar in Teilen repariert, in denen sie nach dem Crash von neulich (an dem ich aber im Grunde alleine die Schuld trage) nicht ganz sauber mehr läuft. Ich würde das System so einschätzen, dass ich es nach dem Crash wieder zu 95% so eingerichten konnte, wie es vorher war. Vielleicht hat das Update noch ein oder zwei Prozent nachgeschoben und ein oder zwei Prozent der Veränderung waren vielleicht sogar positiv. Ich werde den neuen Stand jetzt eine Weile in der Praxis testen und dann vermutlich ein vollständiges Image ziehen. Denn wie ich aus dem Crash neulich gelernt habe – Datenwiederherstellungspunkte sind eine suboptimale Notlösung mit viel zu hohem Risiko, dass diese Notlösung versagt. In Kombination mit den üblichen Datensicherungen mehrfach am Tag und auf mindestens 5 verschiedene Datenträger und Rechnersysteme verteilt sollte das Konzept dann weitgehend sicher sein.

Was mir noch aufgefallen ist – das Update ging für Windows-Verhältnisse flott. Statt der ganzen Nacht war es in unter 4 Stunden durch. Immer noch zig Klassen schlechter als das Verfahren bei Linux, aber nicht mehr die Katastrophe von früher.

Windows-Update

Meine Workstation hat sich gemeldet, dass dringend ein Update für Windows 10 notwendig wäre, weil irgendein Support auslaufen würde. Naja – ich will mich nicht immer gegen sowas wehren und lasse sie mal schaffen. Ich hoffe, dass das über Nacht fertig wird. Diese Windows-Updates dauern ja immer so elend lange. Das bekommt Microsoft einfach nicht in den Griff. Warum eigentlich? Bei Linux dauert ein vergleichbarer Vorgang vielleich 10% der Zeit. Ist Linux wirklich 10x besser als Windows? Ich hoffe natürlich auch, dass das Update gut geht. Auch da habe ich bei Windows immer ein schlechtes Gefühl. Bei Linux würde ich mir keine Gedanken machen. Auch das spricht natürlich für Linux – wobei meine schlechten Gefühle eben auf den ganzen katastrophalen Erfahrungen von gut 25 Jahren basieren, in denen ich mit Windows schon arbeite (n muss). Dabei überlagern diese schlechten Erinnerungen vermutlich die Tatsache, dass Windows die letzten Jahre ziemlich aufgeschlossen hat. Aber dass das Update jetzt schon gut 2 Stunden läuft und irgendwas von 17% fertig erst anzeigt ist einfach nur mies.

Mal sehen, wie oft das Teil dann auch noch neu starten muss.

Update auf Windows 10 bei meinem Dual-Boot-Notebook

Nachdem ich auf meiner Workstation mit Windows 10 ganz zufrieden bin, habe ich mich auch bei meinem Notebook (bisher immer noch mit Windows 7 bestückt) zu einem Update entschlossen. Zumal Windows 7 wirklich in die Jahre kommt und es über kurz oder lang mit Updates eng werden wird. Und mit der Classic Shell kann man auch unter Windows 10 das Look an Feel von Windows 7 wiederherstellen und muss sich nicht mit den Verirrungen der Oberflächengestaltung und extremen Behinderung bei der Bedienung über Kacheln  ab Windows 8 quälen. Mit der neuen SSD sollte die Hardware von dem Notebook auch ausreichend leistungsfähig sein.

Microsoft kennt immer noch kein Dual-Boot 🙁

Dummerweise verwende ich auf dem Notebook Windows parallel mit einem Linux und Dual-Boot über Grub. Tja – ich hatte gedacht, dass es Microsoft endlich geregelt bekommt, wenn es außer Windows noch weitere Betriebssysteme auf dem Rechner gibt. Falsch gedacht :-(. Die Upgrade-Routine haut Grub dermaßen in die Tonne, dass danach gar nichts mehr geht. Windows muss beim Update mehrfach neu starten und beim 2. Neustartversuch konnte weder Windows noch Linux starten. Ganz toll – nur noch Grub rescue war da. Klar gibt es die üblichen Befehle (von ls über set bis insmod), um Grub manuell wiederzubeleben. Aber leider gab es auch dabei ständig die Meldung, dass das Dateisystem nicht zu erkennen sei. Ich hab dann schnell die Faxen dicke gehabt und mein Mint Linux als Live-Version vom USB-Stick gestartet und dann einfach nochmal neu installiert. Da hatte ich sowieso keine wichtigen Daten drauf und das repariert ganz nebenbei und vollkommen problemlos Grub. Danach konnte sich dann Windows weiter aktualisieren.

Wir warten auf das Christkind

Das gesamte Update hat gefühlte Ewigkeiten gedauert. Als ich vor einigen Monaten meine Workstation von Windows 8.1 auf Windows 10 aktualisiert hatte, war das erheblich schneller abgelaufen. So genau kann ich das nicht mehr sagen, aber für dieses Update hat die Setuproutine die 3 – 4-fache Zeit gebraucht, denke ich. Das war der nächste Punkt im Updateprozess, den ich für mich als grottenschlecht bewerte.

Als dann aber die Geschichte endlich durch war, schien soweit alles erhalten geblieben zu sein und das System zu laufen. Muss jetzt in der Praxis ausprobieren, ob der Umstieg wirklich sinnvoll war.