Fedora Workstation 44 | Jetzt will die Maus garnicht mehr

Manche Hardware funktioniert einfach, die Microsoft Bluetooth Mouse 3600 unter Fedora 44/GNOME 50 gehört leider nicht dazu. Während sie am Surface Laptop 3 unter Windows jahrelang perfekt lief, war der Umzug auf Linux für das ‚Mausi‘ der Anfang vom Ende. Das Pairing mit Bluetooth wurde stetig schlechter, bis sie mit dem Upgrade auf Fedora 44 nun komplett unbrauchbar geworden ist.

Man muss dazu wissen, dass der mit Fedora 44/GNOME 50 eingeführte Bluetooth-Stack eine gewisse Zurückhaltung gegenüber BLE-HID-Geräten zeigt, was häufig zu Verbindungsproblemen führt.

Eine kurze Beschreibung des Problems

  • Nach dem Upgrade verbindet die Maus nicht mehr automatisch
  • Manuelles Pairing funktioniert, aber nur mit Geduld
  • Und die MAC‑Adresse der Maus wechselt fröhlich hin und her1

1) und ja, auch Bluetooth-Mäuse haben eine MAC-Adresse

Zeit also, der Sache auf den Grund zu gehen, bevor ich die Anschaffung einer neuen Maus überhaupt in Erwägung ziehe. Man ist ja irgendwo auch Schwabe 😉

Das Sympton ist, die Maus wird angezeigt aber Linux tut so als ob es eine neue wäre

Nach dem Upgrade auf Fedora 44 zeigt bluetoothctl folgende Info an:

Device F1:00:85:92:CA:34 (random)

Die Maus meldet sich mit wechselnden BLE‑Adressen. Das ist normal, nennt sich „Resolvable Private Address“ RPA . BlueZ erkennt solche Geräte über einen Identity Resolving Key (IRK). Wenn der IRK fehlt, denkt Fedora bei jeder neuen Adresse: „Noch nie gesehen …“ und das Theater geht los.

Das erklärt, warum AutoConnect nicht funktioniert, obwohl die Maus korrekt gepairt ist.

Die Ursache liegt in einem blockierten AutoConnect vor der Anmeldung

Mit GNOME 50 (und der damit einhergehenden Entwicklung in den zugrunde liegenden Bibliotheken wie bluez) wurde das Sicherheitsmodell für Bluetooth verschärft. BLE-HID-Geräte (wie die Mouse 3600) benötigen oft einen aktiven Austausch von Schlüsseln beim Reconnect. Wenn der Agent der User-Session noch nicht aktiv ist, schlägt dieser Austausch fehl oder wird vom System ignoriert, um unautorisierte Verbindungen auf Hardware-Ebene zu verhindern.

Letztendlich sehen wir die folgenden Syptome:

  • kein AutoConnect beim Boot von Linux
  • manueller Connect funktioniert (bei Fedora 44 auch nicht immer und davor doch recht zuverlässig) oft erst nach 60 bis 120 Sekunden
  • Zur Verbindung muss eine User-Session vorhanden sein

Der erste Schritt ist, dass wir mit der Maus ein neues Pairing durchführen müssen:

bluetoothctl
remove <DEVICE-MAC>
scan on
pair <DEVICE-MAC>
trust <DEVICE-MAC>
connect <DEVICE-MAC>

Schauen wir uns aber die info-Datei für die Maus an, so sind nach einen korrekt erfolgtem Pairing alle notwendigen Einträge vorhanden.

# Speicherung der Bluetooth-Informationen der Maus in der info
/var/lib/bluetooth/<ADAPTER-MAC>/<DEVICE-MAC>/info

Die Datei beinhaltet alle notwendigen Informationen wie den IRK, LTK und HID-Services.

Wir merken uns:

  • ADAPTER-MAC = Hardware-Adresse des Bluetooth-Controllers im Laptop (die ist und bleibt statisch)
  • DEVICE-MAC = Hardware-Adresse der Maus (Device), die sich in Grenzen dynamisch verhält

Den Pfad oben bauen wir als wie folgt zusammen, und dazu wechseln wir der Einfachheit halber in den interaktiven Sudo (wer in diesem verbleibt, spart sich in den kommenden Konfigurationen das nervige tippen von Befehl und Passwort):

# Wechsel in den interaktiven sudo-Modus
sudo -i

Am einfachsten (und damit ohne Tipp-Fehler), lassen sich Verzeichnispfade mit ls und der TAB-Taste verwenden:

# Dazu ls und TAB für die Expansion des folgenden Pfads verwenden
#- wichtig ist, dass die MAC-Adresse des Controllers bei Euch anders heißt!
ls '/var/lib/bluetooth/F0:1D:BC:9C:AC:9D'

Hängen wir dann an diesen Pfad die DEVICE-MAC mit an, können wir im Verzeichnis die info-Datei der Microsoft Bluetooth 3600 finden.

Damit ist die technische Basis gelegt.

Die zweite Baustelle sind die wechselnden MAC-Adresse der Maus (DEVICE-MAC)

Die Microsoft Maus nutzt Adressen, die immer mit F1:00:85: beginnen. Der Rest ändert sich.
BlueZ erkennt die Maus über den IRK, aber GNOME 50 leider nicht zuverlässig.

