• ベストアンサー

VMWare上のkernel再構築

VMWare 上のRedHat9でカーネルの再構築(練習)で失敗しています。お助けください。 現在のカーネル2.4.20に2.4.23を追加する。 make mrproper make menuconfig make bzImage make modules make modules_install 以上完了 /boot/grub/grub.confは次のようになっています # grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a /boot partition. This means that # all kernel and initrd paths are relative to /boot/, eg. # root (hd0,0) # kernel /vmlinuz-version ro root=/dev/hda2 # initrd /initrd-version.img #boot=/dev/hda default=0 timeout=5 splashimage=(hd0,0)/grub/splash.xpm.gz title Red Hat Linux (2.4.20-8) root (hd0,0) kernel /vmlinuz-2.4.20-8 ro root=LABEL=/ hdc=ide-scsi initrd /initrd-2.4.20-8.img これに追加して title Red Hat Linux (2.4.23) root (hd0,0) kernel /vmlinuz-2.4.23 ro root=LABEL=/ hdc=scsi initrd /initrd-2.4.20-8.img を記述して再起動し2.4.23を選択するとdmssgの途中で NET4:Unix domain sockets1.0/SMP for Linux NET4.0 ds:no socket driver loaded VFS:Cannot open root device "/LABEL=/" or 00:00 Kernel panic:VFS:Unable to mount root fs on 00:00 で停止します。 kernel /vmlinuz-2.4.23 ro root=/dev/hda1 (註/bootパーティション) としてもdmesgは停止位置はほぼ同じで内容は以下のとおりです。 Kernel panic:No init found.Try passing=option to karnel 何かヒントを頂けるとありがたいのですが・・・よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.6

こんばんは。 VMWareWorkstation 5.5.1 にRedHat9をインストールして、 カーネル再構築(2.4.23へ)してみました。 (RedHat9はTypicalでインストール、ハードディスクはSCSI) # uname -rm 2.4.20-8 i686 # cd /usr/src/linux-2.4.23/ # make mrproper # cp /boot/config-2.4.20-8 .config (最初のカーネル設定ファイルを利用する) # make oldconfig (めんどくさいので全ての質問にリターンキーを押す) (# make menuconfigは取りあえず省略した) # make dep clean bzImage # make modules modules_install # make install menu.lstに新しいカーネルが自動的に登録されるので確認する。 cat /boot/grub/menu.lst 再起動 新しいカーネルで動いている事を確認 # uname -rm 2.4.23 i686 こんな感じです。参考にして下さい。 ※ カーネルが変わったので当然 vmware-config-tools を再実行してください。

その他の回答 (5)

  • astronaut
  • ベストアンサー率58% (303/516)
回答No.5

Advanced Partition Typeは関係なさそう. VMwareなので,HDDのインターフェースはSCSIだと思いますが, その辺に問題あるんですかね? ところで,カーネルの設定は白紙の状態からスタートしてるのですか? それだとちょっと辛いかも. RedHatのカーネルで起動して,/sbin/lsmodして表示されるモジュールは 作るようにしてみましょう. それでもダメなら,まずは,RedHat-9の設定をベースに調整されてはいかがですか? RedHat-9のカーネルソースに各種configファイルが含まれているので それを.configにコピーしてmake oldconfig. これで起動可能なカーネルがコンパイルできることを確認した後,不要 な機能を外していくのが良さそうです.

tachiwa
質問者

補足

>VMwareなので,HDDのインターフェースはSCSIだと思いますが, >その辺に問題あるんですかね? 何度もやってみて、難しいのは、仰せのとおりSCSI関連だと感じました。 カーネルソースの各種configファイルを利用してmake oldconfigをトライしdmesg 125行あたりまで進みましたがやはり成功していません。 この辺で締め切りお礼を投稿したいと思いますが、最後に何かありましたらコメントをいただけませんか。

  • astronaut
  • ベストアンサー率58% (303/516)
回答No.4

