OVH Cloud OVH Cloud

Attacher un processus

17 réponses
Avatar
Pim
Bonjour tous,

J'aimerais savoir comment il est possible d'attacher un processus
B fils d'un processus A à un processus C du même niveau de parenté que
le processus A.

En shell ou en C.

A C
| |
B ->

Merci beaucoup par avance si c'est possible.

Pim.

7 réponses

1 2
Avatar
Unknown
Voila, je souhaite automatiser tout cela au moyen d'un shell afin de
me
retrouver dans la situation: serveur X et console prèts.


tu fais un script qui contient deux lignes :
#! /bin/sh
startx >/dev/null 2>&1 &

tu récupère tout de suite la main ton X est en arrière plan.

Avatar
Pim
Le Tue, 29 Jun 2004 23:29:08 +0200,
Unknown disait ceci :
Voila, je souhaite automatiser tout cela au moyen d'un shell afin de
me
retrouver dans la situation: serveur X et console prèts.


tu fais un script qui contient deux lignes :
#! /bin/sh
startx >/dev/null 2>&1 &

tu récupère tout de suite la main ton X est en arrière plan.


VOILA c'est CA que je veut faire.
Bon j'ai p'tet pas été assez clair :-(.

Oui ben c'est ce que j'ai fait.
Sauf que avec la mise en arrière plan : ca ne marche pas et me renvoie
ceci.
user not authorised to run X server!
mais seulement avec le & : parce que sans le & ça marche!?

Alors j'ai essayé sous root et ca marche avec ou sans le & !
Donc c'est un problème de droits que je n'arrive pas à illucider et pas
un problème de processus.

Le programme xinit doit faire des tests ou encore X lui-meme ...
en fait, c'est xinit qui bloque ou alors X tout simplement j'ai pas
essayé.

J'ai fait un env dans mon script pour comparer les environnements mais je
n'ai rien vu de suspect.

Savoir que startx lance xinit qui lance X.
Mais seulement pour rappel.

Merci en tout cas.
Pim.


Avatar
Emmanuel Florac
Le Tue, 29 Jun 2004 18:37:16 +0000, Pim a écrit :


Je souhaite tout simplement lancer le serveur X sous GNU Linux Debian.


Tu as essayé de faire "startx &" tout simplement?

--
on passe la moitié de son temps à refaire ce que l'on n'a pas eu le
temps de faire correctement.
Loi de Myers.

Avatar
Pim
Le 29 Jun 2004 22:16:33 +0200,
Pascal Bourguignon disait ceci :
Pim writes:
Je souhaite tout simplement lancer le serveur X sous GNU Linux Debian.

Vous ne comprenez pas?


Non.

Voici mon mode d'opération manuel.

1 Boot avec login sur console.
2 lance startx et appuie sur <ENTRER> (à la main sur la console)
le serveur X se lance avec ses client.

Ctrl_Alt_F2 me replace dans mon utilisateur lambda sur la console 2
Ctrl_Z : Endors le script startx.(sleeping).

Et je peut utiliser ma console de login ainsi que le serveur X.

Car j'ai besoin des 2 et pas d'un terminal sous X niet pas
question pour ce que je veut faire.

Je récupère le serveur X par Ctrl_Alt_F7 mais c'est un détail.


Voila, je souhaite automatiser tout cela au moyen d'un shell afin de
me
retrouver dans la situation: serveur X et console prèts.

Heu pas question de faire appel à des services de plus comme xdm qui
demandent un login avant de lancer une session X.

Autrement dis, le serveur X doit être lancé à partir de la console
et du shell associé correspondant aussi à un certain utilisateur
après login.


Qu'est ce qui t'en empêche?


Bonne question.

Quand je lance en tache de fond ce script, il me dis ceci:

User not authorised to run X server.

Par contre sous root: ca marche.

Donc mon problème n'est qu'un problème de droits et pas de processus.

J'ai résolut le problème comme suit:
vi /etc/X11/Xwrapper
et changer :
allowed_users=console
en
allowed_users=anybody

Alors les scripts faisant un appel + ou - direct à xinit lance le
serveur X sans erreur désormais.

Donc cette solution marche.

Je ne sait pas par contre l'incidence sur la sécurité.


--
__Pascal Bourguignon__ http://www.informatimago.com/

There is no worse tyranny than to force a man to pay for what he does not
want merely because you think it would be good for him. -- Robert Heinlein



Avatar
Pim
Le Tue, 29 Jun 2004 23:29:08 +0200,
Unknown disait ceci :
Voila, je souhaite automatiser tout cela au moyen d'un shell afin de
me
retrouver dans la situation: serveur X et console prèts.


tu fais un script qui contient deux lignes :
#! /bin/sh
startx >/dev/null 2>&1 &

tu récupère tout de suite la main ton X est en arrière plan.


Quand je lance en tache de fond ce script, il me dis ceci:

User not authorised to run X server.

Par contre sous root: ca marche.

Donc mon problème n'est qu'un problème de droits et pas de processus.

J'ai résolut le problème comme suit:

vi /etc/X11/Xwrapper.config
et changer :
allowed_users=console
en
allowed_users=anybody

cf : man Xwrapper.config

Alors les scripts faisant un appel + ou - direct à xinit lance le
serveur X sans erreur désormais quel que soit l'utilisateur et
en tâche de fond.

Donc cette solution marche.

Je ne sait pas par contre l'incidence sur la sécurité.
Pim

Merci à tous pour votre aide.
Pim.


Avatar
Pim
Le 30 Jun 2004 12:49:05 GMT,
Pim disait ceci :
[ ... ]

Désolé le fichier de conf est plutôt
/etc/X11/Xwrapper.config au lieux de Xwrapper.

Merci.

Donc cette solution marche.

Je ne sait pas par contre l'incidence sur la sécurité.



--
__Pascal Bourguignon__ http://www.informatimago.com/

There is no worse tyranny than to force a man to pay for what he does not
want merely because you think it would be good for him. -- Robert Heinlein




Avatar
Pim
Le Wed, 30 Jun 2004 11:53:11 +0200,
Emmanuel Florac disait ceci :
Le Tue, 29 Jun 2004 18:37:16 +0000, Pim a écrit :


Je souhaite tout simplement lancer le serveur X sous GNU Linux Debian.


Tu as essayé de faire "startx &" tout simplement?


Oui, c'est ce que j'ai essayé au début.
Ca marche pas user lambda à partir d'un script mais seulement à partir
d'une console : User not autorised to run X serveur.

et il suffit d'éditer
/etc/X11/Xwrapper.conf
et changer
alowed_users=console
par
alowed_users=anybody

Maintenant je peut lancer startx & ou xinit .... &
de toutes façon xinit ou startx reviens au même car startx est un
script qui lance le binaire xinit avec les bons paramêtres.

Donc j'ai trouvé un peu par hazard et un peu par logique.

Merci.
Pim.



--
on passe la moitié de son temps à refaire ce que l'on n'a pas eu le
temps de faire correctement.
Loi de Myers.



1 2