Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
CD de boot - Kernel Panic
Envoyé par: YuGiOhJCJ

Bonjour,
j'essaye désespérément de booter sur un CD avec un noyau Linux.
J'utilise syslinux pour gérer le boot puis busybox pour avoir le minimum vital en SHELL.
Voici le contenu du CD de boot:
$ tree /media/CDROM/
/media/CDROM/
|-- bin
|   |-- addgroup -> busybox
|   |-- adduser -> busybox
|   |-- ash -> busybox
|   |-- busybox
|   |-- cat -> busybox
|   |-- catv -> busybox
|   |-- chattr -> busybox
|   |-- chgrp -> busybox
|   |-- chmod -> busybox
|   |-- chown -> busybox
|   |-- cp -> busybox
|   |-- cpio -> busybox
|   |-- date -> busybox
|   |-- dd -> busybox
|   |-- delgroup -> busybox
|   |-- deluser -> busybox
|   |-- df -> busybox
|   |-- dmesg -> busybox
|   |-- dumpkmap -> busybox
|   |-- echo -> busybox
|   |-- ed -> busybox
|   |-- egrep -> busybox
|   |-- false -> busybox
|   |-- fdflush -> busybox
|   |-- fgrep -> busybox
|   |-- getopt -> busybox
|   |-- grep -> busybox
|   |-- gunzip -> busybox
|   |-- gzip -> busybox
|   |-- hostname -> busybox
|   |-- ip -> busybox
|   |-- ipaddr -> busybox
|   |-- ipcalc -> busybox
|   |-- iplink -> busybox
|   |-- iproute -> busybox
|   |-- iprule -> busybox
|   |-- iptunnel -> busybox
|   |-- kill -> busybox
|   |-- linux32 -> busybox
|   |-- linux64 -> busybox
|   |-- ln -> busybox
|   |-- login -> busybox
|   |-- ls -> busybox
|   |-- lsattr -> busybox
|   |-- mkdir -> busybox
|   |-- mknod -> busybox
|   |-- mktemp -> busybox
|   |-- more -> busybox
|   |-- mount -> busybox
|   |-- mountpoint -> busybox
|   |-- mt -> busybox
|   |-- mv -> busybox
|   |-- netstat -> busybox
|   |-- nice -> busybox
|   |-- pidof -> busybox
|   |-- ping -> busybox
|   |-- ping6 -> busybox
|   |-- pipe_progress -> busybox
|   |-- printenv -> busybox
|   |-- ps -> busybox
|   |-- pwd -> busybox
|   |-- rm -> busybox
|   |-- rmdir -> busybox
|   |-- rpm -> busybox
|   |-- run-parts -> busybox
|   |-- sed -> busybox
|   |-- setarch -> busybox
|   |-- sh -> busybox
|   |-- sleep -> busybox
|   |-- stat -> busybox
|   |-- stty -> busybox
|   |-- su -> busybox
|   |-- sync -> busybox
|   |-- tar -> busybox
|   |-- touch -> busybox
|   |-- true -> busybox
|   |-- umount -> busybox
|   |-- uname -> busybox
|   |-- uncompress -> busybox
|   |-- usleep -> busybox
|   |-- vi -> busybox
|   |-- watch -> busybox
|   `-- zcat -> busybox
|-- etc
|   |-- fstab
|   |-- init.d
|   |   `-- rcS
|   |-- inittab
|   `-- profile
|-- isolinux
|   |-- boot.cat
|   |-- display
|   |-- initrd.img
|   |-- isolinux.bin
|   |-- isolinux.cfg
|   `-- linux
|-- linuxrc -> bin/busybox
|-- sbin
|   |-- adjtimex -> ../bin/busybox
|   |-- arp -> ../bin/busybox
|   |-- fdisk -> ../bin/busybox
|   |-- freeramdisk -> ../bin/busybox
|   |-- fsck -> ../bin/busybox
|   |-- fsck.minix -> ../bin/busybox
|   |-- getty -> ../bin/busybox
|   |-- halt -> ../bin/busybox
|   |-- hdparm -> ../bin/busybox
|   |-- hwclock -> ../bin/busybox
|   |-- ifconfig -> ../bin/busybox
|   |-- ifdown -> ../bin/busybox
|   |-- ifup -> ../bin/busybox
|   |-- init -> ../bin/busybox
|   |-- insmod -> ../bin/busybox
|   |-- klogd -> ../bin/busybox
|   |-- loadkmap -> ../bin/busybox
|   |-- logread -> ../bin/busybox
|   |-- losetup -> ../bin/busybox
|   |-- lsmod -> ../bin/busybox
|   |-- makedevs -> ../bin/busybox
|   |-- mdev -> ../bin/busybox
|   |-- mkfs.minix -> ../bin/busybox
|   |-- mkswap -> ../bin/busybox
|   |-- modprobe -> ../bin/busybox
|   |-- nameif -> ../bin/busybox
|   |-- pivot_root -> ../bin/busybox
|   |-- poweroff -> ../bin/busybox
|   |-- raidautorun -> ../bin/busybox
|   |-- reboot -> ../bin/busybox
|   |-- rmmod -> ../bin/busybox
|   |-- route -> ../bin/busybox
|   |-- runlevel -> ../bin/busybox
|   |-- setconsole -> ../bin/busybox
|   |-- slattach -> ../bin/busybox
|   |-- start-stop-daemon -> ../bin/busybox
|   |-- sulogin -> ../bin/busybox
|   |-- swapoff -> ../bin/busybox
|   |-- swapon -> ../bin/busybox
|   |-- switch_root -> ../bin/busybox
|   |-- sysctl -> ../bin/busybox
|   |-- syslogd -> ../bin/busybox
|   |-- udhcpc -> ../bin/busybox
|   |-- vconfig -> ../bin/busybox
|   |-- watchdog -> ../bin/busybox
|   `-- zcip -> ../bin/busybox
`-- usr
    |-- bin
    |   |-- [ -> ../../bin/busybox
    |   |-- [[ -> ../../bin/busybox
    |   |-- ar -> ../../bin/busybox
    |   |-- arping -> ../../bin/busybox
    |   |-- awk -> ../../bin/busybox
    |   |-- basename -> ../../bin/busybox
    |   |-- bunzip2 -> ../../bin/busybox
    |   |-- bzcat -> ../../bin/busybox
    |   |-- cal -> ../../bin/busybox
    |   |-- chpst -> ../../bin/busybox
    |   |-- chrt -> ../../bin/busybox
    |   |-- chvt -> ../../bin/busybox
    |   |-- cksum -> ../../bin/busybox
    |   |-- clear -> ../../bin/busybox
    |   |-- cmp -> ../../bin/busybox
    |   |-- comm -> ../../bin/busybox
    |   |-- crontab -> ../../bin/busybox
    |   |-- cryptpw -> ../../bin/busybox
    |   |-- cut -> ../../bin/busybox
    |   |-- dc -> ../../bin/busybox
    |   |-- deallocvt -> ../../bin/busybox
    |   |-- diff -> ../../bin/busybox
    |   |-- dirname -> ../../bin/busybox
    |   |-- dos2unix -> ../../bin/busybox
    |   |-- du -> ../../bin/busybox
    |   |-- dumpleases -> ../../bin/busybox
    |   |-- eject -> ../../bin/busybox
    |   |-- env -> ../../bin/busybox
    |   |-- envdir -> ../../bin/busybox
    |   |-- envuidgid -> ../../bin/busybox
    |   |-- ether-wake -> ../../bin/busybox
    |   |-- expand -> ../../bin/busybox
    |   |-- expr -> ../../bin/busybox
    |   |-- fdformat -> ../../bin/busybox
    |   |-- find -> ../../bin/busybox
    |   |-- fold -> ../../bin/busybox
    |   |-- free -> ../../bin/busybox
    |   |-- ftpget -> ../../bin/busybox
    |   |-- ftpput -> ../../bin/busybox
    |   |-- fuser -> ../../bin/busybox
    |   |-- head -> ../../bin/busybox
    |   |-- hexdump -> ../../bin/busybox
    |   |-- hostid -> ../../bin/busybox
    |   |-- id -> ../../bin/busybox
    |   |-- install -> ../../bin/busybox
    |   |-- ipcrm -> ../../bin/busybox
    |   |-- ipcs -> ../../bin/busybox
    |   |-- killall -> ../../bin/busybox
    |   |-- killall5 -> ../../bin/busybox
    |   |-- last -> ../../bin/busybox
    |   |-- length -> ../../bin/busybox
    |   |-- less -> ../../bin/busybox
    |   |-- loadfont -> ../../bin/busybox
    |   |-- logger -> ../../bin/busybox
    |   |-- logname -> ../../bin/busybox
    |   |-- lzmacat -> ../../bin/busybox
    |   |-- md5sum -> ../../bin/busybox
    |   |-- mesg -> ../../bin/busybox
    |   |-- mkfifo -> ../../bin/busybox
    |   |-- nc -> ../../bin/busybox
    |   |-- nmeter -> ../../bin/busybox
    |   |-- nohup -> ../../bin/busybox
    |   |-- nslookup -> ../../bin/busybox
    |   |-- od -> ../../bin/busybox
    |   |-- openvt -> ../../bin/busybox
    |   |-- passwd -> ../../bin/busybox
    |   |-- patch -> ../../bin/busybox
    |   |-- printf -> ../../bin/busybox
    |   |-- pscan -> ../../bin/busybox
    |   |-- readahead -> ../../bin/busybox
    |   |-- readlink -> ../../bin/busybox
    |   |-- realpath -> ../../bin/busybox
    |   |-- renice -> ../../bin/busybox
    |   |-- reset -> ../../bin/busybox
    |   |-- resize -> ../../bin/busybox
    |   |-- rpm2cpio -> ../../bin/busybox
    |   |-- runsv -> ../../bin/busybox
    |   |-- runsvdir -> ../../bin/busybox
    |   |-- rx -> ../../bin/busybox
    |   |-- seq -> ../../bin/busybox
    |   |-- setkeycodes -> ../../bin/busybox
    |   |-- setsid -> ../../bin/busybox
    |   |-- setuidgid -> ../../bin/busybox
    |   |-- sha1sum -> ../../bin/busybox
    |   |-- softlimit -> ../../bin/busybox
    |   |-- sort -> ../../bin/busybox
    |   |-- split -> ../../bin/busybox
    |   |-- strings -> ../../bin/busybox
    |   |-- sum -> ../../bin/busybox
    |   |-- sv -> ../../bin/busybox
    |   |-- svlogd -> ../../bin/busybox
    |   |-- tail -> ../../bin/busybox
    |   |-- taskset -> ../../bin/busybox
    |   |-- tcpsvd -> ../../bin/busybox
    |   |-- tee -> ../../bin/busybox
    |   |-- telnet -> ../../bin/busybox
    |   |-- test -> ../../bin/busybox
    |   |-- tftp -> ../../bin/busybox
    |   |-- time -> ../../bin/busybox
    |   |-- top -> ../../bin/busybox
    |   |-- tr -> ../../bin/busybox
    |   |-- traceroute -> ../../bin/busybox
    |   |-- tty -> ../../bin/busybox
    |   |-- ttysize -> ../../bin/busybox
    |   |-- udpsvd -> ../../bin/busybox
    |   |-- unexpand -> ../../bin/busybox
    |   |-- uniq -> ../../bin/busybox
    |   |-- unix2dos -> ../../bin/busybox
    |   |-- unlzma -> ../../bin/busybox
    |   |-- unzip -> ../../bin/busybox
    |   |-- uptime -> ../../bin/busybox
    |   |-- uudecode -> ../../bin/busybox
    |   |-- uuencode -> ../../bin/busybox
    |   |-- vlock -> ../../bin/busybox
    |   |-- wc -> ../../bin/busybox
    |   |-- wget -> ../../bin/busybox
    |   |-- which -> ../../bin/busybox
    |   |-- who -> ../../bin/busybox
    |   |-- whoami -> ../../bin/busybox
    |   |-- xargs -> ../../bin/busybox
    |   `-- yes -> ../../bin/busybox
    `-- sbin
        |-- chpasswd -> ../../bin/busybox
        |-- chroot -> ../../bin/busybox
        |-- crond -> ../../bin/busybox
        |-- dhcprelay -> ../../bin/busybox
        |-- dnsd -> ../../bin/busybox
        |-- fakeidentd -> ../../bin/busybox
        |-- fbset -> ../../bin/busybox
        |-- httpd -> ../../bin/busybox
        |-- inetd -> ../../bin/busybox
        |-- rdate -> ../../bin/busybox
        |-- readprofile -> ../../bin/busybox
        |-- setlogcons -> ../../bin/busybox
        |-- telnetd -> ../../bin/busybox
        `-- udhcpd -> ../../bin/busybox

8 directories, 275 files
J'arrive bien à booter sur le CD grâce à syslinux par contre le kernel affiche une erreur :
Kernel panic - not syncing: no init found. Try passing init= option to kernel
Voici une partie de mon isolinux.cfg :
[...]
label linux
	kernel linux
	append init=/sbin/init ro root=/dev/hdc
Comme vous pouvez le voir j'ai même bien précisé avec l'option init où se trouve l'executable init.
Pouvez-vous m'aider à faire booter ce CD correctement?
Merci beaucoup.

---

[yugiohjcj.cf]

Poste le Saturday 29 September 2007 14:11:34
Répondre     Citer    
Re: CD de boot - Kernel Panic
Envoyé par: YuGiOhJCJ

Je laisse tomber temporairement l'idée de booter directement sur le file system du CD.
En fait il existe une autre méthode : l'accès à un ram-disc.
Pour cela, il faut modifier isolinux.cfg :
[...]
label linux
	kernel linux
	append initrd=initrd.gz load_ramdisk=1 prompt_ramdisk=0 rw root=/dev/ram0
J'ai essayé le ram-disc de Slackware 12.0 sur mon CD et il s'est lancé sans problème ; je suis tombé sur un prompt.
Donc je tente maintenant de créer mon propre ram-disc, mais à chaque fois au boot, le chargement du ram-disc est un echec.
Les 2 méthodes que j'ai utilisé sont :
-avec la commande "dd", puis "mke2fs", ensuite montage du système de fichier, et enfin copie de l'arborescence de fichiers.
-avec le script "mkinitrd" de la slackware 12.0
J'ai trouvé quelques docs sur le web mais si vous en avez d'autres je suis preneur.

---

[yugiohjcj.cf]

Poste le Wednesday 10 October 2007 10:22:38
Répondre     Citer    
Re: CD de boot - Kernel Panic
Envoyé par: YuGiOhJCJ

Problème résolu.
Il faut personnaliser l'option du noyau permettant de choisir la taille du Ram disque Initial.
Je l'ai donc placé à 8M et avec la commande dd je créé un initrd de même taille.
Ciao.

---

[yugiohjcj.cf]

Poste le Friday 12 October 2007 16:43:25
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
CD de boot - Kernel Panic
Un problème avec une commande du shell ? Comment utiliser la crontab ? Vous avez des soucis pour la gestion réseau sous Linux ? Pour vous la gestion des utilisateurs/groupes est du chinois ? Etc... Posez donc vos questions ici.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons