simplearetenir
Posts: 18
Joined: Wed May 15, 2013 9:07 am

SSH et affichage sur HDMI

Mon May 20, 2013 7:45 am

Bonjour,

J'ai un problème :
Je me connecte sur le rasp en ssh à partir de mon mac. J'aimerais lancer à partir du mac une application graphique style eog sur le raspberry pour qu'elle s'affiche sur l'ecran connecté au HDMI de mon raspberry.
Or lorsque je lance la commande, j'ai une erreur :

Code: Select all

Cannot open display: 
Lorsque je fais un export $DISPLAY, je n'obtient rien.
Je ne veux pas que l'appli s'ouvre en local sur le mac, mais bien sur le rasp.
Le rasp est en wheezy-raspbian.

Pouvez-vous m'aider ?

Merci

JumpZero
Posts: 1131
Joined: Thu Mar 28, 2013 7:35 pm
Location: 127.0.0.1

Re: SSH et affichage sur HDMI

Mon May 20, 2013 9:38 pm

Bjr
Tu tapes
startx
depuis ta console ssh, et ça t'ouvre une session graphique sur le périphérique connecté en HDMI.
Depuis cette session tu lances ton appli.
Connecter le périphérique HDMI avant de booter pour qu'il soit bien reconnu.

Edit : zut j'ai oublié un gros détail il te faut un clavier ou a minima une souris pour pouvoir lancer ton appli depuis la session graphique lancée par startx...
--
Jmp0

simplearetenir
Posts: 18
Joined: Wed May 15, 2013 9:07 am

Re: SSH et affichage sur HDMI

Tue May 21, 2013 4:54 am

Je crois que tu n'as pas compris ma demande.
Le rasp est seulement relier à un écran, tout dois être lancer à partir du mac en ssh et s'afficher sur le rasp.

ToOnS
Posts: 492
Joined: Sat Mar 23, 2013 10:29 am

Re: SSH et affichage sur HDMI

Tue May 21, 2013 11:55 am

Salut , si tu veux afficher ton mac sur l'ecran du RPI (c'est bien ca ? moi aussi j'ai du mal a comprendre) il faut passer par un VNC

simplearetenir
Posts: 18
Joined: Wed May 15, 2013 9:07 am

Re: SSH et affichage sur HDMI

Tue May 21, 2013 1:14 pm

Non j'aimerais juste lancer des applis graphique sur l'écran du raspberry.

Zoolander06
Posts: 203
Joined: Fri Oct 26, 2012 3:25 pm

Re: SSH et affichage sur HDMI

Tue May 21, 2013 2:25 pm

Salut,

Moi je comprend parfaitement ta question, je n'ai absolument pas la réponse, mais j'avoue que ça m'intéresse aussi !

Donc en gros, ce que veut simplearetenir (et moi du coup), c'est lancer une application depuis la console SSH, mais que celle ci s'exécute dans la session X "locale".

Donc, toujours si j'ai bien compris, X tourne déjà sur le RPi, mais il n'y a ni clavier ni souris.

Et le pire, c'est qu'à l'école, j'avais appris comment lancer un soft sur un serveur X distant, même qu'on trouvait ça drôle d'afficher des photos de cul sur le terminal d'un autre élève quand le prof passait derrière lui... Mais tout ça est loin, et non seulement je ne m'en souviens plus, mais je doute sincèrement que 15 ans après, la méthode soit toujours la même.

JumpZero
Posts: 1131
Joined: Thu Mar 28, 2013 7:35 pm
Location: 127.0.0.1

Re: SSH et affichage sur HDMI

Tue May 21, 2013 7:29 pm

Hi,

Si, j'ai bien compris ta question, essaies et tu verras que ça marche.
Depuis ton mac connecté en ssh tu lance la commande "startx"
Et comme pour X l’écran par défaut c'est celui connecté sur le port HDMI, la session graphique s'ouvrira sur l’écran connecté au Raspberry.
Mais une fois la session ouverte si t'as pas de clavier/souris... il faut fouiller et trouver comment par exemple:
- lancer l'application que tu veux depuis ssh en redirigeant la sortie sur le bon écran (ça doit pouvoir se faire, à chercher)
- il y a je ne sais plus ou un fichier de conf qui précise les applis lancées automatiquement au démarrage de X. Tu met ton appli la dedans et ce devrait marcher.
--
Jmp0

simplearetenir
Posts: 18
Joined: Wed May 15, 2013 9:07 am

