AA_figuren-mit-puzzle_17423102_123rf_art3d.jpg

© Art3d, 123rf.com

Cygwin: Linux unter Windows nutzen

Teamwork

Mit der Cygwin-Umgebung laufen unter Windows mehr Linux-Anwendungen als anders herum unter Wine. Auch das Ausführen grafischer Programme eines Linux-Rechners über das Netz gelingt mit wenig Aufwand.

Auch wenn Microsoft Linux nicht mehr wie früher vollständig totschweigt, so herrscht zwischen Windows- und Linux-Rechnern von Haus aus immer noch Funkstille: Das unter Linux ohne Weiteres mögliche Starten von grafischen Linux-Programmen über SSH klappt von Windows aus nicht.

Dies ändert sich, sobald Sie die Cygwin-Umgebung [1] installieren. Dabei handelt es sich um eine Windows-Laufzeitumgebung für Linux-Programme (Abbildung 1), also eine Art Gegenstück zur Linux-Software Wine [2]. Es besteht jedoch ein grundlegender Unterschied: Während Wine fertige Windows-Binaries startet, gilt es, Linux-Programme für die Cygwin-Umgebung anzupassen und neu zu kompilieren (siehe Kasten "Wie Cygwin funktioniert").

Abbildung 1: Wie bei Wine handelt es sich auch bei Cygwin um eine Laufzeit-Zwischenschicht, die zwischen System-Calls von Windows und Linux vermittelt. Anders als bei Wine müssen die Programme die benötigte Laufzeitumgebung jedoch selbst mitbringen.

Wie Cygwin funktioniert

Linux-Programme laufen vor allem deshalb nicht unter Windows, weil sich Linux- und Windows-System-Calls voneinander unterscheiden, also die Schnittstellen, über die Programme mit dem Betriebssystem interagieren. Die Cygwin-Umgebung schiebt eine Schicht zwischen Anwendung und Betriebssystem ein, welche die Linux-System-Calls in die passenden Windows-Äquivalente übersetzt.

Anders als bei Wine, das originale Windows-Programmdateien quasi Huckepack startet, muss man die Cygwin-Zwischenschicht in die ausführbare Datei jedes Programms einkompilieren. Dazu gibt es in der Cygwin-Umgebung eine modifizierte GCC-Fassung, die aus dem nur geringfügig modifizierten Quellcode eines Unix-Programms Windows-EXE- und DLL-Dateien erzeugt.

Das Cygwin-Projekt bringt Pakete für die Bash, SSH und den X-Server und viele weitere Komponenten gebrauchsfertig mit, die Sie über einen grafischen Installer mit wenigen Mausklicks installieren und aktuell halten. So statten Sie Windows ohne großen Aufwand mit SSH und einem X-Server aus.

OpenSSH und das X-Window-System sind gefragte Highlights der für Cygwin verfügbaren Linux-Programme. Da Linux-Ports mit Cygwin-Unterstützung oft sehr leicht gelingen, stehen Windows-Versionen vieler weiterer Linux-Programme zum Einsatz bereit (siehe Kasten "Cygwin Ports").

Cygwin Ports

Cygwin Ports spielen Sie mit dem gleichen Installer ein wie das Cygwin-Grundsystem selbst. Allerdings dürfen Sie die Einrichtungsroutine dazu nicht mit einem Doppelklick aus dem Explorer heraus starten, sonst akzeptiert diese die Signatur des Cygwin-Ports-Repositorys nicht. Teilen Sie dem Installer diese daher auf der Cygwin-Konsole mit

$ cygstart -- /Pfad/zu/setup-x86.exe -K http://cygwinports.org/ports.gpg

Bei der Frage nach dem Download-Mirror geben Sie ftp://ftp.cygwinports.org/pub/cygwinports ein, und klicken Sie auf Add. Falls Sie einen deutschen Mirror [7] nutzen möchten, darf dieser nicht auf demselben Server liegen wie der zuletzt benutzte Download, sonst erkennt ihn der Cygwin-Installer nicht als neue Quelle. Die Download-URL muss auf das Verzeichnis cygwinports/ auf dem Server zeigen.

Noch sind nicht alle Programme für die 64-Bit-Architektur konvertiert [8], sodass es sich eventuell lohnt, auch auf einem 64-Bit-System die 32-Bit-Variante zu installieren.

Zu den Highlights in der Liste der portierten Programme zählen Abiword, Amarok, Apache2, Avidemux, Bluefish, Calligra Office, Dia, Digikam, Dvdauthor, Emacs, Espeak, Evolution, Ffmpeg, Filezilla, Fluidsynth, Gimp, Git, Gnucash, Gnumeric, Gnuchess, Inkscape, Jokosher, Kate, Kmail, Kontact, Kstars, Monodevelop, Mplayer, Scribus und Xmms2.

Außerdem stehen die Desktop-Umgebungen Gnome, KDE, LXDE, Mate, ROX und XFCE inklusive vieler zugehöriger Komponenten als Ports bereit.

Nur ein paar Mausklicks

Bei der Bedienung kommt Cygwin Windows-Anwendern ohne Konsolenerfahrung entgegen: Mit einem Klick auf setup_x86.exe [3] (oder setup_x86_64.exe [4] für 64-Bit-Systeme) starten Sie das grafische Installationsprogramm. Danach erfragt das Setup-Programm das Root-Verzeichnis, wofür es C:\cygwin vorschlägt. Alle installierten Dateien liegen später unterhalb dieses Ordners, und zwar in einem gewöhnlichen Linux-Filesystem-Layout.