Das Problem konnte mit einer udev-Regel, die hilft den Connect auszulösen, sobald die Maus auftaucht, gelöst werden.

Die Sache wird nun als dritter Schritt an systemd übergeben und dort in eine Regel gepackt

# udev-Regel erstellen
sudo nano /etc/udev/rules.d/99-bt-mouse-autoconnect.rules

# Inhalt der Regel
ACTION=="add", SUBSYSTEM=="bluetooth", ATTR{address}=="F1:00:85:*", RUN+="/usr/bin/bluetoothctl connect %E{address}"

Genau genommen arbeitet die Regel die folgenden Aufgaben ab:

  • Sie reagiert auf jedes Bluetooth‑Gerät, dessen Adresse mit F1:00:85: beginnt
  • %E{address} übergibt die aktuelle (random) MAC an bluetoothctl
  • GNOME 50 wird komplett umgangen
  • Die Maus verbindet sobald sie auftaucht

Die Regel sollte automatisch ausgeführt werden und damit blieb nur der Weg das mit einem systemd-Service um GNOME „herumzubauen“ (zumindest habe ich keine andere Möglichkeit gefunden).

Damit umschiffen wir die folgenden Problemzonen:

  • GNOME‑Agent‑Blockade
  • Race‑Condition beim Login
  • 60–120‑Sekunden‑Timeout
  • verzögerten BLE‑Reconnect

Der funktionierende systemd-AutoConnect-Service:

# Als erstes muss der Service angelegt werden
sudo nano /etc/systemd/system/bt-mouse-autoconnect.service

# Und der Service in der Config definiert werden
[Unit]
Description=Auto-connect Bluetooth Mouse after GNOME startup
After=graphical.target bluetooth.service
Wants=bluetooth.service


[Service]
Type=oneshot
ExecStart=/usr/bin/bluetoothctl connect F1:00:85:93:CA:34
ExecStart=/usr/bin/sleep 2
ExecStart=/usr/bin/bluetoothctl connect F1:00:85:93:CA:34


[Install]
WantedBy=graphical.target

Das Timing im Logon-Prozess ist nicht ganz optimal, darum probiert es der Service mit dem Start nach 2s ein zweites Mal.

Zum Schluss fehlt nur noch die Aktivierung des Service verbunden mit einem Neustart:

# Aktivierung des Service
sudo systemctl daemon-reload
sudo systemctl enable bt-mouse-autoconnect.service


# Reboot
sudo reboot

Fazit

Die Maus läuft und ich muss keine neue mehr besorgen, zumal ich die Teile immer sehr mochte da sie wirklich robust und zuverlässig waren sind. Auch wenn ich mich erneut an dem Surface Laptop anmelde, ist die Maus nach ca. 30 Sekunden da. Man könnte hier sicherlich noch eine Reihe von Optimierungen und Retries bauen, ich will es aber dabei belassen. Wie sagt der Schwabe gerne „für me duats des“ … und er ist glücklich, muss er doch keine neue Maus kaufen.

Enjoy it, b!

Upgrade | Fedora Workstation 44

Ende April war es wieder so weit: Eine neue Fedora-Version stand vor der Tür. Mein bewährter Surface Laptop 3 wartete bereits auf das Upgrade auf die Version 44. Doch diesmal lief der Prozess über die Shell nicht ganz so reibungslos durch, wie ich es gewohnt war. Ein Paketkonflikt im Bereich des Power-Managements stoppte das Vorhaben abrupt.

Das Problem waren die Pakete für das Power-Management

Beim Versuch, das Upgrade einzuspielen, brach DNF mit einer Fehlermeldung ab. Der Kern der Nachricht: Dateikonflikte zwischen tlp und tuned-ppd. Beide Pakete versuchten, dieselben DBus-Service-Dateien unter /usr/share/dbus-1/ zu beanspruchen.

Hier der Fehler im Detail:

Fedora hat mit Version 44 den Wechsel hin zu tuned als Standard-Daemon für Stromsparprofile vollzogen. tuned-ppd dient dabei als Schnittstelle, damit die GNOME-Einstellungen (der Schieberegler für „Leistung/Ausbalanciert/Energiesparen“) weiterhin funktionieren. Wer – wie ich – in der Vergangenheit manuell TLP installiert hat, um das Maximum aus dem Akku des Surface herauszuholen, gerät hier in einen harten Ressourcenkonflikt.

Die Lösung war die Deinstallation von TLP

Da Fedora 44 nun massiv auf tuned setzt, habe ich mich dazu entschieden, TLP den Laufpass zu geben und auf den neuen Standard zu setzen. Damit war der Weg für das Upgrade frei.

Folgende Schritte in der Shell haben das Problem gelöst und beschreiben dazu noch das Upgrade:

Die Befehle und Fehlermeldungen findet ihr in dieser Datei, aber bitte nur Schritt für Schritt ausführen.

Nach dem Upgrade ist vor dem Upgrade …

Was mir sonst noch aufgefallen ist (nach dem Upgrade):

Das bisher verwendete Hintergrundbild stammte noch aus Fedora 43 und wurde beim Upgrade entfernt. Daher musste ich ein neues Wallpaper aus dem Fedora‑44‑Paket auswählen.

