Cependant, notez que cela peut ne pas fonctionner si de nombreux éléments ont été enregistrés (par exemple, si la machine fonctionne depuis longtemps), car les lignes de démarrage initiales ont peut-être été déplacées du tampon de sonnerie.
En réalité, le paramètre est situé entre __setup_startet __setup_enddans le noyau. Dans le code suivant, le p->strest le nom du paramètre.
Le code de noyau suivant est disponible sur linux-3.4.5 / init / main.c: 388
/* Check for early params. */staticint __init do_early_param(char*param,char*val){conststruct obs_kernel_param *p;for(p = __setup_start; p < __setup_end; p++){if((p->early && parameq(param, p->str))||(strcmp(param,"console")==0&&
strcmp(p->str,"earlycon")==0)){if(p->setup_func(val)!=0)
printk(KERN_WARNING
"Malformed early option '%s'\n", param);}}/* We accept everything at this stage. */return0;}
Réponses:
Tu peux courir
cat /proc/cmdline
.Exemple:
la source
tr ' ' '\n' < /proc/cmdline
d’obtenir des sauts de ligne entre les paramètres.Une autre méthode consiste à vérifier la sortie de
dmesg
(ligne 5 ici):Cependant, notez que cela peut ne pas fonctionner si de nombreux éléments ont été enregistrés (par exemple, si la machine fonctionne depuis longtemps), car les lignes de démarrage initiales ont peut-être été déplacées du tampon de sonnerie.
la source
En réalité, le paramètre est situé entre
__setup_start
et__setup_end
dans le noyau. Dans le code suivant, lep->str
est le nom du paramètre.Le code de noyau suivant est disponible sur linux-3.4.5 / init / main.c: 388
la source