Ouvrir un termianl ubuntu code php

Résolu
onss111 Messages postés 64 Statut Membre -  
mamiemando Messages postés 34167 Statut Modérateur -
Bonjour,
SVP Comment ouvrir un terminal ubuntu à partir d’un script php
J'ai essayé exec('gnome-terminal') et ça n'a pas marché.
Merci d'avance.

3 réponses

mamiemando Messages postés 34167 Statut Modérateur 7 885
 
Bonjour,

Oui c'est normal, et tu n'y arriveras pas comme ça, car il faudrait rediriger l'affichage avec la variable d'environnement DISPLAY. De plus il faut que la machine vers laquelle l'affichage est redirigé ait un serveur X.

Les problèmes posés par cette approches seraient multiples :
- un serveur windows (qui par défaut n'a pas de serveur X) ne pourra pas bénéficier de ce service
- le script PHP devrait déterminer vers quelle IP envoyer le flux graphique. Manque de chance si le client ait derrière une box, tu n'auras que l'IP publique de sa box et le flux graphique n'arrivera jamais jusqu'au client.
- il n'est absolument pas dit que le flux graphique ne soit pas bloqué par un pare-feu ou un proxy.

Pour toutes ces raisons, cette approche ne me semble pas la bonne.

Personnellement, je pense simplement que les gens devraient pouvoir se connecter en ssh à la machine en question et permet d'éviter la plupart de ces difficulté, puisque le client reste client. Un utilisateur windows pourra s'en sortir avec putty ou cygwin. Enfin ssh permet de définir des accès sécurisé (voir clé ssh) permettant d'améliorer la sécurité.

Bonne chance
0
onss111 Messages postés 64 Statut Membre 3
 
Merci beaucoup pour votre réponse mais en fait travaille sous ubuntu
je vais utiliser le code php en ubuntu
j'ai déjà installé le serveur apache2 et php
Je veux un script php dans lequel une fois exécuté je veux qu'il me lance le terminal ubuntu
pouvez vous m'aider
merci d'avance
0
jisisv Messages postés 3678 Statut Modérateur 934 > onss111 Messages postés 64 Statut Membre
 
C'est reporter le problème. Un terminal X est une ..... application X.

Relis bien mamiemando. Que désires-tu exactement pour tes clients (au sens large)?
0
mamiemando Messages postés 34167 Statut Modérateur 7 885
 
Bonjour ons111,

Note bien que ma réponse et celle de jisisv est vraie pour tout linux et a fortiori pour ubuntu. En outre, avoir une idée de ce que tu veux faire à terme, comme le demande jisisv nous permettrait de mieux te guider.

Ce qui pourrait être fait par contre, c'est coder un terminal en php, rattraper les commandes tapées et que php les exécute. C'est typiquement ce que fait ce projet :
https://sourceforge.net/projects/phpterm/

Bonne chance
0
jisisv Messages postés 3678 Statut Modérateur 934
 
Tu peux à la limite faire tourner un serveur VNC sur le serveur et demander aux clients humains de s'y connecter via une applet leur navigateur (supportant Java ce qui implique l'installation d'un plugin Java pour leur navigateur.).
0
onss111 Messages postés 64 Statut Membre 3
 
Merci mamiemando j'ai bien installé le phpterm c'est Génial Merci :)
mais le seul problème c'est que je ne peux pas m'authentifier comme un admin
"sudo su" ne marche pas du cout je ne peux pas passer plusieurs commandes car il demande l'authentification sous le terminal php; Avez vous une idée
merci d'avance
0
mamiemando Messages postés 34167 Statut Modérateur 7 885
 
Normalement ce serait plutôt
sudo -s
et ensuite je vérifierais si suphp est installé. Après je ne connais pas phpterm donc je ne peux pas t'en dire plus.

Pour moi la bonne solution reste ssh et elle fait tout ce que tu cherches (et même plus).

Bonne chance
0
onss111 Messages postés 64 Statut Membre 3
 
merci beaucoup mamiemando :)
0
mamiemando Messages postés 34167 Statut Modérateur 7 885
 
Je t'en prie, bonne continuation !
0