Die OneDrive‑Integration schlug wiederholt fehl. Erst nach dem vollständigen Entfernen der bestehenden Verbindung und einer neu erforderlichen App‑Registrierung über GNOME konnte die Synchronisation wiederhergestellt werden

Fedora Workstation verwendet aktuell noch den 6er‑Kernel. Das ist jedoch kein Nachteil – das System läuft stabil, wie schon seit langer Zeit.

Fazit

Wieso es genau zu diesem Konflikt kam? Wahrscheinlich habe ich in Fedora 43 zu intensiv an den Energieeinstellungen optimiert und dabei TLP als Ergänzung oder Ersatz installiert. Da Fedora 44 nun eine eigene, moderne Architektur für diese Profile mitbringt (tuned-ppd), vertragen sich die beiden Ansätze auf Dateiebene nicht mehr.

Nach dem Reboot lief mein Surface Laptop 3 anstandslos unter Fedora 44 hoch. Wer also vor einem ähnlichen „Transaction failed“ steht: Prüft eure installierten Power-Management-Tools und werft einen Blick auf die Gnome-Extensions, nicht alle waren zum Start von Fedora 44 kompatibel.

No Panic please!

Ja, nein, vielleicht — und bevor ich mich weiter in dieser Antwortmatrix verliere, schreibe ich jetzt einfach ein paar Sätze. Dieser Blog hier nennt sich Windows SBS und Essentials Blog, und genau so ist er im Mai 2008 gestartet. Der erste Beitrag? Natürlich ein Defekt des CPU‑Lüfters in einem Lexmark X502n Multifunktionsdrucker. Ein würdiger Auftakt für eine lange Reise voller Themen, die streng genommen alle aus dem Small‑ und Medium‑Business‑Umfeld stammen. Und ja: Ich dachte damals, das könnte vielleicht irgendjemandem helfen.

Zur Überraschung: Hat es und tut es immer noch, auch wenn sich die KI an den Themen sattfrist und 50% der Hits weggefallen sind.

Den eigentlichen Windows Small Business Server (SBS) und seinen Nachfolger, den Windows Server 2012 Essentials (SBE), hat uns Microsoft dann genommen — in der charmanten Annahme, kleine Firmen würden natürlich alle in die Cloud wechseln.

Spoiler: Das war gleichzeitig richtig und komplett daneben. Die Chance, Exchange aus den Kellern der Kunden zu befreien und in kompetente Hände zu legen, konnte ich mir jedenfalls nicht entgehen lassen. Also habe ich ASAP eine Menge Migrationen von Exchange (SBS 2008 R2) nach BPOS durchgeführt. Und obwohl ich im Enterprise‑Bereich schon einige Exchange‑Wiederherstellungen überlebt hatte, wollte ich mir diesen Nervenkitzel bei kleinen Kunden nicht mehr antun. Man wird ja nicht jünger. Zusätzlich gibt es im SMB-Umfeld eine Reihe von LOB-Anwendungen die ein wahres Horrorkabinet darstellen … und während die Hyperscaler an die Cloud denken, kämpfe ich mit „lokalen Admins“ damit die Praxissoftware überhaut läuft!

Linux und ich — das ist übrigens keine Beziehung, die erst begann, als virtuelle Router plötzlich „hip“ wurden oder eine SSH‑Session auf ein Synology‑NAS die Tür zu erweiterten Konfigurationen (oder nennen wir es ruhig „Hacks“) öffnete. Nein, Linux war mein zweiter Dateiserver nach Novell NetWare 3.1. Irgendwann in den 90ern habe ich mich — schneller als manche Großunternehmen — entschieden, im Heimnetz auf TCP/IP umzusteigen. Aus Kostengründen lief auf dem Server Linux mit einem Kernel 1.x und Samba. Der Client war bis 1996 OS/2 Warp 3, und erst dann haben Windows NT 4.0 und ich uns endlich gefunden. Eine späte, aber stabile Beziehung.

Grundsätzlich soll hier jedes Betriebssystem seinen Platz finden, das im SMB‑Umfeld sinnvoll ist und mich gelegentlich an den Rand der Verzweiflung bringt — äh, ich meine: vor interessante Herausforderungen stellt.

Darum wird es in diesem Blog auch weiterhin um Themen aus dem SMB‑Kosmos gehen. Vielleicht nenne ich ihn irgendwann sogar „Small‑ und Medium‑Business‑Blog“ oder etwas ähnlich Kreatives. Was meint ihr dazu?

Enjoy it, b!

Windows | Ablauf der Secure-Boot-Zertifikate

Es dauert nicht mehr lange und wir haben Juni und die Zertifikate für den Windows-Secure-Boot laufen aus.

Das eigentliche Problem ist …

Secure Boot ist der Schutzwall beim Systemstart. Er stellt sicher, dass nur signierte und vertrauenswürdige Bootloader geladen werden. Diese Vertrauenskette basiert auf Zertifikaten, die im UEFI (dem BIOS-Nachfolger) hinterlegt sind.

Die Krux: Die aktuell weit verbreiteten Zertifikate (wie die „Windows Production CA 2011“) laufen im Jahr 2026 aus. Da Hardware oft viele Jahre im Einsatz ist, müssen die neuen Zertifikate („Windows UEFI CA 2023“) jetzt auf die Rechner verteilt werden, damit der Übergang nahtlos funktioniert.

