Intel PRO/1000CT(82547 GI)にて...
http://savannah.gnu.org/bugs/download.php?item_id=8061&item_file_id=1100
http://lists.gnu.org/archive/html/bug-grub/2004-06/msg00084.html
https://savannah.gnu.org/bugs/download.php?item_id=9408&item_file_id=1420
% 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-e1000 % make # cat stage1/stage1 stage2/stage2 > /dev/fd0
フロッピー起動で
> dhcp
をした. (-> Probe pcinic で Unknown = N.G.)
% tar xvzf ~/src/grub-0.95.tar.gz % cd grub-0.95 % zcat ~/src/grub/grub-0.95-diskless-patch-1.patch.gz | patch -p1 % ./configure --enable-e1000 % make # cat stage1/stage1 stage2/stage2 > /dev/fd0
ちゃんと IP がとれ,
> tftpserver 192.168.0.151 > configfile (nd)/menu.lin
が通った. (tftpserver = cubs, dhcp server = cubs)
% tar xvzf ~/src/grub-0.95.tar.gz % cd grub-0.95 % zcat ~/src/grub/grub-0.95-diskless-patch-1.patch.gz | patch -p1 % ./configure --enable-e1000 --enable-diskless --disable-auto-linux-mem-opt
(最後のオプションは,grub の kernel コマンドで
--no-mem-option
をつけても o.k. だと思うので,なくてもいい.)
% make
で,stage2/pxegrub を dhcp/tftp サーバにおく.
/tftpboot/pxegrub.e1000 /tftpboot/menu.lst (ローカルの設定をパクリながら適当に記述)
/etc/dhcpd.conf(ISC-dhcpd 3.x)に次の記述をする.
host f2 { hardware ethernet 00:0d:61: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.e1000"; option root-path "/tftpboot"; option menu-file "/menu.lst"; }
BIOS を PXE 起動にし,cubs を dhcp/tftp サーバとした. また,vintage はネットワークからはずす. ちゃんと IP がとれ,grub が起動,TurboLinux 起動.
grub-0.95 に diskless パッチをあてた状態で
% cd grub-0.95 % patch -p1 < /home/tanaka/rpm/fedora_grub/grub-0.94-graphics.patch
FAIL がでるので stage2/Makefile.am の 10, 22, 101 行めに graphics.[hc] を追加する.
変更する行
10: terminfo.h tparm.h nbi.h ufs2.h vstafs.h xfs.h graphics.h 22: terminfo.c tparm.c graphics.c 100: hercules.c md5.c serial.c smp-imps.c stage2.c terminfo.c tparm.c \ 101: graphics.c
% patch -p1 < /home/tanaka/rpm/fedora_grub/grub-0.91-splashimagehelp.patch % patch -p1 < /home/tanaka/rpm/fedora_grub/grub-0.93-graphics-bootterm.patch
% autoreconf --install --force
(<--debian や RHL8 では autoconf/automake のバージョンが 古すぎてダメだったので, Fedora Core 2 でおこなう)
% ./configure --enable-e1000 % make # cat stage1/stage1 stage2/stage2 > /dev/fd0
% ./configure --enable-e1000 --enable-diskless --disable-auto-linux-mem-opt % make
で,stage2/pxegrub を dhcp/tftp サーバにおく.
WoL を使う場合は,BIOS にて
[Power] ->[Automatic Wake UP] ->[Wake up on LAN] ->[Enabled]
にしておく必要がある.
また,PXE を使うために
[Boot] ->[Preboot Execution Environment] ->[Enabled]
[Boot] ->[Boot Device Priority] ->[IBA GE Slot 0208 v1216] を先頭に (Network Boot という紛らわしいのがあるが無視)
しておく.
Enabling Wake on LAN* (WoL) --------------------------- WoL is configured through the Ethtool* utility. Ethtool is included with all versions of Red Hat after Red Hat 7.2. For other Linux distributions, download and install Ethtool from the following website: http://sourceforge.net/projects/gkernel. For instructions on enabling WoL with Ethtool, see the ethtool man page. WoL will be enabled on the system during the next shut down or reboot. For this driver version, in order to enable WoL, the e1000 driver must be loaded prior to shutting down or suspending the system.となっているので, http://sourceforge.net/projects/gkernel より ethtool-1.8 をダウンロードしコンパイルして使用する.
% cd ethtool-1.8 % ./configure % make # ethtool -s eth0 wol umbgここで
u : unicast m : multicast b : broadcat g : magicpacket設定の確認
# ./ethtool eth0 --- Wake-on: umbg (表示される出力の下の方にこの行がある) ---
[Power] -> [Automatic Wake Up] -> [Wake Up on LAN] E E D D -> [Wake Up on PCI PME] E D E D X X X -> [APM Power Control] -> [Disable] -> X
WOL を使う場合は,BIOS にて
[Power] ->[Automatic Wake UP] ->[Wake up on LAN] ->[Enabled]
にしておく必要がある.
また,PXE を使うために
[Boot] ->[Preboot Execution Environment] ->[Enabled]
[Boot] ->[Boot Device Priority] ->[IBA GE Slot 0208 v1216] を先頭に (Network Boot という紛らわしいのがあるが無視)
しておく.
vine で作ったデーモン mmmstatd がそのまま動いた.
なので,デーモンは /usr/sbin へコピーするだけでいい.
設定ファイルは
mmmstatd: サーバのIP
mmm 1666/tcp # mmm
# default: on # description: mmm agent # securlevel: 20 service mmm { disable = no socket_type = stream protocol = tcp wait = no user = root server = /usr/sbin/mmmstatd }