Re: SSH et affichage sur HDMI

Tue May 21, 2013 7:41 pm

C'est le "ça doit pouvoir se faire" que j'aimerais connaître

LeSanglier
Posts: 226
Joined: Fri Jan 11, 2013 8:11 pm
Location: In Hell with God
Contact: Website

Re: SSH et affichage sur HDMI

Tue May 21, 2013 8:11 pm

Salut,

Après s'être connecter en ssh :

Code: Select all

[~] ➔ export DISPLAY=:0.0
[~] ➔ xhost +localhost
localhost being added to access control list
[~] ➔ lxterminal
Le terminal X, ou tout autre application X, s'affiche sur l'écran du serveur Raspberry.
Last edited by LeSanglier on Tue May 21, 2013 8:45 pm, edited 1 time in total.
Mon blog sur le Raspberry Pi : http://framboisepi.fr/
Pour avoir plus de chance d'avoir une réponse à votre question,
allez sur le forum français Rasberry Pi : http://forum.raspfr.org

User avatar
DaveDriesen
Posts: 113
Joined: Sun Mar 31, 2013 8:28 pm
Location: Top of the food chain
Contact: Website

Re: SSH et affichage sur HDMI

Tue May 21, 2013 8:35 pm

Vous devez définir la variable DISPLAY par un export comme LeSanglier a expliqué.

En utilisant bash, c'est aussi possible d'utiliser un oneliner:

Code: Select all

DISPLAY=:0.0 votre-commande
Vous lancez la commande dans votre session ssh, mais l'execution apparaît sur votre session X primaire (0.0)

Par exemple:

Code: Select all

root@pdmrpi1:~# DISPLAY=:0.0 xev
Outer window is 0x1600001, inner window is 0x1600002

PropertyNotify event, serial 8, synthetic NO, window 0x1600001,
    atom 0x27 (WM_NAME), time 1746367618, state PropertyNewValue

PropertyNotify event, serial 9, synthetic NO, window 0x1600001,
    atom 0x22 (WM_COMMAND), time 1746367619, state PropertyNewValue

PropertyNotify event, serial 10, synthetic NO, window 0x1600001,
    atom 0x28 (WM_NORMAL_HINTS), time 1746367619, state PropertyNewValue
^C
Si cette syntaxe vous encore répond "Can't open display: %s", c'est possible que vous devez donner la permissions d'executer des commandes sur l'hôte session à la machine locale (la session ssh n'a pas de permission d'executer votre commande sure le display primaire).

Dans la session X de votre hôte, executez:

Code: Select all

xhost +localhost
localhost being added to access control list
Il faut mettre cette commande dans /etc/.xinitrc ou qqc comme ça si votre hôte ne dispose pas d'un clavier. xinitrc est lancé quand votre session x commence.

Dave Driesen
Linux dev and oldskool elite

JumpZero
Posts: 1131
Joined: Thu Mar 28, 2013 7:35 pm
Location: 127.0.0.1

Re: SSH et affichage sur HDMI

Tue May 21, 2013 11:22 pm

simplearetenir wrote:C'est le "ça doit pouvoir se faire" que j'aimerais connaître
Le gestionnaire de bureau de base Raspbian s'appelle: lxde
en tapant "start application when lxde starts" dans Google on trouve en tête de résultat qu'il faut ajouter l'application dans /etc/xdg/lxsession/LXDE/autostart
Donc en 2 commandes tu y arrives:

Code: Select all

sudo nano /etc/xdg/lxsession/LXDE/autostart
tu ajoute une ligne avec le nom de l'appli précédé de @
exemple j'ai ajouté @lxtask
c'est le gestionnaire de tâches (c'est un exemple). Tu sort de l'éditeur nano avec Ctrl-X et tu répond yes pour sauvegader. Et maintenant tu tapes

Code: Select all

startx
Et ça marche

Remarque: ce type de question n'est pas spécifique au Raspberry Pi mais plutôt a Debian ou X ou lxde dans ce cas là, mais d'une manière générale le web regorge de ressources sur Linux. Le plus dur étant, c'est vrai, de formuler la requête.
Amicalement
--
Jmp0

Zoolander06
Posts: 203
Joined: Fri Oct 26, 2012 3:25 pm

Re: SSH et affichage sur HDMI

Wed May 22, 2013 9:49 am

DaveDriesen wrote: En utilisant bash, c'est aussi possible d'utiliser un oneliner:

Code: Select all