Sollte der Rechner keinen SecureBoot verwenden (ich kenne da einige alte Systeme mit Windows Server 2019) dann könnt ihr jetzt mit dem Lesen aufhören. Gibt es aber weitere Windows Systeme, dann vielleicht doch nicht 🙂

Glücklicherweise hat Microsoft diesmal einen klaren Plan

Microsoft geht bei diesem kritischen Update vorsichtig vor, um „Bricks“ (unbrauchbare Hardware) zu vermeiden. Der Rollout erfolgt in Phasen:

  1. Vorbereitungsphase: Die neuen Zertifikate werden per Windows Update bereitgestellt, aber noch nicht aktiv erzwungen.
  2. Testphase: Administratoren können die neuen Zertifikate manuell aktivieren (siehe PowerShell-Teil unten).
  3. Erzwingungsphase: Ab 2026 wird das neue Zertifikat zur Pflicht.

Besonders für Windows Server hat Microsoft ein „Playbook“ veröffentlicht, da hier die Ausfallrisiken bei Boot-Fehlern besonders kritisch sind.

Windows Server Secure Boot playbook for certificates expiring in 2026 | Microsoft Community Hub

Mit PowerShell kann man eine grundlegende Prüfung durchführen

Neuere Windows-Versionen zeigen den Status der Secure-Boot-Zertifikate mittlerweile direkt in der Windows-Sicherheit-App an. Doch für Administratoren, die hunderte Systeme verwalten oder eine Automatisierung benötigen, ist die PowerShell das Werkzeug der Wahl.

Ermitteln des Status

PowerShell muss für die Tests mit administrativen Rechten gestartet werden! Und bitte, den Code Zeile für Zeile ausführen und nicht als Skript betrachten. Vielleicht seit ihr ja nach Zeile 6 schon fertig.

Details zum Bootloader auslesen

Um sicherzugehen, welche Version des Bootmanagers aktuell verwendet wird, hilft dieser Befehl.

Zum Schluss (falls notwendig) kann man das Update manuell triggern

Wenn ihr nicht auf den automatischen Rollout warten möchtest (z.B. in einer Testumgebung), kannst das Update der UEFI-Variablen über die Registry und eine geplante Aufgabe erzwungen werden.

Achtung: Das Update schreibt in das UEFI des Mainboards.

Wie sieht das in der Praxis aus …

Das Windows Notebook hatte durch die Installation aller Updates die Zertifikate schon an board.

Der Fehler 0xC0000100 kommt daher, dass nicht jede Hardware das Auslesen der Detault-Datenbank des Herstellers zuläßt.

Fazit

Der Wechsel der Secure-Boot-Zertifikate ist eine Operation am offenen Herzen und bedeutet vor allem in „Altumgebungen“ einiges an Arbeit, muss doch jeder PC geprüft werden. Insofern ist jetzt ein gutes Zeitpunkt damit zu beginnen.

Enjoy it, b!

Windows 11 | April Update KB5083769, Klick mit der linken Maustaste tut nicht mehr

Nach dem April‑Update 2026 für Windows 11 berichten viele Nutzer und ich auch 🙂 über Probleme mit der Microsoft Bluetooth Mobile Mouse 3600. Typisch ist folgendes Verhalten:

  • Mauszeiger bewegt sich
  • Linke/rechte Maustaste reagieren nicht mehr
  • Maus bleibt als verbunden angezeigt
  • Problem tritt besonders nach Neustart oder Standby auf

Das Problem konnte ich inzwischen auch mit einer Logitech MX35 nachvollziehen.

Ursache

Die Mouse 3600 ist eine reine Bluetooth‑LE‑Maus ohne USB‑Dongle. Nach dem April‑Update greift Windows offenbar aggressiver auf Bluetooth‑Energiesparmechanismen zurück. Dabei werden Klick‑Events nicht mehr zuverlässig verarbeitet – obwohl die Maus verbunden bleibt.

Ein Firmware‑Update für die Mouse 3600 existiert nicht, das Problem liegt auf Windows‑Seite.

Bewährter Workaround

Der bislang zuverlässigste Fix:

  1. Geräte-Manager
  2. Bluetooth → Bluetooth‑Adapter (z. B. Intel / Qualcomm)
  3. Register Energieverwaltung
  4. Haken entfernen bei
    „Computer kann das Gerät ausschalten, um Energie zu sparen“
  5. Neustart

Zusätzlich empfohlen:
Über Windows Update → Erweiterte Optionen → Optionale Updates verfügbare Bluetooth‑Treiber installieren.

Was nicht hilft

  • Maus neu koppeln
  • Bluetooth‑Troubleshooter
  • Maus neu installieren
  • sfc /scannow

Enjoy it, b!

Windows 11 | Problem Ejecting USB Attached SCSI (UAS) Mass Storage Device

Man möchte nur schnell die externe SSD abziehen, klickt auf Hardware sicher entfernen / Eject portable device und bekommt die folgende Fehlermeldung angezeigt:

Windows behauptet, dass noch ein Programm auf das Laufwerk zugreift.

Die üblichen Verdächtigen

