GNU/Linux >> Tutoriels Linux >  >> Linux

Comment puis-je enregistrer tous les lancements de processus sous Linux ?

Votre point de départ doit être audité.

Essayez quelque chose comme ceci :

apt-get install auditd
auditctl -a task,always
ausearch -i -sc execve

J'avais besoin de le faire, sauf (1) que je n'avais pas besoin de temps et (2) que je ne m'intéressais qu'aux processus lancés par un processus donné, ainsi qu'à ses enfants et descendants ultérieurs. De plus, dans l'environnement que j'utilisais, il n'était pas possible d'obtenir auditd ou accton , mais il y avait valgrind .

Préfixez ce qui suit au processus qui vous intéresse sur la ligne de commande :

valgrind --trace-children=yes

Les informations dont vous avez besoin seront dans la sortie du journal affichée sur STDERR.


Vous pouvez utiliser snoopy pour cela.

Il est très simple à installer, et depuis la version 2.x, il peut enregistrer des données arbitraires (arguments, variables d'environnement, cwd, etc.).

Divulgation :responsable de Snoopy ici.


Linux
  1. Comment tuer un processus zombie sous Linux

  2. Comment Linux a préparé une école à la pandémie

  3. Comment compresser tous les fichiers ou des fichiers spécifiques sous Linux

  4. Comment puis-je savoir sous Linux quel processus a envoyé un signal à mon processus

  5. Comment définir l'affinité processeur d'un processus sous Linux ?

Comment répertorier les processus en cours d'exécution sous Linux

Comment tuer un processus sous Linux

Comment installer vtop sur Linux

Comment tuer un processus sous Linux

Comment renicer tous les threads (et enfants) d'un processus sous Linux ?

Comment puis-je identifier quel processus génère du trafic UDP sous Linux ?