솔라리스 Custom Jumpstart Install-Server 구축방법
협력사 대상으로 솔라리스 Jumpstart 구성 방법을 강의하고, 필요한 내용을 요약 해 둔다.
강의 내용은 자사 플랫폼만을 대상으로 하였으나, 일부 범용적으로도 사용할 수 있도록 수정.
아래 예제는 서버 1대에 클라이언트 1대를 대상으로 함.
1. 인스톨서버에 디렉토리 작성 후 CD로 부터 OS Image 생성
# mkdir -p /export/install/Sol10
# cd /cdrom/cdrom0/s0/Solaris_10/Tools
# ./setup_install_server /export/install/Sol10
(시간이 꽤 걸림) <- 여기서 생성된 /export/install/Sol10 디렉토리 내용을 iso로 묶어 두면, 재사용 가능
2. 미니루트 작업용 디렉토리 작성 후 복사, unpack중 에러발생할 경우, 가볍게 무시
# mkdir /tmp/work
# /boot/solaris/bin/root_archive unpackmedia /export/install/Sol10 /tmp/work
# rm /tmp/work/tmp/AdDrEm.lck
3. 드라이버 설치
Jumpstart는 네트웍을 통해 설치를 하므로, 해당 네트웍 인터페이스에 대한 드라이버가 없다면, 해당 드라이버를 설치한다.
아래 드라이버는 Fujitsu용 Giga-Ethernet 드라이버와 Ultra-SCSI 드라이버 설치과정이다.
3.1. 미니루트에 FJSVgid 설치
# cd /cdrom/cdrom0/FJSVgid_4.0/10
# pkgadd -R /tmp/work -d . FJSVgid.u
# pkgadd -R /tmp/work -d . FJSVgid.v
3.2. 미니루트에 Ultra SCSI 설치
# cd /cdrom/cdrom0/ultra_lvd_driver/10
# pkgadd -R /tmp/work -d . FJSVulsa.u
# pkgadd -R /tmp/work -d . FJSVulsa.v
# patchadd -C /tmp/work 914572-01(?) - 그냥 들어있는 패치하면 됨
4. 미니루트를 재포장 후 적용
# mkdir -p /tmp/media/Solaris_10
# /boot/solaris/bin/root_archive packmedia /tmp/media /tmp/work
# cd /tmp/media
# find boot Solaris_10/Tools/Boot | cpio -pdum /export/install/Sol10
# df -k 확인
# umount -f /dev/lofi/1
# lofiadm -d /dev/lofi/1
5. 커스텀 jumpstart 디렉토리 작성, 드라이버, 샘플 복사
# mkdir /jumpstart
# echo "share -F nfs -o ro,anon=0 /jumpstart" >> /etc/dfs/dfstab
# shareall
(Giga-Ethernet)
# mkdir /jumpstart/fjgi
# cp -p /cdrom/cdrom0/install_v4 /jumpstart/fjgi/.
# cp -p /cdrom/cdrom0/admin /jumpstart/fjgi/.
# cp -pr /cdrom/cdrom0/FJSVgid_4.0/10/* /jumpstart/fjgi/.
(Ultra-SCSI)
# mkdir /jumpstart/fjulsa
# cp -p /cdrom/cdrom0/install /jumpstart/fjulsa/.
# cp -p /cdrom/cdrom0/admin /jumpstart/fjulsa/.
# cp -pr /cdrom/cdrom0/ultra_lvd_driver/10/* /jumpstart/fjulsa/.
# cp -r /export/install/Sol10/Solaris_10/Misc/jumpstart_sample/* /jumpstart
6. nfs서버 가동중 확인, disable이면 enable
# svcs -av | grep nfs
# svcadm enable (기동시킬 서비스)
7. profile 작성 (설치 기본정보를 기록한다-아래 형식에 주의)
# vi /jumpstart/profile
install_type initial_install
system_type server
partitioning explicit
cluster SUNWCXall
filesys c0t0d0s0 51200 /
filesys c0t0d0s1 24576 swap
geo Asia
locale ko
8. finish 작성
# vi /jumpstart/finish
#!/bin/sh
BASE=/a
JUMPSTART=/a/mnt
mount -F nfs 인스톨서버IP:/jumpstart ${JUMPSTART}
${JUMPSTART}/fjgi/install_v4 -R ${BASE} -d ${JUMPSTART}/fjgi -p sun4u
${JUMPSTART}/fjulsa/install -R ${BASE} -d ${JUMPSTART}/fjulsa -p sun4u
umount ${JUMPSTART}
exit 0
9. rules 작성
# vi /jumpstart/rules의 가운데 쯤, 클라이언트 호스트 정보 입력
hostname 클라이언트호스트명 - profile finish
10. rules 체크 (ok가 떨어질 때 까지 위 내용 확인)
# cd /jumpstart
# ./check -p /tmp/media -r rules
11. 인스톨서버에 클라이언트 서버정보 추가
# vi /etc/hosts
클라이언트IP[탭]hostname(클라이언트)[탭]loghost
12. 클라이언트의 맥어드레스 확인
클라이언트 PROM(ok-mode까지 부팅)
{ok} show-nets
jumpstart에 사용될 ethernet-port 선택
{ok} cd ethernet-port 주소
{ok} .properties
mac 부분에서 해당 MAC Address 확인
13. 클라이언트 서버 맥 등록
# vi /etc/ethers
맥어드레스 hostname(클라이언트)
14. bootparams 생성
# /export/install/Sol10/Solaris_10/Tools/add_install_client -c 서버호스트명:/jumpstart 클라이언트호스트명 sun4u <== 호스트명은 꼭 /etc/hosts에 들어가 있어야하며(IP안됨) 서버호스트명은 loghost명 이어야 됨
# cat /etc/bootparams 확인하여 올바로 값이 입력되었는지 확인
15. 인스톨
{ok} boot net - install
위 방법이 안될경우, net의 alias 를 확인하거나
{ok} boot 자신의 네트웍 물리주소 - install
'유닉스' 카테고리의 다른 글
Solaris에 LTO 접속시 Changer 인식 불가에 대한 문제 (0) | 2010.02.02 |
---|---|
솔라리스에서 iso image 생성 (0) | 2010.01.12 |
Dtrace 를 이용하여 솔라리스 버전 속이기 (0) | 2009.08.11 |
Solaris System Accounting (0) | 2009.03.19 |
Unable to install patch. Not enough space in /var/run to copy overlay objects. (0) | 2009.03.03 |
pkgadd 오류: admin 파일 <default>를 열 수 없습니다.
기본적으로 패키지를 설치하기 위해서는 /var/sadm/install/admin/default 파일이 존재해야 한다. 이 파일은 패키지 설치에 관련된 파라미터들이 기술되어 있는 파일인데, 이 파일이 없거나 손상되었을 경우, 패키지가 올바로 설치될 수 없어서 오류가 발생한다.
해결은 간단하다. 위 경로에 default 파일을 생성하고 다음 내용을 복사해서 붙여넣자. 그리고 다시 pkgadd ~~~
확인결과 solaris9/10은 파일 내용이 동일하다. 상관 없다.
# Copyright 2003 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
#ident "@(#)default 1.5 03/06/11 SMI"
#
mail=
instance=unique
partial=ask
runlevel=ask
idepend=ask
rdepend=ask
space=ask
setuid=ask
conflict=ask
action=ask
networktimeout=60
networkretries=3
authentication=quit
keystore=/var/sadm/security
proxy=
basedir=default
덧붙여 여기까지 본 김에 한가지 팁을 배워보자.
자세히 보면, 이 default 라는 파일은 package를 install 할 때의 파라미터들이라고 앞서 설명했다.
눈치 빠르신 분들은 대충 아시겠지만, 각종 파라미터들이 ask로 되어 있는 것을 보아하니, 패키지를 설치하다 충돌이 나거나 하는 기타 여러가지 사항에 대해서 interactive하게 설치를 하기 위함을 알 수 있다.
그럼, ask 를 뭔가로 대신하면 package를 원샷에 설치할 수 있다는 말이 된다.
ask를 모두 nocheck로 변경한다. basedir은 package의 설치 위치를 변경해 줄 수 있다. 그럼, 원샷에 설치할 수 있는 준비가 모두 되었다.
그런데, 여기서 또 하나 문제가 있다. Non-Interactive하게 설치하도록 변경하였는데, Interactive하게 설치해야 하는 상황이 되면, 그 때 마다, nocheck를 ask로 변경해야 한단 말인가? -_-
솔라리스가 그렇게 허접할리가 없다. 위에서 편집한 파일을 저장을 default로 하지 말고 non으로 하여 저장하자.(반드시 non일 필요는 없다.)
그리고 다음과 같이 명령어에 옵션을 주자.
ex) # pkgadd -na ./non -d beautifulpkg all
조금 전에 nocheck로 설정한 파일을 이용하여 패키지를 설치하는 것을 확인할 수 있다.
검색해서 이 문서를 보신 분들은, 문제도 해결하고, 패키지도 잘 설치하셨을 것이고, 팁도 하나 배우셨고. ~~
오늘은 그만하고 퇴근들 하십쇼~ ^^
'유닉스' 카테고리의 다른 글
ZFS manual (0) | 2009.01.05 |
---|---|
Solaris Disksuite simple manual (0) | 2008.11.24 |
SSH setting for solaris8 (0) | 2008.08.26 |
Fixing read-only file system error (0) | 2008.08.13 |
Solaris10 sd.conf 동적으로 다시 읽기 (0) | 2008.05.26 |