すみません. エラーをよく見ると,ramdisk関係が原因じゃないのかも. > VFS:Cannot open root device "/LABEL=/" or 00:00 File systems ---> Ext3 journalling file system support を<*>もしくは<M>にする. あと, > kernel /vmlinuz-2.4.23 ro root=/dev/hda1 で,「No init found」と怒られているのは,多分「root=…」のところに正しいrootパーティションを指定していないからです.(/dev/hda2かな?)

tachiwa
質問者

お礼

すみません。お礼でなくて追伸です 前回ご指摘のkernel /vmlinuz-2.4.23 ro root= の設定はどの方法でも同じところでとまります。 又、 >File systems ---> Ext3 journalling file system support >を<*>もしくは<M>にする. も設定しました。

tachiwa
質問者

補足

astronautさん、今晩は。 二日ぶりのご報告です。まだだめでした。 dmesgの82行目あたりの hdc: VMware Virtual IDE CDROM Drive, ATAPI CD/DVD-ROM drive ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 ide1 at 0x170-0x177,0x376 on irq 15 hda: 14680064 sectors (7516 MB) w/32KiB Cache, S=913/255/63, UDMA(33) ide-floppy driver 0.99.newide Partition check: hda: hda1 hda2 hda3 hda4 < で停止しました。以前はおそらく93行目 NET4:Unix domain sockets 1.0/SMP・・・・ まで進んでいましたからちょっと後退でしょうか? つぎはPartition Typesの修正でしょうか。現在は以下のようになっています。 # Partition Types # # CONFIG_PARTITION_ADVANCED is not set CONFIG_MSDOS_PARTITION=y CONFIG_SMB_NLS=y CONFIG_NLS=y 何か新しいアドバイス頂ければ幸いです。 追伸:止まってしまう新カーネルが吐き出すdmesgのコピーをとる方法はありますか。

  • astronaut
  • ベストアンサー率58% (303/516)
回答No.3

え? 一応linux-2.4.23.tar.bz2を落として確認したんですけど・・・ # make menuconfig Block devices ---> RAM disk support ありませんか?

tachiwa
質問者

補足

大変失礼しました。ありました。これから再度挑戦します。

  • astronaut
  • ベストアンサー率58% (303/516)
回答No.2

CONFIG_BLK_DEV_RAM=y になっていなかったら,yにしてみてください. 2.4系列のカーネルの構築は随分やっていないので自信なしですが.

tachiwa
質問者

補足

ヒント、有難うございます。 がmenuconfigに見当たりません。何かのサブに入っているのでしょうか? >CONFIG_BLK_DEV_RAM=y

  • mtfoggy
  • ベストアンサー率14% (37/255)
回答No.1

>make modules >make modules_install >以上完了 モジュールしかインストールしてませんけど。。

tachiwa
質問者

補足

記入漏れがあります。 mkinitrd /boot/initrd-2.4.23.img 2.4.23 カーネルイメージbzImageを/boot/vmlinuz-2.4.23としてコピー。 System.mapを/boot/System.map-2.4.23としてコピーしました。 尚先の質問投稿中 grub.confの最終行 initrd /initrd-2.4.20-8.imgはミスプリントで正しくは initrd /initrd-2.4.23.imgです。 以上よろしくお願いいたします。