Häufig, aber halt nicht immer, spielen die folgenden Programme oder Prozesse eine Rolle:

  • Ein Explorer-Fenster ist noch im Verzeichnis der SSD offen
  • Die PowerShell oder Eingabeaufforderung stehen noch auf der SSD
  • Von Anwendungen geöffnete Dateien
  • Ein Virenscanner oder die Windows-Indizierung arbeitet im Hintergrund
  • Ein Kopiervorgang ist noch nicht ganz abgeschlossen

Wenn angeblich alles geschlossen ist

Ich hatte neulich den Fall, dass keiner dieser Punkte zutraf. Selbst die Einstellung auf „Schnelles Entfernen“ in den Richtlinien (ein wichtiges Thema, das ich bereits hier in einem anderen Kontext gestreift habe) war korrekt gesetzt. Eigentlich sollte das System den Schreibcache so verwalten, dass ein Auswerfen jederzeit möglich ist – theoretisch.

In der Praxis blieb die Fehlermeldung hartnäckig. Wenn also alle Anwendungen geschlossen sind und auch der Explorer keine offenen Zugriffe mehr zeigt, gibt es noch einen ganz speziellen Übeltäter der bei häufig geöffnet ist.

Der Windows Task-Manager blockiert die SSD

Es klingt fast ironisch:
Man öffnet den Task-Manager, um herauszufinden, welcher Prozess das Laufwerk blockiert – und genau dadurch verhindert man das Auswerfen.

Der Task-Manager greift zur Überwachung der Performance (Datenträgerauslastung, Antwortzeiten etc.) aktiv auf die Hardware-Informationen zu. Solange das Fenster des Task-Managers offen ist und die SSD in der Liste der Ressourcen überwacht wird, hält Windows oft ein Handle auf das Gerät offen. Schließt man den Task-Manager, kann die SSD ohne Probleme entfernt werden.

In den meisten Fällen lässt sich die SSD danach sofort und ohne Murren entfernen. Manchmal sind es eben die Werkzeuge zur Fehlersuche selbst, die der Lösung im Weg stehen.

Enjoy it, b!

Hurra Deutschland | So geht Digitalisierung

Ich halte gerade das zweite Schreiben in den Händen, das mir mitteilt: „Kein Ausbau durch Deutsche Glasfaser“. Die Begründung? „Wirtschaftliche Gründe“ und eine erneute „Wirtschaftlichkeitsprüfung“ aufgrund der aktuellen Rahmenbedingungen.
In der Sprache der Konzerne bedeutet das schlicht: „An meiner Adresse lohnt sich Fortschritt gerade nicht“.

Digitale Autobahnen vs. Feldwege

Das ist ein Armutszeugnis für einen Technologiestandort, für das (ehemalige) Land der Dichter und Denker und Ingenieure. Schnelles Internet ist kein Luxusgut, sondern die elementare Grundlage für vieles, was unsere Zukunft bestimmen wird. Ohne Breitband fehlt die Basis für KI-Entwicklungen, für Forschung und Softwareunternehmen und auch die Nutzung von Cloud-Lösungen (ob man das nun gut oder schlecht findet) ist abhängig von einem schnellen Internetanschluss.
Solange wir den Ausbau in Deutschland privatwirtschaftlich dem Markt überlassen, zementieren wir die digitale Zweiklassengesellschaft. Glasfaser gibt es dann nur dort, wo der Profit kurzfristig realisiert werden kann. Was wir brauchen, sind digitale Autobahnen – was wir bekommen, sind digitale Feldwege.

Ein Blick zurück – als Deutschland einmal mutiger war

Spannend – und gleichzeitig bitter – ist der historische Vergleich. In den Koalitionsverträgen der 70er Jahre zwischen SPD und FDP tauchte der Glasfaserausbau noch nicht als konkretes Ziel auf. Die Technologie befand sich damals schlicht noch in der Erprobungsphase, und niemand konnte absehen, wie grundlegend sie einmal werden würde.
Doch am Ende dieser politischen Ära geschah etwas Bemerkenswertes: Am 8. April 1981 beschloss das Bundeskabinett unter Helmut Schmidt (SPD) den zügigen Aufbau eines flächendeckenden Breitbandglasfasernetzes. Ein visionärer Schritt – Jahrzehnte bevor „Digitalisierung“ zum politischen Modewort wurde.
Dieser Beschluss war ein seltener Moment, in dem Politik langfristig dachte. Ein Moment, in dem man verstanden hatte, dass Infrastruktur nicht nur Kosten verursacht, sondern Zukunft schafft. Dass man nicht warten darf, bis der Markt „von selbst“ aktiv wird. Und dass staatliche Verantwortung bedeutet, Grundlagen zu legen, auf denen Innovation überhaupt erst entstehen kann.
Dass dieses Projekt später unter der folgenden Regierung wieder ausgebremst wurde, ist eine der großen verpassten Chancen der deutschen Technologiegeschichte.

Ein Plädoyer für den Staat und mehr Mut

Wir leben in einer sozialen Marktwirtschaft. Das bedeutet auch, dass der Staat die Pflicht und die Möglichkeit hat, steuernd einzugreifen. Meiner Meinung nach gehören wichtige und kritische Bereiche deutlich stärker von der staatlichen Seite reguliert:

  • Forschung
  • Das Gesundheitswesen
  • Energiewirtschaft
  • Infrastrukturen (die Bahn und Straßen sowie digitale Netze)

Der Staat muss den Ausbau nicht nur forcieren, sondern verordnen.

