Question

Voici mon /root/.bash_profile:

export DISPLAY=:42 && cd /home/df/SimulatedRpu-ex/bin && ./SimulatedRpu-V1 &

Lorsque je démarre mon serveur,je lance ps aux | grep SimulatedRpu et voici le résultat:

root      2758  0.2  1.0  62316 20416 ?        Sl   14:35   0:00 ./SimulatedRpu-V1
root      3197  0.5  0.9  61428 19912 pts/0    Sl   14:35   0:00 ./SimulatedRpu-V1
root      3314  0.0  0.0   5112   716 pts/0    S+   14:35   0:00 grep SimulatedRpu

Ainsi,le programme d'impression de message d'erreur concernant le port est déjà utilisé.Mais pourquoi la commande /root/.bash_profile démarrer deux fois?S'il vous plaît aider moi,merci!En passant,j'utilise Redhat Enterprise 5.5

Était-ce utile?

La solution

Le profil est lu à chaque fois que vous vous connectez.Donc, simplement en vous connectant à exécuter le ps aux | grep SimulatedRpu, vous exécutez le profil une fois de plus et ainsi démarrer un nouveau processus.

Vous devriez mettre la commande dans un script d'initialisation au lieu de cela.

[MODIFIER] Vous devez également exécuter Xvnc dans le même script - de cette façon, vous pouvez démarrer et arrêter le serveur d'affichage avec votre application.

Autres conseils

Essayer comme

if ! ps aux | grep '[S]imulateRpu'; then
    export DISPLAY=:42 && cd /home/df/SimulatedRpu-ex/bin && ./SimulatedRpu-V1 &
fi;

De cette façon, il va d'abord vérifier si l'application n'est pas encore exécuté.L' [] autour de la S sont à éviter grep de trouver lui-même ;)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top