Vmplayer GTK warning Cannot open display

Fermé
fl0w Messages postés 3 Date d'inscription vendredi 31 août 2007 Statut Membre Dernière intervention 31 août 2007 - 31 août 2007 à 15:11
mamiemando Messages postés 33352 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 12 novembre 2024 - 13 mai 2008 à 09:49
Bonjour,

Avant de commencer, je suis très débutant en linux. J'ai SUSE linux très de base avec seulement la console et xwindow.

Je veux que, lorsque l'environnement XWindow est terminée de charger, Vmware player démarre automatiquement.

Si je lance la commande suivante sur la ligne de commande,
ça fonctionne à merveille :

vmplayer -X "/home/VM/Windows XP Professional.vmx"

En regardant sur des forums, j'ai vu que je pouvais me faire un script dans /etc/rc.d qui lance vmware player.
Mon script s'appelle StartVmware et est très simple :

#!bin/sh
vmplayer -X "/home/VM/Windows XP Professional.vmx"

Je veux, en premier lieu, m'assurer que mon script est fonctionnel.
Si je fais la commande
sudo ./StartVmware
j'ai le message (vmplayer:4162) Gtk-WARNING **: cannot open display:

ma variable DISPLAY est = :0.0

Merci à l'avance
A voir également:

6 réponses

mamiemando Messages postés 33352 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 12 novembre 2024 7 804
31 août 2007 à 15:29
Eh oui car sudo revient à lancer le script en root, et root n'a pas le droit d'ouvrir une application graphique dans une session graphique ouverte par un utilisateur. Il suffit donc de lancer ton script sans sudo et ça devrait marcher. De manière root ne devrait jamais lancer une application graphique (et encore moins une session graphique).

Est-ce que vmplayer a vraiment besoin d'être lancé en root ?
Si oui, pour quelle(s) raison(s) ?

Bonne chance
0
fl0w Messages postés 3 Date d'inscription vendredi 31 août 2007 Statut Membre Dernière intervention 31 août 2007
31 août 2007 à 15:32
ok Donc je n'aurais qu'à écrire :

StartVmware

Lorsque je fais ça, j'ai le message : command not found.

à noter que mon fichier à les droits 740
(chmod 740 StartVmware)

Merci
0
Bonjour,

Déjà, assure toi que ton utilisateur a le droit exécution sur le fichier...
Apparemment non, car le fichier appartient a root, et le mode est 740.
Tu pourrais alors changer l'owner du fichier (chown), ou modifier les droits (chmod).

Ensuite, pour le lancer en utilisateur normal, tape le chemin complet vers le fichier ; par ex : /usr/sbin/StartVmware.
Pour savoir ou il est, tu peux faire 'which StartVmware' en root.

En espèrant t'avoir aidé ;
bonne journée !
0
fl0w Messages postés 3 Date d'inscription vendredi 31 août 2007 Statut Membre Dernière intervention 31 août 2007
31 août 2007 à 18:01
Maintenant, je suis capable de l'appeler mais il m'affiche encore l'erreur de Cannot open display. J'ai changé le owner ne mon fichier ainsi que les droits.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mamiemando Messages postés 33352 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 12 novembre 2024 7 804
31 août 2007 à 21:22
Il faut vraiment exécuter ton vmware avec ton utilisateur. Il ne faut pas changer les droits ou le propriétaires des fichiers concernant vmware (exécutable compris), il faut simplement ajouter ton utilisateur dans le groupe associé à l'exécutable vmware.

Pour celà ajoute ton utilisateur dans le bon groupe en modifiant en root le fichier /etc/group auquel appartient l'exécutable de vmware, puis reloggues toi...

Exemple sur /dev/dsp
(mando@aldur) (~) $ ls -l /dev/dsp
crw-rw---- 1 root audio 14, 3 2007-08-31 23:08 /dev/dsp

/dev/dsp appartient au groupe audio, je veux que mon utilisateur (mando) puisse écrire dessus (pour jouer un son), il faut donc qu'il appartienne au groupe audio :
tape:x:26:
sudo:x:27:
audio:x:29:mando
dip:x:30:
www-data:x:33:

Il suffit d'adapter la même démarche pour l'exécutable de vmware. Sinon dans le pire des cas tu peux passer par le fichier /etc/sudoers.

Bonne chance
0
mamiemando Messages postés 33352 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 12 novembre 2024 7 804
13 mai 2008 à 09:49
C'est probablement parce que tu lances le programme en root. Il faut le lancer avec le même utilisateur que tu as utilisé pour lancer ta session graphique. C'est à dire pas root si tu as fait ça proprement.

Bonne chance
0