Déjà j'ai remarqué, en faisant un "kill -l" que je n'ai pas SIGINT mais INT pour la ligne '2)'
Ça c'est normal, j'ai ça même sur mon PC.
Bon par contre mon plop en shell c'est foireux parce que le handler de signal n'est pas hérité par les fils, bien sûr. Ce qu'il faut, c'est un plop qui rétablisse le conportement par défaut du SIGINT. Le 'plop' que j'utilisais était en fait un programme en C qui faisait:
- rétablissement du comportement souhaité sur récéption des signaux (par défaut à SIG_IGN avec la busybox que j'avais)
- exec de la commande.
Les masques de signaux étant hérités, ça le fait bien. Donc plop, ce serait plutôt un truc du genre:
#include <signal.h>
#include <unistd.h>
int main (int argc, char *argv[])
{
++argv;
if (*argv) {
signal (SIGINT, SIG_DFL);
execvp (*argv, argv);
}
return 0;
}
Pb de cette méthode: il te faut un cross compilo pour compiler ces quelques lignes de C. Et puis ensuite une fois loggué, tu fais tout de suite un 'plop sh' et ça roule pour toute la suite (je viens de tester).
Pour ce qui est du fichier inittab, je n'avais rien fait et google te sera donc sans doute d'une meilleure aide que moi.
[^] # Re: busybox
Posté par left . En réponse au message Ctrl-c ne fonctionne pas. Évalué à 1.
Ça c'est normal, j'ai ça même sur mon PC.
Bon par contre mon plop en shell c'est foireux parce que le handler de signal n'est pas hérité par les fils, bien sûr. Ce qu'il faut, c'est un plop qui rétablisse le conportement par défaut du SIGINT. Le 'plop' que j'utilisais était en fait un programme en C qui faisait:
- rétablissement du comportement souhaité sur récéption des signaux (par défaut à SIG_IGN avec la busybox que j'avais)
- exec de la commande.
Les masques de signaux étant hérités, ça le fait bien. Donc plop, ce serait plutôt un truc du genre:
#include <signal.h>
#include <unistd.h>
int main (int argc, char *argv[])
{
++argv;
if (*argv) {
signal (SIGINT, SIG_DFL);
execvp (*argv, argv);
}
return 0;
}
Pb de cette méthode: il te faut un cross compilo pour compiler ces quelques lignes de C. Et puis ensuite une fois loggué, tu fais tout de suite un 'plop sh' et ça roule pour toute la suite (je viens de tester).
Pour ce qui est du fichier inittab, je n'avais rien fait et google te sera donc sans doute d'une meilleure aide que moi.