RIGHT:[[覚え書き]]
//*Grub に Broadcom 5782 のドライバを組み込む
//-----
*ML の情報より
**Grub 0.94 用ソース
-grub-0.94.tar.gz
http://savannah.gnu.org/bugs/?func=detailitem&item_id=6690 より
-grub-0.94-diskless-1.patch.gz
-grub-0.94-diskless-fixtg3.patch
-grub-0.94-diskless-dhcphack.patch( //とりあえずいらない?)
http://savannah.gnu.org/bugs/index.php?func=detailitem&item_id=8061 ~
http://savannah.gnu.org/bugs/download.php?item_id=8061&item_file_id=1100
-grub-diskless-patch-3.tar.gz
これは上記を統合したもの(?)
**Grub 0.93 用ソース
-grub-0.93.tar.gz
--grub-0.93-etherboot5.3.5.patch.gz
--grub-diskless-patch-2.tar.gz
----
*0.94 CVS Build(Duplex Menu Load)
% cvs -z3 -d:ext:anoncvs@savannah.gnu.org:/cvsroot/grub \
co -D 2004-3-4 grub
% cd grub
% tar xvzf ~/src/grub/grub-diskless-patch-3.tar.gz
% patch -p1 < release_3/grub-2004-3-4-diskless-1.patch
% ./configure --enable-tg3
% make
# cat stage1/stage1 stage2/stage2 > /dev/fd0
**テスト
フロッピー起動で
> dhcp
をした.
(tftpserver = cardinals, dhcp server = cubs)
ちゃんと IP がとれ,
> tftpserver 192.168.0.150
> configfile (nd)/tftpserver/menus/hosts/vl800
が通った.
----
*0.94 CVS Build(PXE)
% cvs -z3 -d:ext:anoncvs@savannah.gnu.org:/cvsroot/grub \
co -D 2004-3-4 grub
% cd grub
% tar xvzf ~/src/grub/grub-diskless-patch-3.tar.gz
% patch -p1 < release_3/grub-2004-3-4-diskless-1.patch
% ./configure --enable-tg3 --enable-diskless --disable-auto-linux-mem-opt
(最後のオプションは,grub の kernel コマンドで
--no-mem-option
をつけても o.k. だと思うので,なくてもいい.)
% make
で,stage2/pxegrub を dhcp/tftp サーバにおく.
**dhcp/tftp サーバ側実験環境
/tftpboot/pxegrub.tg3
/tftpboot/menu.lst (ローカルの設定をパクリながら適当に記述)
/etc/dhcpd.conf(ISC-dhcpd 3.x)に次の記述をする.
host hp {
hardware ethernet 00:11:0a:XX:XX:XX;
fixed-address 192.168.0.134;
option vendor-class-identifier "PXEClient";
option vendor-encapsulated-options 01:04:00:00:00:00;
filename "pxegrub.tg3";
option root-path "/tftpboot";
option menu-file "/menu.lst";
}
**テスト
BIOS を PXE 起動にし,cubs を dhcp/tftp サーバとした.
また,vintage はネットワークからはずす.
ちゃんと IP がとれ,grub が起動,TurboLinux 起動.
**dhcp サーバと tftp サーバの分離.
-grub のドキュメント読みむ限りは.dhcp サーバの設定
オプションでは無理.
----
*WOL
-電源をスイッチで落した状態からは WOL O.K.
-Linux でシャットダウンした場合には,WOL N.G.
--通常にシャットダウンした場合も N.G.
--電源を押して,シャットダウンした場合も N.G.
--shutdown で電源を落さず,電源長押しで強制 OFF しても N.G.
--halt/poweroff -i
--ソフトウェアで電源が落ちなかったときは,電源長押し(5秒以上?)
-カーネルモジュールのパラメタ~
ref: http://www.broadcom.com/drivers/faq_drivers.php#46
insmod bcm5700 enable_wol=1
つまりは /etc/modules.conf と /etc/modprobe.conf(TurboLinux の場合だけ?)に
options bcm5700 enable_wol=1
を追加.~
//
これで起動すると
% more /proc/net/nicinfo/eth0.info
[snip]
Wake_On_LAN on
[snip]
--NIC のモジュールのバージョン(Turbo Linux な場合)
% more /proc/net/nicinfo/eth0.info
[snip]
Driver_Version 6.2.17
[snip]
これは古い(?)~
最新(2004/05/25)は 7.1.22
また,WOL で PXE を使う場合は,BIOS にて
リモートウェイクアップ = [リモートサーバ]
にしておく必要がある.
----
*ACPI
-どうでもいいけど,Turbo Linux でカーネルパラメータに acpi=on を
つけてやると,電源ボタンで Shutdown & Halt ができる.
-また,SMP カーネルの場合は,acpi=on をつけてやらないと電源が落ちない.
*BIOS
POST > 電源 OFF 後[有効]: 何これ?
WOL で PXE を使う場合は,BIOS にて
POST > リモートウェイクアップ: [リモートサーバ]
にしておく必要がある.
----
*ToDo
-PXE とのからみ.
--PQE のファイルを持ってこれるか...
---メンテナンスモードは Linux のディスクレスと同じ手法でダメかな.
grub のメニューから tftp でカーネルを指定する代りに,
DOS イメージを指定する.-> N.G.
--mmm で 2つのファイルを扱うようにする?
--PXE ブートメニューって何?
----
*splash パッチをどうするか ->N.G.
Fedra Core 2 の grub-0.94-5.src.rpm より
-Patch200: grub-0.94-graphics.patch
-Patch201: grub-0.91-splashimagehelp.patch
-Patch202: grub-0.93-graphics-bootterm.patch
grub ソースのトップディレクトリで
% patch -p1 < grub-0.94-graphics.patch
% patch -p1 < grub-0.91-splashimagehelp.patch
% patch -p1 < grub-0.93-graphics-bootterm.patch
% autoreconf --install --force
(<--debian では autoconf/automake のバージョンが古すぎてダメだったので,
Solaris でおこなう)
menu.lst に
splashimage (hd0,1)/boot/grub/splash.xpm.gz
といった記述を書く.
これらをあてるとメニューを表示しようというときに
再起動してしまう. N.G.
splash なしにしても,grub が再起動(?)状態になって
ほとんど使えない状態.
また,configfile などで正確なファイルを指定しても
Error 1: filename must be either an absolute pathname or blocklist
の表示がでる.
その後の調査の結果,いまのところ,
configure オプションの --enable-tg3 と VGA グラフィックの
パッチとの組合わせがよくない.
--CVS 版でも通常ソース版でも,SRPM のパッチをあて,
tg3 用のパッチをあてることができ,コンパイルも通る.
--しかし,--enable-tg3 をつけると使えない状態になる.
つけなければ,splash 表示 O.K.
----
*0.94(通常版 + パッチ)-> Failed
** Build
% tar xvzf ../src/grub/grub-0.94.tar.gz
% cd grub-0.94
% zcat ~/src/grub/grub-0.94-diskless-1.patch.gz | patch -p1
% patch -p1< ~/src/grub/grub-0.94-diskless-fixtg3.patch (1)
% patch -p1< ~/src/grub/grub-0.94-diskless-dhcphack.patch (2)
% ./configure --enable-tg3
% make
# cat stage1/stage1 stage2/stage2 > /dev/fd0
**テスト
フロッピー起動で
> dhcp
をしたが,どちらもダメ.
-上記(1)までのパッチではだめ(NIC を認識するが transmit timeout)
-上記(2)までのパッチでもだめ(NIC を認識するが transmit timeout)