Return-on-Invest neu denken

Das Hauptproblem der Privatwirtschaft ist der Blick auf das nächste Quartal. Echte Infrastrukturprojekte brauchen aber einen langen Atem. Ein Return on Invest kann nicht immer sofort monetär messbar sein. Die Rendite eines flächendeckenden Glasfasernetzes liegt in der Innovationskraft und Wettbewerbsfähigkeit des gesamten Landes über Jahrzehnte hinweg.
Wenn wir weiterhin nur auf Sicht fahren und Infrastruktur als reines Profit-Center betrachten, wird das „Hurra Deutschland“ in Sachen Digitalisierung ein sarkastischer Dauerzustand bleiben.

Enjoy it, b!
(auch wenn es manchmal schwer fällt)

Hyper-V | Konvertierung virtueller Disks

Gerade gibt es im Bereich der Virtualisierung recht viel zu tun. Ein zentrales Thema ist dabei die Konvertierung von virtuellen Disks (VHD). Da Broadcom VMware freiwillig aufs Abstellgleis geschoben hat, spielen OpenSource und Hyper-V immer mehr eine wichtige Rolle.

Ich bin schon lange ein Freund von Hyper-V, da damit auch in kleinen Umgebungen virtualisiert werden kann, wenn ohnehin schon eine Windows Server-Lizenz vorliegt. Spätestens seit QNAP und Synology ihre NAS-Systeme mit Prozessoren von AMD und Intel ausstatten und zudem Hauptspeicher von 32 GB und mehr vorhanden ist, spricht nichts dagegen, auch auf einem NAS einen Anwendungsserver zu virtualisieren.

QEMU, hin und zurück

Während sich VHDs von Hyper-V (auch VHDX genannt) unter dem Synology Virtual Machine Manager importieren lassen und dabei zu einer VMDK konvertiert werden, ist bei der Migration einer VM von einer Synology auf einen Hyper-V-Server Handarbeit erforderlich.

Wird eine VM auf einem Synology-NAS exportiert, liegt am Ende des Vorgangs eine OVA-Datei in einem Verzeichnis/Share vor.

Die OVA-Datei ist ein Container, der neben allen Festplatten der VM auch deren Konfiguration in Form einer XML-Datei beinhaltet. Letztere wurde jedoch aus „Sicherheitsgründen” mit der Endung OVF versehen.

Der Importvorgang unter Hyper-V, der im Grunde keiner ist, läuft dabei wie folgt ab:

  1. Erstellen einer VM in Hyper-V mit den passenden Parametern. Hat man sich die Konfiguration nicht gemerkt, kann man ja in der OVF-Datei nachschauen
  2. Kopieren der VHDX in den Ordner “Virtual Hard Disks”
  3. Anhängen der virtuellen Disk (VHDX ) an die VM
  4. Start der VM

Wie kommt man nun aber von der OVA zu einer VHDX -Datei?

Dazu sind die folgenden Schritte notwendig:

image

Hier die einzelnen Befehle und bitte die Namen der Disks anpassen:

::  Entpacken der OVA-Datei mit 7z
7z.exe e w11-test-02.ova

:: Konvertieren der ersten Disk aus der OVA-Datei (welche das Betriebssystem enthaelt) in das vhdx-Format
qemu-img.exe convert w11-test-02-disk1.vmdk -O vhdx -o subformat=dynamic w11-test-02.vhdx

Nachdem Microsoft den Virtual Machine Converter (MVMC) aus unerfindlichen Gründen beerdigt hat, verwende ich neben dem QEMU disk image utility noch Disk2vhd, wenn ich mich nur in der Microsoft-Welt bewege.

