과연 Solaris System에서는 어떻게 프로그램을 다운 받아, 설치하여 사용하는지 알아보기로 하겠습니다
- 장 점 : 다른 OS와 달리 설치, 제거가 용이하다
응용프로그램의 소스를 컴파일하여 설치를 할 경우 설치된 곳에 다른 응용프로그램도
같이 들어있을 가능성이 크다. 나중에 이러한 프로그램을 다시 삭제할 필요가 생겼을
때 해당 응용프로그램만 지운다는 것은 거의 불가능에 가깝다고 볼 수 있다.
Solaris에서는 응용프로그램들을 그룹단위로 묶어 배포하는데 이를 Package라 칭합니다.
먼저 가장 쉽게 Sun package를 접 할 수 있는것이, System 구입시 첨부되는 CD입니다. 그리고 웹 상에서도 이를 구할 수 있습니다
- 단 점 : 패키지의 종류가 많지 않다.
패키지의 환경을 마음대로 바꿀 수 없다
2. System의 어느 디렉토리에 설치할 것 인지를 정한다.
- Z (uncompress 파일명), gz (gzip -d 파일명), zip (zip -d 파일명).. 이렇게들 풀면되구요
- gzip 파일로 압축되어 있는건 먼저 gzip 패키지를 설치하셔야 합니다.
SUN 패키지 설치하기
pkgadd 명령
패키지를 추가하는 명령어이다. pkgadd에 대한 여러 옵션 중에서 가장 기본적이며 많이 쓰이는 것은 ‘-d’옵션이다. 이를 사용하지 않으면 패키지를 설치하지 못한다.
아래의 예를 보면 pkgadd -d 다음에 "."을 붙이는데 이는 현재 디렉토리의 안에 있는 패키지들을 추가한다는 뜻입니다. "." 하나 땜에 애먹을 수 있습니다. 주의 하시기 바랍니다.
※ 패키지를 추가할 때에는 SUPER-USER가 아니면 추가시킬 수 없슴.(root계정을 말하는 거예요)
pkgadd [ -d [device | patname]] pkg_nmae
[leemary:/var/spool/pkg] pkgadd -d . 다음과 같은 패키지를 사용할 수 있습니다. 1 SUNWaudio Audio applications (sparc) 3.6.4,REV=1.98.08.13 처리할 패키지(들)를 선택하십시오.(또는 모든 패키지를 처리하려면'all'을 입력하십시오.) (default: all) [?,??,q]: 1 * * ## 패키지 정보 처리 중 ## 시스템 정보 처리 중 ## 패키지 종속성 검증 * * ## 1째 (전체: 1) 부분 설치 <SUNWaudio>(이)가 성공적으로 설치되었습니다. 다음과 같은 패키지를 사용할 수 있습니다. 1 SUNWaudio Audio applications (sparc) 3.6.4,REV=1.98.08.13 |
SUN 패키지 삭제하기
pkgrm 명령
이명령어는 현재 설치되어 있는 패키지를 삭제하고 싶을 때 사용하는 것으로, 사용법은 다음과 같습니다.
pkgchk package_name
# pkgrm SUNWaudio 현재 설치되어 있는 패키지는 다음과 같습니다: SUNWaudio Audio applications (sparc) 3.6.4,REV=1.98.08.13 이 패키지를 제거하겠습니까? y ## 설치된 패키지 예 <SUNWaudio> 제거 ## 패키지 종속성 검증 경고: <SUNWolrte> 패키지는 현재 제거되는 패키지에 종속되어있습니다. * * 이 패키지를 계속 제거하겠습니까? y ## 패키지 정보 처리 중 ## 시스템 정보 갱신 중 <SUNWaudio>(이)가 성공적으로 제거되었습니다. |
패키지에관한 부가적 명령
pkginfo 명령
지정된 패키지의 정보를 알 수 있는 명령어로서, 일정패키지 폴더안에 pkginfo라는 file이 생성되어 있고, 안에 패키지의 정보에 대한 파라키터 값들이 저장되어있다.
pkginfo [ -d [device | pathname] ] [ -l ] pkg_name
-d : 패키지 소프트워에가 존재하고 있는, 장치명이나 절대디렉토리를 지정.
- l : 지정 패키지의 세부적인 사항을 보고 싶을 때..
다음은 Solaris 7 media에 있는 패키지를 사용한 예입니다.
# pkginfo -d /cdrom/cdrom0/s0/Solaris_2.7/Product |more system FJSVhea SunOS Header Files for FUJITSU platform specific system FJSVvplr.u Fujitsu platform specific symlinks (Root) system FJSVvplr.us Fujitsu platform links system FJSVvplu.u Fujitsu platform specific symlinks (user) |
# pkginfo -d /cdrom/cdrom0/s0/Solaris_2.7/Product -l SUNWaudio PKGINST: SUNWaudio NAME: Audio applications * * VERSION: 3.6.4,REV=1.98.08.13 FILES: 9 스풀된 경로 이름 2 디렉토리 3 실행 가능 4 패키지 정보 파일 700 블록이 사용됨 (추정치) |
※ pkginfo | wc -l : 현재 system에 install 되어있는 pkg의 숫자를 확인할 때 사용합니다.
pkgchk 명령
패키지 체크 명령어는 어떤 패키지의 추가 이후 system에 변경된 값을 기존과 비교하여 나타내주는 명령어입니다.
패키지를 설치한후 지금과 변경된 값이 없을 경우 아무것도 디스플레이 하지 않는다
pkgchk [-p path1, [path2..]]
# pkgchk -p /etc/group ERROR: /etc/group file size <278> expected <313> actual file cksum <23586> expected <25899> actual |
참고
Package의 유형
아래의 예문 gawk-3.0.4-sol7-sparc-local.gz, sunvts_40.tar.gz과 같은 두개의 패키지 파일이 있습니다
이 파일의 압축을 풀고 내용을 보면 디스플래이 되는 화면이 다르다는 것을 느낄수 있을 것입니다.
gawk-3.0.4-sol7-sparc-local.gz은 압축을 풀어도 하나의 파일이 생성이 되고 그 파일의 내용을 보면
패키지 파일의 이름이나 버젼등의 정보가 수록 되어있습니다. 달리 sunvts_40.tar.gz파일의 압축을
풀어보면 디렉토리가 생성이 되고 그 안에 패키지 정보나 기록위치등이 포함된 파일이 생성되어
있습니다. 이 두 유형의 패키지는 파일의 형태만 다를 뿐 설치하는 방법은 같습니다.
# ls gawk-3.0.4-sol7-sparc-local.gz # gzip -d gawk-3.0.4-sol7-sparc-local.gz # ls gawk-3.0.4-sol7-sparc-local # more gawk-3.0.4-sol7-sparc-local # PaCkAgE DaTaStReAm SMCgawk 1 3454 # end of header gawk NAME=gawk ARCH=sparc VERSION=3.0.4 CATEGORY=application VENDOR=Free Software Foundation EMAIL=steve@smc.vnet.net PSTAMP=Steve Christensen BASEDIR=/usr/local CLASSES=none 0030939000081a40000000a0000000a0000000138ab966d00000d1b000000200000004a00 000000000000000000000f00000003SMCgawk/pkgmap: 1 3454 # ls |
contents file
/var/sadm/install/contents file은 설치된 pakage에 대한 log가 수록되어있다
system의 패키지에 관한 정보를 알 수 있다.
SUN 패치..
언제라도 발생할 수 있는 보안 침해나, 버그, y2k, 업그래이드 사항에 대하여 썬에서는 솔라리스 각 버전에 대해서 패치를 정기적으로 제공해준다.
특히 y2k 패치가 안되어 있는 OS는 해당되는 패치를 해주어야 한다.
패치 넘버
솔라리스에서는 독특한 패치 ID를 부여한다. 예로 110281-02를 보면 패치넘버 110281의 두 번째 업그래이드 버전이라는 걸 알 수 있다
패치 구하기
썬에서 제공하는 패치는 여러곳에서 구할 수 있으나, 대표적으로 http://sunsolve.sun.com/
에서 쉽게 다운받을 수 있다. http, ftp로의 다운을 제공하며 패치에관 한 Report를 제공한다.
OS별로 추천되는 패치를 받을 수가 있다. 여기서는 사용자가 선택을 할 수가 없으며 단순히 썬에서 권고하는 여러 패치 ID가 하나의 파일로 압축되어져 있는 것을 다운 받을 수 있다. 그렇다고 이곳에서는 특정 패치 ID를 다운받을 수 없는 것은 아니다. Find Patch라는 패치 ID검색 기능이 있어서 이곳에서 원하는 패치 ID를 검색하여 다운 받을 수 있다.
Recommended & Security Patches
OS별, 보안관련 패치로 분류되어 있다. 이중 패치하고자 하는 것을 선택하면 여러 패치 ID리스트가 나올 것입니다. 리스트에서 사용자가 원하는 것만 클릭해서 다운로드를 받을 수 있고 모두 받을 수도 있습니다. 선택한 것을 다운로드 받으면‘ Recommended.zip과 같이 하나의 압축파일 형태로 제공이 됩니다..
패치를 하기 이전에
패키지를 설치하거나 패치를 하기 이전도 패키지 설치와 마찬가지 입니다. System의 상황을 파악
하여야 하고. 다운받을 곳의 위치와 필요 패키지의 설치 여부 등을 파악해야 됩니다.
또한 자신의 서버에 어떤 패치가 설치되어 있는지에 대한 정보를 수집한다 이러한 설치된 패치 정보를 보기위해서 showrev라는 명령어를 사용한다. 이 명령어는 머신이나 소프트웨어의 정보를 보여주는 명령어이다.
showrev [-a] [-p] [-w] [-c command]
-a : 모든 정보를 보여준다.
-p : 패치에 관한 정보만을 보여준다.
-c command : 입력된 명령어(command)에 대한 정보를 보여준다.
# showrev Hostname: leemary Hostid: 80c5575c Release: 5.7 Kernel architecture: sun4u Application architecture: sparc Hardware provider: Sun_Microsystems Kernel version: SunOS 5.7 Generic 106541-15 January 2001 |
패치 하기
먼저 패치 파일을 다운받아야 겟죠.
그리구 zip파일을 이용하여 압축을 풉니다.
patchadd 명령
patchadd patch ID
패치를 추가하는 명령어이다. README 파일을 꼭 참조하시고 명령을 실행하시기 바랍니다.
다음은 Solaris 7 OS 의 패치파일모음인 7-Recommended 파일을 다운받아 압축을 풀어 생성된
7-Recommeded폴더의 내용과 인스톨 시키는 과정입니다.
개별적인 패치와 달리 Recommended 패치는 install_cluster파일을 실행시켜 주시면 됩니다.
# ls For more installation messages refer to the installation logfile: |
※ 패치시 패치실패 메시지가 나오면서 설치가 안되는 경우가 발생합니다. 이때 에러코드를 참조하시고
대부분의 패치에러는 각 System에따라 필요하지 않은 패치들입니다.
패치 삭제하기
patchrm 명령
patchrm patch ID
추가되어 있는 패치를 삭제 시키는 명령어입니다.
System에 패치를 시켰을 때 간혹 버그가 발생하는데, 이때 보조 디바이스를 사용하지 못한다거나 하는
문제가 발생할 수 있습니다. 이럴 경우 해당 패치를 삭제시켜 주어야 합니다.
# patchrm 106300-09 Checking installed patches... Patch 106300-09 has not been applied to this system. Patchrm is terminating. |