関連するQ&A

  • grubでkernel panic

    DELLノートにXPとVine2.6のデュアルブートをしたいのですが,grubでLinuxを起動できません. インストールではliloをMBRではなくBOOTに書き込んでいます. つまり,先にXPを起動できるようにしてから次にgrubでLinuxを起動させる手順を選択しております. デュアルブートの解決方法などを教えていただけませんでしょうか? …以下、症状です… 僕は hda1: DELL hda2: NTFS hda3: ext3 hda4: extenstion hda5: ext3 hda6: swap でhda3にBOOT,hda5に本体を置いてるので  grub> root (hd0,2)  grub> kernel /vmlinuz root=/dev/hda3  grub> boot だけだと kernel panic: no init found Try passing it=option to kernel と怒られますので bootの直前に  grub> root (hd0,4)  grub> initrd /initrd/initrd.img としようとするのですが、initrd.imgがありません.  grub> root (hd0,2) と打つと Filesystem type is ext2fs, partision type 0x83 と帰ってきますが,   ^ ext3fsでないのが気になります. 再インストールしてliloをMBRに書き込んでから 先にLinuxを起動できるようにして, 次にgrubでXPを起動させる方が簡単でしょうか?

  • Redhatのシングルユーザーモードの起動方法

    GRUB上で、以下のコマンドを実行しましたが、起動しません。カーネルパニックになって止まります。 grub> kernel /boot/vmlinuz-2.6.9-42.EL ro root=LABEL=/ 1 initrd /boot/initrd-2.6.9-42.EL.img この後に・・・ grub> boot で、起動途中でカーネルパニックになってしまいます。 よろしくおねがいします。

  • grubのエラーについて

    ブートローダ修復時に、以下のようなエラーになってしまいます。 # chroot /mnt/sysimage # grub-install --root-directory=/ /dev/cciss/c0d0 上記のコマンドを打つと 「エラー:/dev/cciss/c0d0:not found or not a block device」 になってしまいます。 chroot すると、/dev/ccissを認識しないようです。 どのように認識させたらよいかご存知でしょうか。 ○/mnt/sysimage/boot/grub/device.map # this device map was generated by anaconda (fd0) /dev/fd0 (hd0) /dev/cciss/c0d0 ○/mnt/sysimage/boot/grub/grub.conf # grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a /boot partition. This means that # all kernel and initrd paths are relative to /boot/, eg. # root (hd0,0) # kernel /vmlinuz-version ro root=/dev/cciss/c0d0p7 # initrd /initrd-version.img #boot=/dev/cciss/c0d0 default=0 timeout=5 splashimage=(hd0,0)/grub/splash.xpm.gz title Red Hat Enterprise Linux ES (2.6.9-42.ELsmp) root (hd0,0) kernel /vmlinuz-2.6.9-42.ELsmp ro root=LABEL=/ rhgb quiet initrd /initrd-2.6.9-42.ELsmp.img title Red Hat Enterprise Linux ES (2.6.9-42.EL) root (hd0,0) kernel /vmlinuz-2.6.9-42.EL ro root=LABEL=/ rhgb quiet initrd /initrd-2.6.9-42.EL.img よろしくお願いします。

  • 同じようにインストールした2台のLinuxをデュアルブートしたい

    全く同じようにインストールした2台のLinux入りHDDをプライマリマスターとセカンダリマスターに接続し、 GRUBでデュアルブートさせたいです。 どちらのLinuxマシンも同じようにインストールしているので、 /boot/grub/grub.confには、  title Linux  kernel (hd0,0)/vmlinuz root=0303  initrd (hd0,0)/initrd と全く同じように書かれており、これで起動しています。 2台のHDDを接続し、プライマリに接続したHDDで起動し(こちらでしか起動できなかった)、 /sbin/fdisk -l で確認したところ、 プライマリに接続したHDDのデバイス名は/dev/hda1~3, セカンダリに接続したHDDのデバイス名は/dev/hdc1~3でした。 http://oshiete1.goo.ne.jp/qa1787988.html ↑には、hdaが(hd0)、hdbが(hd1)のように書かれていたので、 hdcは(hd2)かと思い、 grub.confに、  title Linux1  kernel (hd0,0)/vmlinuz root=0303  initrd (hd0,0)/initrd  title Linux2  kernel (hd2,0)/vmlinuz root=0303  initrd (hd2,0)/initrd と書いてみたのですが、GRUBで「Linux2」を選択しても、セカンダリに繋いだ方は起動しませんでした。 (ちなみに(hd1,0)と書いた場合は、(hd0,0)と同じくプライマリに繋いだ方が起動しました) この環境でデュアルブートするには、grub.confにはどのように書いたらよいでしょうか。

  • GRUBでOSの選択画面が出ない

    今、大学生協で買ったdynabookSS MX25Aを使っています。 もともとWindowsXPとVineLinuxが入っていて GRUBでOSを選択するようになっていたのですが、 WindowsXPが起動しなくなってしまったので、 PowerX Hard Disc Manager7を使って リカバリーをかけました。 (バックアップを取ったのは買った時です) そうしたら今度は起動した時 GRUBの選択画面(WindowsかLinuxか)が 出ず grub>のコンソールだけ出るようになってしまいました。 Knoppixで立ち上げてみたところ Windowsのパーティション(NTFS)も Linuxのパーティション(Ext3)も認識しますし 中身もきちんとリカバリー出来ているように思います。 どうやったら元のようにOSを選択して 起動できるようになるのでしょうか? 生協に行けば済むかもしれませんが 家の都合で今行けないんです。。。 パーティションの構成↓ 1.WindowsXP(NTFS) 2.VineLinux(Ext3) 3.?(LinuxSwapと出ています) 4.?(WindowsXPのアプリ用領域) 2番目のVineLinuxの/boot/grub/grub.confには #menu.lst generated by anaconda # # Note that you do not have to rerun grub after changes to this file # NOTICE: You do not have a /boot partition. This means that # all kernel and inited paths are relative to /, eg. # root(hd0,2) # kernel /boot/vmlinuz-version ro root=/dev/sda3 # initrd /boot/initrd-version.img default=1 timeout=10 title Windows rootnoverify (hd0,0) chainloader +1 title VineLinux root(hd0,2) kernel /boot/vmlinuz ro root=LABEL=/ resume2=swap:/dev/sda5 vga=0x314 hdc=ide-scsi initrd /boot/initrd.img #title VineLinux (Previous kernel) # root (hd0,2) # kernel /boot/vmlinuz.old ro root=LABEL=/ resume2=swap:/dev/sda5 vga=0x314 # initrd /boot/initrd.old.img と書いてあります。

  • centOSとwindowsの順番を逆にしたい

    2度目の質問になります。matyuといいます、よろしくお願いいたします。 CドライブにwindowsXPがインストールされており、後から増設したDドライブにcentOS5をインストールしてgrubにてデュアルブートさせておりますが、優先して起動するOSがcentOSになっています。 優先して起動するOSをwindowsにする場合は下記grub.confのどこをどのように書き換えればいいのでしょうか。 # grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a /boot partition. This means that # all kernel and initrd paths are relative to /boot/, eg. # root (hd0,0) # kernel /vmlinuz-version ro root=/dev/VolGroup00/LogVol00 # initrd /initrd-version.img #boot=/dev/hdd default=0 timeout=5 splashimage=(hd0,0)/grub/splash.xpm.gz hiddenmenu title CentOS (2.6.18-8.el5) root (hd0,0) kernel /vmlinuz-2.6.18-8.el5 ro root=/dev/VolGroup00/LogVol00 rhgb quiet initrd /initrd-2.6.18-8.el5.img title WindowsXP map (hd0) (hd1) map (hd1) (hd0) rootnoverify (hd1,0) chainloader +1

  • カーネル再構築でのエラー

    TurboLinux10Desktopでカーネルの再構築を実行してみました。 結論から言うと、 kernel (hd0,0)/vmlinuz_usb root=0303 Error 13 :Invalid or unsupported executable format というエラーが出て起動できませんでした。 このエラーが出そうな要因を教えてください。 インストール時のgrub.confには、 title turbolinux kernel (hd0,0)/vmlinuz root=0303 initrd (hd0,0)/initrd と書かれており、 これに従って、 title turbolinux_usb kernel (hd0,0)/vmlinuz_usb root=0303 initrd (hd0,0)/initrd_usb と記述しました。 vmlinuz_usb、initrd_usbは、 日付から見て今回の再構築の過程でできたであろうファイルへのシンボリックリンクです。 grub.confに書かれたもともとのvmlinuz、initrdのリンク先を見て作りました。 再構築時のパラメータの設定はmake xconfigで行い、USB関連の1項目にチェックを入れただけです。 その後のmakeのコマンドは、 http://www.atmarkit.co.jp/flinux/rensai/linuxtips/217tlkernel.html を参考にしました。 今回のエラーは、単純に「今回のxconfigによるパラメータではOSは起動できない」という意味なのでしょうか? make dep ~ make installの間、特にエラーは出ませんでしたが。 make xconfigを開いた時に既に多くのパラメータが設定済みに見えたので、 参考サイトにあるようにxconfigの前に./SetupKernelSource.sh i386を実行しなかったのですが、 これがまずかったのでしょうか? 今回の再構築の手順は以下の通りです。 cd /usr/src/linux make xconfig →設定後保存し、.configができた make dep make clean make bzImage make modules make modules_install make install →/usr/src/linuxにvmlinuxができた cp vmlinux /boot /bootを見ると、 initrd-2.6.0.img、System.mapが今日の日付になっていた ln -fs vmlinux vmlinuz_usb ln -fs initrd-2.6.0.img initrd_usb 前述したようにgrub.confを書き換えて再起動→Error13 この再構築手順で間違った部分があればそれも教えてください。

  • ubuntu上でvistaの起動画面を復活させるには

    virtualboxを試そうとして無駄なパッケージをインストールしたためか、(途中で何かを最新にするという表示でOKしたと思います)vistaOSの選択画面が消えてしまい、ubuntuばかりがでてきます。その後インストールしたパッケージをすべてアンインストールしたのですが、状況は変わりません。vistaのデータはまだ生きているのですが、どうしたらvistaを起動できるようになるでしょうか。(下のように表示されています。) title Ubuntu 8.04.1, kernel 2.6.24-22-generic root (hd0,3) kernel /boot/vmlinuz-2.6.24-22-generic root=UUID=f7fabd13-d105-4d31-9223-700df6398ce0 ro quiet splash locale=ja_JP initrd /boot/initrd.img-2.6.24-22-generic quiet title Ubuntu 8.04.1, kernel 2.6.24-22-generic (recovery mode) root (hd0,3) kernel /boot/vmlinuz-2.6.24-22-generic root=UUID=f7fabd13-d105-4d31-9223-700df6398ce0 ro single initrd /boot/initrd.img-2.6.24-22-generic title Ubuntu 8.04.1, kernel 2.6.24-21-386 root (hd0,3) kernel /boot/vmlinuz-2.6.24-21-386 root=UUID=f7fabd13-d105-4d31-9223-700df6398ce0 ro quiet splash locale=ja_JP initrd /boot/initrd.img-2.6.24-21-386 quiet title Ubuntu 8.04.1, kernel 2.6.24-21-386 (recovery mode) root (hd0,3) kernel /boot/vmlinuz-2.6.24-21-386 root=UUID=f7fabd13-d105-4d31-9223-700df6398ce0 ro single initrd /boot/initrd.img-2.6.24-21-386 title Ubuntu 8.04.1, kernel 2.6.24-21-generic root (hd0,3) kernel /boot/vmlinuz-2.6.24-21-generic root=UUID=f7fabd13-d105-4d31-9223-700df6398ce0 ro quiet splash locale=ja_JP initrd /boot/initrd.img-2.6.24-21-generic quiet title Ubuntu 8.04.1, kernel 2.6.24-21-generic (recovery mode) root (hd0,3) kernel /boot/vmlinuz-2.6.24-21-generic root=UUID=f7fabd13-d105-4d31-9223-700df6398ce0 ro single initrd /boot/initrd.img-2.6.24-21-generic title Ubuntu 8.04.1, kernel 2.6.24-16-generic root (hd0,3) kernel /boot/vmlinuz-2.6.24-16-generic root=UUID=f7fabd13-d105-4d31-9223-700df6398ce0 ro quiet splash locale=ja_JP initrd /boot/initrd.img-2.6.24-16-generic quiet title Ubuntu 8.04.1, kernel 2.6.24-16-generic (recovery mode) root (hd0,3) kernel /boot/vmlinuz-2.6.24-16-generic root=UUID=f7fabd13-d105-4d31-9223-700df6398ce0 ro single initrd /boot/initrd.img-2.6.24-16-generic title Ubuntu 8.04.1, kernel 2.6.22-14-generic root (hd0,3) kernel /boot/vmlinuz-2.6.22-14-generic root=UUID=f7fabd13-d105-4d31-9223-700df6398ce0 ro quiet splash locale=ja_JP initrd /boot/initrd.img-2.6.22-14-generic quiet title Ubuntu 8.04.1, kernel 2.6.22-14-generic (recovery mode) root (hd0,3) kernel /boot/vmlinuz-2.6.22-14-generic root=UUID=f7fabd13-d105-4d31-9223-700df6398ce0 ro single initrd /boot/initrd.img-2.6.22-14-generic title Ubuntu 8.04.1, memtest86+ root (hd0,3) kernel /boot/memtest86+.bin quiet ### END DEBIAN AUTOMAGIC KERNELS LIST # This is a divider, added to separate the menu items below from the Debian # ones. title Other operating systems: root title Ubuntu 8.04, kernel 2.6.24-16-generic root (hd0,3) kernel /boot/vmlinuz-2.6.24-16-generic root=UUID=f7fabd13-d105-4d31-9223-700df6398ce0 ro quiet splash locale=ja_JP initrd /boot/initrd.img-2.6.24-16-generic quiet title Ubuntu 8.04, kernel 2.6.24-16-generic (recovery mode) root (hd0,3) kernel /boot/vmlinuz-2.6.24-16-generic root=UUID=f7fabd13-d105-4d31-9223-700df6398ce0 ro single initrd /boot/initrd.img-2.6.24-16-generic title Ubuntu 8.04, kernel 2.6.22-14-generic root (hd0,3) kernel /boot/vmlinuz-2.6.22-14-generic root=UUID=f7fabd13-d105-4d31-9223-700df6398ce0 ro quiet splash locale=ja_JP initrd /boot/initrd.img-2.6.22-14-generic quiet title Ubuntu 8.04, kernel 2.6.22-14-generic (recovery mode) root (hd0,3) kernel /boot/vmlinuz-2.6.22-14-generic root=UUID=f7fabd13-d105-4d31-9223-700df6398ce0 ro single initrd /boot/initrd.img-2.6.22-14-generic title Ubuntu 8.04, memtest86+ root (hd0,3) kernel /boot/memtest86+.bin quiet

  • grub-installが不可能なので、違う方法がありますか?

    Vine Linux 3.0 をインストールしました。 システムコマンダーからブートできないため、試行錯誤しています まず、/sbin/grub-install /dev/hda が comand not found となり、何をどうすれば良いか知識がありません。 となれば、Linux専用MBRファイルを作成するのが良いかと思い付きました。 hda1 WinME(20GB)とシステムコマンダー8.0 hda2 WinXP(30GB) hda3 /boot(47MB) hda4 拡張 hda5 /(26GB) hda6 swap(1024MB) 現在は、GRUBをFDよりブートし、Vine が起動できています。 title Linux root (hd0,2) kernel /vmlinuz root=/dev/hda5 ro #initrd /boot/initrd.img そこで、FDブートではなく、MBRファイルを作成し、システムコマンダーよりMBR指定での起動としたいのです。 # dd if=/dev/hda of=/bootlnx bs=512 count=1 このようなコマンドでよろしいでしょうか。 ただ、bootlnxファイルをバイナリで見ても全て 00 の表示のような感じでしたが、正常に作成されていないのでしょうか。 何か良いアドバイスありましたら宣しくお願いします。

  • GRUBの設定のしかたがわからないです。

    LINUXの本を買ってよんだのですが、どれも GRUBの設定の仕方が書いてなかったです。 どこをみればよいでしょうか? root (hd0,0) chainloader +1 あたりがわからないです。 # grub's OS Boot Menu file timeout 5 default 1 title Windows 98 root (hd0,0) chainloader +1 title Debian GNU/Linux 2.2 root (hd0,1) kernel /boot/vmlinuz root=/dev/hda2 ro