Mar 24, 2004
onlsbc1, ネットワークブートシステムの検討
--- ネットワークブート #16
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
(http://www-online.kek.jp/~inoue/para-CAMAC/
Work/SBC-Linux36.html)
高エネルギー加速器研究機構
素粒子原子核研究所
物理、オンライングループ
井上 栄二
目的
SBC-Linux34.htmlでの作業により、CC/NET用ディスクレスシステムを構築
した。 これは、サーバ側のOSが Red Hat 9 で、クライアント側が
Debian GNU/Linux 3.0 で動作するものである。 ここでは、サーバ側の
OSを Solaris 8 とし、クライアント側のOSを Debian GNU/Linux 3.0
で動作するディスクレスシステムを構築する。 クライアント用として使用
するシステムには、SBC-Linux35.htmlでの作業で作成した圧縮ファイルを
使うことにする。
項目
(1). サーバの構築
(1-1). Bootp の構成
(1-1-1). DHCP Manager による設定
(1-2). Tftp の設定
(1-2-1). Tftp のテスト
(1-2-1A). tftp Server のインストール
(1-2-1B). tftp Server の設定
(1-2-1C). tftp Server のテスト(その2)
(1-2-2). Tftp の設定
(1-3). /dev/nfsrootファイルの作成
(1-4). /tftpbootのシンボリックリンクを作成
(2). クライアントの構築
(2-1). クライアント側ファイルシステムの構築
(2-2). /tftpboot/130.87.153.3/etc 以下のファイルの編集
(2-2-1). /tftpboot/130.87.153.3/etc/modules
(2-2-2). /tftpboot/130.87.153.3/etc/hostname
(2-2-3). /tftpboot/130.87.153.3/etc/fstab
(2-2-4). /tftpboot/130.87.153.3/etc/init.d
(2-2-5). /tftpboot/130.87.153.3/etc/network/interfaces
(2-2-6). /tftpboot/130.87.153.3/etc/modules.conf
(2-2-7). /tftpboot/130.87.153.3/etc/modutils/aliases
(2-2-8). /tftpboot/130.87.153.3/lib/modules/2.4.18/modules.dep
(3). ブートローダの設定
(3-1). FD上のGRUBの設定
(3-2). dhcp の設定変更
(3-2-1). ブートサーバ指定を変更
(3-3). onl5v4 上の tftp の設定
(3-3-1). tftp のテスト
(3-3-2). /tftpboot の整備
(3-3-2A). クライアント用ルートファイルシステムの構築
(3-3-2B). /etc/dfs/dfstabファイルの設定
(3-3-2C). /etc/fvstabファイルの設定
(3-4). /tftpboot/130.87.153.3/etc 以下のファイルの編集
(3-4-1). /tftpboot/130.87.153.3/etc/modules
(3-4-2). /tftpboot/130.87.153.3/etc/hostname
(3-4-3). /tftpboot/130.87.153.3/etc/fstab
(3-4-4). /tftpboot/130.87.153.3/etc/init.d
(3-4-5). /tftpboot/130.87.153.3/etc/network/interfaces
(3-4-6). /tftpboot/130.87.153.3/etc/modules.conf
(3-4-7). /tftpboot/130.87.153.3/etc/modutils/aliases
(3-4-8). /tftpboot/130.87.153.3/lib/modules/2.4.18/modules.dep
(3-5). FD上のGRUBのmenu.lstファイルの修正
--------------------------------------------------------------------
(1). サーバの構築
クライアントマシンの onlsbc1 は FGクラスタにつないである。 ゲートウェイ
を越えたネットワークブートは複雑なので、サーバマシンには同一クラスタに
つないである onlsun4 を使用する。
富士通製、GP400S Model10
使用OSは Solaris 8
サーバ側の Solaris のカーネルを修正する必要はない。 Bootp の設定は必要
である。
(1-1). Bootp の構成
Solaris DHCP は BOOTPサーバの機能を含んでいる。 DHCPを動作させることで
BOOTPクライアントのリクエストに対応させることにする。
(1-1-1). DHCP Manager による設定
<<< DHCP Manager を起動する >>>
onlsun4# /usr/sadm/admin/bin/dhcpmgr &
”DHCPサーバとして構成”を選択して "了解”ボタンを押す。
右矢印を押して、項目2から項目8まで確認。
”完了”ボタンを押す。
完了”ボタンを押したら、アドレスウィザードのウィンドウが開いた。 同時に
以下のメッセージがコンソールに表示された。
onlsun4[52]% Mar 4 17:07:40 onlsun4 in.dhcpd[930]: Error binding to UDP receive socket: アドレスがすでに使われています。
Mar 4 17:07:40 onlsun4 in.dhcpd[930]: Cannot configure any interfaces.
先のbootpのテスト時に設定したゴミ設定をすべて解除してから、DHCP Manager
の以降の作業を行う。
onlsun4# pwd
/etc
onlsun4# mv bootptab bootptab-bak
onlsun4#
onlsun4# pwd
/etc/inet
onlsun4# diff services services-org
30,31c30
< #bootps 67/udp # BOOTP/DHCP server
< bootps 67/udp bootp # BOOTP/DHCP server
---
> bootps 67/udp # BOOTP/DHCP server
onlsun4# cp services-org services
onlsun4#
onlsun4# pwd
/etc/inet
onlsun4# vi inetd.conf
:
# By E.Inoue
#:BOOT: Tftp service is provided primarily for booting. Most sites
# run this only on machines acting as "boot servers."
#bootps dgram udp wait root /usr/sbin/bootpd bootpd
-i -t 120
#
# Tftp service is provided primarily for booting. Most sites run this
# only on machines acting as "boot servers."
#
#tftp dgram udp6 wait root /usr/sbin/in.tftpd in.tftpd -s /tft
pboot
#
:
"inetd.conf" 197 行、7139 バイト
onlsun4#
onlsun4# pwd
/etc/dfs
onlsun4# diff dfstab dfstab-Mar42004
0a1
>
17,19d17
< share -F nfs -o rw=130.87.153.3 /tftpboot/82579903.SUN4U
< share -F nfs -o rw=130.87.153.3 /tftpboot/130.87.153.3
< share -F nfs -o rw=onlpara.kek.jp /tftpboot/130.87.153.3
onlsun4# cp dfstab-Mar42004 dfstab
onlsun4# cat dfstab
# Place share(1M) commands here for automatic execution
# on entering init state 3.
#
# Issue the command '/etc/init.d/nfs.server start' to run the NFS
# daemon processes and the share commands, after adding the very
# first entry to this file.
#
# share [-F fstype] [ -o options] [-d ""] [resource]
# .e.g,
# share -F nfs -o rw=engineering -d "home dirs" /export/home2
share -F nfs -o ro /cdrom
#share -F nfs -o ro /space2/RedHat7.2
#share -F nfs -o ro /space2/RedHat7.3
share -F nfs -o ro /space1/RedHat7.3
share -F nfs -o ro /space2/RedHat8.0
share -F nfs -o ro /opt/sfw
onlsun4#
onlsun4# pwd
/
onlsun4# ls -l
合計 672
drwxr-xr-x 2 root root 512 5月 22日 2001年 TT_DB/
lrwxrwxrwx 1 root root 9 5月 22日 2001年 bin -> ./usr/bin/
drwxr-xr-x 4 root nobody 512 7月 19日 2002年 cdrom/
drwxr-xr-x 16 root sys 4096 3月 4日 14:30 dev/
drwxr-xr-x 4 root sys 512 5月 22日 2001年 devices/
drwxr-xr-x 41 root sys 3584 3月 5日 17:05 etc/
drwxr-xr-x 3 root sys 512 5月 22日 2001年 export/
dr-xr-xr-x 1 root root 1 3月 4日 14:30 home/
drwxr-xr-x 2 root other 512 7月 19日 2002年 info/
lrwxrwxrwx 1 root other 10 5月 23日 2001年 kek -> /kekfs/kek/
dr-xr-xr-x 2 root root 2 3月 4日 15:24 kekfs/
drwxr-xr-x 9 root sys 512 5月 22日 2001年 kernel/
lrwxrwxrwx 1 root root 9 5月 22日 2001年 lib -> ./usr/lib/
drwx------ 2 root root 8192 5月 22日 2001年 lost+found/
drwxr-xr-x 3 root other 512 7月 19日 2002年 man/
drwxr-xr-x 2 root sys 512 5月 22日 2001年 mnt/
dr-xr-xr-x 1 root root 1 3月 4日 17:12 net/
drwx------ 2 root other 512 5月 22日 2001年 nsmail/
lrwxrwxrwx 1 root other 11 9月 28日 2001年 opt -> /space2/opt/
drwxrwxr-x 5 root sys 512 5月 22日 2001年 opt-org/
drwxr-xr-x 23 root sys 1024 5月 22日 2001年 platform/
dr-xr-xr-x 84 root root 62400 3月 5日 17:32 proc/
drwxr-xr-x 2 root sys 512 5月 22日 2001年 sbin/
drwxr-xr-x 10 root root 512 12月 3日 2002年 space1/
drwxrwxrwx 7 root root 512 12月 3日 2002年 space2/
drwxr-xr-x 2 root root 512 5月 22日 2001年 space3/
drwxr-xr-x 2 root root 512 5月 22日 2001年 space4/
drwxr-xr-x 2 root root 512 5月 22日 2001年 space5/
drwxrwxrwx 6 root root 512 5月 29日 2001年 space6/
drwxrwxrwx 4 root other 512 3月 4日 14:11 tftpboot/
drwxrwxrwt 7 root sys 789 3月 5日 03:30 tmp/
drwxr-xr-x 36 root sys 1024 3月 20日 2002年 usr/
drwxr-xr-x 37 root sys 1024 3月 4日 17:07 var/
dr-xr-xr-x 6 root root 512 3月 4日 14:30 vol/
dr-xr-xr-x 1 root root 1 3月 4日 14:30 xfn/
onlsun4# ls -l tftpboot
合計 4
drwxr-xr-x 2 root root 512 3月 4日 11:09 130.87.153.3/
drwxr-xr-x 2 root other 512 3月 4日 14:11 82579903.SUN4U/
onlsun4#
onlsun4# rm -r /tftpboot
onlsun4# ls -l /
合計 670
drwxr-xr-x 2 root root 512 5月 22日 2001年 TT_DB/
lrwxrwxrwx 1 root root 9 5月 22日 2001年 bin -> ./usr/bin/
drwxr-xr-x 4 root nobody 512 7月 19日 2002年 cdrom/
drwxr-xr-x 16 root sys 4096 3月 4日 14:30 dev/
drwxr-xr-x 4 root sys 512 5月 22日 2001年 devices/
drwxr-xr-x 41 root sys 3584 3月 5日 17:05 etc/
drwxr-xr-x 3 root sys 512 5月 22日 2001年 export/
dr-xr-xr-x 1 root root 1 3月 4日 14:30 home/
drwxr-xr-x 2 root other 512 7月 19日 2002年 info/
lrwxrwxrwx 1 root other 10 5月 23日 2001年 kek -> /kekfs/kek/
dr-xr-xr-x 2 root root 2 3月 4日 15:24 kekfs/
drwxr-xr-x 9 root sys 512 5月 22日 2001年 kernel/
lrwxrwxrwx 1 root root 9 5月 22日 2001年 lib -> ./usr/lib/
drwx------ 2 root root 8192 5月 22日 2001年 lost+found/
drwxr-xr-x 3 root other 512 7月 19日 2002年 man/
drwxr-xr-x 2 root sys 512 5月 22日 2001年 mnt/
dr-xr-xr-x 1 root root 1 3月 4日 17:12 net/
drwx------ 2 root other 512 5月 22日 2001年 nsmail/
lrwxrwxrwx 1 root other 11 9月 28日 2001年 opt -> /space2/opt/
drwxrwxr-x 5 root sys 512 5月 22日 2001年 opt-org/
drwxr-xr-x 23 root sys 1024 5月 22日 2001年 platform/
dr-xr-xr-x 84 root root 62400 3月 5日 17:33 proc/
drwxr-xr-x 2 root sys 512 5月 22日 2001年 sbin/
drwxr-xr-x 10 root root 512 12月 3日 2002年 space1/
drwxrwxrwx 7 root root 512 12月 3日 2002年 space2/
drwxr-xr-x 2 root root 512 5月 22日 2001年 space3/
drwxr-xr-x 2 root root 512 5月 22日 2001年 space4/
drwxr-xr-x 2 root root 512 5月 22日 2001年 space5/
drwxrwxrwx 6 root root 512 5月 29日 2001年 space6/
drwxrwxrwt 7 root sys 789 3月 5日 03:30 tmp/
drwxr-xr-x 36 root sys 1024 3月 20日 2002年 usr/
drwxr-xr-x 37 root sys 1024 3月 4日 17:07 var/
dr-xr-xr-x 6 root root 512 3月 4日 14:30 vol/
dr-xr-xr-x 1 root root 1 3月 4日 14:30 xfn/
onlsun4#
ここで再度 DHCP Manager の実行を再開する。
アドレス起動ウィザードウィンドウで「はい」をクリックして、サーバへのアド
レス設定を開始する。
<<< BOOTPクライアントのサポートを設定 >>>
「サービス」メニューから「変更」を選択。
「サービスオプションの変更」ダイアログボックスが開く。 「BOOTP互換」の
項で、「手動」を選択。 「サーバの再起動」にチェックを付ける。
DHCP Manager の「アドレス」タブを選択。 BOOTPクライアントに割り当てる
アドレスを選択。 「編集」メニューから「属性」を選択。
「アドレスの属性」ダイアログボックスが開く。 「リース」タブを選択。
「クライアントID」フィールドでクライアントのIDを入力。 「クライアントが
このアドレスを予約」にチェックを付ける。 「BOOTPクライアントのみに割り当
てる」にチェックを付ける。
注.
クライアントIDは、EthernetのARPタイプ(01)の後ろにクライアントの16進
Ethernetアドレスを付加したものである。
01000BA*******
--
| ------------
| |
ARPタイプ クライアントの16進Ethernetアドレス
<<< dhcptab を修正 >>>
/var/dhcp/dhcptabファイルに、ブートサーバとゲートウェーを設定する。
onlsun4# pwd
/var/dhcp
onlsun4# ls -l
合計 6
-rw-rw-r-- 1 root other 83 3月 9日 14:13 130_87_152_0
-rw-r--r-- 1 root other 281 3月 9日 09:16 dhcptab
-rw-rw-r-- 1 root other 237 3月 8日 14:32 dhcptab-org
onlsun4# vi dhcptab
Locale m :UTCoffst=32400:
130.87.152.0 m :Subnet=255.255.252.0:RDiscvyF=1:Broadcst=130.87.155.255
:
onlsun4 m :Include=Locale:Timeserv=130.87.153.116:LeaseTim=86400:LeaseNeg:
DNSdmain="kek.jp":DNSserv=130.87.34.2 130.87.34.3 130.87.152.2:BootSrvA=130.87.1
53.116:Router=130.87.152.1:
~
~
"dhcptab" 3 行、281 バイト
onlsun4#
ここで onlsun4 の Solarisシステムをリブートした。
onlsun4 が立ち上がったところで、onlsbc1 から bootp リクエストを発行して
みた。
onlsun4[33]% ps -ef
UID PID PPID C STIME TTY TIME CMD
root 0 0 1 14:09:43 ? 0:13 sched
root 1 0 0 14:09:43 ? 0:00 /etc/init -
root 2 0 0 14:09:43 ? 0:00 pageout
root 3 0 0 14:09:43 ? 0:00 fsflush
root 381 1 0 14:10:10 ? 0:00 /usr/lib/saf/sac -t 300
root 283 280 0 14:10:02 ? 0:00 htt_server -port 9010 -syslog -me
ssage_locale C
root 133 1 0 14:09:54 ? 0:00 /usr/lib/inet/in.ndpd
root 56 1 0 14:09:49 ? 0:00 /usr/lib/devfsadm/devfseventd
root 58 1 0 14:09:50 ? 0:00 /usr/lib/devfsadm/devfsadmd
daemon 186 1 0 14:09:56 ? 0:00 /usr/lib/nfs/statd
root 193 1 0 14:09:57 ? 0:00 /usr/lib/autofs/automountd
root 147 1 0 14:09:55 ? 0:00 /usr/sbin/rpcbind
root 228 1 0 14:09:59 ? 0:00 /usr/lib/lpsched
root 150 1 0 14:09:55 ? 0:00 /usr/sbin/keyserv
root 205 1 0 14:09:57 ? 0:00 /usr/sbin/syslogd
root 184 1 0 14:09:56 ? 0:00 /usr/lib/nfs/lockd
root 208 1 0 14:09:58 ? 0:00 /usr/sbin/cron
root 255 253 0 14:10:00 ? 0:00 /usr/sbin/ccv -f
root 180 1 0 14:09:56 ? 0:00 /usr/sbin/inetd -s
root 222 1 0 14:09:58 ? 0:00 /usr/sbin/nscd
root 241 1 0 14:09:59 ? 0:00 /usr/lib/power/powerd
root 247 1 0 14:09:59 ? 0:00 /usr/lib/utmpd
root 252 1 0 14:10:00 ? 0:00 /usr/sadm/lib/wbem/cimomboot star
t
root 253 1 0 14:10:00 ? 0:00 /usr/sbin/cssd
root 254 253 0 14:10:00 ? 0:00 /usr/sbin/cs00
root 256 253 0 14:10:00 ? 0:00 /usr/sbin/kkcv -f
root 264 1 1 14:10:00 ? 0:02 /usr/sbin/vold
root 280 1 0 14:10:02 ? 0:00 /usr/lib/im/htt -port 9010 -syslo
g -message_locale C
root 270 1 0 14:10:01 ? 0:00 /usr/lib/locale/ja/wnn/dpkeyserv
root 276 1 0 14:10:01 ? 0:00 /usr/lib/locale/ja/wnn/jserver
root 277 276 0 14:10:01 ? 0:00 /usr/lib/locale/ja/wnn/jserver_m
root 384 381 0 14:10:10 ? 0:00 /usr/lib/saf/ttymon
root 320 1 0 14:10:05 ? 0:00 /usr/lib/locale/ja/atokserver/ato
kmngdaemon
root 318 1 1 14:10:05 ? 0:01 /usr/local/sbin/sshd
root 367 1 0 14:10:10 ? 0:00 /usr/sbin/in.rarpd -a
root 362 1 0 14:10:10 ? 0:00 /usr/lib/nfs/mountd
root 382 1 0 14:10:10 console 0:00 /usr/lib/saf/ttymon -g -h -p onls
un4 console login: -T sun -d /dev/console -l
root 336 1 0 14:10:07 ? 0:00 /usr/dt/bin/dtlogin -daemon
root 364 1 0 14:10:10 ? 0:00 /usr/lib/nfs/nfsd -a 16
root 369 1 0 14:10:10 ? 0:00 /usr/sbin/rpc.bootparamd
root 372 1 0 14:10:10 ? 0:00 /usr/lib/inet/in.dhcpd
root 376 1 0 14:10:10 ? 0:00 /usr/lib/snmp/snmpdx -y -c /etc/s
nmp/conf
root 385 336 1 14:10:11 ? 0:01 /usr/openwin/bin/Xsun :0 -nobanne
r -auth /var/dt/A:0-A5aaQa
root 402 386 0 14:10:15 ? 0:00 dtgreet -display :0
root 386 336 0 14:10:13 ? 0:00 /usr/dt/bin/dtlogin -daemon
root 388 1 0 14:10:14 ? 0:00 /usr/openwin/bin/fbconsole -d :0
root 403 376 0 14:10:15 ? 0:00 mibiisa -r -p 32808
root 404 318 0 14:10:46 ? 0:00 /usr/local/sbin/sshd
inoue 406 404 0 14:10:57 ? 0:00 /usr/local/sbin/sshd
inoue 408 406 1 14:10:57 pts/2 0:00 -csh
root 418 408 0 14:11:04 pts/2 0:00 ps -ef
root 410 180 0 14:10:57 ? 0:00 rquotad
onlsun4[34]%
onlsun4# tail -f /var/adm/messages
Mar 9 14:10:02 onlsun4 pci_pci: [ID 370704 kern.info] PCI-device: SUNW,isptwo@4
, isp0
Mar 9 14:10:02 onlsun4 genunix: [ID 936769 kern.info] isp0 is /pci@1f,0/pci@1/p
ci@1/SUNW,isptwo@4
Mar 9 14:10:02 onlsun4 scsi: [ID 365881 kern.info] /pci@1f,0/pci@1/pci@1/SUNW,i
sptwo@4 (isp0):
Mar 9 14:10:02 onlsun4 Firmware Version: v0.04.64, Customer: 0, Product
: 0
Mar 9 14:10:03 onlsun4 scsi: [ID 193665 kern.info] sd15 at uata0: target 2 lun
0
Mar 9 14:10:03 onlsun4 genunix: [ID 936769 kern.info] sd15 is /pci@1f,0/pci@1,1
/ide@3/sd@2,0
Mar 9 14:10:09 onlsun4 ebus: [ID 521012 kern.info] fd0 at ebus0: offset 14,3023
f0
Mar 9 14:10:09 onlsun4 genunix: [ID 936769 kern.info] fd0 is /pci@1f,0/pci@1,1/
ebus@1/fdthree@14,3023f0
Mar 9 14:10:14 onlsun4 pseudo: [ID 129642 kern.info] pseudo-device: pm0
Mar 9 14:10:14 onlsun4 genunix: [ID 936769 kern.info] pm0 is /pseudo/pm@0
onlsbc1 のFD上のGRUBを起動する。
GRUB version 0.93 (640K lower/310208K upper memory)
[ Minimal BASH-like line editing is supported. For the first word, TAB
lists possible command completions. Anywere else TAB lists the possible
completions of a device/filename. ESC at any time exits. ]
grub> bootp
Found Intel EtherExpressPro100 82559ER at 0xec00, ROM address 0x0000
Probing...[Intel EtherExpressPro100 822559ER] Ethernet addr: 00:0B:**:**:**:**
Address: 130.87.**.**
Netmask: 255.255.***.***
Server: 130.87.**.**
Gateway: 130.87.**.**
ok. bootpリクエストで正常にネットワーク情報を入手できた。
(1-2). Tftp の設定
(1-2-1). Tftp のテスト
tftp でファイル転送できることを確認しておく。
onlsun4# vi inetd.conf
:
tftp dgram udp6 wait root /usr/sbin/in.tftpd in.tftpd -s /tft
pboot
:
"inetd.conf" 200 行、7351 バイト
onlsun4#
onlsun4# vi dfstab
:
share -F nfs -o rw /tftpboot
:
"dfstab" 19 行、690 バイト
onlsun4#
システムをリブート。
onlsun4 のシステムが立ち上がったところで、onlsun1 のマシンから tftp を
使ってファイルを get してみる。
onlsun4# pwd
/space5/tftpboot
onlsun4# echo Hello > zImage
onlsun4# cat zImage
Hello
onlsun4#
onlsun4# ls -l /tftpboot/zImage
-rw-r--r-- 1 root other 6 3月 12日 10:41 /tftpboot/zImage
onlsun4#
onlsun1[33]% tftp onlsun4
tftp> get /tftpboot/zImage
Transfer timed out.
tftp> quit
onlsun1[34]%
onlsun4# tail /var/adm/messages
:
Mar 12 10:42:52 onlsun4 tftpd[431]: [ID 464510 daemon.error] socket (delay): Pro
tocol not supported
onlsun4#
(1-2-1A). tftp Server のインストール
Linux Remote-Boot mini-HOWTO: Configuring Remote-Boot Workstations with Linuxサイトの
記事で紹介されている tftpd.tar.gzファイルを入手。
-->> 参照開始
6.3 Solaris TFTP Server
The original Solaris TFTP Server has a severe limitation on file
sizes, due to the use of a signed 16-bits integer to count packets.
Bootix provides an enhanced TFTP server for Solaris, which solves
this issue while providing a much higher transfer rate.
However, some users have reported problems (in particular with SMC9432
cards) producing lock-ups on startup. Therefore, John Martin (j.martin@
abdn.ac.uk) has ported Linux tftpd for Solaris. You can get it from
http://www.csd.abdn.ac.uk/~jmartin/tftpd.tar.gz.
<<-- 参照終わり
注.
tftpd.tar.gzファイルを getするとファイル名が tftpd.tarとなっている。
しかし、実体は圧縮された gzファイルである。 ファイル名を変更してから
展開すること。 いきなり tar コマンドで展開しようとするとエラーにな
る。
コンパイルする。
onlsun4[40]% pwd
/export/home/onlsun4/inoue/Tftp/tftpd-8.1
onlsun4[41]% ls -l
合計 78
-rw------- 1 inoue kek 1296 2月 4日 2000年 Makefile
-rw------- 1 inoue kek 1951 2月 4日 2000年 extern.h
-rwxr----- 1 inoue kek 3059 2月 4日 2000年 tftp.h*
-rw------- 1 inoue kek 3644 5月 27日 1994年 tftpd.8
-rw------- 1 inoue kek 15703 2月 5日 2000年 tftpd.c
-rw------- 1 inoue kek 8512 2月 4日 2000年 tftpsubs.c
-rw------- 1 inoue kek 2484 2月 4日 2000年 tftpsubs.h
onlsun4[42]% make
gcc -O -c tftpd.c
gcc -O -c tftpsubs.c
gcc -o tftpd -O tftpd.o tftpsubs.o -lsocket -lnsl
onlsun4[43]% ls -l
合計 140
-rw------- 1 inoue kek 1296 2月 4日 2000年 Makefile
-rw------- 1 inoue kek 1951 2月 4日 2000年 extern.h
-rwxr----- 1 inoue kek 3059 2月 4日 2000年 tftp.h*
-rwxr-xr-x 1 inoue kek 17264 3月 12日 11:33 tftpd*
-rw------- 1 inoue kek 3644 5月 27日 1994年 tftpd.8
-rw------- 1 inoue kek 15703 2月 5日 2000年 tftpd.c
-rw-r--r-- 1 inoue kek 11164 3月 12日 11:33 tftpd.o
-rw------- 1 inoue kek 8512 2月 4日 2000年 tftpsubs.c
-rw------- 1 inoue kek 2484 2月 4日 2000年 tftpsubs.h
-rw-r--r-- 1 inoue kek 3044 3月 12日 11:33 tftpsubs.o
onlsun4[44]%
onlsun4# mkdir -p /usr/etc/inet/tftpd
onlsun4# cp tftpd /usr/etc/inet/tftpd
onlsun4# chmod 755 /usr/etc/inet/tftpd/tftpd
onlsun4# chgrp root /usr/etc/inet/tftpd/tftpd
onlsun4# cp tftpd.8 /usr/man/man8
onlsun4# chmod 444 /usr/man/man8/tftpd.8
onlsun4# chgrp root /usr/man/man8/tftpd.8
(1-2-1B). tftp Server の設定
onlsun4# vi /etc/inetd.conf
:
tftp dgram udp wait root /usr/etc/inet/tftpd/tftpd tftpd -s
/tftpboot
:
"/etc/inetd.conf" 200 行、7351 バイト
onlsun4#
onlsun4# ps -ef | grep inet
root 139 1 0 10:39:07 ? 0:00 /usr/lib/inet/in.ndpd
root 180 1 0 10:39:08 ? 0:00 /usr/sbin/inetd -s
root 379 1 0 10:39:22 ? 0:00 /usr/lib/inet/in.dhcpd
root 488 485 0 13:41:08 pts/2 0:00 grep inet
onlsun4# kill -HUP 180
onlsun4#
(1-2-1C). tftp Server のテスト(その2)
onlsun1# tftp onlsun4
tftp> get /tftpboot/zImage
Received 7 bytes in 0.1 seconds
tftp> quit
onlsun1# cat zImage
Hello
onlsun1#
onlsun4# tail -f /var/adm/messages
:
Mar 12 13:42:27 onlsun4 tftpd[490]: [ID 671817 daemon.warning] ignoring unknown
option -?
:
onlsun4#
onlsun4# vi /etc/inetd.conf
:
#tftp dgram udp wait root /usr/etc/inet/tftpd/tftpd tftpd -s
/tftpboot
tftp dgram udp wait root /usr/etc/inet/tftpd/tftpd tftpd
:
onlsun4#
onlsun1# tftp onlsun4
tftp> get /tftpboot/zImage
Received 7 bytes in 0.1 seconds
tftp> quit
onlsun1#
onlsun4# tail -f /var/adm/messages
:
:
onlsun4#
ok. tftp で onlsun4 から onlsun1 へファイルを get することができた。
messagesファイルへのエラーメッセージの出力はない。
(1-2-2). Tftp の設定
クライアント用としてエクスポートするルートファイルシステムは、/tftpboot
ディレクトリの下に収めるだけのスペースがないので、/space5 の下に置くこと
にする。
(1-3). /etc/dfs/dfstabファイルの設定
onlsun4# pwd
/etc/dfs
onlsun4# vi dfstab
:
share -F nfs -o rw /space5/tftpboot/130.87.153.3
~
~
"dfstab" 18 行、659 バイト
onlsun4#
(1-4). /tftpboot のシンボリックリンクを作成
onlsun4# pwd
/
onlsun4# ln -s /space5/tftpboot tftpboot
onlsun4# ls -l
合計 226
drwxr-xr-x 2 root root 512 5月 22日 2001年 TT_DB/
lrwxrwxrwx 1 root root 9 5月 22日 2001年 bin -> ./usr/bin/
drwxr-xr-x 4 root nobody 512 7月 19日 2002年 cdrom/
drwxr-xr-x 16 root sys 4096 3月 10日 09:19 dev/
drwxr-xr-x 4 root sys 512 5月 22日 2001年 devices/
drwxr-xr-x 41 root sys 3584 3月 10日 09:19 etc/
drwxr-xr-x 3 root sys 512 5月 22日 2001年 export/
dr-xr-xr-x 1 root root 1 3月 10日 09:19 home/
drwxr-xr-x 2 root other 512 7月 19日 2002年 info/
lrwxrwxrwx 1 root other 10 5月 23日 2001年 kek -> /kekfs/kek/
dr-xr-xr-x 2 root root 2 3月 10日 13:57 kekfs/
drwxr-xr-x 9 root sys 512 5月 22日 2001年 kernel/
lrwxrwxrwx 1 root root 9 5月 22日 2001年 lib -> ./usr/lib/
drwx------ 5 root root 8192 5月 22日 2001年 lost+found/
drwxr-xr-x 3 root other 512 7月 19日 2002年 man/
drwxr-xr-x 2 root sys 512 5月 22日 2001年 mnt/
drwxr-xr-x 2 root other 512 3月 9日 16:58 mnt1/
dr-xr-xr-x 1 root root 1 3月 10日 14:05 net/
drwx------ 2 root other 512 5月 22日 2001年 nsmail/
lrwxrwxrwx 1 root other 11 9月 28日 2001年 opt -> /space2/opt/
drwxrwxr-x 5 root sys 512 5月 22日 2001年 opt-org/
drwxr-xr-x 23 root sys 1024 5月 22日 2001年 platform/
dr-xr-xr-x 53 root root 62400 3月 10日 14:06 proc/
drwxr-xr-x 2 root sys 512 5月 22日 2001年 sbin/
drwxr-xr-x 10 root root 512 12月 3日 2002年 space1/
drwxrwxrwx 7 root root 512 3月 9日 16:45 space2/
drwxr-xr-x 2 root root 512 5月 22日 2001年 space3/
drwxr-xr-x 2 root root 512 5月 22日 2001年 space4/
drwxr-xr-x 4 root root 512 3月 9日 17:04 space5/
drwxrwxrwx 6 root root 512 5月 29日 2001年 space6/
lrwxrwxrwx 1 root other 16 3月 10日 14:06 tftpboot -> /space5/tf
tpboot/
drwxrwxrwt 6 root sys 511 3月 10日 13:51 tmp/
drwxr-xr-x 36 root sys 1024 3月 20日 2002年 usr/
drwxr-xr-x 37 root sys 1024 3月 4日 17:07 var/
dr-xr-xr-x 6 root root 512 3月 10日 09:19 vol/
dr-xr-xr-x 1 root root 1 3月 10日 09:19 xfn/
onlsun4#
(2). クライアントの構築
/space5/tftpboot/130.87.153.3ディレクトリの下にクライアントに提供する
ルートファイルシステムを構築する。
(2-1). クライアント用ルートファイルシステムの構築
onlsun4# chmod 777 /space5
onlsun4# mkdir -p /space5/tftpboot/130.87.153.3
onlsun4# mount onlpara:/home2/onlpara-wrk /mnt
onlsun4# ls -l /mnt/root/diskless/diskless*
-rw-r--r-- 1 nobody4 nogroup 882565120 2月 12日 09:31 /mnt/root/diskless/d
iskless-rootfs.tar
-rw-r--r-- 1 nobody4 nogroup 298435 3月 1日 14:33 /mnt/root/diskless/dis
kless-toyodi-Mar12004.tar.gz
-rw-r--r-- 1 nobody4 nogroup 296777 2月 12日 09:47 /mnt/root/diskless/dis
kless-toyodi.tar.gz
onlsun4#
onlsun4# pwd
/space5/tftpboot/130.87.153.3
onlsun4# ls -l
合計 0
onlsun4# tar xf /mnt/root/diskless/diskless-rootfs.tar
tar: ディレクトリの検査合計エラーです。
onlsun4#
diskless-rootfs.tarファイルを作り直す。
onlsun4# df -k
ファイルシステム kbytes 使用済み 使用可能 capacity マウント先
/dev/dsk/c0t0d0s0 108079 47954 49318 50% /
/dev/dsk/c0t0d0s6 1234278 1102016 70549 94% /usr
/proc 0 0 0 0% /proc
fd 0 0 0 0% /dev/fd
mnttab 0 0 0 0% /etc/mnttab
/dev/dsk/c0t0d0s1 515670 28669 435434 7% /var
swap 307744 8 307736 1% /var/run
/dev/dsk/c0t0d0s4 5038454 4867708 120362 98% /space1
/dev/dsk/c0t0d0s5 5038454 3959496 1028574 80% /space2
/dev/dsk/c0t1d0s5 5159318 42777 5064948 1% /space5
swap 307744 8 307736 1% /tmp
/dev/dsk/c0t1d0s7 4127894 3305094 781522 81% /space6
/dev/dsk/c0t0d0s7 7472157 5418444 1978992 74% /export/home
onlpara:/home2/onlpara-wrk
22659860 5872220 15636584 28% /mnt
fs:/public/sun/Solaris2
106566576 101594457 3906453 97% /kekfs/kek
onlpc03:/tftpboot/130.87.153.3
22801684 6400188 15243212 30% /mnt1
onlsun4#
onlsun4# pwd
/space5
onlsun4# ls -l
合計 18
drwx------ 2 root root 8192 5月 28日 2001年 lost+found/
drwxr-xr-x 3 root other 512 3月 9日 16:47 tftpboot/
onlsun4#
onlsun4# pwd
/mnt1
onlsun4# ls -l
合計 3992
-rw-r--r-- 1 root root 593097 1月 13日 09:03 System.map
drwxr-xr-x 2 root root 4096 11月 28日 09:06 bin/
-rw-r--r-- 1 root root 1371992 1月 13日 09:04 bzImage
drwxr-xr-x 10 root root 24576 3月 3日 17:04 dev/
drwxr-xr-x 71 root root 4096 3月 3日 17:04 etc/
drwxr-xr-x 3 root root 4096 2月 23日 16:12 home/
drwxr-xr-x 5 root root 4096 11月 28日 09:06 lib/
drwxr-xr-x 2 root root 4096 1月 19日 10:10 mnt/
drwxr-xr-x 2 root root 4096 12月 25日 09:42 proc/
drwx------ 4 root root 4096 2月 2日 13:29 root/
drwxr-xr-x 2 root root 4096 11月 28日 09:06 sbin/
drwxrwxrwt 6 root root 4096 3月 3日 17:04 tmp/
drwxr-xr-x 14 root root 4096 2月 9日 13:51 usr/
drwxr-xr-x 15 root root 4096 2月 9日 13:26 var/
onlsun4#
onlsun4# tar cf /space5/diskless-rootfs-Mar92004.tar .
onlsun4# cd /space5
onlsun4# ls -l
合計 1719538
-rw-r--r-- 1 root other 879950848 3月 9日 17:14 diskless-rootfs-Mar9
2004.tar
drwx------ 2 root root 8192 5月 28日 2001年 lost+found/
drwxr-xr-x 3 root other 512 3月 9日 16:47 tftpboot/
onlsun4# cd tftpboot/130.87.153.3
onlsun4# ls -l
合計 0
onlsun4# tar xf ../../diskless-rootfs-Mar92004.tar
onlsun4#
onlsun4# pwd
/space5/tftpboot/130.87.153.3
onlsun4# ls -l
合計 3970
-rw-r--r-- 1 root root 593097 1月 13日 09:03 System.map
drwxr-xr-x 2 root root 1536 11月 28日 09:06 bin/
-rw-r--r-- 1 root root 1371992 1月 13日 09:04 bzImage
drwxr-xr-x 10 root root 22528 3月 3日 17:04 dev/
drwxr-xr-x 71 root root 3584 3月 3日 17:04 etc/
drwxr-xr-x 3 root root 512 2月 23日 16:12 home/
drwxr-xr-x 5 root root 2560 11月 28日 09:06 lib/
drwxr-xr-x 2 root root 512 1月 19日 10:10 mnt/
drwxr-xr-x 2 root root 512 12月 25日 09:42 proc/
drwx------ 4 root root 512 2月 2日 13:29 root/
drwxr-xr-x 2 root root 2048 11月 28日 09:06 sbin/
drwxrwxrwt 6 root root 512 3月 11日 11:41 tmp/
drwxr-xr-x 14 root root 512 2月 9日 13:51 usr/
drwxr-xr-x 15 root root 512 2月 9日 13:26 var/
-rw-r--r-- 1 root other 6 3月 10日 14:29 zImage
onlsun4#
onlsun4# ls -lR home
home:
合計 2
drwxr-sr-x 11 sshd 1001 512 3月 1日 13:33 toyo/
home/toyo:
合計 10
drwx--l--- 3 sshd 1001 512 2月 26日 16:37 Desktop/
drwxr-xr-x 2 sshd 1001 1024 1月 29日 15:21 camac/
drwxr-xr-x 2 sshd 1001 512 1月 28日 16:01 check/
drwxr-xr-x 4 sshd 1001 512 1月 29日 16:34 public_html/
drwxr-xr-x 2 sshd 1001 512 1月 29日 15:29 remote-camac/
home/toyo/Desktop:
合計 12
-rw-r--r-- 1 sshd 1001 73 2月 2日 15:20 debian.desktop
drwx--l--- 2 sshd 1001 512 2月 2日 15:20 ごみ箱/
-rw-r--r-- 1 sshd 1001 3578 2月 2日 15:20 ホーム
home/toyo/Desktop/ごみ箱:
合計 0
home/toyo/camac:
合計 618
-rw-r--r-- 1 sshd 1001 2436 10月 3日 13:19 Makefile
-rw-r--r-- 1 sshd 1001 1251 10月 3日 06:56 README
-rwxr-xr-x 1 sshd 1001 11183 1月 29日 15:21 cam*
-rw-r--r-- 1 sshd 1001 1050 10月 1日 20:29 cam.c
-rw-r--r-- 1 sshd 1001 13264 10月 4日 09:27 camac.c
-rw-r--r-- 1 sshd 1001 6716 1月 29日 15:21 camac.o
-rw-r--r-- 1 sshd 1001 2705 10月 1日 20:29 camlib.c
-rw-r--r-- 1 sshd 1001 212 10月 1日 20:29 camlib.h
-rw-r--r-- 1 sshd 1001 2688 1月 29日 15:21 camlib.o
-rwxr-xr-x 1 sshd 1001 12873 1月 29日 15:21 camtest1c*
-rw-r--r-- 1 sshd 1001 1882 10月 1日 20:29 camtest1c.c
-rwxr-xr-x 1 sshd 1001 10697 1月 29日 15:21 clr_fifo*
-rw-r--r-- 1 sshd 1001 411 10月 1日 20:29 clr_fifo.c
-rw-r--r-- 1 sshd 1001 3290 10月 1日 20:29 data_pattern.c
-rwxr-xr-x 1 sshd 1001 10927 1月 29日 15:21 dec_cam*
-rw-r--r-- 1 sshd 1001 480 10月 1日 20:29 dec_cam.c
-rwxr-xr-x 1 sshd 1001 10697 1月 29日 15:21 dump_reg*
-rw-r--r-- 1 sshd 1001 468 10月 1日 20:29 dump_reg.c
-rwxr-xr-x 1 sshd 1001 13190 1月 29日 15:21 exam0*
-rw-r--r-- 1 sshd 1001 4499 10月 1日 20:29 exam0.c
-rwxr-xr-x 1 sshd 1001 15153 1月 29日 15:21 exam1*
-rw-r--r-- 1 sshd 1001 4010 10月 2日 10:29 exam1.c
-rwxr-xr-x 1 sshd 1001 14253 1月 29日 15:21 exam2*
-rw-r--r-- 1 sshd 1001 2956 10月 1日 20:29 exam2.c
-rwxr-xr-x 1 sshd 1001 13777 1月 29日 15:21 exam3*
-rw-r--r-- 1 sshd 1001 2512 10月 9日 11:16 exam3.c
-rwxr-xr-x 1 sshd 1001 13393 1月 29日 15:21 exam4*
-rw-r--r-- 1 sshd 1001 2021 10月 9日 11:18 exam4.c
-rwxr-xr-x 1 sshd 1001 15024 1月 29日 15:21 exam5*
-rw-r--r-- 1 sshd 1001 5049 11月 7日 06:29 exam5.c
-rwxr-xr-x 1 sshd 1001 11059 1月 29日 15:21 gen_cam*
-rw-r--r-- 1 sshd 1001 619 10月 1日 20:29 gen_cam.c
-rwxr-xr-x 1 sshd 1001 10760 1月 29日 15:21 get_cam*
-rw-r--r-- 1 sshd 1001 473 10月 1日 20:29 get_cam.c
-rwxr-xr-x 1 sshd 1001 10763 1月 29日 15:21 get_camint*
-rw-r--r-- 1 sshd 1001 479 10月 2日 11:25 get_camint.c
-rw-r--r-- 1 sshd 1001 22372 12月 19日 16:40 pcc.c
-rw-r--r-- 1 sshd 1001 6942 11月 10日 17:03 pcc.h
-rw-r--r-- 1 sshd 1001 12992 1月 29日 15:21 pcc.o
-rwxr-xr-x 1 sshd 1001 10927 1月 29日 15:21 put_cam*
-rw-r--r-- 1 sshd 1001 573 10月 1日 20:29 put_cam.c
-rwxr-xr-x 1 sshd 1001 10696 1月 29日 15:21 rst_cam*
-rw-r--r-- 1 sshd 1001 401 10月 1日 20:29 rst_cam.c
home/toyo/check:
合計 752
-rwxr-xr-x 1 sshd 1001 47484 11月 7日 17:44 0ch*
-rw-r--r-- 1 sshd 1001 2295 11月 7日 17:40 0check_set.cpp
-rwxr-xr-x 1 sshd 1001 47666 11月 7日 17:44 1ch*
-rw-r--r-- 1 sshd 1001 2021 11月 7日 15:12 1check_N.cpp
-rwxr-xr-x 1 sshd 1001 47666 11月 7日 17:44 2ch*
-rw-r--r-- 1 sshd 1001 1987 11月 7日 15:13 2check_A.cpp
-rwxr-xr-x 1 sshd 1001 47666 11月 7日 17:44 3ch*
-rw-r--r-- 1 sshd 1001 2019 11月 7日 15:13 3check_F.cpp
-rwxr-xr-x 1 sshd 1001 47623 11月 7日 17:44 4ch*
-rw-r--r-- 1 sshd 1001 1897 11月 7日 15:13 4check_WR.cpp
-rwxr-xr-x 1 sshd 1001 48152 11月 7日 17:44 5ch*
-rw-r--r-- 1 sshd 1001 2325 11月 7日 16:47 5check_LAM.cpp
-rwxr-xr-x 1 sshd 1001 48068 11月 7日 17:44 6ch*
-rw-r--r-- 1 sshd 1001 2364 11月 7日 16:47 6check_TRG.cpp
-rw-r--r-- 1 sshd 1001 879 11月 7日 16:14 ErrCode.h
-rw-r--r-- 1 sshd 1001 586 11月 7日 16:39 ErrMsg.h
-rw-r--r-- 1 sshd 1001 2235 10月 3日 14:40 PCIreg.h
-rw-r--r-- 1 sshd 1001 5097 11月 4日 18:29 Packet.h
-rw-r--r-- 1 sshd 1001 712 8月 25日 2003年 README
-rwxr-xr-x 1 sshd 1001 621 11月 7日 16:49 auto_check*
-rw-r--r-- 1 sshd 1001 7464 11月 4日 18:44 ccnet_io.h
-rwxr-xr-x 1 sshd 1001 211 11月 7日 16:34 gccall*
-rw-r--r-- 1 sshd 1001 3893 8月 25日 2003年 pio_framework.c
-rw-r--r-- 1 sshd 1001 3288 8月 25日 2003年 scan_N.c
home/toyo/public_html:
合計 40
-rw-r--r-- 1 sshd 1001 351 1月 29日 16:27 Makefile
drwxr-xr-x 2 sshd 1001 1024 1月 30日 09:35 Web/
-rw-r--r-- 1 sshd 1001 245 11月 8日 23:44 hello.html
-rw-r--r-- 1 sshd 1001 2335 11月 19日 09:52 index.html
drwxr-xr-x 3 sshd 1001 512 11月 8日 23:42 myclasses/
-rwxr-xr-x 1 sshd 1001 5242 1月 29日 16:34 w*
-rw-r--r-- 1 sshd 1001 462 10月 23日 08:41 w.c
-rwxr-xr-x 1 sshd 1001 5327 10月 23日 08:41 w.org*
home/toyo/public_html/Web:
合計 274
-rw-r--r-- 1 sshd 1001 206 1月 30日 09:34 Client.class
-rw-r--r-- 1 sshd 1001 234 7月 30日 2003年 Client.java
-rw-r--r-- 1 sshd 1001 3559 1月 30日 09:34 ClientImpl.class
-rw-r--r-- 1 sshd 1001 17458 7月 30日 2003年 ClientImpl.java-bak
-rw-r--r-- 1 sshd 1001 1735 1月 30日 09:34 ClientImpl_Skel.class
-rw-r--r-- 1 sshd 1001 3140 1月 30日 09:34 ClientImpl_Stub.class
-rw-r--r-- 1 sshd 1001 1604 7月 30日 2003年 Makefile
-rw-r--r-- 1 sshd 1001 244 1月 30日 09:34 Server.class
-rw-r--r-- 1 sshd 1001 298 7月 30日 2003年 Server.java
-rw-r--r-- 1 sshd 1001 2616 1月 30日 09:34 ServerImpl.class
-rw-r--r-- 1 sshd 1001 3394 7月 30日 2003年 ServerImpl.java
-rw-r--r-- 1 sshd 1001 1956 1月 30日 09:35 ServerImpl_Skel.class
-rw-r--r-- 1 sshd 1001 3510 1月 30日 09:35 ServerImpl_Stub.class
-rw-r--r-- 1 sshd 1001 2617 7月 30日 2003年 cam.c
-rw-r--r-- 1 sshd 1001 360 1月 30日 09:34 cam.class
-rw-r--r-- 1 sshd 1001 414 1月 30日 09:34 cam.h
-rw-r--r-- 1 sshd 1001 792 7月 30日 2003年 cam.java
lrwxrwxrwx 1 sshd 1001 19 3月 9日 17:22 camac.c -> ../../camac
/camac.c
-rw-r--r-- 1 sshd 1001 13325 7月 30日 2003年 camac.c-bak
-rw-r--r-- 1 sshd 1001 9468 1月 30日 09:34 camac.o
-rwxr-xr-x 1 sshd 1001 16344 1月 30日 09:34 libMyImpOfcam.so*
lrwxrwxrwx 1 sshd 1001 17 3月 9日 17:22 pcc.h -> ../../camac/p
cc.h
-rw-r--r-- 1 sshd 1001 6364 7月 30日 2003年 pcc.h-bak
-rw-r--r-- 1 sshd 1001 81 7月 30日 2003年 policy
-rwxr-xr-x 1 sshd 1001 123 7月 30日 2003年 web.sh*
-rw-r--r-- 1 sshd 1001 186 7月 30日 2003年 web3-inoue.mem
-rw-r--r-- 1 sshd 1001 4212 1月 30日 09:34 web3.class
-rw-r--r-- 1 sshd 1001 2454 7月 30日 2003年 web3.html
-rw-r--r-- 1 sshd 1001 11931 8月 1日 2003年 web3.java
-rw-r--r-- 1 sshd 1001 11879 8月 1日 2003年 web3.java-org
home/toyo/public_html/myclasses:
合計 2
drwxr-xr-x 3 sshd 1001 512 11月 8日 23:42 examples/
home/toyo/public_html/myclasses/examples:
合計 2
drwxr-xr-x 2 sshd 1001 512 11月 8日 23:43 hello/
home/toyo/public_html/myclasses/examples/hello:
合計 20
-rw-r--r-- 1 sshd 1001 224 11月 8日 23:42 Hello.class
-rw-r--r-- 1 sshd 1001 1281 11月 8日 23:42 HelloApplet.class
-rw-r--r-- 1 sshd 1001 1244 11月 8日 23:42 HelloImpl.class
-rw-r--r-- 1 sshd 1001 1448 11月 8日 23:43 HelloImpl_Skel.class
-rw-r--r-- 1 sshd 1001 2920 11月 8日 23:43 HelloImpl_Stub.class
home/toyo/remote-camac:
合計 396
-rw-r--r-- 1 sshd 1001 1937 1月 8日 09:29 Makefile
-rw-r--r-- 1 sshd 1001 1268 10月 3日 06:44 README
-rwxr-xr-x 1 sshd 1001 12822 1月 29日 15:29 cam*
-rw-r--r-- 1 sshd 1001 1473 1月 12日 20:45 ccnet.h
-rwxr-xr-x 1 sshd 1001 14281 1月 29日 15:29 ccnet_server*
-rw-r--r-- 1 sshd 1001 4557 1月 12日 20:29 ccnet_server.c
-rw-r--r-- 1 sshd 1001 16585 1月 13日 10:36 clientlib.c
-rwxr-xr-x 1 sshd 1001 12312 1月 29日 15:29 clr_fifo*
-rw-r--r-- 1 sshd 1001 4234 1月 7日 14:30 dispatch.c
-rwxr-xr-x 1 sshd 1001 12344 1月 29日 15:29 dump_reg*
-rwxr-xr-x 1 sshd 1001 14869 1月 29日 15:29 exam0*
-rwxr-xr-x 1 sshd 1001 16828 1月 29日 15:29 exam1*
-rwxr-xr-x 1 sshd 1001 14229 1月 29日 15:29 exam2*
-rwxr-xr-x 1 sshd 1001 13749 1月 29日 15:29 exam3*
-rwxr-xr-x 1 sshd 1001 13749 1月 29日 15:29 exam4*
-rwxr-xr-x 1 sshd 1001 16349 1月 29日 15:29 measure*
-rw-r--r-- 1 sshd 1001 4625 11月 7日 06:26 measure.c
-rw-r--r-- 1 sshd 1001 1405 1月 12日 17:11 message.c
-rw-r--r-- 1 sshd 1001 511 11月 7日 09:59 results-measurement-no
delay.txt
-rw-r--r-- 1 sshd 1001 605 11月 7日 09:58 results-measurement.tx
t
-rwxr-xr-x 1 sshd 1001 12311 1月 29日 15:29 rst_cam*
onlsun4#
新たに作り直した diskless-rootfs-Mar92004.tarファイルは /homeディレクト
リの下も一緒にパッケージされている。 従って、別に diskless-toyodi.tar.gz
ファイルを展開する必要はない。
tar xzf /mnt1/root/diskless/diskless-toyodi.tar.gz の操作は必要ない。
(2-2). /tftpboot/130.87.153.3/etc 以下のファイルの編集
(2-2-1). /tftpboot/130.87.153.3/etc/modules
/tftpboot/130.87.153.3/etc/modulesファイルの変更は必要ない。
(2-2-2). /tftpboot/130.87.153.3/etc/hostname
/tftpboot/130.87.153.3/etc/hostnameファイルを修正。 クライアントのホス
ト名を適切なものに設定し直す。
(2-2-3). /tftpboot/130.87.153.3/etc/fstab
/tftpboot/130.87.153.3/etc/fstabファイルを修正。 サーバがエクスポート
しているファイルシステムに正しく指定し直す。
(2-2-4). /tftpboot/130.87.153.3/etc/init.d
/tftpboot/130.87.153.3/etc/init.d下のファイルの変更は必要ない。
(2-2-5). /tftpboot/130.87.153.3/etc/network/interfaces
/tftpboot/130.87.153.3/etc/network/interfacesファイルを修正。 クライアン
トの適切なネットワーク情報を設定する。
(2-2-6). /tftpboot/130.87.153.3/etc/modules.conf
/tftpboot/130.87.153.3/etc/modules.confファイルを修正。
"alias net-pf-1 off" 行のコメントアウト。
(2-2-7). /tftpboot/130.87.153.3/etc/modutils/aliases
/tftpboot/130.87.153.3/etc/modutils/aliasesファイルを修正。
"alias net-pf-1 off" 行のコメントアウト。
(2-2-8). /tftpboot/130.87.153.3/lib/modules/2.4.18/modules.dep
/tftpboot/130.87.153.3/lib/modules/2.4.18/modules.depファイルを作成。
ここで、サーバをリブートする。
onlsun4# reboot
:
onlsun3[33]% ssh onlsun4
inoue@onlsun4's password:
Last login: Fri Mar 12 14:23:20 2004 from onlnote2.kek.jp
Sun Microsystems Inc. SunOS 5.8 Generic February 2000
Sun Microsystems Inc. SunOS 5.8 Generic February 2000
onlsun4[33]%
onlsun4[34]% tail /var/adm/messages
Mar 12 14:21:35 onlsun4 pci_pci: [ID 370704 kern.info] PCI-device: SUNW,isptwo@4
, isp0
Mar 12 14:21:35 onlsun4 genunix: [ID 936769 kern.info] isp0 is /pci@1f,0/pci@1/p
ci@1/SUNW,isptwo@4
Mar 12 14:21:35 onlsun4 scsi: [ID 365881 kern.info] /pci@1f,0/pci@1/pci@1/SUNW,i
sptwo@4 (isp0):
Mar 12 14:21:35 onlsun4 Firmware Version: v0.04.64, Customer: 0, Product
: 0
Mar 12 14:21:36 onlsun4 scsi: [ID 193665 kern.info] sd15 at uata0: target 2 lun
0
Mar 12 14:21:36 onlsun4 genunix: [ID 936769 kern.info] sd15 is /pci@1f,0/pci@1,1
/ide@3/sd@2,0
Mar 12 14:21:42 onlsun4 ebus: [ID 521012 kern.info] fd0 at ebus0: offset 14,3023
f0
Mar 12 14:21:42 onlsun4 genunix: [ID 936769 kern.info] fd0 is /pci@1f,0/pci@1,1/
ebus@1/fdthree@14,3023f0
Mar 12 14:21:47 onlsun4 pseudo: [ID 129642 kern.info] pseudo-device: pm0
Mar 12 14:21:47 onlsun4 genunix: [ID 936769 kern.info] pm0 is /pseudo/pm@0
onlsun4[35]%
(3). ブートローダの設定
現在はテストのために FD上にブートローダを置いてクライアント側を起動して
いる。 ブートローダにはGRUBを使用している。 GRUBの menu.lstファイルを
修正する。
(3-1). FD上のGRUBの設定
[root@onlsbc1 inoue]# df -k
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda2 7360792 2256708 4730172 33% /
/dev/hda5 10475668 668732 9274788 7% /home
none 152332 0 152332 0% /dev/shm
[root@onlsbc1 inoue]# mount -t ext2 /dev/fd0 /mnt
[root@onlsbc1 inoue]#
[root@onlsbc1 grub]# pwd
/mnt/boot/grub
[root@onlsbc1 grub]# ls -l
合計 375
-rwxr-xr-x 1 root root 121600 1月 15 10:10 diskless
-rwxr-xr-x 1 root root 8100 1月 15 09:42 e2fs_stage1_5
-rw-r--r-- 1 root root 3904 3月 11 11:29 menu.lst
-rw-r--r-- 1 root root 122112 1月 15 10:10 nbgrub
-rwxr-xr-x 1 root root 512 1月 15 08:57 stage1
-rw-r--r-- 1 root root 122144 1月 15 09:00 stage2
[root@onlsbc1 grub]#
[root@onlsbc1 grub]# vi menu.lst
:
# Solaris 8: Bootp: onlsbc1 Network boot
title Solaris 8: Bootp: Boot from network with bootp [130.87.153.3/bzImage]
bootp
root (nd)
#kernel /tftpboot/130.87.153.3/bzImage nfsroot=(nd):/tftpboot/130.87.153.3 ip=bootp
#kernel /tftpboot/130.87.153.3/bzImage nfsroot=130.87.153.112:/tftpboot/130.87.153.3 ip=bootp
#kernel 130.87.153.112:/tftpboot/130.87.153.3/bzImage nfsroot=130.87.153.112:/tftpboot/130.87.153.3 ip=bootp
kernel /tftpboot/130.87.153.3/bzImage nfsroot=130.87.153.116:/tftpboot/130.87.153.3 ip=bootp
:
[root@onlsbc1 grub]#
ここで、クライアントマシンの onlsbc1から GRUBを起動した。
bootp、tftp は正常に実行された。 サーバ側から/tftpboot/130.87.153.3/
bzImageのカーネルイメージがダウンロードされ、クライアント側ではカーネル
が起動した。 しかし、システムが立ち上がる途中で /var および /etc 下の
ファイルへのパーミッションが無いというエラーが表示されて、正常に立ち上が
ることができなかった。 サーバ側の /tftpboot 下をチェックする。
onlsun4# dmesg
2004年03月12日 (金) 15時21分58秒 JST
:
:
Mar 12 14:20:24 onlsun4 reboot: [ID 662345 auth.crit] rebooted by inoue
Mar 12 14:20:24 onlsun4 rpcbind: [ID 564983 daemon.error] rpcbind terminating on
signal.
Mar 12 14:20:24 onlsun4 in.ndpd[139]: [ID 448925 daemon.error] terminated
Mar 12 14:20:24 onlsun4 syslogd: going down on signal 15
Mar 12 14:20:30 onlsun4 genunix: [ID 672855 kern.notice] syncing file systems...
Mar 12 14:20:30 onlsun4 genunix: [ID 904073 kern.notice] done
Mar 12 14:21:03 onlsun4 genunix: [ID 540533 kern.notice] SunOS Release 5.8 Versi
on Generic_108528-01 64-bit
Mar 12 14:21:03 onlsun4 genunix: [ID 784649 kern.notice] Copyright 1983-2000 Sun
Microsystems, Inc. All rights reserved.
Mar 12 14:21:03 onlsun4 genunix: [ID 678236 kern.info] Ethernet address = 8:0:20
:a2:3f:d8
Mar 12 14:21:03 onlsun4 unix: [ID 389951 kern.info] mem = 262144K (0x10000000)
Mar 12 14:21:03 onlsun4 unix: [ID 930857 kern.info] avail mem = 251584512
Mar 12 14:21:03 onlsun4 rootnex: [ID 466748 kern.info] root nexus = Sun Ultra 5/
10 UPA/PCI (UltraSPARC-IIi 333MHz)
Mar 12 14:21:03 onlsun4 rootnex: [ID 349649 kern.info] pcipsy0 at root: UPA 0x1f
0x0
Mar 12 14:21:03 onlsun4 genunix: [ID 936769 kern.info] pcipsy0 is /pci@1f,0
Mar 12 14:21:03 onlsun4 pcipsy: [ID 370704 kern.info] PCI-device: pci@1,1, simba
0
Mar 12 14:21:03 onlsun4 genunix: [ID 936769 kern.info] simba0 is /pci@1f,0/pci@1
,1
Mar 12 14:21:03 onlsun4 pcipsy: [ID 370704 kern.info] PCI-device: pci@1, simba1
Mar 12 14:21:03 onlsun4 genunix: [ID 936769 kern.info] simba1 is /pci@1f,0/pci@1
Mar 12 14:21:13 onlsun4 simba: [ID 370704 kern.info] PCI-device: ide@3, uata0
Mar 12 14:21:13 onlsun4 genunix: [ID 936769 kern.info] uata0 is /pci@1f,0/pci@1,
1/ide@3
Mar 12 14:21:14 onlsun4 uata: [ID 114370 kern.info] dad0 at pci1095,6460
Mar 12 14:21:14 onlsun4 uata: [ID 347839 kern.info] target 0 lun 0
Mar 12 14:21:14 onlsun4 genunix: [ID 936769 kern.info] dad0 is /pci@1f,0/pci@1,1
/ide@3/dad@0,0
Mar 12 14:21:14 onlsun4 dada: [ID 365881 kern.info]
Mar 12 14:21:15 onlsun4 uata: [ID 114370 kern.info] dad1 at pci1095,6460
Mar 12 14:21:15 onlsun4 uata: [ID 347839 kern.info] target 1 lun 0
Mar 12 14:21:15 onlsun4 genunix: [ID 936769 kern.info] dad1 is /pci@1f,0/pci@1,1
/ide@3/dad@1,0
Mar 12 14:21:15 onlsun4 dada: [ID 365881 kern.info]
Mar 12 14:21:16 onlsun4 swapgeneric: [ID 308332 kern.info] root on /pci@1f,0/pci
@1,1/ide@3/disk@0,0:a fstype ufs
Mar 12 14:21:16 onlsun4 simba: [ID 370704 kern.info] PCI-device: ebus@1, ebus0
Mar 12 14:21:16 onlsun4 ebus: [ID 521012 kern.info] power0 at ebus0: offset 14,7
24000
Mar 12 14:21:16 onlsun4 genunix: [ID 936769 kern.info] power0 is /pci@1f,0/pci@1
,1/ebus@1/power@14,724000
Mar 12 14:21:16 onlsun4 ebus: [ID 521012 kern.info] su0 at ebus0: offset 14,3083
f8
Mar 12 14:21:16 onlsun4 genunix: [ID 936769 kern.info] su0 is /pci@1f,0/pci@1,1/
ebus@1/su@14,3083f8
Mar 12 14:21:16 onlsun4 ebus: [ID 521012 kern.info] su1 at ebus0: offset 14,3062
f8
Mar 12 14:21:16 onlsun4 genunix: [ID 936769 kern.info] su1 is /pci@1f,0/pci@1,1/
ebus@1/su@14,3062f8
Mar 12 14:21:16 onlsun4 simba: [ID 370704 kern.info] PCI-device: SUNW,m64B@2, m6
40
Mar 12 14:21:16 onlsun4 genunix: [ID 936769 kern.info] m640 is /pci@1f,0/pci@1,1
/SUNW,m64B@2
Mar 12 14:21:16 onlsun4 m64: [ID 308573 kern.info] m64#0: 1280x1024, 4M mappable
, rev 4750.7c
Mar 12 14:21:16 onlsun4 unix: [ID 987524 kern.info] cpu0: SUNW,UltraSPARC-IIi (u
paid 0 impl 0x12 ver 0x13 clock 333 MHz)
Mar 12 14:21:17 onlsun4 ebus: [ID 521012 kern.info] se0 at ebus0: offset 14,4000
00
Mar 12 14:21:17 onlsun4 genunix: [ID 936769 kern.info] se0 is /pci@1f,0/pci@1,1/
ebus@1/se@14,400000
Mar 12 14:21:17 onlsun4 hme: [ID 517527 kern.info] SUNW,hme0 : PCI IO 2.0 (Rev I
d = c1) Found
Mar 12 14:21:17 onlsun4 simba: [ID 370704 kern.info] PCI-device: network@1,1, hm
e0
Mar 12 14:21:17 onlsun4 genunix: [ID 936769 kern.info] hme0 is /pci@1f,0/pci@1,1
/network@1,1
Mar 12 14:21:17 onlsun4 simba: [ID 370704 kern.info] PCI-device: pci@1, pci_pci0
Mar 12 14:21:17 onlsun4 genunix: [ID 936769 kern.info] pci_pci0 is /pci@1f,0/pci
@1/pci@1
Mar 12 14:21:17 onlsun4 hme: [ID 517527 kern.info] SUNW,hme1 : PCI IO 2.0 (Rev I
d = c1) Found
Mar 12 14:21:17 onlsun4 hme: [ID 517527 kern.info] SUNW,hme1 : Local Ethernet ad
dress = 8:0:20:a3:5b:f9
Mar 12 14:21:17 onlsun4 pci_pci: [ID 370704 kern.info] PCI-device: SUNW,hme@0,1,
hme1
Mar 12 14:21:17 onlsun4 genunix: [ID 936769 kern.info] hme1 is /pci@1f,0/pci@1/p
ci@1/SUNW,hme@0,1
Mar 12 14:21:20 onlsun4 genunix: [ID 454863 kern.info] dump on /dev/dsk/c0t0d0s3
size 148 MB
Mar 12 14:21:22 onlsun4 hme: [ID 517527 kern.info] SUNW,hme0 : Internal Transcei
ver Selected.
Mar 12 14:21:22 onlsun4 hme: [ID 517527 kern.info] SUNW,hme0 : Auto-Negotiated
100 Mbps Full-Duplex Link Up
Mar 12 14:21:32 onlsun4 pseudo: [ID 129642 kern.info] pseudo-device: tod0
Mar 12 14:21:32 onlsun4 genunix: [ID 936769 kern.info] tod0 is /pseudo/tod@0
Mar 12 14:21:33 onlsun4 pseudo: [ID 129642 kern.info] pseudo-device: pm0
Mar 12 14:21:33 onlsun4 genunix: [ID 936769 kern.info] pm0 is /pseudo/pm@0
Mar 12 14:21:33 onlsun4 cssd: [ID 602758 daemon.notice] starting cs00.sh (pid#26
0)
Mar 12 14:21:33 onlsun4 cssd: [ID 602758 daemon.notice] starting ccv.sh (pid#261
)
Mar 12 14:21:33 onlsun4 cssd: [ID 602758 daemon.notice] starting kkcv.sh (pid#26
2)
Mar 12 14:21:33 onlsun4 pseudo: [ID 129642 kern.info] pseudo-device: devinfo0
Mar 12 14:21:33 onlsun4 genunix: [ID 936769 kern.info] devinfo0 is /pseudo/devin
fo@0
Mar 12 14:21:34 onlsun4 pseudo: [ID 129642 kern.info] pseudo-device: vol0
Mar 12 14:21:34 onlsun4 genunix: [ID 936769 kern.info] vol0 is /pseudo/vol@0
Mar 12 14:21:35 onlsun4 pci_pci: [ID 370704 kern.info] PCI-device: SUNW,isptwo@4
, isp0
Mar 12 14:21:35 onlsun4 genunix: [ID 936769 kern.info] isp0 is /pci@1f,0/pci@1/p
ci@1/SUNW,isptwo@4
Mar 12 14:21:35 onlsun4 scsi: [ID 365881 kern.info] /pci@1f,0/pci@1/pci@1/SUNW,i
sptwo@4 (isp0):
Mar 12 14:21:35 onlsun4 Firmware Version: v0.04.64, Customer: 0, Product
: 0
Mar 12 14:21:36 onlsun4 scsi: [ID 193665 kern.info] sd15 at uata0: target 2 lun
0
Mar 12 14:21:36 onlsun4 genunix: [ID 936769 kern.info] sd15 is /pci@1f,0/pci@1,1
/ide@3/sd@2,0
Mar 12 14:21:42 onlsun4 ebus: [ID 521012 kern.info] fd0 at ebus0: offset 14,3023
f0
Mar 12 14:21:42 onlsun4 genunix: [ID 936769 kern.info] fd0 is /pci@1f,0/pci@1,1/
ebus@1/fdthree@14,3023f0
Mar 12 14:21:47 onlsun4 pseudo: [ID 129642 kern.info] pseudo-device: pm0
Mar 12 14:21:47 onlsun4 genunix: [ID 936769 kern.info] pm0 is /pseudo/pm@0
onlsun4#
onlsun4# ls -l /
合計 226
drwxr-xr-x 2 root root 512 5月 22日 2001年 TT_DB/
lrwxrwxrwx 1 root root 9 5月 22日 2001年 bin -> ./usr/bin/
drwxr-xr-x 4 root nobody 512 7月 19日 2002年 cdrom/
drwxr-xr-x 16 root sys 4096 3月 12日 14:21 dev/
drwxr-xr-x 4 root sys 512 5月 22日 2001年 devices/
drwxr-xr-x 41 root sys 3584 3月 12日 14:21 etc/
drwxr-xr-x 3 root sys 512 5月 22日 2001年 export/
dr-xr-xr-x 1 root root 1 3月 12日 14:21 home/
drwxr-xr-x 2 root other 512 7月 19日 2002年 info/
lrwxrwxrwx 1 root other 10 5月 23日 2001年 kek -> /kekfs/kek/
dr-xr-xr-x 2 root root 2 3月 12日 15:03 kekfs/
drwxr-xr-x 9 root sys 512 5月 22日 2001年 kernel/
lrwxrwxrwx 1 root root 9 5月 22日 2001年 lib -> ./usr/lib/
drwx------ 5 root root 8192 5月 22日 2001年 lost+found/
drwxr-xr-x 3 root other 512 7月 19日 2002年 man/
drwxr-xr-x 2 root sys 512 5月 22日 2001年 mnt/
drwxr-xr-x 2 root other 512 3月 9日 16:58 mnt1/
dr-xr-xr-x 1 root root 1 3月 12日 14:21 net/
drwx------ 2 root other 512 5月 22日 2001年 nsmail/
lrwxrwxrwx 1 root other 11 9月 28日 2001年 opt -> /space2/opt/
drwxrwxr-x 5 root sys 512 5月 22日 2001年 opt-org/
drwxr-xr-x 23 root sys 1024 5月 22日 2001年 platform/
dr-xr-xr-x 55 root root 62400 3月 12日 15:21 proc/
drwxr-xr-x 2 root sys 512 5月 22日 2001年 sbin/
drwxr-xr-x 10 root root 512 12月 3日 2002年 space1/
drwxrwxrwx 7 root root 512 3月 9日 16:45 space2/
drwxr-xr-x 2 root root 512 5月 22日 2001年 space3/
drwxr-xr-x 2 root root 512 5月 22日 2001年 space4/
drwxrwxrwx 4 root root 512 3月 9日 17:04 space5/
drwxrwxrwx 6 root root 512 5月 29日 2001年 space6/
lrwxrwxrwx 1 root other 16 3月 10日 14:06 tftpboot -> /space5/tf
tpboot/
drwxrwxrwt 6 root sys 511 3月 12日 14:21 tmp/
drwxr-xr-x 37 root sys 1024 3月 10日 16:54 usr/
drwxr-xr-x 37 root sys 1024 3月 4日 17:07 var/
dr-xr-xr-x 6 root root 512 3月 12日 14:21 vol/
dr-xr-xr-x 1 root root 1 3月 12日 14:21 xfn/
onlsun4#
onlsun4# ls -l /space5
合計 1719538
-rw-r--r-- 1 root other 879950848 3月 9日 17:14 diskless-rootfs-Mar9
2004.tar
drwx------ 2 root root 8192 5月 28日 2001年 lost+found/
drwxr-xr-x 3 root other 512 3月 11日 10:39 tftpboot/
onlsun4#
onlsun4# ls -l /space5/tftpboot
合計 6
drwxr-xr-x 15 root root 512 3月 10日 14:29 130.87.153.3/
lrwxrwxrwx 1 root other 6 3月 11日 09:11 8257990A.SUN4M -> zIma
ge
-rw-r--r-- 1 root other 0 3月 11日 10:39 82579974.SUN4U
-rw-r--r-- 1 root other 0 3月 11日 10:39 README
-rw-r--r-- 1 root other 6 3月 12日 10:41 zImage
onlsun4#
onlsun4# ls -l /space5/tftpboot/130.87.153.3
合計 3970
-rw-r--r-- 1 root root 593097 1月 13日 09:03 System.map
drwxr-xr-x 2 root root 1536 11月 28日 09:06 bin/
-rw-r--r-- 1 root root 1371992 1月 13日 09:04 bzImage
drwxr-xr-x 10 root root 22528 3月 3日 17:04 dev/
drwxr-xr-x 71 root root 3584 3月 3日 17:04 etc/
drwxr-xr-x 3 root root 512 2月 23日 16:12 home/
drwxr-xr-x 5 root root 2560 11月 28日 09:06 lib/
drwxr-xr-x 2 root root 512 1月 19日 10:10 mnt/
drwxr-xr-x 2 root root 512 12月 25日 09:42 proc/
drwx------ 4 root root 512 2月 2日 13:29 root/
drwxr-xr-x 2 root root 2048 11月 28日 09:06 sbin/
drwxrwxrwt 6 root root 512 3月 12日 15:03 tmp/
drwxr-xr-x 14 root root 512 2月 9日 13:51 usr/
drwxr-xr-x 15 root root 512 2月 9日 13:26 var/
-rw-r--r-- 1 root other 6 3月 10日 14:29 zImage
onlsun4#
onlsun4# pwd
/space5
onlsun4# chmod go+w tftpboot
onlsun4# ls -l
合計 1719538
-rw-r--r-- 1 root other 879950848 3月 9日 17:14 diskless-rootfs-Mar9
2004.tar
drwx------ 2 root root 8192 5月 28日 2001年 lost+found/
drwxrwxrwx 3 root other 512 3月 11日 10:39 tftpboot/
onlsun4#
onlsun4# pwd
/space5/tftpboot
onlsun4# chmod go+w 130.87.153.3
onlsun4# ls -l
合計 6
drwxrwxrwx 15 root root 512 3月 10日 14:29 130.87.153.3/
lrwxrwxrwx 1 root other 6 3月 11日 09:11 8257990A.SUN4M -> zIma
ge
-rw-r--r-- 1 root other 0 3月 11日 10:39 82579974.SUN4U
-rw-r--r-- 1 root other 0 3月 11日 10:39 README
-rw-r--r-- 1 root other 6 3月 12日 10:41 zImage
onlsun4#
onlsun4# pwd
/etc/dfs
onlsun4# vi dfstab
:
#share -F nfs -o rw /space5/tftpboot/130.87.153.3
share -F nfs -o rw=130.87.153.3 /space5/tftpboot/130.87.153.3
:
~
~
"dfstab" 20 行、756 バイト
onlsun4#
onlsun4# ps -ef | grep inet
root 139 1 0 14:21:28 ? 0:00 /usr/lib/inet/in.ndpd
root 175 1 0 14:21:29 ? 0:00 /usr/sbin/inetd -s
root 378 1 0 14:21:43 ? 0:00 /usr/lib/inet/in.dhcpd
root 505 457 0 15:45:02 pts/2 0:00 grep inet
onlsun4# kill -HUP 175
onlsun4#
onlsun4# ls -l /dev/nfs*
一致しません。
onlsun4#
onlsun4# mknod /dev/nfsroot b 0 255
onlsun4# ls -l /dev/nfs*
brw-r--r-- 1 root other 0,255 3月 12日 16:40 /dev/nfsroot
onlsun4#
onlsun4[34]% cat /etc/vfstab
#device device mount FS fsck mount mount
#to mount to fsck point type pass at boot options
#
#/dev/dsk/c1d0s2 /dev/rdsk/c1d0s2 /usr ufs 1 yes -
fd - /dev/fd fd - no -
/proc - /proc proc - no -
/dev/dsk/c0t0d0s3 - - swap - no -
/dev/dsk/c0t0d0s0 /dev/rdsk/c0t0d0s0 / ufs 1 no
-
/dev/dsk/c0t0d0s6 /dev/rdsk/c0t0d0s6 /usr ufs 1 no
-
/dev/dsk/c0t0d0s1 /dev/rdsk/c0t0d0s1 /var ufs 1 no
-
/dev/dsk/c0t0d0s7 /dev/rdsk/c0t0d0s7 /export/home ufs 2
yes -
/dev/dsk/c0t0d0s4 /dev/rdsk/c0t0d0s4 /space1 ufs 2 yes
-
/dev/dsk/c0t0d0s5 /dev/rdsk/c0t0d0s5 /space2 ufs 2 yes
-
#/dev/dsk/c0t1d0s5 /dev/rdsk/c0t1d0s5 /space5 ufs 2 yes
-
/dev/dsk/c0t1d0s5 /dev/rdsk/c0t1d0s5 /tftpboot ufs 2
yes -
/dev/dsk/c0t1d0s7 /dev/rdsk/c0t1d0s7 /space6 ufs 2 yes
-
swap - /tmp tmpfs - yes -
onlsun4[35]%
onlsun4# cat /var/dhcp/dhcptab
Locale m :UTCoffst=32400:
130.87.152.0 m :Subnet=255.255.252.0:RDiscvyF=1:Broadcst=130.87.155.255
:
onlsun4 m :Include=Locale:Timeserv=130.87.153.116:LeaseTim=86400:LeaseNeg:
DNSdmain="kek.jp":DNSserv=130.87.34.2 130.87.34.3 130.87.152.2:Rootpath=/tftpboo
t/130.87.153.3:BootSrvA=130.87.153.116:Router=130.87.152.1:
onlsun4#
onlsun4 をリブートした後で、再度 onlsbc1 から起動を試みたが症状は変わら
ない。
起動時の onlsbc1 側のメッセージは、Permission diniedエラーのために残され
ていないのでチェックできない。
NFSマウントのテストをやってみる。
onlsbc1 をハードディスク上の Debian システムを使って立ち上げてみる。
onlsun1[59]% ssh onlsbc1
inoue@onlsbc1's password:
Linux onlsbc1 2.4.18-bf2.4 #1 Son Apr 14 09:53:28 CEST 2002 i586 unknown
Most of the programs included with the Debian GNU/Linux system are
freely redistributable; the exact distribution terms for each program
are described in the individual files in /usr/share/doc/*/copyright
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Mon Mar 15 09:17:49 2004
inoue@onlsbc1:~$
onlsun4 の /tftpboot/130.87.153.3 を onlsbc1 にマウントする。
onlsun4[42]% exportfs
:
- /tftpboot/130.87.153.3 rw ""
:
onlsun4[43]%
マウントした/tftpboot/130.87.153.3ディレクトリに書き込みを実行してみる。
onlsbc1:/mnt# pwd
/mnt
onlsbc1:/mnt# ls -l
合計 1988
-rw-r--r-- 1 root root 593097 1月 13 09:03 System.map
drwxr-xr-x 2 root root 1536 11月 28 09:06 bin
-rw-r--r-- 1 root root 1371992 1月 13 09:04 bzImage
drwxr-xr-x 10 root root 22528 3月 3 17:04 dev
drwxr-xr-x 71 root root 3584 3月 15 16:57 etc
drwxr-xr-x 3 root root 512 2月 23 16:12 home
drwxr-xr-x 5 root root 2560 11月 28 09:06 lib
drwxr-xr-x 2 root root 512 1月 19 10:10 mnt
drwxr-xr-x 2 root root 512 12月 25 09:42 proc
drwx------ 4 root root 512 2月 2 13:29 root
drwxr-xr-x 2 root root 2048 11月 28 09:06 sbin
-rw-r--r-- 1 4294967294 4294967294 4 3月 16 16:29 test1
-rw-r--r-- 1 inoue inoue 5 3月 16 09:01 test2
-rw-r--r-- 1 operator operator 5 3月 16 16:31 test3
drwxrwxrwt 6 root root 512 3月 15 17:44 tmp
drwxr-xr-x 14 root root 512 2月 9 13:51 usr
drwxr-xr-x 15 root root 512 2月 9 13:26 var
-rw-r--r-- 1 root daemon 6 3月 10 14:29 zImage
onlsbc1:/mnt#
root 以外のアカウントでは正しい UID、GIDでファイルを作成できるが、rootで
ファイルを作成するとUID、GID はnobody にはならないで 4294967294 になって
しまっている。 試しに同じ /tftpboot/130.87.153.3ディレクトリを onlsun3
の Solaris 8 のマシンにマウントしてファイル作成を実行してみる。
onlsun3# df -k
ファイルシステム kbytes 使用済み 使用可能 capacity マウント先
/dev/dsk/c0t1d0s0 95679 24466 61646 29% /
/dev/dsk/c0t1d0s6 1985527 933589 992373 49% /usr
/proc 0 0 0 0% /proc
fd 0 0 0 0% /dev/fd
mnttab 0 0 0 0% /etc/mnttab
/dev/dsk/c0t1d0s1 481871 26522 407162 7% /var
swap 201496 4 201492 1% /var/run
/dev/dsk/c0t1d0s4 20159481 567088 19390799 3% /space1
swap 201504 12 201492 1% /tmp
/dev/dsk/c0t1d0s5 20159481 4015417 15942470 21% /space2
/dev/dsk/c0t1d0s7 33800093 32665934 796159 98% /export/home
onlsun4:/tftpboot/130.87.153.3
5159318 1719976 3387749 34% /mnt
onlsun3# pwd
/mnt
onlsun3# ls -l
合計 3978
-rw-r--r-- 1 root root 593097 1月 13日 09:03 System.map
drwxr-xr-x 2 root root 1536 11月 28日 09:06 bin/
-rw-r--r-- 1 root root 1371992 1月 13日 09:04 bzImage
drwxr-xr-x 10 root root 22528 3月 3日 17:04 dev/
drwxr-xr-x 71 root root 3584 3月 15日 16:57 etc/
drwxr-xr-x 3 root root 512 2月 23日 16:12 home/
drwxr-xr-x 5 root root 2560 11月 28日 09:06 lib/
drwxr-xr-x 2 root root 512 1月 19日 10:10 mnt/
drwxr-xr-x 2 root root 512 12月 25日 09:42 proc/
drwx------ 4 root root 512 2月 2日 13:29 root/
drwxr-xr-x 2 root root 2048 11月 28日 09:06 sbin/
-rw-r--r-- 1 nobody nobody 7 3月 17日 09:20 test-onlsun3
-rw-r--r-- 1 nobody nobody 4 3月 16日 16:29 test1
-rw-r--r-- 1 1000 1000 5 3月 16日 09:01 test2
-rw-r--r-- 1 listen 37 5 3月 16日 16:31 test3
drwxrwxrwt 6 root root 512 3月 15日 17:44 tmp/
drwxr-xr-x 14 root root 512 2月 9日 13:51 usr/
drwxr-xr-x 15 root root 512 2月 9日 13:26 var/
-rw-r--r-- 1 root other 6 3月 10日 14:29 zImage
onlsun3#
onlsun4 の Solaris 8 でエクスポートしているディレクトリを、onlsun3 の
Solaris 8 マウントして、マウントしたディレクトリにファイルを作成すると
nodoby の UID、GID でファイルを正しく作成することができる。
参考.
以下のような記事を見つけた。
http://www.usinglinux.org/doc/translations/ja/NFS-HOWTO
-->> ここから参照開始
8.6.1. Solaris サーバ
Solaris のサーバ側の形式は、他の OS と少々異なっています。設定ファイル
には /etc/exports でなく /etc/dfs/dfstab を用います。エントリには
"share" コマンドを用います。 Section 3 での例に対応する書式は次の通りで
す。
share -o rw=slave1,slave2 -d "Master Usr" /usr
そして編集後には、exportfs の代わりに shareall を実行します。
Solaris のサーバはパケットサイズに非常に敏感です。 Linux クライアントを
Solaris サーバと使う場合には、必ずマウント時に rsize と wsize を 32768
にしてください。
最後に Solaris における root squash について述べておきます。 root はユ
ーザ noone にマップされ、これはユーザ nobody とは異なります。クライアン
トでファイルのパーミッションに関して問題がおきたら、マッピングが期待通
りになっているか、忘れずチェックしてください。
<<-- ここで参照終了
Solaris でユーザーごとに許可を与える場合には、/etc/dfs/dfstab に次のよう
に設定する。
share -F nfs -o rw=client1:client2,ro,root=client2 -d "Home Dir" /export/
この例は、接続側のマシンclient1とclient2にだけ読み書きが可能(rw)なように
し、それ以外のマシンからは読み込みだけが可能(ro)なように、接続側のマシン
client2には rootアカウントでのアクセスを許可(root=client2)している。
onlsun4 の dfstabファイルの修正。
onlsun4# pwd
/etc/dfs
onlsun4# vi dfstab
:
share -F nfs -o rw=onlsbc1,root=onlsbc1 /tftpboot/130.87.153.3
:
"dfstab" 29 行、1367 バイト
onlsun4#
onlsun4# shareall
onlsun4# share
:
- /tftpboot/130.87.153.3 rw=onlsbc1,root=onlsbc1 ""
:
onlsun4#
onlsun4# /etc/init.d/nfs.server stop
onlsun4# /etc/init.d/nfs.server start
onlsun4#
onlsbc1:/home/inoue# df -k
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda6 9685276 829296 8363992 10% /
onlsbc1:/home/inoue# mount onlsun4:/tftpboot/130.87.153.3 /mnt1
mount: onlsun4:/tftpboot/130.87.153.3 failed, reason given by server: 許可があり
ません
onlsbc1:/home/inoue#
サーバを onl5v4 に変えて実行してみる。 onl5v4 で実行中のOSは、onlsun4
と同じく Soalris 8 である。
onl5v4# pwd
/etc/dfs
onl5v4# vi dfstab
:
share -F nfs -o rw=onlsbc1,root=onlsbc1 -d "Testing" /space2
:
~
~
"dfstab" 12 行、457 バイト
onl5v4#
onl5v4# shareall
onl5v4# share
- /space2 rw=onlsbc1,root=onlsbc1 "Testing"
onl5v4#
onl5v4# /etc/init.d/nfs.server stop
onl5v4# /etc/init.d/nfs.server start
onl5v4#
onlsbc1:/etc# vi hosts
:
130.87.153.49 onl5v4 # SPARC CPU-5V board
:
~
~
hosts: 15 lines, 415 characters
onlsbc1:/etc#
onlsbc1 の /etc/inet/hostsファイルに onlsun4の情報が記述されていなかった
ので追記した。
onl5v4# vi /etc/dfs/dfstab
:
share -F nfs -o rw=onlsbc1,root=onlsbc1 -d "Testing" /space2
:
onl5v4#
onl5v4# /etc/init.d/nfs.server stop
onl5v4# shareall
onl5v4# share
:
- /space2 rw=onlsbc1,root=onlsbc1 "Testing"
onl5v4# /etc/init.d/nfs.server start
onl5v4#
onlsbc1:/etc# df -k
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda6 9685276 829296 8363992 10% /
onlsbc1:/etc# mount onl5v4:/space2 /mnt1
onlsbc1:/etc# df -k
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda6 9685276 829296 8363992 10% /
onl5v4:/space2 10078400 0 9977632 0% /mnt1
onlsbc1:/etc#
onlsbc1:/etc# vi /mnt1/test-from-onlsbc1
wdwdwf
~
~
/mnt1/test-from-onlsbc1: new file: 1 lines, 7 characters
onlsbc1:/etc#
onlsbc1:/etc# ls -l /mnt1
合計 12
drwx------ 2 root root 8192 3月 19 2002 lost+found
-rw-r--r-- 1 root daemon 6 3月 16 00:14 test
-rw-r--r-- 1 root root 7 3月 16 05:25 test-from-onlsbc1
-rw-r--r-- 1 root root 8 3月 16 04:51 test-onlsbc1
-rw-r--r-- 1 root daemon 8 3月 16 00:21 test2
onlsbc1:/etc#
ok. NFSマウントしたディスクに root の権限でファイルを作成することができ
た。
(3-2). dhcp の設定変更
Solaris 8 が動作しているマシン onl5v4 がエクスポートした NFSファイルシス
テムに対して、onlsbc1 のマシンから root の権限でファイルを作成できること
は確認した。 ディスクレスクライアント用のルートファイルシステムをonl5v4
上に構築し、これを使って onlsbc1 を立ち上げることをやってみる。
(3-2-1). ブートサーバ指定を変更
onlsun4# pwd
/var/dhcp
onlsun4# mv dhcptab dhcptab-Mar182004
onlsun4# cp dhcptab-Mar182004 dhcptab
onlsun4#
onlsun4# vi dhcptab
Locale m :UTCoffst=32400:
130.87.152.0 m :Subnet=255.255.252.0:RDiscvyF=1:Broadcst=130.87.155.255
:
onlsun4 m :Include=Locale:Timeserv=130.87.153.116:LeaseTim=86400:LeaseNeg:DNSdmain="kek.jp":DNSserv=130.87.34.2 130.87.34.3 130.87.152.2:Rootpath=/tftpboot/130.87.153.3:BootSrvA=130.87.153.49:Router=130.87.152.1:
~
~
"dhcptab" 3 行、312 バイト
onlsun4#
onlsun4# /etc/init.d/dhcp stop
onlsun4# /etc/init.d/dhcp start
onlsun4#
ここで onlsbc1 のFD上のGRUBを起動する。
GRUB version 0.93 (640K lower/310208K upper memory)
[ Minimal BASH-like line editing is supported. For the first word, TAB
lists possible command completions. Anywere else TAB lists the possible
completions of a device/filename. ESC at any time exits. ]
grub> bootp
Found Intel EtherExpressPro100 82559ER at 0xec00, ROM address 0x0000
Probing...[Intel EtherExpressPro100 822559ER] Ethernet addr: 00:0B:**:**:**:**
Address: 130.87.**.**
Netmask: 255.255.***.***
Server: 130.87.**.**
Gateway: 130.87.**.**
ok. onlsbc1 からの bootpリクエストに対して onlsun4 からのリプライでは
ブートサーバが onl5v4 である旨の情報が返されてきた。
(3-3). onl5v4 上の tftp の設定
(3-3-1). tftp のテスト
tftp でファイル転送できることを確認しておく。
onl5v4# pwd
/etc/inet
onl5v4# mv inetd.conf inetd.conf-Mar182004
onl5v4# cp inetd.conf-Mar182004 inetd.conf
onl5v4#
onl5v4# vi inetd.conf
:
# Tftp service is provided primarily for booting. Most sites run this
# only on machines acting as "boot servers."
#
tftp dgram udp6 wait root /usr/sbin/in.tftpd in.tftpd -s /tft
pboot
#
:
"inetd.conf" 190 行、6905 バイト
onl5v4#
onl5v4# pwd
/etc/dfs
onl5v4# vi dfstab
:
share -F nfs -o rw=onlsbc1,root=onlsbc1 -d "Testing" /tftpboot
:
~
~
"dfstab" 14 行、589 バイト
onl5v4#
onl5v4# mkdir /tftpboot
onl5v4#
onl5v4# shareall
onl5v4# share
:
- /tftpboot rw=onlsbc1,root=onlsbc1 "Testing"
onl5v4#
onl5v4# echo Hello > /tftpboot/zImage
onl5v4# cat /tftpboot/zImage
Hello
onl5v4# ls -l /tftpboot
合計 2
-rw-r--r-- 1 root other 6 3月 16日 06:38 zImage
onl5v4#
onlsun1 から tftp を使って onl5v4 上のファイルを get してみる。
onlsun1[70]% tftp onl5v4
tftp> get zImage
Received 7 bytes in 0.2 seconds
tftp> quit
onlsun1[71]% cat zImage
Hello
onlsun1[72]%
ok. tftp は正常に実行できた。
(3-3-2). /tftpboot の整備
クライアント用としてエクスポートするルートファイルシステムを、/tftpboot
ディレクトリの下に配置する。
onl5v4# df -k
Filesystem kbytes used avail capacity Mounted on
/dev/dsk/c0t3d0s0 64639 42876 15300 74% /
/dev/dsk/c0t3d0s6 2081439 1417249 601747 71% /usr
/proc 0 0 0 0% /proc
fd 0 0 0 0% /dev/fd
mnttab 0 0 0 0% /etc/mnttab
/dev/dsk/c0t3d0s1 384303 40800 305073 12% /var
swap 228992 4 228988 1% /var/run
/dev/dsk/c0t3d0s5 10078396 13 9977600 1% /space2
swap 229000 12 228988 1% /tmp
/dev/dsk/c0t3d0s4 10078396 575325 9402288 6% /space1
/dev/dsk/c0t3d0s7 15237162 46216 15038575 1% /export/home
onl5v4#
onl5v4# ls -l /
total 108
lrwxrwxrwx 1 root root 9 Mar 19 2002 bin -> ./usr/bin
drwxr-xr-x 2 root nobody 512 Mar 22 2002 cdrom
drwxr-xr-x 13 root sys 5120 Dec 24 05:01 dev
drwxr-xr-x 5 root sys 512 Mar 19 2002 devices
drwxr-xr-x 44 root sys 3584 Mar 16 00:18 etc
drwxr-xr-x 3 root sys 512 Mar 19 2002 export
dr-xr-xr-x 1 root root 1 Dec 24 05:01 home
lrwxrwxrwx 1 root other 10 Mar 25 2002 kek -> /kekfs/kek
dr-xr-xr-x 1 root root 1 Mar 16 23:43 kekfs
drwxr-xr-x 10 root sys 512 Mar 20 2002 kernel
lrwxrwxrwx 1 root root 9 Mar 19 2002 lib -> ./usr/lib
drwx------ 2 root root 8192 Mar 19 2002 lost+found
drwxr-xr-x 2 root sys 512 Mar 19 2002 mnt
dr-xr-xr-x 1 root root 1 Mar 16 23:51 net
lrwxrwxrwx 1 root other 11 Mar 28 2002 opt -> /space1/opt
drwxrwxr-x 6 root sys 512 Mar 19 2002 opt-org
drwxrwxr-x 3 root sys 512 Mar 28 2002 opt-vme
drwxr-xr-x 4 root sys 512 Mar 28 2002 platform
dr-xr-xr-x 52 root root 11968 Mar 17 00:57 proc
drwxr-xr-x 2 root sys 1024 Mar 19 2002 sbin
drwxr-xr-x 4 root root 512 Mar 16 04:28 space1
drwxr-xr-x 3 root root 512 Mar 16 05:25 space2
drwxr-xr-x 2 root other 512 Mar 16 06:38 tftpboot
drwxrwxrwt 6 root sys 314 Mar 16 22:41 tmp
drwxr-xr-x 4 root bin 512 Mar 19 2002 toolboxes
drwxr-xr-x 37 root sys 1024 Apr 3 2002 usr
drwxr-xr-x 34 root sys 512 Mar 19 2002 var
dr-xr-xr-x 6 root root 512 Dec 24 05:01 vol
dr-xr-xr-x 1 root root 1 Dec 24 05:01 xfn
onl5v4#
/tftpboot ディレクトリの下には、クライアント用のシステムを置くだけのスペ
ースがないので、/space2 の下に置くことにする。 /tftpboot ディレクトリは
/space2 にシンボリックリンクする。
onl5v4# mv tftpboot tftpboot-old
onl5v4# ln -s /space2 tftpboot
onl5v4# cp tftpboot-old/zImage /tftpboot
onl5v4# ls -l /tftpboot-old
total 2
-rw-r--r-- 1 root other 6 Mar 16 06:38 zImage
onl5v4# ls -l /tftpboot
lrwxrwxrwx 1 root other 7 Mar 17 06:18 /tftpboot -> /space2
onl5v4# ls -lL /tftpboot
total 26
drwx------ 2 root root 8192 Mar 19 2002 lost+found
-rw-r--r-- 1 root other 6 Mar 16 00:14 test
-rw-r--r-- 1 root root 7 Mar 16 05:25 test-from-onlsbc1
-rw-r--r-- 1 root root 8 Mar 16 04:51 test-onlsbc1
-rw-r--r-- 1 root other 8 Mar 16 00:21 test2
-rw-r--r-- 1 root other 6 Mar 17 06:23 zImage
onl5v4#
onlsun1[72]% tftp onl5v4
tftp> get zImage
Received 7 bytes in 0.1 seconds
tftp> quit
onlsun1[73]% cat zImage
Hello
onlsun1[74]%
(3-3-2A). クライアント用ルートファイルシステムの構築
onl5v4# pwd
/space2
onl5v4# ls -l
total 26
drwx------ 2 root root 8192 Mar 19 2002 lost+found
-rw-r--r-- 1 root other 6 Mar 16 00:14 test
-rw-r--r-- 1 root root 7 Mar 16 05:25 test-from-onlsbc1
-rw-r--r-- 1 root root 8 Mar 16 04:51 test-onlsbc1
-rw-r--r-- 1 root other 8 Mar 16 00:21 test2
-rw-r--r-- 1 root other 6 Mar 17 06:23 zImage
onl5v4# mkdir 130.87.153.3
onl5v4# cd 130.87.153.3
onl5v4# ls -l
total 0
onl5v4#
onl5v4# mount onlpara:/home2/onlpara-wrk /mnt
onl5v4# df -k
Filesystem kbytes used avail capacity Mounted on
/dev/dsk/c0t3d0s0 64639 42877 15299 74% /
/dev/dsk/c0t3d0s6 2081439 1417249 601747 71% /usr
/proc 0 0 0 0% /proc
fd 0 0 0 0% /dev/fd
mnttab 0 0 0 0% /etc/mnttab
/dev/dsk/c0t3d0s1 384303 40800 305073 12% /var
swap 228684 4 228680 1% /var/run
/dev/dsk/c0t3d0s5 10078396 15 9977598 1% /space2
swap 228692 12 228680 1% /tmp
/dev/dsk/c0t3d0s4 10078396 575325 9402288 6% /space1
/dev/dsk/c0t3d0s7 15237162 46216 15038575 1% /export/home
onlpara:/home2/onlpara-wrk
22659860 6732392 14776412 32% /mnt
onl5v4#
onl5v4# pwd
/space2/130.87.153.3
onl5v4# tar xf /mnt/root/diskless/diskless-rootfs.tar
tar: directory checksum error
onl5v4#
onl5v4# ls -l
total 10
drwxr-xr-x 71 root root 3584 Feb 12 09:23 etc
drwxr-xr-x 3 root root 512 Mar 20 00:02 var
onl5v4# rm -r *
onl5v4# ls -l
total 0
onl5v4#
onl5v4# tar xf /mnt/root/diskless/diskless-rootfs-Mar92004.tar
onl5v4#
onl5v4# ls -l
total 3968
-rw-r--r-- 1 root root 593097 Jan 13 09:03 System.map
drwxr-xr-x 2 root root 1536 Nov 28 09:06 bin
-rw-r--r-- 1 root root 1371992 Jan 13 09:04 bzImage
drwxr-xr-x 10 root root 22528 Mar 3 17:04 dev
drwxr-xr-x 71 root root 3584 Mar 3 17:04 etc
drwxr-xr-x 3 root root 512 Feb 23 16:12 home
drwxr-xr-x 5 root root 2560 Nov 28 09:06 lib
drwxr-xr-x 2 root root 512 Jan 19 10:10 mnt
drwxr-xr-x 2 root root 512 Dec 25 09:42 proc
drwx------ 4 root root 512 Feb 2 13:29 root
drwxr-xr-x 2 root root 2048 Nov 28 09:06 sbin
drwxrwxrwt 6 root root 512 Mar 3 17:04 tmp
drwxr-xr-x 14 root root 512 Feb 9 13:51 usr
drwxr-xr-x 15 root root 512 Feb 9 13:26 var
onl5v4# ls -l home
total 2
drwxr-sr-x 11 1001 1001 512 Mar 1 13:33 toyo
onl5v4# ls -l home/toyo
total 10
drwx--l--- 3 1001 1001 512 Feb 26 16:37 Desktop
drwxr-xr-x 2 1001 1001 1024 Jan 29 15:21 camac
drwxr-xr-x 2 1001 1001 512 Jan 28 16:01 check
drwxr-xr-x 4 1001 1001 512 Jan 29 16:34 public_html
drwxr-xr-x 2 1001 1001 512 Jan 29 15:29 remote-camac
onl5v4#
(3-3-2B). /etc/dfs/dfstabファイルの設定
onl5v4# cat /etc/dfs/dfstab
# Place share(1M) commands here for automatic execution
# on entering init state 3.
#
# Issue the command '/etc/init.d/nfs.server start' to run the NFS
# daemon processes and the share commands, after adding the very
# first entry to this file.
#
# share [-F fstype] [ -o options] [-d ""] [resource]
# .e.g,
# share -F nfs -o rw=engineering -d "home dirs" /export/home2
#share -F nfs -o rw=onlsun3,root=onlsun3 -d "Testing" /space1
#share -F nfs -o rw=onlsbc1,root=onlsbc1 -d "Testing" /space2
share -F nfs -o rw=onlsbc1,root=onlsbc1 -d "Testing" /tftpboot
onl5v4#
(3-3-2C). /etc/vfstabファイルの設定
onl5v4# cat /etc/vfstab
#device device mount FS fsck mount mount
#to mount to fsck point type pass at boot options
#
#/dev/dsk/c1d0s2 /dev/rdsk/c1d0s2 /usr ufs 1 yes -
fd - /dev/fd fd - no -
/proc - /proc proc - no -
/dev/dsk/c0t3d0s3 - - swap - no -
/dev/dsk/c0t3d0s0 /dev/rdsk/c0t3d0s0 / ufs 1 no -
/dev/dsk/c0t3d0s6 /dev/rdsk/c0t3d0s6 /usr ufs 1 no -
/dev/dsk/c0t3d0s1 /dev/rdsk/c0t3d0s1 /var ufs 1 no -
/dev/dsk/c0t3d0s7 /dev/rdsk/c0t3d0s7 /export/home ufs 2 y
es -
/dev/dsk/c0t3d0s4 /dev/rdsk/c0t3d0s4 /space1 ufs 2 yes -
/dev/dsk/c0t3d0s5 /dev/rdsk/c0t3d0s5 /space2 ufs 2 yes -
#/dev/dsk/c0t3d0s5 /dev/rdsk/c0t3d0s5 /tftpboot ufs 2 y
es -
swap - /tmp tmpfs - yes -
onl5v4#
(3-4). /tftpboot/130.87.153.3/etc 以下のファイルの編集
(3-4-1). /tftpboot/130.87.153.3/etc/modules
onl5v4# pwd
/space2/130.87.153.3/etc
onl5v4# cat modules
# /etc/modules: kernel modules to load at boot time.
#
# This file should contain the names of kernel modules that are
# to be loaded at boot time, one per line. Comments begin with
# a "#", and everything on the line after them are ignored.
usbcore
usbmouse
hid
eepro100
usb-uhci
input
usbkbd
keybdev
onl5v4#
/tftpboot/130.87.153.3/etc/modulesファイルの変更は必要ない。
(3-4-2). /tftpboot/130.87.153.3/etc/hostname
/tftpboot/130.87.153.3/etc/hostnameファイルを修正。 クライアントのホス
ト名を適切なものに設定し直す。
onl5v4# pwd
/space2/130.87.153.3/etc
onl5v4# cat hostname
onlsbc1
onl5v4#
(3-4-3). /tftpboot/130.87.153.3/etc/fstab
/tftpboot/130.87.153.3/etc/fstabファイルを修正。 サーバがエクスポート
しているファイルシステムに正しく指定し直す。
onl5v4# pwd
/space2/130.87.153.3/etc
onl5v4# vi fstab
# /etc/fstab: static file system information.
#
#
130.87.153.49:/tftpboot/130.87.153.3 / nfs rw,rsize=8192,wsize=8192
0 0
#130.87.153.49:/usr /usr nfs ro,rsize=8192
0 0
#130.87.153.49:/home /home nfs rw,rsize=8192,wsize=8192
0 0
proc /proc proc defaults
0 0
/dev/fd0 /floppy auto user,noauto
0 0
#/dev/sdb4 none swap sw 0 0
#/dev/cdrom /cdrom iso9660 ro,user,noauto 0 0
~
~
"fstab" 11 lines, 453 characters
onl5v4#
(3-4-4). /tftpboot/130.87.153.3/etc/init.d
/tftpboot/130.87.153.3/etc/init.d下のファイルの変更は必要ない。
onl5v4# pwd
/space2/130.87.153.3/etc
onl5v4#
onl5v4# ls init.d
README inetd procps.sh
apache iptables rc
atd kdm rcS
bootmisc.sh keymap.sh reboot
canna klogd rmnologin
checkfs.sh load-pcc sendsigs
checkroot.sh lpd sendsigs-bak
console-screen.sh lprng sendsigs-org
cron makedev setserial
devpts.sh modutils single
dns-clean mountall.sh skeleton
exim mountnfs.sh skkserv
freewnn-jserver networking ssh
gdm networking-org sysklogd
halt nfs-common umountfs
halt-org nfs-kernel-server umountfs-org
hostname.sh nfs-kernel-server-org umountnfs.sh
hotplug nvi-m17n-canna umountnfs.sh-org
hwclock.sh nviboot urandom
hwclockfirst.sh portmap xdm
ifupdown ppp xfs
onl5v4#
(3-4-5). /tftpboot/130.87.153.3/etc/network/interfaces
/tftpboot/130.87.153.3/etc/network/interfacesファイルを修正。 クライアン
トの適切なネットワーク情報を設定する。
onl5v4# pwd
/space2/130.87.153.3/etc/network
onl5v4# vi interfaces
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
# The loopback interface
auto lo
#auto eth0
iface lo inet loopback
#iface eth0 inet static
address 130.87.153.3
netmask 255.255.252.0
network 130.87.152.0
broadcast 130.87.152.255
gateway 130.87.152.1
~
~
"interfaces" 12 lines, 273 characters
onl5v4#
(3-4-6). /tftpboot/130.87.153.3/etc/modules.conf
/tftpboot/130.87.153.3/etc/modules.confファイルを修正。
"alias net-pf-1 off" 行のコメントアウト。
onl5v4# pwd
/space2/130.87.153.3/etc
onl5v4# cat modules.conf
### This file is automatically generated by update-modules"
#
# Please do not edit this file directly. If you want to change or add
# anything please take a look at the files in /etc/modutils and read
# the manpage for update-modules.
#
### update-modules: start processing /etc/modutils/0keep
# DO NOT MODIFY THIS FILE!
# This file is not marked as conffile to make sure if you upgrade modutils
# it will be restored in case some modifications have been made.
#
# The keep command is necessary to prevent insmod and friends from ignoring
# the builtin defaults of a path-statement is encountered. Until all other
# packages use the new `add path'-statement this keep-statement is essential
# to keep your system working
keep
### update-modules: end processing /etc/modutils/0keep
### update-modules: start processing /etc/modutils/actions
# Special actions that are needed for some modules
# The BTTV module does not load the tuner module automatically,
# so do that in here
post-install bttv insmod tuner
post-remove bttv rmmod tuner
### update-modules: end processing /etc/modutils/actions
### update-modules: start processing /etc/modutils/aliases
# Aliases to tell insmod/modprobe which modules to use
# Uncomment the network protocols you don't want loaded:
alias net-pf-1 off # Unix
# alias net-pf-2 off # IPv4
# alias net-pf-3 off # Amateur Radio AX.25
# alias net-pf-4 off # IPX
# alias net-pf-5 off # DDP / appletalk
# alias net-pf-6 off # Amateur Radio NET/ROM
# alias net-pf-9 off # X.25
# alias net-pf-10 off # IPv6
# alias net-pf-11 off # ROSE / Amateur Radio X.25 PLP
# alias net-pf-19 off # Acorn Econet
alias char-major-10-175 agpgart
alias char-major-10-200 tun
alias char-major-81 bttv
alias char-major-108 ppp_generic
alias /dev/ppp ppp_generic
alias tty-ldisc-3 ppp_async
alias tty-ldisc-14 ppp_synctty
alias ppp-compress-21 bsd_comp
alias ppp-compress-24 ppp_deflate
alias ppp-compress-26 ppp_deflate
# Crypto modules (see http://www.kerneli.org/)
alias loop-xfer-gen-0 loop_gen
alias loop-xfer-3 loop_fish2
alias loop-xfer-gen-10 loop_gen
alias cipher-2 des
alias cipher-3 fish2
alias cipher-4 blowfish
alias cipher-6 idea
alias cipher-7 serp6f
alias cipher-8 mars6
alias cipher-11 rc62
alias cipher-15 dfc2
alias cipher-16 rijndael
alias cipher-17 rc5
### update-modules: end processing /etc/modutils/aliases
### update-modules: start processing /etc/modutils/paths
# This file contains a list of paths that modprobe should scan,
# beside the once that are compiled into the modutils tools
# themselves.
### update-modules: end processing /etc/modutils/paths
### update-modules: start processing /etc/modutils/ppp
alias /dev/ppp ppp_generic
alias char-major-108 ppp_generic
alias tty-ldisc-3 ppp_async
alias tty-ldisc-14 ppp_synctty
alias ppp-compress-21 bsd_comp
alias ppp-compress-24 ppp_deflate
alias ppp-compress-26 ppp_deflate
### update-modules: end processing /etc/modutils/ppp
### update-modules: start processing /etc/modutils/setserial
#
# This is what I wanted to do, but logger is in /usr/bin, which isn't loaded
# when the module is first loaded into the kernel at boot time!
#
#post-install serial /etc/init.d/setserial start | logger -p daemon.info -t "set
serial-module reload"
#pre-remove serial /etc/init.d/setserial stop | logger -p daemon.info -t "setser
ial-module uload"
#
alias /dev/tts serial
alias /dev/tts/0 serial
alias /dev/tts/1 serial
alias /dev/tts/2 serial
alias /dev/tts/3 serial
post-install serial /etc/init.d/setserial modload > /dev/null 2> /dev/null
pre-remove serial /etc/init.d/setserial modsave > /dev/null 2> /dev/null
### update-modules: end processing /etc/modutils/setserial
### update-modules: start processing /etc/modutils/arch/i386
alias parport_lowlevel parport_pc
alias char-major-10-144 nvram
alias binfmt-0064 binfmt_aout
alias char-major-10-135 rtc
### update-modules: end processing /etc/modutils/arch/i386
onl5v4#
(3-4-7). /tftpboot/130.87.153.3/etc/modutils/aliases
/tftpboot/130.87.153.3/etc/modutils/aliasesファイルを修正。
"alias net-pf-1 off" 行のコメントアウト。
onl5v4# pwd
/space2/130.87.153.3/etc/modutils
onl5v4# cat aliases
# Aliases to tell insmod/modprobe which modules to use
# Uncomment the network protocols you don't want loaded:
alias net-pf-1 off # Unix
# alias net-pf-2 off # IPv4
# alias net-pf-3 off # Amateur Radio AX.25
# alias net-pf-4 off # IPX
# alias net-pf-5 off # DDP / appletalk
# alias net-pf-6 off # Amateur Radio NET/ROM
# alias net-pf-9 off # X.25
# alias net-pf-10 off # IPv6
# alias net-pf-11 off # ROSE / Amateur Radio X.25 PLP
# alias net-pf-19 off # Acorn Econet
alias char-major-10-175 agpgart
alias char-major-10-200 tun
alias char-major-81 bttv
alias char-major-108 ppp_generic
alias /dev/ppp ppp_generic
alias tty-ldisc-3 ppp_async
alias tty-ldisc-14 ppp_synctty
alias ppp-compress-21 bsd_comp
alias ppp-compress-24 ppp_deflate
alias ppp-compress-26 ppp_deflate
# Crypto modules (see http://www.kerneli.org/)
alias loop-xfer-gen-0 loop_gen
alias loop-xfer-3 loop_fish2
alias loop-xfer-gen-10 loop_gen
alias cipher-2 des
alias cipher-3 fish2
alias cipher-4 blowfish
alias cipher-6 idea
alias cipher-7 serp6f
alias cipher-8 mars6
alias cipher-11 rc62
alias cipher-15 dfc2
alias cipher-16 rijndael
alias cipher-17 rc5
onl5v4#
(3-4-8). /tftpboot/130.87.153.3/lib/modules/2.4.18/modules.dep
/tftpboot/130.87.153.3/lib/modules/2.4.18/modules.depファイルを作成。
ここで、サーバをリブートする。
onl5v4# # onl5v4[35]% su
Password:
# reboot
Connection to onl5v4 closed by remote host.
Connection to onl5v4 closed.
(3-5). FD上のGRUBのmenu.lstファイルの修正
onlsbc1:/home/inoue# mount -t ext2 /dev/fd0 /mnt
onlsbc1:/home/inoue# onlsbc1:/home/inoue# cd /mnt
onlsbc1:/mnt# ls
boot lost+found
onlsbc1:/mnt# cd boot
onlsbc1:/mnt/boot# ls
grub
onlsbc1:/mnt/boot# cd grub
onlsbc1:/mnt/boot/grub# ls
diskless e2fs_stage1_5 menu.lst nbgrub stage1 stage2
onlsbc1:/mnt/boot/grub#
onlsbc1:/mnt/boot/grub# vi menu.lst
:
# Solaris 8: Bootp: onlsbc1 Network boot
title Solaris 8: Bootp: Boot from network with bootp [130.87.153.3/bzImage]
bootp
root (nd)
kernel /tftpboot/130.87.153.3/bzImage nfsroot=130.87.153.49:/tftpboot/130.87.153
.3 ip=bootp
:
menu.lst: 118 lines, 3997 characters
onlsbc1:/mnt/boot/grub#
onlsbc1:/mnt/boot/grub# cd /
onlsbc1:/# umount /mnt
onlsbc1:/#
サーバが立ち上がったところで、クライアントマシンの onlsbc1から GRUBを
起動した。
:
:
bootp
Found Intel EtherExpressPro100 82559ER at 0xec00, ROM address 0x0000
Probing...[Intel EtherExpressPro100 82559ER]Ethernet add: 00:0B:AB:**:**:**
Address: 130.87.153.3
Netmask: 255.255.252.0
Server: 130.87.153.49
Gateway: 130.87.152.1
root(nd)
filesystem type is tftp, using whole disk
kernel /tftpboot/130.87.153.3/bzImage nfsroot=130.87.153.49:/tftpboot/130.87.153.3 ip=bootp
TFTP error 2 (Accesss violation)
Error 15: File not found
Press any key to continue...
となってしまった。 項目(3-3-2)での tftp によるファイル転送のテストから
分かるように、現在の inetd.confファイルでの設定では、tftp で転送する
ファイルの名前には無条件で先頭部に/tftpboot が付加される。 従って kernel
コマンドのファイル名を記述する部分には先頭の /tftpboot の部分を除いた残
りを指定するようにすべきである。 onlsbc1 のローカルHD上の Linuxシステム
を起動して、FD上の GRUB の menu.lstファイルを修正する。
[root@onlsbc1 inoue]# mount -t ext2 /dev/fd0 /mnt
[root@onlsbc1 inoue]# cd /mnt/boot/grub
[root@onlsbc1 grub]# ls -l
合計 375
-rwxr-xr-x 1 root root 121600 1月 15 10:10 diskless
-rwxr-xr-x 1 root root 8100 1月 15 09:42 e2fs_stage1_5
-rw-r--r-- 1 root root 4081 3月 23 13:57 menu.lst
-rw-r--r-- 1 root root 122112 1月 15 10:10 nbgrub
-rwxr-xr-x 1 root root 512 1月 15 08:57 stage1
-rw-r--r-- 1 root root 122144 1月 15 09:00 stage2
[root@onlsbc1 grub]#
[root@onlsbc1 grub]# vi menu.lst
:
# Solaris 8: Bootp: onlsbc1 Network boot
title Solaris 8: Bootp: Boot from network with bootp [130.87.153.3/bzImage]
bootp
root (nd)
#kernel /tftpboot/130.87.153.3/bzImage nfsroot=130.87.153.49:/tftpboot/130.87.15
3.3 ip=bootp
kernel /130.87.153.3/bzImage nfsroot=130.87.153.49:/tftpboot/130.87.153.3 ip=boo
tp
:
[root@onlsbc1 grub]#
[root@onlsbc1 grub]# cd /
[root@onlsbc1 /]# umount /mnt
[root@onlsbc1 /]#
ここで onlsbc1 のFDから起動する。
[root@onlsbc1 /]# reboot
[root@onlsbc1 /]#
Broadcast message from root (pts/1) (Tue Mar 23 16:58:22 2004):
The system is going down for reboot NOW!
:
:
ok. 正常に立ち上がった。 立ち上がった時の画面。
---xxxx