お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2009-06-01 03:24:49

petitbootang
メンバ
From: 東京都
登録日: 2009-02-12

カーネルソースについて

お世話になります。

Ubuntu9.04 で、
sudo apt-get source linux-image-2.6.28-11-generic
として取得したカーネルソースなのですが、
sudo make xconfig
すると、version が v2.6.28.9 となっています。
これは、一緒にダウンロードされる、
linux_2.6.28-11.42.diff.gz
linux_2.6.28-11.42.dsc
を使って、2.6.28-11 相当のカーネルソースを作ると言う意味でしょうか?
済みません、適用の仕方が分かりません。
ご教授いただけると幸いでございます。

オフライン

 

#2 2009-06-01 08:08:48

okamrua
メンバ
From: 福岡
登録日: 2008-07-11

Re: カーネルソースについて

おはようございます。
ubuntuで用意されているパッケージ「linux-image-2.6.28-11-generic」のベースになっているのは「linux kernel 2.6.28.9」ですね。
パッケージ名はカーネルパッケージを作成(ビルド)する際に、ubuntuで管理するものに置き換えられていますので、カーネルのバージョンと全く同一ではありません。
またkernel単体ですと、2.6.28系では2.6.28.10が最新リリースとなっております。
チャレンジャーなら2.6.29系、2.6.30系も試してみるとワクワクするかも!?(壊さない程度で^^;)

オフライン

 

#3 2009-06-01 08:22:30

okamrua
メンバ
From: 福岡
登録日: 2008-07-11

Re: カーネルソースについて

すみません肝心なことが抜かしたまま投稿したら、今は再編集ができないのですね・・・トホホ
ちょっと出勤してきますので手が空いたらまた書きますね。

オフライン

 

#4 2009-06-01 10:39:11

ack
メンバ
登録日: 2007-06-01

Re: カーネルソースについて

カーネルバージョンについての詳細は存じませんが、
.orig.tar.gz
.diff.gz
.dsc
の3つから、Ubuntu用に修正されたソースツリーを展開するには、dpkg-dev パッケージに含まれる dpkg-source コマンドが良いようです。

例えば
http://packages.ubuntu.com/ja/jaunty/linux-image-2.6.28-11-generic
(の右側の方)から
linux_2.6.28-11.42.dsc
linux_2.6.28.orig.tar.gz
linux_2.6.28-11.42.diff.gz
の3つをダウンロードして同じディレクトリに入れ、そのディレクトリ内で

コード:

dpkg-source -x linux_2.6.28-11.42.dsc

とすればdiff.gzのパッチを適用しつつ展開されて行きます。

また、確か dpkg-dev パッケージがインストールされていて、dpkg-source が使える状態で apt-get source をすると、
ソースをダウンロードした段階で dpkg-source -x まで自動的に行って展開してくれた覚えがあります。

オフライン

 

#5 2009-06-01 13:24:43

petitbootang
メンバ
From: 東京都
登録日: 2009-02-12

Re: カーネルソースについて

okamura さん、ack さん、ありがとうございます。

実は一度すでにカーネルコンパイルを行ったところなのですが、grub のタイトルが 2.6.28.9 となっていたものですから・・・。
そのときはあまりよく確認していなくて、これはおかしいなと思い、make xconfig を再度開いてみると、タイトルバーが 2.6.28.9 になっていたのでちょっと慌てまして(^^;)

しかし、xconfig の中をよく見てみると、Arbitrary version signature のところに、Ubuntu 2.6.28-11.42-generic とあったので、これが dpkg-source -x が自動的に行われて、diff.gz を適用しつつ展開されたということでしょうか。
dpkg-dev はインストールされていました。

それと、カーネル(バージョン)名を変更するには、Makefile の EXTRAVERSION を自分で変更する必要があったんですね。
さもないと、何度コンパイルしようが、2.6.28.9 のままでした。

カーネルの再構築を行うのは実に10年かそれ以上ぶりで、手順などすっかり忘れてしまい・・・。
その頃はとにかくまともに動かない時代だったので、しょっちゅうコンパイルしてた覚えが・・・何時間もかかって。
と言うか手順そのものが変わってますよね、相当簡単になったと言うか。
前は、
make dep ; make clean
make bzlilo
make bzdisk
make bzImage
bzImage を vmlinuz にリネームして、新しい System.map をコピーしてリンクを張ってとかやって・・・。
あぁ、段々思い出してきました(^^)

オフライン

 

#6 2009-06-01 23:44:30

okamrua
メンバ
From: 福岡
登録日: 2008-07-11

Re: カーネルソースについて

ackさん、フォローありがとうございます。


petitbootangさん>

そのときはあまりよく確認していなくて、これはおかしいなと思い、make xconfig を再度開いてみると、タイトルバーが 2.6.28.9 になっていたのでちょっと慌てまして(^^;)

あはは。私も数ヶ月前に同じ体験をしましていたりして。
実はきちんと調べたりはしてないのです(笑)が、おそらくオリジナルのカーネルにubuntu独自のパッチを当てたりしているので、バージョン管理も独自なのねぇと。違ったらゴメンナサイ。

make dep ; make clean
(中略)
make bzImage

私もやってたクチです。当時はプライベートではFM-TOWNSを使用していましたので、手パッチも結構やってました。今はもうそこまでの若さは無い・・・かなTT

最近はハイスペックなマシンでカーネルリメイクした後にパッケージ化(所要時間1時間)して、10年程前のノートPC(こっちでリメイクすると丸2日でもダメ;;)にインストールして使用しています。
パッケージ化のおかげで物凄くラクさせてもらってます。

オフライン

 

Board footer

Powered by FluxBB