DISPLAY=:0.0 votre-commande
Vous lancez la commande dans votre session ssh, mais l'execution apparaît sur votre session X primaire (0.0)
Par contre, dans quelle session est ce que la commande s'exécute ?

En gros, quand je vais fermer ma session SSH, est ce que ça va killer l'application que j'ai lancé ? Et le cas échéant, comment faire pour que ça ne le kille pas ? Est ce qu'on peut utiliser nohup ?

J

fdufnews
Posts: 289
Joined: Fri Oct 07, 2011 5:37 pm

Re: SSH et affichage sur HDMI

Wed May 22, 2013 9:51 am

Et le cas échéant, comment faire pour que ça ne le kille pas ?
utiliser screen

simplearetenir
Posts: 18
Joined: Wed May 15, 2013 9:07 am

Re: SSH et affichage sur HDMI

Wed May 22, 2013 4:33 pm

Eh non ça ne marche toujours pas !

Je tape les commandes :

Code: Select all

export DISPLAY=:0.0
host +localhost
Et là j'ai encore le message d'erreur :

Code: Select all

xhost:  unable to open display ":0.0"
Quelqu'un a une idée ?

JumpZero
Posts: 1131
Joined: Thu Mar 28, 2013 7:35 pm
Location: 127.0.0.1

Re: SSH et affichage sur HDMI

Wed May 22, 2013 8:24 pm

Je n'ai jamais parlé de "export display"
Je t'ai donné 2 commandes
1- editer un fichier
2- startx
...
Up to you
--
Jmp0

LeSanglier
Posts: 226
Joined: Fri Jan 11, 2013 8:11 pm
Location: In Hell with God
Contact: Website

Re: SSH et affichage sur HDMI

Thu May 23, 2013 9:04 am

@JumpZero : Tu n'as pas vraiment répondu à sa première question.

Regarde mon aide-mémoire : http://framboisepi.fr/2013/05/21/lancem ... x-par-ssh/
Mon blog sur le Raspberry Pi : http://framboisepi.fr/
Pour avoir plus de chance d'avoir une réponse à votre question,
allez sur le forum français Rasberry Pi : http://forum.raspfr.org

JumpZero
Posts: 1131
Joined: Thu Mar 28, 2013 7:35 pm
Location: 127.0.0.1

Re: SSH et affichage sur HDMI

Thu May 23, 2013 9:58 am

Ben... si, la premiere question est:
simplearetenir wrote: une application graphique style eog sur le raspberry pour qu'elle s'affiche sur l'ecran connecté au HDMI de mon raspberry.
Afficher seulement!
--------------------------
Maintenant s'il faut prendre le contrôle de l'application c'est autre chose.
Amicalement.
--
jmp0

LeSanglier
Posts: 226
Joined: Fri Jan 11, 2013 8:11 pm
Location: In Hell with God
Contact: Website

Re: SSH et affichage sur HDMI

Thu May 23, 2013 10:16 am

JumpZero wrote:Ben... si, la premiere question est:
Oui mais t'as oublié çà :
"Je me connecte sur le rasp en ssh à partir de mon mac"
Mon blog sur le Raspberry Pi : http://framboisepi.fr/
Pour avoir plus de chance d'avoir une réponse à votre question,
allez sur le forum français Rasberry Pi : http://forum.raspfr.org

simplearetenir
Posts: 18
Joined: Wed May 15, 2013 9:07 am

Re: SSH et affichage sur HDMI

Fri May 24, 2013 9:00 am

Bon je crois que j'ai un soucis.
ça ne marche toujours pas...
J'ai bien suivi le tuto :
Regarde mon aide-mémoire : http://framboisepi.fr/2013/05/21/lancem ... x-par-ssh/
Dans /etc/ssh/sshd_config, j'ai bien X11Forwarding à yes. Si je lance gimp par exemple, j'ai toujours le message :

Code: Select all

unable to open display
Pareil pour le second, si je fais :

Code: Select all

[~] ➔ export DISPLAY=:0.0
[~] ➔ xhost +localhost
, j'ai le message d'erreur

Code: Select all

unable to open display ":0.0"
.
Est ce que vous croyez que je doit réinstaller mon raspbian ?

Au fait ma première question était bien l'affichage d'eog sur le rasp, mais a partir de la console ssh du mac, ainsi si je fait un eog image1.jpg elle s'affichera sur l'écran du rasp, ensuite un eog image2.jpg affichera une autre image. Donc la solution de modifier l'autostart n'est pas compatible.