Update 18.06.2025
Muss eine Hyper-V VHDX für QEMU, KVM oder libvirt (zum Beispiel GNOME Boxes) konvertiert werden, erfolgt das mit folgendem Aufruf (auch hier bitte die Pfade und Namen anpassen:

::  Konvertieren einer Hyper-V VHDX für die Verwendung mit QEMU
qemu-img.exe convert -f vhdx -O qcow2 ..\Win11_24H2_English_x64-rufus.vhdx ..\..\Win11_24H2_English_x64-rufus.qcow2 -p

Enjoy it, b!

Entfernen von Microsoft 365 Accounts in Windows 11

Windows bietet die Möglichkeit mehrere Microsoft-Accounts zu verwenden. Diese werden unter Settings / Accounts / Email & accounts wie unten angezeigt.

image

Allerdings fehlt hier die Möglichkeit diese wieder zu entfernen, sollte man sie nicht mehr benötigen.

Dazu muss man in den Settings (Einstellungen) in den Bereich Access work or school wechseln und kann dort die nicht mehr benötigten Accounts (Konten) entfernen.

image

Nur dort ist ein Disconnect möglich und danach sieht es unter Email & accounts wieder sehr aufgeräumt aus Smile

image

Enjoy it, b!

Routing mit Linux in virtuellen Umgebungen

Vor 4 Jahren hatte ich einen Blog geschrieben, wie man einen Microsoft Hyper-V Server 2016 als Router “verwenden” kann.

Natürlich stellt man sich dabei die Frage, wieso man das tun sollte? Zum einen ist der Hyper-V Server von Microsoft kostenlos und hat als Mitglied der Windows Server Core Familie geringere Systemanforderungen.

Es gibt hier eine Alternative, dazu müssen wir aber die Windows-Welt verlassen und uns Linux anschauen. Ich selbst bin historisch mit SUSE Linux verbunden, daher habe ich für diese Lösung openSUSE Leap 15.2 verwendet.

Als Ausgangslage haben wir die gleichen Voraussetzungen wie im Blog damals, also gleiche Netzwerke, IP-Adressen und die FRITZ!box usw. Also einfach mal den Blog nochmals anschauen, dort ist auch die Konfiguration der FRITZ!box selbst beschrieben.

Ausgangslage

Hier eine kurze Zusammenfassung davon:

  • Server mit 3 Netzwerkkarten (172.16.16.253, 192.168.110.0 und 192.168.120.1)
  • Fritz!BOX für den Internet-Zugang
  • Netzwerk an der FRITZ!box ist 172.16.16.0/24, das Gateway ist immer die 1 (also die FRITZ!box selbst)

Konfiguration der Linux VM

Für die VM unter Hyper-V habe ich die folgenden Parameter verwendet:

  • Hyper-V Generation 2 VM mit deaktiviertem Secure Boot
  • 2 CPUs
  • Dynamischer Hauptspeicher mit 1GB Start und maximal 2GB, im Betrieb läuft die VM mit grob 800MB
  • 64GB Festplatte (wobei hier auch weniger ausreichend ist), da die VHDX aber dynamisch ist, stellen die 64GB kein Problem dar
  • Zum Start nur einen Netzwerk-Adapter, wobei im Verlauf der Konfiguration weitere hinzugefügt werden

Die folgende Abbildung zeigt eine Übersicht der VM.

image

Installation openSUSE Leap 15.2 in der VM

Für die Installation wird das ISO-Image gemounted und die VM gestartet.

image

Im nun folgenden Menü Installation auswählen und den Dingen seinen Lauf lassen.

image

Da die VM über den einen Adapter eine IP-Adresse vom DHCP-Server bekommen hat, ist das Linux Setup in der Lage ggf. notwendige Updates aus dem Netz zu laden. Nach knapp 2min erscheint die Auswahl zur Konfiguration der Tastatur und der Lizenzvereinbarung. Ich verwende gerne VMs in englischer Sprache (English US) dazu aber eine Tastatur mit den deutschen (QWERTZ) Layout.

image

Hier dann auf Next drücken. Im nun folgenden Menü können wir auf eine Aktivierung von Online Repositories für unseren Zweck verzichten, also No auswählen.

image

Da wir einen schlanken Server wollen, treffen wir die Auswahl Server bei der Abfrage der System Role. Damit  haben wir zwar keine Oberfläche, können aber auf YaST zurück greifen, der alle notwendigen Aufgaben für uns erledigen kann.

image

Weiter geht es mit Next mit dem Vorschlag der Partitionierung die wir so übernehmen können.

image

Hier ebenfalls mit Next die Installation fortsetzen. Als Zeitzone wähle ich Europe und Germany und drücke abermals den Next Button.

Der Benutzer der im nächsten Schritt angelegt wird, findet später seine Verwendung für alle Aufrufe mit sudo.

image

Mit der Übersicht der gewählten Parameter kann die Installation starten.

image

Die gut 800 Pakete mit knapp 2GB Gesamtgröße installiert das Setup relativ schnell, für einen Kaffee reicht es aber trotzdem Smile

Konfiguration der Netzwerk-Adapter

Nach dem Neustart kann das ISO von der VM entfernt werden und die Anmeldung erfolgen.

image

YaST wird danach mit dem sudo Befehl gestartet und alle weiteren Schritte erfolgen im YaST Control Center unter System / Network Settings.

image

Als erstes verpassen wir der Netzwerkkarte eine feste IP (172.16.16.253/24). Dazu wird mit Edit die Konfiguration bearbeitet. Innerhalb von YaST springt man mit der TAB-Taste zwischen den einzelnen Menüpunkten hin und her. Zusätzlich zur IP-Adresse setze ich auch gleich den Hostnamen.

image

Mit Next bekommen wir wieder die Übersicht über die gemachten Einstellungen.

image

In den Einstellungen System / Network Settings / Hostname / DNS trage ich nochmals einen statischen Hostnamen ein und dazu noch die beiden im Netzwerk vorhandenen DNS-Server.

Mit Quit wird YaST beendet und die VM heruntergefahren, was wieder mit einem sudo shutdown erfolgt. Das Herunterfahren der VM ist notwendig, da ich zwei weitere  Netzwerk-Adapter hinzufüge die mit den Netzen 192.168.110.0/24 und 192.168.120.0/24 konfiguriert werden.

image

Der Trick, nur einen der beiden neuen Netzwerk-Adapter zu verbinden funktioniert unter Linux leider nicht, beide werden als Not Connected dargestellt. Nach dem Start der VM sind beide Netzwerk-Adapter zusätzlich sichtbar und können konfiguriert werden.

image

Welcher nun der richtige Adapter ist, lässt sich über die MAC-Adresse herausfinden.

image

Der Adapter eth1 bekommt nun die IP-Adresse 192.168.110.1/24 und dient zukünftig als Gateway für dieses Subnetz.

image

Analog dazu Adapter eth2 mit der Konfiguration 192.168.120.1/24 hier die Zusammenfassung aller Netzwerk-Adapter.

image

Was fehlt nun eigentlich noch? Richtig, wir haben das Routing selbst nicht aktiviert und ein Gateway ist ebenfalls noch nicht konfiguriert. Das erfolgt in den nächsten beiden Schritten.

Gateway und Routing

Die bisher gemachten Konfigurationen kann man mit der Auswahl von Next einfach mal schreiben lassen und hat diese damit gesichert.

Danach sind wir wieder im YaST Control Center unter System / Network Settings unterwegs.

image

Dort wird unter Network Settings / Routing die Weiterleitung für IPv4 aktiviert (wer hier IPv6 benötigt, bitte zusätzliche diese Option auswählen).

image

Damit fehlt nur noch das Gateway und das ist im YaST in der Textversion nach meiner Meinung fies versteckt.

Der Dialog zur Konfiguration ist unter System / Network Settings / Routing und dann unter der Option Add zu finden.

image

Hier wird das Gateway 172.16.16.1 für den Adapter mit der IP-Adresse 172.16.16.253 konfiguriert und damit die Konfiguration abgeschlossen.

Wer will, kann die VM nochmals neustarten. Bei mir hat es ohne diesen geklappt und der Router war fast fertig, denn natürlich muss noch die Firewall konfiguriert werden, sonst geht bei der Einstellung default nur der Ping durch.

Konfiguration der Firewall

Die Firewall in openSUSE verwendet Zonen, die eine Sammlung von geöffneten Ports und Protokollen darstellen. Ich habe die Firewall auf trusted gesetzt, damit ist ein interner Datenverkehr ohne weiteren Einschränkungen möglich.

image

Dazu werden die Netzwerk-Adapter mittels YaST von der Zone default in die Zone trusted geändert.

image

Enjoy it, b!

Windows 10 Hello mit dem Small Business Server

Mit Hello in Windows 10 existieren eine Reihe von biometrischen Alternativen um sich an einem Windows System zu authentifizieren. Prinzipiell funktioniert Windows Hello auf einem dafür ausgelegten Gerät out-of-the-box. Wird aber das Gerät in einer Domäne (zum Beispiel Windows Server 2012 R2 Active Directory) betrieben, dann muss dort nochmals Hello über GPOs aktiviert werden.

Genau diesen Fall hatte ich kürzlich bei einem Kunden, welcher (nachdem sein Surface Book) in die Domäne aufgenommen wurde, dass Fehlen von Windows Hello bemängelte.

Ausgangssituation

  1. Windows Server 2012R2 (Small Business Essentials) basiertes Active Directory
  2. Windows 10 (1709 Build) Hello fähiges Gerät (Microsoft Surface Book)

Durchgeführte Schritte

Die Planungen für Windows Hello auf der Microsoft Webseite gehen eigentlich von einem Windows Server 2016 basierten Active Directory aus, was ich aber nicht habe und dazu handelt es sich hier um ein reines On-premises Deploment in dem ein Windows Server 2012 Domain Controller ausreicht, ja sogar Windows Server 2008 R2 als Domain und Forrest functional level würde hier noch funktionieren.

image

Damit ist es nicht notwendig die Domain des SBE auf Windows Server 2016 zu bringen und es genügt lediglich die GPOs entsprechend zu aktualisieren.

  1. Download der Gruppenrichtlinien für Windows 10 Build 1709
  2. Update / Einspielen der Gruppenrichtlinien auf dem Domain Controller (Windows Server 2012R2)
  3. Konfiguration der GPO

Die Schritte im Detail

Einspielen der GPOs für Windows 10 Build 1709 (Schritt 2)

Nachdem ich die GPOs heruntergeladen habe, installiere ich diese und kopiere sie mit dem folgenden Befehl in den SysVol Ordner auf dem DC.

Da der DC in englischer Sprache betrieben wird, kommen noch die entsprechenden Pakete hier dazu (2te Zeile).

c:\temp> xcopy "\Program Files (x86)\Microsoft Group Policy\Windows 10 Fall Creators Update (1709)\PolicyDefinitions\*" "%LOGONSERVER%\SysVol\%USERDNSDOMAIN%\Policies\PolicyDefinitions\"

c:\temp> xcopy "\Program Files (x86)\Microsoft Group Policy\Windows 10 Fall Creators Update (1709)\PolicyDefinitions\en-US\*" "%LOGONSERVER%\SysVol\%USERDNSDOMAIN%\Policies\PolicyDefinitions\en-US\"

Damit kennt nun auch der Windows Server 2012R2 die Richtlinien von Windows 10 Build 1709 und wir können Hello konfigurieren.

Konfiguration von Hello über eine GPO (Schritt 3)

Als erstes habe ich eine GPO mit dem Namen “_ Windows Hello for Business“ erstellt und in dieser die folgenden Einstellungen gemacht.

image

Die GPO wurde im Root der Domäne verlinkt. Damit die GPO auch von den PCs gelesen werden kann, habe ich die Domain Computers noch hinzugefügt.

image

Nach dem nächsten GPO refresh hatten alle Geräte die Policy bekommen und ermöglichten die anschließende Konfiguration von Hello (Gesicht oder Finger).

Enjoy it, b!