저자 Bernd Schemmer
소개

WAN 부트는 네트워크를 통해서 솔라리스 점프스타트 서버를 통해서 솔라리스를 설치 하는 "새로운" 방법입니다. WAN 부트는 bootp 를 이용하는 "예전"의 인스톨 방법과 비교해서 많은 진전이 있었고 가능하면 네트워크 설치 방법으로 이용되어야 합니다.(참고: WAN 부트는 오직 SPARC CPU 머신에서만 지원됩니다. x86 플랫폼에서는 사용하실 수 없습니다.)

이 글은 OBP 에서 WAN 부트를 지원하지 않는 머신에서 WAN 부트를 사용하는 방법과 WAN 부트를 위해 CD-ROM 을 사용할 수 없는 경우에 대해 설명합니다.

이 방법은 다음과 같은 요구사항들이 있습니다:

  • 머신의 콘솔로의 접근
  • 솔라리스가 운용되고 있는 머신

상세 사항

WAN 부트에 필요한 단 하나의 파일은 /platform/`uname -i`/wanboot 입니다. 그러므로 디스크에서 WAN 부트가 가능하도록 하려면 솔라리스 CD-ROM 에서 WAN 부트 파이너리 파일을 디스크의 /platform/`uname -i` 에 복사 하면 됩니다.

설치 단계

1. 설치 서버에 WAN 부트 클리언트로써 설치할 머신을 설정합니다.

2. SWAN 부트 바이너리를 설치할 내장디스크 디스크들의 슬라이스중 하나를 선택합니다. 예를 들어 이것은 현존하는 부트 슬라이스나 혹은 디스크상에 어떠한 슬라이스도 될 수 있습니다. 또한 WAN 부트 바이너리를 솔라리스를 설치하려고 하는 디스크에 넣어놓기만 하면 됩니다. 왜냐하면 디스크는 오직 WAN 부트 바이너리를 읽는데만 사용 될 것이기 때문입니다. WAN 부트 바이너리가 읽혀지고 실행되면 디스크는 부트 프로세스를 위해 더이상 사용되지 않을 것입니다.

3. 선택한 슬라이스를 installboot 를 이용해서 부팅이 가능하도록 만듭니다:

installboot /usr/platform/`uname -i`/lib/fs/ufs/bootblk  /dev/rdsk/c2t1d0s0

잘 이해가 안된다면 installboot 커맨드를 단독으로 실행해 보시기 바랍니다. (슬라이스가 이미 부팅가능하더라도 아무런 영향을 미치지 않습니다.)

4. 머신을 재부팅 하고ok 프롬프트에서 다음의boot 커맨드를 실행합니다 :

ok> boot mydisk  -o prompt -F wanboot - install

여기서 mydisk 는 디스크 디바이스(혹은 디바이스 별명 혹은 실제 디바이스 이름) 입니다. 만약 WAN 부트 바이너리를 위해 기본 슬라이스 이외에 슬라이스를 이용한다면 커맨드는 다음과 같을 것입니다:

ok> boot disk1:b  -o prompt -F wanboot - install

여기서 disk1 는 디바이스 별명이고 콜론(:) 뒤의 문자는 부트를 시도할 슬라이스를 지정한 것입니다: a 는 슬라이스 0, b 는 슬라이스 1, c 는 슬라이스 2, 등등 입니다.

5. 약간의 시간이 지난 후에 정상적인 WAN 부트 프롬프트가 출력되고 WAN 부트 프로세스를 위한 필요한 정보들을 입력할 수 있습니다. 이후엔 WAN 부트 설치를 정상적인 방법으로 진행할 수 있습니다.

예제 1

예제 1은 이전 글에서 단계 4번의 출력을 보여주고 있습니다. 참고: 동일한 출력결과는 글자 'x' 로 교체되었습니다.

{0} ok boot disk1  -o prompt -F wanboot - install
Resetting ...
RSC Alert: Host System has Reset
Probing system devices
Probing system devices


Sun Fire 280R (2 X UltraSPARC-III) , No Keyboard
Copyright 1998-2004 Sun Microsystems, Inc.  All rights reserved.
OpenBoot 4.16.4, 4096 MB memory installed, Serial #xxxxxxxx.
Ethernet address x:x:x:x:x:x, Host ID: xxxxxxxx.



