玄箱HGと玄箱ノーマルのカーネル再構築
| ここでやること |
|---|
|
■ 玄箱用に構築されたカーネルの入れ替え(再構築なしvar) ■ 最新カーネルを本家からダウンロードして再構築 |
Linuxの核心であるカーネルをアップデートしたり再構築をして新たな機能を追加したりします。特にファイアウォール機能である iptablesを使用するには再構築が必要になります。
また、現在はデフォルトでも大丈夫ですが玄箱のUSBポートに外付けHDDやUSBメモリを接続したときの認識も再構築が必要な 場合がありました。
方法は「http://www.genbako.com/」を参考にさせていただきました。 このサイトに玄箱用のカーネルや、本家カーネルサイトからダウンロードしてきたカーネルを玄箱用にしてくれるパッチもおいてあります。
手っ取り早くカーネルをバージョンアップしたい場合は 「http://www.genbako.com/」 のサイトにあるカーネルイメージとモジュールをダウンロードして展開するだけで済みます。
コマンド:インストール
# apt-get install module-init-tools
コマンド:カーネルイメージダウンロード
まずはディレクトリを移動する
上記サイトの方が作成していただいた玄箱用カーネルイメージをダウンロードする。ノーマルとHG用とありますので間違わないように注意
# wget http://www.genbako.com/kernelimage-2.6.25-kuroBOX.tgz
玄箱HGの場合
# wget http://www.genbako.com/kernelimage-2.6.25-kuroHG.tgz
ダウンロードしたカーネルイメージを展開する
# tar -zxvf kernelimage-2.6.25-kuroBOX.tgz
玄箱HGの場合
# tar -zxvf kernelimage-2.6.25-kuroHG.tgz
モジュールを展開するディレクトリへ移動します
モジュールをダウンロードします。カーネルとモジュールのバージョンを合わせてダウンロードします。ノーマル、HG用とありますので間違わないように注意
# wget http://www.genbako.com/modules-2.6.25-kuroBOX.tgz
玄箱HGの場合
# wget http://www.genbako.com/modules-2.6.25-kuroHG.tgz
ダウンロードしたモジュールを展開します
# tar -zxvf modules-2.6.25-kuroBOX.tgz
玄箱HGの場合
# tar -zxvf modules-2.6.25-kuroHG.tgz
仕上げのコマンドを入力します
再起動する
これでカーネルのバージョンアップは終了です。再構築が必要な方は以降の方法から行ってください
■ここからカーネルのバージョンアップと再構築の方法を紹介します■
コマンド:インストール
# apt-get install patch
# apt-get install wget
# apt-get install gcc
# apt-get install ncurses-dev
# apt-get install bzip2
# apt-get install module-init-tools
コマンド:ダウンロードと解凍
再構築作業を行うためにディレクトリを移動します(私は/root/下で作業しました)
wgetコマンドで圧縮されたカーネルプログラムをダウンロードします
ダウンロードした圧縮カーネルを解凍します
ダウンロードしたカーネルバージョンとパッチのバージョンを間違わないように注意します
コマンド:ダウンロード
作業ディレクトリは上記同様です(私は/root/下で作業しました)
wgetコマンドでパッチをダウンロードします(2.6.25は2種類ダウンロードします)
# wget http://www.genbako.com/kurobox-section-mismatch2625.patch
玄箱ノーマル用と玄箱HG用とありますので間違わないようにします
コマンド:ダウンロード展開
作業するディレクトリへ移動します
モジュールをダウンロードします。ノーマル、HG用とありますので間違わないように注意
# wget http://www.genbako.com/modules-2.6.25-kuroBOX.tgz
玄箱HGの場合
# wget http://www.genbako.com/modules-2.6.25-kuroHG.tgz
ダウンロードしたモジュールを展開します
# tar -zxvf modules-2.6.25-kuroBOX.tgz
玄箱HGの場合
# tar -zxvf modules-2.6.25-kuroHG.tgz
仕上げのコマンドを入力します
これでモジュールの設置は終了です
コマンド:カーネルの修正パッチをあてる
まずは先ほどダウンロード展開したカーネルのディレクトリへ移動します
ダウンロードしておいたパッチ2つを当てます
# patch -Np1 < ../kurobox-section-mismatch2625.patch
コマンド:カーネルの再構築
コンフィグファイルを作ります。ノーマルとHGと間違わないように注意
# cp config_kurobox .config
玄箱HGの場合
# cp config_kuroboxhg .config
アーキテクチャを指定
カーネルの詳細設定を行います
iptableに関するnetwork関係をチェックする(チェック:スペース、決定:エンター、戻る:ESCか下部メニュー)
Networking options ---> カテゴリ移動
Network packet filtering(replaces ipchains) ---> チェックしてカテゴリ移動
Network packet filtering debugging チェックを入れる
Core Netfilter Configuration カテゴリ下全てチェックする
IP:Netfilter Configuration カテゴリ下全てチェックする(全てチェックを入れたらもう一度Core Netfilter Configrationの項目の空白欄をチェックする)
以下はチェックが入っているか確認しておく(USBメモリ,USB-HDDを使えるようにするため)
SCSI device support ---> カテゴリ移動
<M> SCSI device support チェックを入れる
[ * ] legacy /proc/scsi/ support チェックを入れる
<M> SCSI disk support チェックを入れる
File systems ---> カテゴリ移動
Native Language Support カテゴリ移動
<*>Japanese charsets(Shift-JIS,EUC-JP) チェックを入れる
ESCか下部メニューで最初まで戻って「Do you wish to save your new kernel configuration?」の質問で「Yes」
# make vmlinux ←1時間半はかかる(目安)
# cp System.map /boot/
# make modules ←1時間はかかる(目安)
再起動