Linux dans un environnement de développement principalement Windows

8

Un peu d'histoire: notre boutique a traditionnellement géré une pile logicielle Microsoft mais maintenant nous prévoyons d'utiliser Linux embarqué et je me retrouve dans le rôle de Columbus: conquérir le nouveau monde. Je mentionne cela parce que cela signifie que je manque de contexte pour interpréter ce que vous pensez être une réponse simple. Si vous pouvez expliquer les choses par rapport au fonctionnement de Windows, cela facilitera grandement la compréhension.

Si j'ai bien compris l'idée de X-Windows, une application est un client X et les API de fenêtrage envoient / reçoivent des messages d'interface utilisateur à un serveur X via un socket TCP (envoie des commandes de dessin de fenêtre au serveur X et reçoit la souris et les messages d'activité du clavier).

Si je comprends bien, l'utilisation de sockets signifie que le code d'application peut s'exécuter sur une boîte Unix tandis que l'interface utilisateur s'exécute sur un serveur X s'exécutant sur (par exemple) l'un des

  • le même ordinateur
  • une autre box Unix exécutant X-server sur le même réseau
  • une boîte Windows 'W' exécutant X-server sur le même réseau
  • toute boîte exécutant un serveur X n'importe où sur Internet, les pare-feu et le routage fournis sont configurés de manière appropriée pour autoriser les sockets requis.

Sur mon bureau, j'ai un hôte Linux Mint13 utilisant le bureau Cinnamon et nommé ForwardUntoDawn . Il est connecté à mon réseau 192.168.174 en tant que 35, et mon Win7 est sur le même réseau que 11. Ils peuvent se cingler et SAMBA permet le partage de fichiers entre eux. J'ai installé telnetd et sshd sur ForwardUntoDawn et je peux établir des sessions telnet et ssh Win7 et m'authentifier pour obtenir une ligne de commande.

Sur mon système Win7, j'ai Xming installé avec les icônes de bureau Xming et Xlaunch. En exécutant Xlaunch, je réponds aux invites ainsi:

  • Fenêtres multiples / affichage 0
  • Démarrer le programme: gimp en utilisant SSH (C: \ Cygwin \ bin \ SSH.exe)
  • Presse-papiers oui, pas de serveur de polices ni de paramètres

Cela entraîne momentanément une fenêtre de commande noire mais elle disparaît avant que je puisse lire le message.

Quelqu'un peut-il me guider sur les prochaines étapes ou des réponses plus appropriées aux besoins de Xming? (J'ai choisi gimp uniquement parce que je sais qu'il est installé et fonctionne.)

Notez que pour utiliser la réponse ci-dessous, lisez également les commentaires et REMARQUE, vous devez démarrer votre cygwin xserver en utilisant cygwin \ bin \ startxwin.exe afin de le faire fonctionner, j'imagine que cela initialise quelques variables d'environnement.


Je n'ai pas fini par utiliser Xming. Après avoir défini les paramètres ssh directement sur la boîte Linux et réussi à utiliser les outils Cygwin, j'ai fait un autre essai avec Xming. Les applications lancées à l'aide de Xlaunch démarreraient, puis disparaîtraient brusquement. Le problème ne s'est pas produit en utilisant strictement les outils Cygwin.

Peter Wone
la source

Réponses:

3

Je ne sais pas quels sont les paramètres par défaut pour SSH.EXE de cygwin, mais pour openssh, la valeur par défaut est de ne pas activer le transfert X11.

Cette valeur par défaut peut être remplacée en modifiant le fichier de configuration du client ssh (par exemple ~ / .ssh / config sur une boîte unix / linux) ou en utilisant l' -Xoption sur la ligne de commande ssh - par exemplessh -X remotehost gimp

Il pourrait être utile de vérifier si cygwin SSH.exe a la même option par défaut et / ou la même option ou similaire.

BTW, que se passe-t-il lorsque vous accédez à la zone Mint puis exécutez à gimppartir de la ligne de commande? si cela ne fonctionne pas, essayez à nouveau avec -X.

Enfin, vous voudrez peut-être essayer putty en tant que client ssh sur la boîte Windows.

cas
la source
Lorsque je passe à la boîte Mint et que j'exécute Gimp à partir de la ligne de commande, il indique Erreur: Impossible d'ouvrir l'affichage:
Peter Wone
OK, cela signifie que vous devez activer le transfert X11 via votre connexion ssh. Avec openssh, vous utilisez -Xsur la ligne de commande ssh. C'est probablement le même ou similaire sur cygwin ssh. L'URL suivante indique qu'elle est presque identique: x.cygwin.com/docs/ug/using-remote-apps.html
cas
Quand je fais la même chose à partir d'une ligne de commande "ssh -l mylogin -X 192.168.174.35 gimp" j'obtiens la même chose sauf qu'elle n'est pas préfixée par "Erreur:
Peter Wone
vérifiez également /etc/ssh/sshd_configla case Mint et assurez-vous que le transfert X11 est autorisé avecX11Forwarding yes
cas
Activer le transfert X11, dois-je le faire sur la boîte où le serveur X s'exécute (Win7) ou où le client s'exécute (gimp sur Mint13)?
Peter Wone