Je ne suis pas sûr de comprendre
précisément la notion de bureau et de session (sauf au sens de l'appel système setsid), et je ne pense pas que ces notions soit similaires sous Windows et sous Linux. En particulier, je ne suis pas sûr que la notion de bureau ait une définition
précise (ou je ne la connais pas). Faut dire que je ne me sers pas de bureau (mon gestionnaire de fenêtre est un simple icewm ou jwm et je gère mes fichiers par commande). Je suppose que tu appelle bureau une interface qui te fait voir tes fichiers (comme parfois sous KDE ou Gnome), et pas seulement un écran virtuel (Desktop dans la terminologie ICCCM ou EWMH).
En pratique, avec un ssh
convenablement configuré, il suffit de faire (après un éventuel
ssh-add)
ssh -X machinedistante commande args
pour éxecuter la
commande avec ses
args sur la
machinedistante. Si tu tiens à avoir un bureau complet (mauvaise idée à mon avis) débrouilles toi pour que la
commande lance ce que tu appelles un bureau. Ssh se comporte come un proxy pour le protocole X11 [
fr.wikipedia.org] (et ton gestionnaire de fenêtres reste généralement local). Par contre il faut prendre le temps de se documenter sur ssh (il y a des livres consacrés à ça) et il peut être utile de générer une clef de cryptage (par ssh-keygen). [
bellet.info] [
polydistortion.net] [
www.supinfo-projects.com]
Bref, je crois que tu ne peux pas
précisément définir ce que tu appelles un bureau distant. En plus, je ne vois pas l'intérêt. Au contraire il est utile de mélanger sur le même écran des applications qui tournent sur des machines différentes. Pour la plupart de mes écrans, c'est le cas, et je ne ressens pas le besoin d'avoir un bureau (et j'aurais de la peine à le définir, au niveau programmatique notamment; je crois que ICCCM [
en.wikipedia.org] ou EWMH [
standards.freedesktop.org] ne le définissent pas précisément car les hiérarchies de fichiers que voient les applications clientes d'un même serveur X11 sont généralement disjointes; les desktops y sont des écrans virtuels.).
Qu'appelle tu un bureau sur un écran où tournent trois applications graphiques distantes différentes sur trois machines distinctes et où le gestionnaire de fenêtres tourne sur la machine locale? Sur quelle machine tournerait le bureau et quels fichiers il afficherait?
Si tu veux te connecter entièrement à distance il y a aussi XDMCP [
fr.wikipedia.org] mais le faire fonctionner via ssh (ou peut être un tunnel IP) ne me parait pas très simple. Et tu perds la possibilité de travailler localement.
En quoi les possibilités d'affichage distant par X11 et ssh ne te suffisent pas? Bien sûr, les fichier distants restent distants (et je trouve ça mieux ainsi, car les temps de réponse sont très différents). Si tu veux magiquement voir tous tes fichiers distants (y compris ceux à New York quand tu viens de t'y connecter depuis Paris) réunis aux fichiers locaux, Linux ne le permet pas simplement (sauf unionfs par dessus NFS ou autre). Pour ça il y aurait Plan9 ou Hurd. Et il me semble que Windows ne le fait pas non plus (CIFS ou Samba est juste un système de fichier distant comme NFS, pas un système de fichier distribué).
Tu as aussi des applications de synchronisation comme unison ou autre.
J'ai répondu comme j'ai pu à une question que j'ai trouvée imprécise.
----
Basile STARYNKEVITCH
Membre de l'
APRIL « promouvoir et défendre le logiciel libre » - adhérez vous aussi à l'APRIL!
Projet logiciel libre:
RefPerSys