URL: https://linuxfr.org/users/prae/journaux/processus-init-et-kernel-panic-attempted-to-kill-init Title: Processus Init et "Kernel panic: Attempted to kill init" Authors: Prae Date: 2002年10月18日T00:37:30+02:00 Tags: Score: 0 Bonjour à tous, je suis entrain d'essayer de comprendre les mécanismes initialisation post-kernel. Cependant je me heurte à un problème lors de l'arrêt machine. En effet, après démarrage de mon init (pas sysvinit, un prog que j'ai bricolé) dont voici le source (juste après), j'envoie des appels systèmes pour l'arrêt machine. Tout ce passe bien, j'ai "flushing ide devices: <mes>" puis juste après "System Halted". Mais voila, en tout dernier, le message "Kernel panic: Attempted to kill init" apparait. Je sais parfaitement à quoi correspond ce message et le pourquoi de sa venue; Mais ce que je n'arrive pas à m'expliquer ce même pourquoi, sachant que j'essaye de suivre les bonnes procédures d'arrêt machine. Mais je me doute qu'il doit manquer un truc. Si vous avez une idée, je suis tout ouïe :) --- #include <stdio.h> #include <unistd.h> #include <signal.h> #include <fcntl.h> #include <errno.h> #include <sys/reboot.h> #include <sys/mount.h> int main(void) { printf("<>\n"); printf("Arret Machine...4\n"); printf("<==>\n"); kill(-1,SIGTERM); printf("<==>\n"); kill(-1, SIGKILL); printf("<==>\n"); if(mount("/dev/hda1", "/dev/hda1", 0, MS_MGC_VAL|MS_REMOUNT|MS_RDONLY, 0)==-1) { printf("error remounting \"%s\" readonly\n", "/dev/hda1"); } printf("<==>\n"); if(umount2("/dev/hda1", MNT_FORCE) == -1) { printf("Demontage erroné\n"); } sync(); printf("<==>\n"); reboot(RB_HALT_SYSTEM); return 1; } --- Compilation # gcc -Wall -static ./init01.c -o ./init01 # strip ./init01 --- Merci par avance :)

AltStyle によって変換されたページ (->オリジナル) /