Rebooting with command: boot disk1  -o prompt -F wanboot - install
Boot device: /pci@8,600000/SUNW,qlc@4/fp@0,0/disk@1,0  File and args: -o
prompt -F wanboot - install

<time unavailable> wanboot info: WAN boot messages->console
<time unavailable> wanboot info: Default net-config-strategy: manual

boot>

예제 2

아래에는 WAN 부팅을 통해 머신을 설치하는 세션의 샘플 출력입니다. 이 예제에서 우리는 swap 슬라이스를 WAN 부트 프로세스를 위한 임시 부트 슬라이스로 사용했습니다. 참고: 몇몇 출력 결과는 보안상의 이유로 인해 문자열 'x' 로 교체 되었습니다.

bash-3.00# uname -a
SunOS mysun 5.10 Generic_118833-17 sun4u sparc SUNW,Sun-Fire-280R

### first remove the swap slice

bash-3.00# swap -l
swapfile             dev  swaplo blocks   free
/dev/dsk/c2t0d0s1   118,1      16 16779296 16739648

bash-3.00# swap -d /dev/dsk/c2t0d0s1
/dev/dsk/c2t0d0s1 was dump device --
invoking dumpadm(1M) -d swap to select new dump device
dumpadm: no swap devices are available

bash-3.00# swap -l
No swap devices configured

### remove the swap entry from the /etc/vfstab because otherwise newfs will fail

bash-3.00# cp /etc/vfstab /etc/vfstab.org

bash-3.00# grep -v swap /etc/vfstab.org > /etc/vfstab

bash-3.00# grep -v "^#" /etc/vfstab | grep -v "^$"
fd      -       /dev/fd fd      -       no      -
/proc   -       /proc   proc    -       no      -
/dev/dsk/c2t0d0s0       /dev/rdsk/c2t0d0s0      /       ufs     1       no      -
/dev/dsk/c2t0d0s3       /dev/rdsk/c2t0d0s3      /usr    ufs     1       no      -
/dev/dsk/c2t0d0s4       /dev/rdsk/c2t0d0s4      /var    ufs     1       no      -
/devices        -       /devices        devfs   -       no      -
ctfs    -       /system/contract        ctfs    -       no      -
objfs   -       /system/object  objfs   -       no      -

### create a filesystem on the slice

bash-3.00# newfs /dev/rdsk/c2t0d0s1
newfs: construct a new file system /dev/rdsk/c2t0d0s1: (y/n)? y
Warning: 6096 sector(s) in last cylinder unallocated
/dev/rdsk/c2t0d0s1:     16779312 sectors in 2732 cylinders of 48 tracks, 128 sectors
        8193.0MB in 171 cyl groups (16 c/g, 48.00MB/g, 5824 i/g)
