カーネル再構築の失敗と対処法

このQ&Aのポイント
  • RedHat 7.2のカーネル再構築作業中にミスし、起動できなくなった。原因は/usr/src内に誤ったディレクトリが作成されたことが考えられる。
  • 某HPの情報を参考に、make mrproper → make xcpnfig → make dep → make bzdiskの手順で作業を行ったが、再起動後も起動しない状態が続いている。
  • どのような手順を取れば問題を解決できるかわからないので、助けがほしい。
回答を見る
  • ベストアンサー

カーネル再構築失敗

お世話になります。 RedHat 7.2、カーネルのバージョンを上げるため作業をしていましたが、/usr/src 内に linux シンボリックリンクを削除せず新しいカーネルを置いてしまいました。それが原因か、/src 内には 5つのディレクトリ(redhat, linux, linux-2.2.16, linux-2.4.9-13, linux-2.4 )ができてます。 この間違いに気づかす、 某HP 参考に、 make mrproper → make xcpnfig → make dep → make bzdisk と作業を行いました。で、FDをいれて再起動したのですが、当然のごと起動しませんでした。(4桁(だったと思います)の数字がひたすら画面に出力されつづけてます。) どこから手をつけていいかわかりません。よろしくお願いします。

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

  • ベストアンサー
  • marimo_cx
  • ベストアンサー率25% (873/3452)
回答No.2

