- PR -

カーネル再構築時に古いカーネルの.configファイルが見あたらない

1
投稿者投稿内容
Tt
常連さん
会議室デビュー日: 2003/04/02
投稿数: 42
投稿日時: 2003-09-24 19:59
現在カーネルの再構築を実行中ですが、コンフィギュレーションが
うまくいかないため、古いカーネルのコンフィギュレーションを
参考にしようと思い .configを探しているのですが、見あたりません。

探している場所は、古いカーネルが2.4.20-6だったので、
/usr/src/linux-2.4.20-6のディレクトリ内です。
ls -laを実行しても.configが見あたりません。
WEBを検索してみたのですが、探す方法が見つかりませんでした。

make mrproperをこのディレクトリで実行してしまった(ような気がする)
からかもしれませんが、古いカーネルの.configファイルを
参照する良い方法は何かないでしょうか。
もしくは、2.4.22に変更するつもりなので、古いカーネルと同じ設定で
再構築する方法がありましたらご教授ください。
るーかす
会議室デビュー日: 2002/12/25
投稿数: 8
投稿日時: 2003-09-24 20:44
旧カーネルで
make xconfig
とかして,何も変更せずに終了すれば.configファイルできませんでしたっけ?
環境が手元にないのであやふやですが(ごめんなさい.
Marionette
ベテラン
会議室デビュー日: 2003/08/08
投稿数: 70
投稿日時: 2003-09-24 22:09
現在使用しているのがディストリビューションものなら
make oldconfig
で動作中のカーネルと同じ .configが作成されます。
(arch/i386/defconfigを参照してます。)
configsディレクトリにもCPUタイプ別の .configがあります。

kernel Projectからダウンロードしたものだったらどうしましょう?
defconfigはありますが、CONFIG_EXPERIMENTAL=n になっているので
全く参考にならないです。
モジュールは/lib/modules/kernel_version/以下のファイルをチェック
すればわかります。
組み込み分は「/sbin/ksyms -a」である程度分かりますけど、、、
PCMCIAの Configureスクリプトが多少参考になります。

この際だから、ヘルプで確認しながら不要なものを組み込み・モジュールに
するのをやめるのも一案ですが。

[ メッセージ編集済み 編集者: Marionette 編集日時 2003-09-24 22:14 ]
t-wata
大ベテラン
会議室デビュー日: 2002/07/12
投稿数: 209
お住まい・勤務地: 東京
投稿日時: 2003-09-24 22:11
> 旧カーネルで
> make xconfig
> とかして,何も変更せずに終了すれば.configファイルできませんでしたっけ?

make mrproperしちゃってるので、あくまで設定のデフォルト値が書き込まれるだけです。
2.4.22でmake xconfigとかmake menuconifgした方が早い。

> make mrproperをこのディレクトリで実行してしまった(ような気がする)
> からかもしれませんが、古いカーネルの.configファイルを参照する良い
> 方法は何かないでしょうか。

本当に make mrproperしちゃったなら、ファイル自体は消えてしまってます。
その.configファイルが、ディストリビューションのインストール時についてきた
ものであれば、(ディストリビューションに付属している)kernelのソースを再度
インストールすれば、復元できます。
それ以外の場合はバックアップから復元する他無いです。もとのカーネルの
.configを作成した人は誰でしょうか?その人にバックアップをとっていないか聞い
てみるしかないでしょう。
Tt
常連さん
会議室デビュー日: 2003/04/02
投稿数: 42
投稿日時: 2003-09-25 22:20
数々のアドバイス、ありがとうございます。

ためしにコンフィギュレーションしてみたのですが、
どうしてもmake bzImageでエラーが出てしまいます。
そのときのエラーはこのようになりましたが、
やはりコンフィギュレーションが間違っているのでしょうか。。。

gcc -D__KERNEL__ -I/usr/src/linux-2.nt.c:32 から:
/usr/src/linux-2.4.22/include/linux/sunrpc/sched.h:42: 警告: struct や union の
最後にセミコロンがありません
/usr/src/linux-2.4.22/include/linux/sunrpc/sched.h:42: 構文解析エラー が '{' ト
ークンの前にあります
/usr/src/linux-2.4.22/include/linux/sunrpc/sched.h:78: 構文解析エラー が ':' ト
ークンの前にあります
/usr/src/linux-2.4.22/include/linux/sunrpc/sched.h:83: 構文解析エラー が '}' ト
ークンの前にあります
/usr/src/linux-2.4.22/include/linux/sunrpc/sched.h: 関数 `rpc_malloc' 内:
/usr/src/linux-2.4.22/include/linux/sunrpc/sched.h:200:
不完全型のポインタへの間接参照
/usr/src/linux-2.4.22/include/linux/sunrpc/sched.h: 関数 `rpc_exit' 内:
/usr/src/linux-2.4.22/include/linux/sunrpc/sched.h:206:
不完全型のポインタへの間接参照
/usr/src/linux-2.4.22/include/linux/sunrpc/sched.h:207:
不完全型のポインタへの間接参照
clnt.c: 関数 `rpc_call_sync' 内:
clnt.c:241: `my_task' の領域サイズがわかりません
clnt.c:261: 不完全型のポインタへの間接参照
clnt.c:264: 不完全型のポインタへの間接参照
clnt.c:241: 警告: 変数 `my_task' は使われませんでした

これはエラーのほんの一部なのですが、どうすれば改善できるのでしょか。。。
t-wata
大ベテラン
会議室デビュー日: 2002/07/12
投稿数: 209
お住まい・勤務地: 東京
投稿日時: 2003-09-26 11:52
make menuconfig (or make xconfig or make config)
make dep
make clean
make bzImage
の順にやりましたか?
Tt
常連さん
会議室デビュー日: 2003/04/02
投稿数: 42
投稿日時: 2003-09-26 22:07
なんとかカーネル再構築ができました。
どうやらコンフィギュレーションが不完全だったようです。
一部のモジュールで起動時にエラーが起きていますが、
なんとか起動もうまくいっています。


新しいカーネルが動いていますので、その上でもう一度
エラーの出ている箇所についてコンフィギュレーションしなおしてみます。
今後こうならないように、コンフィギュレーションのバックアップをとりました。

数々のアドバイス、ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)