Sujet : Récupérer le PID d'un process après un nohup

J'ai parcouru un peu les forums askubuntu, stackoverflow et consorts, … en vain. Du coup, j'en recours à votre échantillon d'experts en unix/linux/bash - il doit bien y en avoir une poignée ici. Donc voilà : j'ai un problème pour récupérer les PID de commandes lancées après des nohup ($ nohup commande > nohup.out &).
* Lancer top et kill les PID associés à mes tâches n'a pas marché.
* ps -ef |grep nohup.out me donne un PID, un PPID, mais aucun des deux ne correspond au PID permettant de tuer mon process (je viens de le vérifier en relançant un nouveau nohup, puis cette ligne, c'est pas les mêmes).

Question : Ya vraiment aucun moyen de récupérer les PID de mes process? Il faut que je les note manuellement à chaque fois? C'est quoi cette enculerie?

L'intérêt étant de tuer proprement les process en question. Le help succinct de nohup ne m'a rien donné non plus.


nohup --help
Usage: nohup COMMAND [ARG]...
  or:  nohup OPTION
Run COMMAND, ignoring hangup signals.

      --help     display this help and exit
      --version  output version information and exit

If standard input is a terminal, redirect it from /dev/null.
If standard output is a terminal, append output to `nohup.out' if possible,
`$HOME/nohup.out' otherwise.
If standard error is a terminal, redirect it to standard output.
To save output to FILE, use `nohup COMMAND > FILE'.

Re : Récupérer le PID d'un process après un nohup

je ne comprends pas votre question

No pussy blues.

Re : Récupérer le PID d'un process après un nohup

Installe Linux.

Re : Récupérer le PID d'un process après un nohup

Merci de passer ce topic en résolu.

http://www.bettercallsaul.com/

N'imprimer ce message que si nécessaire, pensez à l'environnement

5

Re : Récupérer le PID d'un process après un nohup

ps aux
kill -9 id

Si cette méthode sale ne fonctionne pas, je te propose également d'installer linux.

Re : Récupérer le PID d'un process après un nohup

Mais tu veux faire quoi au juste ? Te logguer en ssh, lancer un script et te délogguer sans que ca flingue ton script ?
Si c'est juste ça, lance le dans un tmux ou un screen.
Sinon tu fais ton nohup et tu récupères le pid dans un fichier avec echo $!
Par contre je ne vois pas pourquoi tu ne peux pas le récupérer avec ps . T'es sur qu'il tourne encore ?

7

Re : Récupérer le PID d'un process après un nohup

Et oui fais pas chier avec ton nohup et lance un screen.

8 Dernière modification par Kane (01-12-2014 21:41:48)

Re : Récupérer le PID d'un process après un nohup

et avec killall et le nom du/des process au lieu de l'id ?

http://www.linux-france.org/article/man … all-1.html

tuer tuer tuer, tuer les tous !

Re : Récupérer le PID d'un process après un nohup

la solution de luc chatel

[video]https://www.youtube.com/watch?v=S0lhZ0gIMts[/video]

No pussy blues.

10 Dernière modification par sed (01-12-2014 22:00:07)

Re : Récupérer le PID d'un process après un nohup

Merci, je suis déjà sous linux.
ps aux me sort la même chose que ps -ef, ce sont pas les bons PID étrangement.

Je veux lancer mes commandes, fermer mon terminal au besoin, et récupérer toutes les sorties dans un fichier (nohup.out ici)
Et surtout, surtout, pouvoir tout arrêter proprement quand je veux.

http://uppix.com/f-Capture_d___e__c547cc7ac00180f10.png

http://uppix.com/f-Capture_d___e__c547cc87800180f11.png

11 Dernière modification par noway (01-12-2014 22:02:04)

Re : Récupérer le PID d'un process après un nohup

rain a écrit:

Et oui fais pas chier avec ton nohup et lance un screen.

Cet homme a raison.

Sinon tu as ca :

http://stackoverflow.com/questions/1738 … up-process

mais tu n'as pas du bien chercher.

12

Re : Récupérer le PID d'un process après un nohup

un load de 5

krrr krrr krrr

13 Dernière modification par sed (01-12-2014 22:20:08)

Re : Récupérer le PID d'un process après un nohup

Pays du tiers monde explique cela.

Sinon le echo $! me renvoie le bon PID mais je dois le lancer juste après le nohup et sauver la sortie dans un fichier? Je l'ai vu passer sur un forum justement cette solution (justement ton lien noway). Quand le gars dit "Alternatively, you can find the PID later on by ps -ef output | grep "command name" and locate the PID from there." > non ça ne marche pas, les PID sont pas les mêmes comme montré sur mon screen. Et oui, ma question se référait plutôt à un cas de figure où on n'a pas pensé à sauver (manuellement) le PID initialement. Je vais juste prendre l'habitude de tout le temps sauver le PID avec echo $! > save_PIDmerde, mais c'est donc bien une enculerie de ce que j'en perçois là. Pour le killall, j'ai plusieurs process avec le même nom donc je préfère éviter.

14 Dernière modification par noway (01-12-2014 22:19:02)

Re : Récupérer le PID d'un process après un nohup

Je pense que tu te trompes un peut dans ce que tu veux faire (ou alors je n'ai rien compris) car chez moi ca marche™

MacBook-Air:~ noway$ nohup sleep 30 &
[1] 31464
MacBook-Air:~ noway$ appending output to nohup.out

MacBook-Air:~ noway$ ps -eaf | grep sleep | grep -v grep
  501 31464 31434   0  9:13   ttys000    0:00.01 sleep 30

Ce que tu cherches ne serait pas plutôt le PID d'un process lancé dans un script qui a été lancé avec un nohup ? (le echo $! te renvoi le PID de python et pas de l'exe dans ton script)

15

Re : Récupérer le PID d'un process après un nohup

tannat@tannat:~/Desktop/$ ps -eaf | grep "python mon_script.py asile" | grep -v grep
tannat   10360 10148  0 11:17 pts/1    00:00:00 python mon_script.py asile

merci bien, et à dans 2 jours pour une nouvelle question de noob.

16

Re : Récupérer le PID d'un process après un nohup

http://ss64.com/bash/ps.html
je pense que tout le problème et la confusion venaient du fait que je lance mes scripts via ssh, donc le -a était requis pour voir mon PID parent, je sais pas, simple hypothèse.

17

Re : Récupérer le PID d'un process après un nohup

Je sais pas putain

Re : Récupérer le PID d'un process après un nohup

Ptain je comprends pourquoi linux protège si bien la virginité.



Je ne suis pas Niark²

Re : Récupérer le PID d'un process après un nohup

As tu appuyé sur B ?

I think I'm dumb
BENOIT HAMON 2017 !

20

Re : Récupérer le PID d'un process après un nohup

controle alt suppr, fin de tâche sur linux.exe

de rien fils

« On t'nique ta mère et ta grand-mère, si elle est toujours en vie » - B2O

21

Re : Récupérer le PID d'un process après un nohup

Sur tes screenshots, on retrouve bien les meme pid, c'est juste que top les classe par utilisation CPU (le 10186 par ex).
Installe htop, c'est mieux fichu pour s'y retrouver et tu peux envoyer des signaux facilement.

je pense que tout le problème et la confusion venaient du fait que je lance mes scripts via ssh, donc le -a était requis pour voir mon PID parent, je sais pas, simple hypothèse.

La commande ps ne réagit pas de la meme facon si tu mets les options précédées ou non d'un '-':
a               Lift the BSD-style "only yourself" restriction, which
                       is imposed upon the set of all processes when some
                       BSD-style (without "-") options are used or when the ps
                       personality setting is BSD-like.

-a              Select all processes except both session leaders (see
                       getsid(2)) and processes not associated with a
                       terminal.
-e              Select all processes. Identical to -A.

donc 'ps -eaf' bof bof. Avec 'ps -ef' tu aurais du pouvoir 'grep'er sur le nom de ton script.

Bref. Regarde quand meme du coté de screen ou tmux (plutot ce dernier, mais j'imagine que c'est comme vim ou emacs).
Une cheat sheet pour commencer:
http://www.mechanicalkeys.com/files/os/notes/tm.html

22

Re : Récupérer le PID d'un process après un nohup

sinon ce titre de fil putain

Récupérer le PID d'un process après un nohup

sans déconner arrête tout, inspire et expire profondément puis encule ton chat

« On t'nique ta mère et ta grand-mère, si elle est toujours en vie » - B2O

23

Re : Récupérer le PID d'un process après un nohup

noway a écrit:

Ce que tu cherches ne serait pas plutôt le PID d'un process lancé dans un script qui a été lancé avec un nohup ? (le echo $! te renvoi le PID de python et pas de l'exe dans ton script)

D'ailleurs sed, en butant le parent, le fils est censé mourrir aussi ce qui n'est selon tes dires pas le cas, ce qui remet en question toute l'informatique unix et va sans doute troubler le sommeil de plus d'un ici.

Enculé va.

su-per

24

Re : Récupérer le PID d'un process après un nohup

Bah il n'y a pas des Unix ou le process devient orphelin ?

Anna Navarre: You're wearing sunglasses on a night operation?
JC Denton: My vision is augmented.

25

Re : Récupérer le PID d'un process après un nohup

Genre ça : http://en.wikipedia.org/wiki/Orphan_process

Anna Navarre: You're wearing sunglasses on a night operation?
JC Denton: My vision is augmented.