/usr/src/linux を消して、/usr/src でカーネルを展開してやり直せば良いと思います。 あと一応念のためですけど、ローダブルモジュールもコンパイルしていますよね? 参考までに私の通常のやり方です。 cd /usr/src rm -rf linux tar Ixvf /home/*/linux-2.4.*.tar.bz2 cd linux make menuconfig make dep;make clean;make bzImage make modules;make modules_install fdformat /dev/fd0h1440 dd if=arch/i386/boot/bzImage of=/dev/fd0

kuniuni
質問者

お礼

アドバイスと試行錯誤の結果、アップできました。 ありがとうございました。

その他の回答 (1)

  • marimo_cx
  • ベストアンサー率25% (873/3452)
回答No.1

ひとまずやり直せば良いのではないでしょうか? 新しいカーネルをFD起動用にFDに書き込んだだけなんですから、抜いて通常起動すれば良いのですから。ところで出来上がったカーネルのサイズが大きすぎたりしていませんか?

kuniuni
質問者

補足

FD抜いて再起動しも、同じ作業をすると同じことになるので、まずすべきことが知りたいです。 「やり直せ」ということは、/usr/src の中身を全部消して、カーネルを入れなおせということでしょうか? redhat, linux, linux-2.2.16, linux-2.4.9-13, linux-2.4 linuxはlinux-2.2.16の、linux-2.4がlinux-2.4.9-13のシンボリックで、linuxとlinux-2.2.16には、2つしかファイルはありませんでした。これって正常な状態なのでしょうか?他の人が使っていたマシーンなので、ファイルや中身は調べないとわかりません。 カーネルのサイズについては、確認します。

関連するQ&A

  • カーネルのインストールがうまくいかない

    Redhat9.0を使っていて,カーネルは2.4.20でしたが, カーネル2.4.18が必要となって,バージョンダウンする必要がありました. そこで,カーネルのtar.gzファイルを /usr/src/linux-2.4.18以下に展開し, make mrproper make menuconfig make dep make bzImage make modules make modules_install を行いました. しかし再起動し,grubでlinux-2.4.18を選んで起動しようとすると途中で kernel Panic :I have no root and I want to scream とエラーが出ます. どのようにしたら起動できるようになるでしょうか?

  • RHL7.2でカーネルの再構築

    RHL7.2でインストールしたばかりのデフォルトの状態で、カーネルの再構築(linux-2,4,17.tar.gz)ができません。マニュアルにあるように、 cp linux-2.4.17 /usr/src tar xvzf linux-2.4.17 cd /usr/src/linux make xconfig make dep make clean make modules make modules_install make install の手順を踏んでカーネルの再構築をしているのですが、どうしても、最後のmake install時にエラーが2つでてしまいます。 カーネルオプション事態には問題はないと思うのですが、なぜ、エラーがでてしまうのかわかりません。エラーの一つに「lilo.confがありません」。とでてくるのですが、インストール時にはGRUBを設定しています。 このエラーに関して、思い当たることがあれば、どうか、教えてください。お願いします。 ついでにPPPもできずに困っています。RHL7.1では普通にできたのに・・・ RHL7.2自体の評判というのはどうなんでしょうか?それについても教えてください。どうか、よろしくお願いします。

  • macでカーネルのディレクトリはどこにありますか

    linuxカーネル用のディレクトリはたいてい/usr/src/linuxにあると本に書いてあったのですが、macではどこに置いてあるのですか。/usrのしたにはには/srcはありません。 ご回答よろしくお願いします。

  • LINUXのカーネル再構築

     初めてLINUX Redhatでカーネルの再構築をしました。モジュールはmenuconfigで設定。再起動後に/usr /var /homeの中身がからっぽになってしまいました。何を失敗したのかわかりません。旧バージョンは残っているのでやり直しはきくのですが、原因がわからないと怖くて。どなたかわかりませんか?

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

    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 この再構築手順で間違った部分があればそれも教えてください。

  • カーネル再構築にて、現在の値を引き継ぐ

    Redhat9のカーネル再構築を行いたいです。 DISCからインストールした状態(カーネル再構築を行おうとしているカーネルの状態)を全て引き継ぎ、  SCSI SupportのProbe all LUNs on each SCSI device を Y にする という1点だけ変更を加えて、実行したいです。 これを目標に、以下の流れでコマンドを実行しました。 cd /usr/src/linux-2.4.**/ make mrproper cp ./configs/kernel-2.4.20-i686.config .config sudo make xconfig  ・[SCSI support]→[Probe all LUNs on each SCSI device]をオンにする。  ・セーブ&exitで終わる。 make bzImage && make modules make modules_install installkernel 2.4.20-8-LUNs arch/i386/boot/bzImage System.map ここで、 参考したサイトの手順を鵜呑みにして cp ./configs/kernel-2.4.20-i686.config .config というコマンドを実行して.configを書き換えているのですが、 これは「DISCからインストールした状態」を引き継いでいないですよね? 「DISCからインストールした状態」を引き継ぐには、 インストールした時点で/usr/src/linux-2.4.**/に存在している.configが、/usr/src/linux-2.4.**/にある状態で、 make xconfig を実行すれば良いのでしょうか。 make oldconfigというコマンドが現在の値を引き継いでいるらしいのですが、 実行後に聞かれるいくつかの選択肢の意味がよくわかりません。

  • ubuntuでカーネルのコンパイルができません。

    PC知識についての質問です。 Linux系OSのubuntu環境で、カーネルのコンパイルをしたところ、コンパイルが途中で止まった模様です。結果、パッケージファイルの~.debが生成されませんでした。原因は何なんでしょうか?みなさん のお知恵をおかしください。 【エラーメッセージ】 バージョン文字列 'test.0.1' にエラー: version number does not start with digit make[2]: *** [debian/stamp/binary/linux-image-2.6.38.2] エラー 2 make[2]: ディレクトリ `/usr/src/linux-source-2.6.38' から出ます make[1]: *** [debian/stamp/binary/pre-linux-image-2.6.38.2] エラー 2 make[1]: ディレクトリ `/usr/src/linux-source-2.6.38' から出ます make: *** [kernel_image] エラー 2

  • Debian(woody)のカーネルのソースを取得したい

    /usr/src/配下にDebian(woody)のカーネルのソースを配置したいのですがどうしたらよいでしょうか?? 現在は空っぽです。 私のDebianの知識もほとんどありません。 apt-getしたらいいのかなと思いいろいろ検索し情報収集してるのですが、なかなか該当する情報を得られず質問させていただきました。 用途としてはlinux-wlan-ngのmake config時の"Linux source directory"参照先にしたいのです。 どうぞよろしくおねがいいたします。

  • Fedora16のカーネル再構築

    fedora16でカーネルを再構築したいのですが、以下のエラーが出てコンパイルできません。 $ make make[1]: *** `arch/x86/syscalls/../include/generated/asm/unistd_32.h' に必要なターゲット `/usr/src/kernels/3.3.7-1.fc16.x86_64/arch/x86/syscalls/syscall_32.tbl' を make するルールがありません. 中止. make: *** [archheaders] エラー 2 解決法はありますか? 解決法があればよろしくお願いします。

  • RHNに登録しないでカーネル導入

    Redhat Enterprise Linux 5 をインストールしたのですがRHNに登録しないでカーネルを導入する方法はありますか? 現在 /usr/src に linux-2.6.27.59を導入しましたばかりです。(カーネルのtarファイルを展開しました。) この作業の目的はVirtualBox のGuest Additionsを導入したいためです。 一旦Gust Additionsのインストールが成功したと思ったら、機能したのが画面解像度の変更が出来ただけで、ホスト・ゲスト間のマウスオーバー機能、ホスト・ゲスト間のクリップボードコピー機能が使えません。 色々調べているうちにGuest Additionsの適用が完全でない理由がLinuxカーネルが入っていない為だと分かりました。 そこで linux-2.6.27.59 を展開しました(正常に展開)がGuest Additionsは未だにFail のままです。