WinBoat oder Wine: Windows-Programme auf einem Linux-GPU-Server
Es gibt zwei Wege, ein Windows-Programm unter Linux auszuführen. Wine (und Proton, Valves Version davon) übersetzt Windows-Aufrufe für Linux: kein Windows im Inneren, und das Programm nutzt die GPU-Treiber von Linux. WinBoat macht das Gegenteil: Es startet ein echtes Windows 11 in einem Docker-Container (das Projekt dockur/windows, mit QEMU/KVM) und zeigt jedes Windows-Programm über den RemoteApp-Modus von FreeRDP als Linux-Fenster an. Wir haben WinBoat auf einem Linux-GPU-Server ohne Bildschirm getestet und mit Wine verglichen.
Die Ergebnisse auf einen Blick
- WinBoat läuft auf einem Server ohne Bildschirm: Die Oberfläche ist eine Electron-App, die wir auf einem virtuellen Bildschirm bedient haben. Sie fand Docker, KVM und FreeRDP und installierte Windows 11 Pro selbstständig.
- 16 Minuten Installation: 1,5 Minuten für den Download von Windows 11 bei Microsoft (8,5 GB), 14 Minuten unbeaufsichtigte Installation. Danach 19 GB belegt auf der Festplatte des Servers.
- 4,2 GB RAM belegt, solange Windows läuft, etwa 0,4 vCPU, wenn Windows nichts tut.
- Keine GPU in Windows: Windows sieht nur einen „Red Hat VirtIO GPU DOD controller“ und den „Microsoft Remote Display Adapter“, ohne 3D-Beschleunigung. WinBoat 0.9.2 reicht die GPU nicht durch.
- Einzelne App-Fenster funktionierten ohne Bildschirm nicht: Die RDP-Verbindung braucht einen Soundserver, danach stürzten die RemoteApp-Fenster ab (sway) oder blieben eingefroren (Xvfb). Der vollständige Windows-Desktop über RDP funktionierte.
- Wine und Proton behalten die GPU: Dasselbe Windows-Spiel erreichte mit Wine etwa 95 fps und mit Proton 85 bis 96 fps, auf derselben Intel UHD 770.
Testaufbau
| Element | Wert |
|---|---|
| Server | Linux (Debian 13), 4 vCPU, 10 GB RAM, Intel UHD 770 (geteilte GPU), Kernel 7.3, KVM im Server verfügbar (verschachtelte Virtualisierung) |
| WinBoat | 0.9.2 (.deb von GitHub), Docker 29.9, FreeRDP 3.15 |
| Windows | Windows 11 Pro, Englisch, WinBoat-Standardwerte: 2 Kerne, 4 GB RAM, 32 GB Festplatte, Image dockur/windows:6.05 (800 MB) |
| Anzeige | sway headless (Wayland + Xwayland), dann Xvfb für den RemoteApp-Test |
1. WinBoat auf einem Server installieren
WinBoat prüft seine Voraussetzungen in einem Assistenten: mindestens 4 GB RAM, KVM, Docker mit Compose v2 und FreeRDP 3. Unser Server hatte alles, auch KVM: Der Server ist selbst eine virtuelle Maschine, und WinBoat startet darin eine zweite.
apt install ./winboat-0.9.2-amd64.deb freerdp3-x11
usermod -aG docker,kvm ihrbenutzer
Der Assistent fragt nach Windows-Version, Sprache, Windows-Benutzername und -Passwort sowie nach den
Ressourcen für Windows. Nach einem Klick auf Install schreibt WinBoat eine docker-compose.yml,
lädt Windows 11 bei Microsoft herunter und installiert es ohne weitere Fragen:
| Schritt | Dauer |
|---|---|
| Download von Windows 11 (ISO, 8,5 GB) | 1 min 30 s |
| Unbeaufsichtigte Windows-Installation | 14 min 08 s |
| Gesamt, von „Install“ bis „Windows has been installed successfully“ | 15 min 52 s |
2. Was es kostet
| Ressource | Gemessen |
|---|---|
| Vom Container belegter RAM | 4,15 GiB, solange Windows läuft |
| CPU während der Installation | 1 bis 2 Kerne |
| CPU in den ersten 15 Minuten nach der Installation | etwa 2 Kerne (Windows schließt seine Einrichtung ab) |
| CPU mit Windows im Leerlauf | etwa 0,4 vCPU, kurze Spitzen bis 1,3 |
| Festplatte auf dem Server | 19 GB: 8,5 GB ISO im Ordner + 11 GB für die Windows-Festplatte |
Auf einem Server mit 8 GB RAM nimmt das Windows von WinBoat die Hälfte, bevor Sie ein einziges Programm öffnen. Mit Wine muss nichts reserviert werden: Nur das gestartete Programm belegt Speicher.
3. Die GPU in Windows
Wir haben in Windows PowerShell geöffnet und die Grafikadapter aufgelistet:
Name : Red Hat VirtIO GPU DOD controller
Name : Microsoft Remote Display Adapter
Der Container erhält /dev/kvm, aber nicht die GPU, und der „DOD“-Treiber (nur Anzeige) hat kein
3D. Windows zeichnet also alles auf der CPU: gut für ein Büroprogramm, nicht für ein Spiel. Die
WinBoat-Entwickler kündigen GPU-Beschleunigung für Version 1.0 an. Deshalb haben wir den
SuperTuxKart-Benchmark in WinBoat nicht gestartet:
4. Programmfenster auf einem Server ohne Bildschirm
Die Hauptfunktion von WinBoat ist, jedes Windows-Programm in einem eigenen Linux-Fenster zu zeigen (FreeRDP RemoteApp). Auf unserem Server ohne Bildschirm:
- Der erste Start schlug fehl (
FreeRDP process returned error code '138'): WinBoat verlangt von FreeRDP Ton über PulseAudio, und ein Server hat keinen Soundserver. Den PulseAudio-Dienst von PipeWire in der Sitzung zu starten, löste das (apt install pipewire-pulse wireplumber). - Auf dem virtuellen sway-Bildschirm (Xwayland) brach FreeRDP danach mit einem X11-Fehler
BadMatchab, sobald sich das Fenster öffnete. - Auf Xvfb mit einem einfachen Fenstermanager öffneten sich die Notepad-Fenster (die Fensterliste zeigte „Untitled - Notepad“), aber ihr Inhalt blieb auf dem Windows-Anmeldebild stehen.
- Der vollständige Windows-Desktop über RDP funktionierte sofort (Video oben im Artikel).
WinBoat ist für einen Linux-Desktop-PC mit echtem Bildschirm gedacht. Auf einem Server nutzen Sie den
vollständigen Windows-Desktop (Remotedesktop von Ihrem Computer über einen SSH-Tunnel zu Port 47300)
oder starten dockur/windows direkt mit Docker Compose: Darauf baut WinBoat auf.
WinBoat, Wine/Proton oder Windows 11?
| Wine / Proton | WinBoat | Windows-11-Option | |
|---|---|---|---|
| Was läuft | das Windows-Programm, unter Linux | ein vollständiges Windows im Container | Windows 11 Pro auf dem ganzen Server |
| GPU für das Programm | ja (OpenGL, Vulkan, DXVK) | nein | ja (Intel-Treiber) |
| SuperTuxKart 1080p | etwa 95 fps (Wine), 85 bis 96 fps (Proton) | nicht gestartet, keine GPU | 111 fps |
| Belegter RAM | nur der des Programms | 4 GB für Windows | der ganze Server |
| Einrichtung | Minuten | 16 min, automatisch | für Sie erledigt |
| Ideal für | Spiele und Programme, die bekanntermaßen laufen | Büro- und Fachprogramme, die mit Wine nicht laufen | alles andere |
Unser Rat:
- Spiele: Wine oder Proton, auf der GPU. Siehe Steam und Proton auf einem Cloud-GPU-Server und Windows-Spiele mit Wine.
- Ein Windows-Büro- oder Fachprogramm, das mit Wine nicht läuft: WinBoat (oder dockur/windows) passt, wenn Sie ihm 4 GB RAM geben und auf einem Server den vollständigen Windows-Desktop nutzen.
- Alles andere, oder ein Windows-Programm, das die GPU braucht: die Windows-11-Option (einmalig 10 €), mit dem Grafiktreiber von Intel.
WinBoat braucht KVM in Ihrem Server (verschachtelte Virtualisierung). Auf unserem Testserver funktionierte es; fragen Sie uns per E-Mail, ob sie auf Ihrem aktiviert ist. Da Windows 4 GB belegt, wählen Sie iGPU Power (4 vCPU, 14 GB RAM) statt iGPU Start (2 vCPU, 8 GB).
Lieber sofort einsatzbereit? Fragen Sie bei der Bestellung per E-Mail danach (contact@linuxgpu.eu): Wir können Ihnen den Server mit Wine, WinBoat oder Steam serverseitig vorinstalliert und eingerichtet liefern.
Systeme, die sofort spielbereit sind. Die Systeme, die wir standardmäßig installieren, sind bereits dafür eingerichtet: Debian 13 mit aktuellem Kernel (7.3), den Intel-GPU-Treibern und Mesa (OpenGL, Vulkan, VA-API-Videokodierung), und Windows 11 (Option) mit dem Grafiktreiber von Intel und einem von der GPU gerenderten Remotedesktop. Kein Treiber zu suchen: Spiel und Sunshine installieren und loslegen.
Ausprobieren
Zu den Angeboten: iGPU Power kostet 29,99 € netto pro Monat, iGPU Start 14,99 €.