super-block backups (for fsck -F ufs -o b=#) at:
 32, 98464, 196896, 295328, 393760, 492192, 590624, 689056, 787488, 885920,
 15831200, 15929632, 16028064, 16126496, 16224928, 16323360, 16421792,
 16520224, 16618656, 16717088
bash-3.00#

### mount the slice

bash-3.00# mount /dev/dsk/c2t0d0s1 /tmp/mnt2

### mount the directory with the Solaris 10 boot image from the installation server

bash-3.00# mount installserver:/export/install /tmp/mnt1

### copy the necessary files for WAN boot to the slice on the local disk

bash-3.00# cd /tmp/mnt1/Solaris10_U2/Solaris_10/Tools/Boot/

bash-3.00# find . -name "wanboot" | cpio -pdumv /tmp/mnt2
/tmp/mnt2/usr/lib/inet/wanboot
/tmp/mnt2/platform/sun4u/wanboot
/tmp/mnt2/platform/sun4v/wanboot
/tmp/mnt2/platform/sun4us/wanboot
6384 blocks

bash-3.00# find /tmp/mnt2
/tmp/mnt2
/tmp/mnt2/lost+found
/tmp/mnt2/usr
/tmp/mnt2/usr/lib
/tmp/mnt2/usr/lib/inet
/tmp/mnt2/usr/lib/inet/wanboot
/tmp/mnt2/platform
/tmp/mnt2/platform/sun4u
/tmp/mnt2/platform/sun4u/wanboot
/tmp/mnt2/platform/sun4v
/tmp/mnt2/platform/sun4v/wanboot
/tmp/mnt2/platform/sun4us
/tmp/mnt2/platform/sun4us/wanboot

### make the slice bootable

bash-3.00# installboot /usr/platform/`uname -i`/lib/fs/ufs/bootblk /dev/rdsk/c2t0d0s1

### now start the WANBOOT

bash-3.00# reboot -- "disk:b -o prompt -F wanboot - install "
Jul 28 07:09:42 mysun reboot: rebooted by root
Jul 28 07:09:43 mysun syslogd: going down on signal 15
syncing file systems... done
rebooting...
Resetting ...
RSC Alert: Host System has Reset
Probing system devices
Probing system devices


Sun Fire 280R (2 X UltraSPARC-III) , No Keyboard
Copyright 1998-2004 Sun Microsystems, Inc.  All rights reserved.
OpenBoot 4.16.4, 4096 MB memory installed, Serial #xxxxxxxx.
Ethernet address x:x:xx:x:xx:xx, Host ID: xxxxxxxx.



Rebooting with command: boot disk:b -o prompt -F wanboot - install
Boot device: /pci@8,600000/SUNW,qlc@4/fp@0,0/disk@0,0:b  
File and args: -o prompt -F wanboot - install

<time unavailable> wanboot info: WAN boot messages->console
<time unavailable> wanboot info: Default net-config-strategy: manual

boot>     host-ip=192.168.5.14

boot>     router-ip=192.168.5.62

boot>     subnet-mask=255.255.255.0

boot>     hostname=mysun.test.dom

boot>     client-id=0A03EF0E

boot>     bootserver=http://192.168.20.48/cgi-bin/wanboot-cgi

boot>

boot> list

host-ip:      192.168.5.14
subnet-mask:  255.255.255.192
router-ip:    192.168.5.62
hostname:     mysun.test.dom
http-proxy:   UNSET
client-id:    0A03EF0E
aes:          *HIDDEN*
3des:         *HIDDEN*
sha1:         *HIDDEN*
bootserver:   http://192.168.20.48/cgi-bin/wanboot-cgi

boot> go

<time unavailable> wanboot progress: wanbootfs: Read 128 of 128 kB (100%)
<time unavailable> wanboot info: wanbootfs: Download complete
Fri Jul 28 06:12:38 wanboot progress: miniroot: Read 248881 of 248881 kB (100%)
Fri Jul 28 06:12:38 wanboot info: miniroot: Download complete
SunOS Release 5.10 Version Generic_118833-17 64-bit
Copyright 1983-2005 Sun Microsystems, Inc.  All rights reserved.
Use is subject to license terms.
Configuring devices.
Network interface was configured manually.
192.168.5.14
SUNW,qfe0: 100 Mbps half duplex link up - internal  transceiver
SUNW,qfe1: 100 Mbps half duplex link up - internal  transceiver
SUNW,qfe2: 100 Mbps half duplex link up - internal  transceiver
SUNW,qfe3: 100 Mbps half duplex link up - internal  transceiver
Beginning system identification...
syslogd: line 24: WARNING: loghost could not be resolved
Searching for configuration file(s)...
Jul 27 22:46:41 mysun.test.dom eri: SUNW,eri0 : 100 Mbps half duplex link up
Using sysid configuration file http://192.168.20.48/profiles/mysun.test.dom/sysidcfg
Search complete.
Discovering additional network configuration...
Completing system identification...
Starting remote procedure call (RPC) services: done.
System identification complete.
Starting Solaris installation program...
Searching for JumpStart directory...
Using rules.ok from http://192.168.20.48/profiles/mysun.test.dom.
Checking rules.ok file...
Using begin script: begin_script.sh
Using profile: profile
Using finish script: finish_script.sh
Executing JumpStart preinstall phase...
Executing begin script "begin_script.sh"...
Copying the missing files from the profile ...
Begin script begin_script.sh execution completed.
Searching for SolStart directory...
Checking rules.ok file...
Using begin script: install_begin
Using finish script: patch_finish
Executing SolStart preinstall phase...
Executing begin script "install_begin"...
Begin script install_begin execution completed.

Processing profile
        - Opening Flash archive
        - Validating Flash archive
        - Selecting all disks
        - Configuring boot device
        - Configuring / (c2t0d0s0)
        - Configuring swap (c2t0d0s1)
        - Configuring /usr (c2t0d0s3)
        - Configuring /var (c2t0d0s4)
        - Deselecting unmodified disk (c2t1d0)

Verifying disk configuration
        - WARNING: Unused disk space (c2t0d0)

Verifying space allocation

Preparing system for Flash install

Configuring disk (c2t0d0)
        - Creating Solaris disk label (VTOC)

Creating and checking UFS file systems
        - Creating / (c2t0d0s0)
        - Creating /usr (c2t0d0s3)
        - Creating /var (c2t0d0s4)

Beginning Flash archive processing

Predeployment processing
16 blocks
16 blocks
16 blocks

No local customization defined

Extracting archive: Solaris 10
        Extracted    0.00 MB (  0% of  396.66 MB archive)
        Extracted    1.00 MB (  0% of  396.66 MB archive)
        Extracted    2.00 MB (  0% of  396.66 MB archive)
        Extracted    3.00 MB (  0% of  396.66 MB archive)

......

        Extracted  394.00 MB ( 99% of  396.66 MB archive)
        Extracted  395.00 MB ( 99% of  396.66 MB archive)
        Extracted  396.00 MB ( 99% of  396.66 MB archive)
        Extracted  396.66 MB (100% of  396.66 MB archive)
        Extraction complete

Postdeployment processing

No local customization defined

Customizing system files
        - Mount points table (/etc/vfstab)
        - Unselected disk mount points (/var/sadm/system/data/vfstab.unselected)
        - Network host addresses (/etc/hosts)
        - Network host addresses (/etc/hosts)
        - Environment variables (/etc/default/init)

Cleaning devices

Customizing system devices
        - Physical devices (/devices)
        - Logical devices (/dev)

Installing boot information
        - Installing boot blocks (c2t0d0s0)

Installation log location
        - /a/var/sadm/system/logs/install_log (before reboot)
        - /var/sadm/system/logs/install_log (after reboot)

Flash installation complete
Executing JumpStart postinstall phase...
Executing finish script "finish_script.sh"...

.....

Finish script finish_script.sh execution completed.

The begin script log 'begin.log'
is located in /var/sadm/system/logs after reboot.

The finish script log 'finish.log'
is located in /var/sadm/system/logs after reboot.

.....

Jul 28 07:52:45 mysun.test.dom reboot: rebooted by root
syncing file systems... done
rebooting...
Resetting ...
RSC Alert: Host System has Reset
Probing system devices
Probing system devices


Sun Fire 280R (2 X UltraSPARC-III) , No Keyboard
Copyright 1998-2004 Sun Microsystems, Inc.  All rights reserved.
OpenBoot 4.16.4, 4096 MB memory installed, Serial #xxxxxxxx.
Ethernet address x:x:xx:x:xx:xx, Host ID: xxxxxxxx.



Rebooting with command: boot
Boot device: /pci@8,600000/SUNW,qlc@4/fp@0,0/disk@w2100000c50ac4839,0:a  File and args:
SunOS Release 5.10 Version Generic_118833-17 64-bit
Copyright 1983-2005 Sun Microsystems, Inc.  All rights reserved.
Use is subject to license terms.
Hostname: mysun
Configuring devices.
Loading smf(5) service descriptions: 93/93

mysun console login:

이 글에 질문이 있으신 분들은 Bernd Schemmer 에게 직접 연락 주시기 바랍니다.


이 글의 원본은 http://www.sun.com/bigadmin/content/sub ··· isk.html 에서 보실 수 있습니다.

"관리자코너" 카테고리의 다른 글

2007/12/14 09:54 2007/12/14 09:54

TRACKBACK :: http://blog.sdnkorea.com/blog/trackback/481

댓글을 달아 주세요

[로그인][오픈아이디란?]

◀ Prev 1  ... 185 186 187 188 189 190 191 192 193  ... 641  Next ▶