Nicht mehr ganz so Windows-typisch ist die eingebaute automatische Auflösungen von Paketabhängigkeiten. Dank dieser genügt es, zum Einrichten einer Umgebung zum Ausführen von Remote-X-Programmen die Pakete xinit, openssh und xterm auszuwählen (Abbildung 2). Alle Abhängigkeiten, wie etwa den X-Server oder die Cygwin-Laufzeitumgebung, installiert das Setup-Programm dann automatisch. Dabei kommt ein Download von etwa 70 MByte Umfang zusammen.

Abbildung 2: Der grafische Installer von Cygwin löst die Abhängigkeiten ausgewählter Komponenten automatisch auf.

Beim Auffinden dieser Pakete in der langen Liste hilft das Suchfeld am oberen Fensterrand. Ein Klick auf Skip wechselt zwischen Installieren, Updaten, Deinstallieren oder Überspringen. Zum Aktualisieren aller installierten Pakete starten Sie das Setup-Programm, ohne die Paketauswahl zu verändern.

Erste Schritte

Sofern Sie das nicht explizit abgewählt haben, erstellt der Installer einen Starter für die Cygwin-Konsole auf dem Desktop und im Windows-Startmenü. Im Startmenü-Ordner Cygwin-X landet außerdem ein Eintrag zum Starten des X-Servers ohne Umweg über die Cygwin-Konsole.

Öffnen Sie zunächst das Cygwin Terminal. Im Konsolenfenster (Abbildung 3) begrüßt Sie eine weitgehend unmodifizierte Bourne Again Shell. Die Cygwin-Bash versteht allerdings neben Unix-Dateipfaden auch die Windows-Version mit Backslash und Laufwerksbuchstaben. Die gewohnte Shell lässt sich daher uneingeschränkt für Dateioperationen und Skripting innerhalb der Windows-Umgebung nutzen.

Abbildung 3: Linux unter Windows: In der Cygwin-Umgebung fühlen sich Linux-Geeks dank der gewohnten Bash heimisch.

Absolute Unix-Pfadangaben wie /home übersetzt die Cygwin-Variante der Shell in Pfade relativ zum Installationsordner von Cygwin (c:\cygwin respektive c:\cygwin64). Entscheidend ist dabei auch, dass EXE-Dateien sich ohne Endung aufrufen lassen: Alle nach Cygwin portierten Programmdateien müssen diese Namenserweiterung zwar erhalten, damit sie sich unter Windows ausführen lassen. Dennoch funktionieren auf der Cygwin-Konsole Aufrufe wie /usr/bin/xterm, und auch alle für Linux geschriebenen Bash-Skripte bleiben verwendbar.

Der Cygwin-X-Server basiert auf dem Original von X.org, wurde bei der Portierung allerdings leicht erweitert. Die Linux-Programme, die über das Netz auf ihn zugreifen, merken davon aber nichts, sodass es beim Remote-Arbeiten mit Linux-Rechnern keine Probleme gibt.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 6 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Linux-Applikationen unter Windows nutzen mit Cygwin
    Cygwin bringt die bekannten und beliebten Tools aus der Linux-Welt auf Windows. So arbeiten Sie mit gewohnten Programmen und nutzen Skripte plattformübergreifend.
  • Windows 8: Shell und andere Linux-Tools nachrüsten
    Langjährige Linux-Anwender können einen Windows-Rechner nur noch nutzen, wenn sie lieb gewonnene Linux-Tools nachinstalliert haben. Auch für Windows 8 gibt es diverse Zusatzprogramme, die den gewohnten Linux-Komfort nachrüsten.
  • K-splitter
  • Synchron
    Wer gleiche Datenbestände unter Linux und Windows benötigt, ist nicht unbedingt auf einen Fileserver angewiesen. Unison und Cygwin helfen, Verzeichnisse auf beiden Systemen synchron zu halten.
  • Windows-Linux-Connectivity auf dem Desktop
    Schwerpunkt dieser Ausgabe ist die Windows-Linux-Connectivity. Damit muss aber nicht nur die immer wieder bemühte Fähigkeit von Linux gemeint sein, als File- und Print-Server (Samba) zu dienen - mit geeigneter Software verwandelt sich der Windows-Rechner in einen X-Window-Client.
Kommentare

Infos zur Publikation

LU 04/2017: SPEZIAL-DISTRIBUTIONEN

Digitale Ausgabe: Preis € 5,95
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Aktuelle Fragen

WLAN lässt sich nicht einrichten
Werner Hahn, 21.03.2017 14:16, 0 Antworten
Dell Latitude E6510, Ubuntu 16.4, Kabelbox von Telecolumbus. Nach Anklicken des Doppelpfeiles (o...
"Mit Gwenview importieren" funktioniert seit openSuse 42.2 nicht mehr
Wimpy *, 20.03.2017 13:34, 2 Antworten
Bisher konnte ich von Digitalkamera oder SD-Karte oder USB-Stick Fotos mit Gwenview importieren....
Ich habe eine awk Aufgabe und bekomme es nicht so Recht hin
Dennis Hamacher, 10.03.2017 18:27, 1 Antworten
Ich hoffe Ihr könnt mir dabei helfen oder mir zeigen wie der Befehl richtig geschrieben wird. Ich...
Unter Linux Open Suse Leap 42.1 einen Windows Boot/ ISO USB Stick erstellen...
Tim Koetsier, 07.03.2017 15:26, 1 Antworten
Hallo, weiß jemand wie ich oben genanntes Vorhaben in die Tat umsetzen kann ? Wäre echt dankba...
Druckertreiber installieren OpenSuse42.1
Tim Koetsier, 07.03.2017 15:22, 1 Antworten
hallo, kann mir BITTE jemand helfen ich verzweifel so langsam. Habe einen Super Toner von Canon...