LeSanglier
Posts: 226
Joined: Fri Jan 11, 2013 8:11 pm
Location: In Hell with God
Contact: Website

Re: SSH et affichage sur HDMI

Fri May 24, 2013 9:29 am

Bizarre...

Dans "II) Lancer une application X sur le serveur à partir d’un ordinateur : ", cela correspond exactement à ce que tu veux.

Une petit précision dans mon cas, je suis en ssh à partir de Debian et je me connecte vers un Wheezy-Raspbian. Ca métonnerai bien fort que cela soit un pb du Rasp.
Mon blog sur le Raspberry Pi : http://framboisepi.fr/
Pour avoir plus de chance d'avoir une réponse à votre question,
allez sur le forum français Rasberry Pi : http://forum.raspfr.org

JumpZero
Posts: 1131
Joined: Thu Mar 28, 2013 7:35 pm
Location: 127.0.0.1

Re: SSH et affichage sur HDMI

Fri May 24, 2013 5:04 pm

Hello,

J'avais bien vu qu'il se connectait en ssh depuis un mac (lancer startx depuis ssh, X se lance sur l’écran connecté en HDMI). Mais laissons tomber...

Il y a une option dans la config de X -nolisten tcp qui est activée par défaut. Je dis ça de mémoire. Pas de Pi sous la main pour vérifier.
Et aussi sur Raspbian l'option xforwarding est activée par défaut.

Vu la news du jour sur la page d'acceuil sur raspberry.org, a la fin de l'année il n'y a plus X mais Wayland....
--
Jmp0

JumpZero
Posts: 1131
Joined: Thu Mar 28, 2013 7:35 pm
Location: 127.0.0.1

Re: SSH et affichage sur HDMI

Sat May 25, 2013 12:37 am

Bonsoir,

Tu as l'erreur :

Code: Select all

 unable to open display ":0.0"
car tout simplement la session X n'est pas démarré (sur le serveur)

Donc avant ta commande tu la lances X par:

Code: Select all

startx &
le petit ampersand à la fin sert juste a ne pas "perdre la main"
Tiens on revient à startx ;-)
Ensuite tu tapes la commande que tu veux lancer en ayant fait

Code: Select all

export DISPLAY=:0.0
d'abord
ou bien comme te le propose Dave Driesen en une ligne

Code: Select all

DISPLAY=:0.0 votre-commande
Mais c'est sans doute pas encore ce que tu veux, puisque la souris et le clavier ne sont pas pour autant affectés à la session X.
Donc tu ne contrôles toujours pas ton application. :-(

A noter:
la commande xhost +localhost n'est a effectuer qu'une seule fois. Elle "survit au reboot". Voir man xhost:
The xhost program is used to add and delete host names or user names to the list allowed to make connections to the X server.
Avant la premiere utilsation de xhost, si on tape juste xhost sans paramètres, on a la reponse suivante:
access control enabled...
On peut alors autoriser tout le monde avec xhost +
On retape juste xhost sans paramètres pour confirmer on a la reponse suivante:
access control disabled, clients can connect from any host
Et comme on veut tout vérifier on reboot, on tape xhost et on constate que le controle d'accès est bien désactivé. Il a survecu au reboot.
Comme le dit la page de man xhost modoifie la liste des hotes (je ne sais pas quel fichier)
Par securité n'autoriser que localhost, quand meme.
Et constater qu'il survit au reboot, il n'est pas a taper à chaque fois.

On peut aussi à la place de startx taper simplement X (majuscule) ca marche aussi mais sans deco...

On peut aussi quand X tourne, constater avec

Code: Select all

ps aux | grep X
/usr/bin/X -nolisten tcp :0 -auth /tmp/serverauth.H70Ajonce9
qu'il y a bien une option -nolisten tcp, mais je ne sais pas pourquoi elle ne nous gene pas, sans doute que xhost a priorité...

Je crois que la fin de la reponse de Dave Driesen a une solution pour le clavier... mais suffit pour ce soir!

Bonne nuit
--
Jmp0

JumpZero
Posts: 1131
Joined: Thu Mar 28, 2013 7:35 pm
Location: 127.0.0.1

Re: SSH et affichage sur HDMI

Sun May 26, 2013 12:43 pm

Trouvé!.... Il faut utiliser x2x. J'ai fait un nouveau post celui-ci est trop encombré
http://www.raspberrypi.org/phpBB3/viewt ... 65&t=45076
--
Jmp0

Return to “Français”