60.Unix2008. 12. 17. 14:41
반응형

윈디하나의 솔라나라: 솔라리스 10 u6 기본설정

최종 갱신일: 2008-11-03, 이 문서는 윈디하나의 솔라나라, http://www.solanara.net/에서 최근에 갱신된 문서를 찾을 수 있다.

1. 개요

  • 소프트웨어 설치 문서에 생략되어있는 공통 설정 사항에 대해, 솔라리스 10 u6 기준으로 설명하는 문서이다.
  • LD_LIBRARY_PATH와 PATH 환경변수는 반드시 일치해야 한다.
  • 본 문서는 솔라리스 10 u6 x86, 32bit을 기준으로 작성했다. 자신의 솔라리스 버전 및 업데이트 번호는 아래와 같이 확인할 수 있다.
    root@wl ~ # cat /etc/release
                           Solaris 10 10/08 s10x_u6wos_07b X86 1)
               Copyright 2008 Sun Microsystems, Inc.  All Rights Reserved.
                            Use is subject to license terms.
                                Assembled 27 October 2008
    root@wl ~ # isainfo -kv
    32-bit i386 kernel modules 2)
    root@wl ~ # 
    
    1) [솔라리스 10, 2008년 10월에 배포, 업데이트번호는 6, x86버전]이라는 뜻이다.
    2) 32비트 x86 커널을 사용하고 있다는 뜻이다.

2. 솔라리스 설정

  1. 네트워크 설정 확인. 네트워크가 동작하는지 확인해야 한다. 아직 DNS가 설치된것은 아니므로, 도메인으로 외부 서버에 접속할 수 없다.
    # cat /etc/hosts 1)
    127.0.0.1       localhost       
    192.168.0.3  wl     loghost
    # cat /etc/hostname.pcn0 2)
    wl
    # cat /etc/netmasks 3)
    192.168.0.0    255.255.255.0
    # cat /etc/defaultrouter 4)
    192.168.0.1
    # ifconfig -a 5)
    lo0: flags=1000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232 index 1
            inet 127.0.0.1 netmask ff000000
    pcn0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
            inet 192.168.0.3 netmask ffffff00 broadcast 192.168.0.255
    
    1) /etc/hosts에 자신의 호스트 이름과 맞는 IP가 입력되어있는지 확인한다. 이 예제에서 호스트 이름은 wl 이다.
    2) NIC와 호스트이름을 확인한다. pcn0는 솔라리스의 pcn 이라는 NIC의 첫번째 드라이버라는 뜻으로 벤더마다 다르다. (솔라리스 스팍용은 ce로 되어있을것이다) pcn0 인터페이스에 wl 호스트의 IP를 넣을 것이다.
    3) netmask를 확인한다. 192.168.0.3의 경우 192.168.0.0/24에 포함된다. 따라서 넷마스크값으로 255.255.255.0 를 정해줄 것이다.
    4) 기본 라우터를 확인한다. 윈도우XP로 따지자면 게이트웨이에 해당된다.
    5) ifconfig -a 를 해보면 pcn0에 IP및 넷마스크가 입력된 것을 확인할 수 있다. 이 정보가 정확하면, 다음으로 단계로 넘어간다. 만약 정확하지 않다면 위 파일들을 고치거나, /usr/sbin/sys-unconfig 명령을 실행해 재시작후, 네트워크 설정을 다시 한다.
  2. 네트워크 테스트
    예제의 네트워크 구성
    ┌─┐
    │A├──┐
    └─┘ ┌┴─┐ ┌───┐ ┏───┓
        │허브├─┤라우터├─┤인터넷├─
    ┌─┐ └┬─┘ └───┘ ┗───┛
    │B├──┘
    └─┘
    
    A: 세팅하고 있는 호스트. 192.168.0.3
    B: 이미 세팅되었으며 정상 작동하고 있는 호스트. 192.168.0.2
    라우터: 192.168.0.1
    
    1. 같은 스위치/허브에 물려있는 호스트로 PING 테스트
      # ping 192.168.0.2
      192.168.0.3 is alive
      #
      
      - 성공시 NIC와 네트워크 케이블, IP세팅, 스위치의 작동은 정상임
      - 실패시 솔라리스 설정, 호스트에 연결되어있는 케이블 및 NIC 드라이버등을 점검
    2. 라우터로 PING 테스트
      # ping 192.168.0.1
      192.168.0.1 is alive
      #
      
      - 성공시 라우터(게이트웨이)까지 가는 장비 스위치/허브들도 정상임. 라우터도 응답 하고 있음.
      - 실패시 라우터 관리자에게 문의 (라우터가 PING응답을 하지 않도록 설정한 경우도 있음)
    3. 외부 호스트로 PING 테스트
      # ping 211.174.186.251
      211.174.186.251 is alive
      #
      
      - 성공시 라우터의 설정이 정상적으로 되어있으며 네트워크는 정상적으로 작동함
      - 실패시 라우터 관리자에게 문의 (외부에 있는 임의의 호스트가 PING응답을 하지 않도록 설정한 경우도 있음)
      여기까지 잘 되면 네트워크 설정은 마무리 된 것이다.
    4. 도메인으로 ping 테스트
      # cp /etc/nsswitch.dns /etc/nsswitch.conf
      # vi /etc/resolv.conf
      domain xxxx.com
      search xxxx.com
      nameserver 168.126.63.1 # 한국통신의 DNS 서버이다.
      nameserver 168.126.63.2
      # ping www.solarisschool.com
      www.solarisschool.com is alive
      #
      
      - 성공시 도메인 서버 세팅 및 도메인 서버가 제대로 작동함
      - 실패시 도메인 서버 세팅 확인 및 다른 도메인 서버 사용
    5. 접속 테스트
      - ICMP패킷이 올바르게 전송되는지만 확인해도 좋지만 확실하게 하기 위해서는 TCP패킷까지 보내보는 것이 좋다. 외부의 호스트에 telnet접속한 후에 다시 자시 서버로 telnet접속해보는 형식. 이건 각자의 환경에 따라 다르기 때문에 구체적인 예는 생략하겠다.
  3. 디스크 확인
    솔라리스 10 u6부터 ROOT 슬라이스도 ZFS를 이용해 설치할 수 있다. 게다가 2개 이상의 디스크가 있고 인스톨시 선택했다면 자동으로 아래와 같이 미러링 해준다. 당연히 이를 이용해야할 것이다. 아래의 예는 40GB인 디스크 2개를 선택해 전체 설치한 예이다.
    # df -h
    파일시스템             크기   사용   가용   용량    설치지점
    rpool/ROOT/rset         37G   3.8G    31G    11%    /
    /devices                 0K     0K     0K     0%    /devices
    ctfs                     0K     0K     0K     0%    /system/contract
    proc                     0K     0K     0K     0%    /proc
    mnttab                   0K     0K     0K     0%    /etc/mnttab
    swap                   1.5G   900K   1.5G     1%    /etc/svc/volatile
    objfs                    0K     0K     0K     0%    /system/object
    sharefs                  0K     0K     0K     0%    /etc/dfs/sharetab
    /usr/lib/libc/libc_hwcap1.so.1
                            35G   3.8G    31G    11%    /lib/libc.so.1
    fd                       0K     0K     0K     0%    /dev/fd
    rpool/ROOT/rset/var     37G    70M    31G     1%    /var
    swap                   1.5G    76K   1.5G     1%    /tmp
    swap                   1.5G    24K   1.5G     1%    /var/run
    rpool/export            37G    19K    31G     1%    /export
    rpool/export/home       37G    18K    31G     1%    /export/home
    rpool                   37G    35K    31G     1%    /rpool
    # zpool status
      풀: rpool
     상태: ONLINE
     스크럽: 요청된 항목이 없습니다.
    구성:
    
            NAME        STATE     READ WRITE CKSUM
            rpool       ONLINE       0     0     0
              mirror    ONLINE       0     0     0
                c0d0s0  ONLINE       0     0     0
                c0d1s0  ONLINE       0     0     0
    
    오류: 알려진 데이터 오류가 없습니다.
    # zfs list
    NAME                  USED  AVAIL  REFER  MOUNTPOINT
    rpool                5.63G  31.0G  35.5K  /rpool
    rpool/ROOT           3.88G  31.0G    18K  legacy
    rpool/ROOT/rset      3.88G  31.0G  3.81G  /
    rpool/ROOT/rset/var  70.1M  31.0G  70.1M  /var
    rpool/dump           1.00G  31.0G  1.00G  -
    rpool/export           37K  31.0G    19K  /export
    rpool/export/home      18K  31.0G    18K  /export/home
    rpool/swap            767M  31.8G    16K  -
    #
    
  4. 솔라리스 패치 - 권장패치를 이용하는 방법
    - 솔라리스 권장 패치는 http://sunsolve.sun.com/pub-cgi/show.pl?target=patches/patch-access 에서 회원가입 후 받을 수 있다. 이곳에서 원하는 버전과 아키텍처를 선택한후 다운로드 하면 된다. 이파일은 솔라리스 전체 패치가 아니라 선에서 권장하는 권장 패치일 뿐이다. README 에는 어떠한 패치가 포함되어있는지 나와있다. 권장패치는 [썬 서비스 플랜]에 가입해야 받을 수 있으며 가입은 유료다. 예전에 찾아봤을때는 일년에 240달러였다.
    - 선은 솔라리스를 6개월에서 1년마다 업데이트해 내놓고 있다. 이것을 이용해 업그레이드 하면 최신 패치를 설치한것과 동일한 효과를 가질 수 있다.
    - 게다가 상당수 개별 패치는 무료다. (권장 패치는 개별 패치들의 모음이다. 역설적으로 말하면 README에 나와있는 패치를 일일이 다 다운받아서 수동으로 설치하면 같은 효과를 낸다는 뜻이다)
    - 여의치 않다고 생각되면 OpenSolaris 를 사용할 수 있다. 솔라나라의 내용은 모두 오픈 솔라리스와 호환된다. [레드햇 엔터프라이즈 리눅스]와 [페도라]의 관계가 [솔라리스]와 [오픈 솔라리스]의 관계와 비슷하다.
    # unzip 10_x86_Recommended.zip
    # cd 10_x86_Recommended
    # ./install_cluster -nosave 1)
    Are you ready to continue with install? [y/n]: y
    Installing xxxxxx-yy...
      Installation of xxxxxx-yy failed. Return code z. 2)
    # sync
    # sync
    # sync
    # init 6
    
    1) 패치 클러스터는 패치 언인스톨을 위해 관련 파일을 압축해 저장해 놓는데 이 파일의 크키가 꽤 크다. 게다가 압축률 안좋은 .Z 확장자로 압축한다. /var/sadm/pkg/*/save/*/*.Z 파일이 그것이다. -nosave옵션을 주면 이를 생성하지 않을 수 있다. 단 패치의 언인스톨은 불가능해진다.
    2) z에 리턴된 코드중 2, 8, 35번은 무시해도 좋다. 코드에 대한 전체 설명은 message.html을 참고한다.
    2 Attempt to apply a patch that's already been applied
    8 Attempting to patch a package that is not installed
    35 Later revision already installed
  5. 솔라리스 패치 - smpatch 를 이용한 방법
    # cp /usr/lib/breg/data/RegistrationProfile.properties /tmp 1)
    # vi /tmp/RegistrationProfile.properties 
    userName=사용자아이디
    password=사용자패스워드
    # /usr/sbin/sconadm register -a -r /tmp/RegistrationProfile.properties
    sconadm이 실행되는 중
    사용자를 인증하는 중 ...
    finish registration!
    # rm /tmp/RegistrationProfile.properties 
    # smpatch get 2)
    patchpro.backout.directory      -       ""
    patchpro.baseline.directory     -       /var/sadm/spool
    patchpro.download.directory     -       /var/sadm/spool
    patchpro.install.types          -       rebootafter:reconfigafter:standard
    patchpro.patch.source           -       https://getupdates1.sun.com/
    patchpro.patchset               -       current
    patchpro.proxy.host             -       ""
    patchpro.proxy.passwd           ****    ****
    patchpro.proxy.port             -       8080
    patchpro.proxy.user             -       ""
    # smpatch analyze 3)
    메시지 생략
    # smpatch download 4)
    (으)로 패치 다운로드 /var/sadm/spool...
    xxxxxx-yy has been validated.
    메시지 생략
    # smpatch update 5)
    에서 패치 설치 /var/sadm/spool...
    xxxxxx-yy 적용되었습니다.
    메시지 생략
    설치 정책이 허용하지 않는 업데이트의 ID가 파일에
    기록되었습니다.6)
            /var/sadm/spool/disallowed_patch_list
    
    설치한 하나 이상의 업데이트를 활성화하려면 시스템을 종료해야 합니다. 시스템 종료를 시작하려면 다음 명령 중 하나를 사용해야 합니다.
    o 펌웨어 프롬프트로 이동 - init 0 또는 shutdown -i 0
    o 시스템 전원 끄기 - init 5 또는 shutdown -i 5
    o 시스템 재시작 - init 6 또는 shutdown -i 6
    # sync
    # init 6
    
    1) 등록을 하지 않았다면 등록한다. 한번만 하면 된다.
    2) 등록이 완료되면 패치프로의 설정 내용을 확인한다. [patchpro.patch.source]가 위와같이 나오는지 확인한다. 프록시를 사용하는 경우 [smpatch set patchpro.proxy.host=xxx.xxx.xxx.xxx]와 같이 지정해 주어야 한다.
    3) 패치를 분석해본다. 설치되어있지 않은 패치번호가 나올 것이다.
    4) 패치를 다운로드 한다. /var/sadm/spool 에 패치를 받는다. 생략 가능하다. 하단에 나오는 [smpatch update] 명령에 필요한 패치를 자동으로 다운로드해준다.
    5) 패치를 적용한다. /var/sadm/spool 에 받은 패치를 실행시킨다. 만약 설치해야할 패치가 다운로드 되지 않았으면 다운로드 한다.
    6) [싱글모드]로 전환([init s]명령을 사용하면 된다)해 [smpatch add -x idlist=/var/sadm/spool/disallowed_patch_list]명령을 주면 [설치 정책이 허용하지 않는 업데이트]를 설치할 수 있다. 허용하지 않는 패치에는 커널 업데이트와 드라이버 업데이트가 포함되기 때문에 반드시 해야한다. 또한 반드시 수동 설치해야 하는 패치도 있는데(SMPATCH LIVE UPGRADE처럼) 이는 [smpatch add -i 121431-25]처럼 명령을 주면 된다
  6. root의 기본 셸과 홈 디렉토리를 변경한다. 아울러 패스워드 암호화 방식도 MD5로 변경한다.
    # mkdir -m 700 /root
    # vi /etc/passwd
    root:x:0:1:Super-User:/root:/bin/bash
    # vi /etc/security/policy.conf
    CRYPT_ALGORITHMS_ALLOW=1,2a,md5,5,6 1)
    CRYPT_DEFAULT=md5 2)
    # passwd root 3)
    새 암호:
    새 암호를 다시 입력하십시오:
    passwd: 암호(root용)가 성공적으로 변경되었습니다.
    # 
    
    1) 사용할 수 있는 알고리즘을 나타낸 것으로 이는 /etc/security/crypt.conf 에 연결되어있는 약어이다.
    1: UNIX crypt 알고리즘
    2a: Blowfish 알고리즘
    md5: MD5 알고리즘
    5: SHA256 알고리즘 (Solaris 10 u6 이상부터 지원)
    6: SHA512 알고리즘 (Solaris 10 u6 이상부터 지원)
    2) __unix__ 를 md5로 변경한다. 이후 패스워드 변경시 /etc/shadow파일을 보면 패스워드 필드가 $md5 로 시작하는 것을 볼 수 있다. 8자 이상의 패스워드도 지원해준다. 참고로 *LK*는 잠금상태, NP는 로그인 불가상태를 의미한다. 참고로 솔라리스 10 u6 이상 사용자들은 더 나은 알고리즘인 6(SHA512)을 사용하는 것도 좋다.
    3) __unix__로 암호화 되어있는 패스워드를 MD5로 암호화 하기 위해 root 패스워드를 한번 더 변경한다.
  7. 환경 설정 파일을 변경한다. 필자는 /etc/profile을 변경한다. 가장 아래줄에 다음과 같이 추가해준다. 필자는 sh와 bash를 사용한다.
    # vi /etc/default/init
    메시지 생략
    LANG=ko_KR.UTF-8
    # vi /etc/profile
    메시지 생략
    alias ll="ls -alF"
    tty -s && stty cs8 -istrip defeucw
    
    case "$0" in
    bash | -bash)
    	PS1="\u@\h \w \\$ "; export PS1
    	;;
    sh | -sh)
    	PS1="`/usr/ucb/whoami`@`hostname'` "
    	case `/usr/xpg4/bin/id -u` in
    		0) PS1="${PS1}# ";;
    		*) PS1="${PS1}$ ";;
    	esac
    	;;
    esac
    EDITOR=vi; export EDITOR
    CC=cc; export CC
    PATH=/usr/local/bin:/opt/SUNWspro/bin:/usr/bin:/usr/sbin:/usr/ccs/bin:/usr/openwin/bin; export PATH
    LD_LIBRARY_PATH=/usr/local/xml/lib:/usr/lib:/usr/local/lib:/usr/ucblib:/usr/ccs/lib; export LD_LIBRARY_PATH
    #
    
    ※ 이 문서에서 가장 중요한 부분이 PATH 환경변수 세팅과 LD_LIBRARY_PATH 환경변수 세팅이다. 꼭 맞춰주자. PATH와 LD_LIBRARY_PATH가 기존에 소개했던 솔라리스 9용 설정과 다르다.
    ※ 솔라리스 콘솔도 컬러를 지원하기 때문에 안시코드를 이용해 컬러를 넣을수도 있다.
    PS1="\u@\h ^[[1;31m\w^[[0m \\$ "; export PS1
    
    처럼 입력할 수 있다. ^[[의 ^[부분은 안시 이스케이프 코드로, vi에디터의 입력 모드에서, Ctrl+V를 누르고 ESC키를 눌러 입력해야 한다.
  8. SAR(System Activity Reporter)를 활성화 하고 크론의 sar 설정을 활성화한다. NTP 데몬을 활성화한다.
    # svcadm enable sar
    # EDITOR=/usr/bin/vi; export EDITOR
    # crontab -e sys 1)
    0 * * * 0-6 /usr/lib/sa/sa1
    20,40 8-17 * * 1-5 /usr/lib/sa/sa1
    5 18 * * 1-5 /usr/lib/sa/sa2 -s 8:00 -e 18:01 -i 1200 -A
    # vi /etc/inet/ntp.conf 2)
    # 한국표준과학연구원, time.bora.net
    server 203.248.240.103
    # svcadm enable ntp
    
    1) 주석만 풀어주면 된다.
    2) 여기에서는 NTP 데몬을 이용한 타임서버 동기화 방법을 설명했다. 다른 방법으로 rdate를 cron에 등록시키는 방법도 있다. [rdate time.bora.net]명령을 이용하면된다. [svcadm enable time:stream]와 [svcadm enable time:dgram]가 활성화되어있는 솔라리스 호스트라면 그 호스트에서 시간을 가져올 수 있다.
  9. 사용자를 추가하고 패스워드를 지정한다.
    # useradd -d /export/home/windy -c "윈디하나" -g staff -m -u 101 -s /bin/bash windy 1)
    64 블록
    # passwd windy
    새 암호:
    새 암호를 다시 입력하십시오:
    passwd: 암호(windy용)가 성공적으로 변경되었습니다.
    # 
    
    1) 관리자가 주로 사용할 계정을 생성한다. (당연한 말이지만 꼭 windy가 아니어도 된다. 솔라나라와 똑같이 하라는 말 때문인지, 사용할 계정 이름까지 까지 똑같이 하는 경우를 봤다. 많이 봤다. ㅎㅁ) 8자 이상의 아이디를 가진 계정을 생성하면 [UX: useradd: xxxxxxxxxx name too long.]과 같은 메시지가 발생하지만 생성 되어있다. (그리고 정상적으로 사용 가능하다)
  10. 솔라나라에 필요한 링크를 걸어준다.
    반드시 필요해 링크를 거는 것이 아니라 솔라나라의 문서는 모두 wget을 이용해 받고, (GNU) tar를 이용해 압축을 풀도록 되어있기 때문에 걸어놓는 것이다.
    # mkdir -p /usr/local/bin
    # cd /usr/local/bin
    # ln -s /usr/sfw/bin/wget wget
    # ln -s /usr/sfw/bin/gtar tar
    
  11. 가뿐하게 한번 재시작해준다.
    # sync
    # sync
    # init 6
    

3. 컴파일러/기본 라이브러리 설치

아래에 소개된 프로그램을 설치한다. 솔라나라의 문서를 적용하려면 반드시 설치해야 한다.

Sun Studio 12

※ cc(C 컴파일러)를 설치한다. 솔라나라는 gcc가 아닌 cc를 사용할 것이다. SunStudio12ml-solaris-x86-200709-pkg.tar.bz2 파일은 Sun Studio Downloads에서 Sun Developer Network에 무료로 가입한 후 받을 수 있다.

※ 솔라나라를 2005년 7월에 오픈하면서 이번 리뉴얼에까지 가장 많이 바뀐것이 바로 gcc기준의 문서를 cc로 바꾼것이다. 솔라리스에서 cc가 유료였던 관계로 하는수 없이 gcc를 썼었는데 Sun Studio 11부터 무료로 배포되고 사용할 수 있기 때문에 cc를 사용하는 것이다. (솔라나라에서는 SunStudio 12를 사용한다) gcc와 cc를 혼합해서 쓰는것에는 여러가지 문제가 있으며, 아직까지는 솔라리스를 제대로 지원해주는게 cc라고 생각하기 때문에 cc를 기준으로 설명한다. 솔라나라의 문서는 cc를 기준으로 하지만 gcc를 사용해도 큰 문제 없도록 구성 되어있다. sunfreeware의 gcc나 솔라리스 기본 설치된 gcc(/usr/sfw/bin/gcc)를 사용해도 문제 없다는 의미이다. 실제로 어플리케이션이 컴파일시 gcc만을 요구하는 경우 솔라리스에 이미 설치되어있는 gcc를 이용해 컴파일 할 것이다.
  1. root@wl ~ # mkdir SunStudio
    root@wl ~ # cd SunStudio
    root@wl ~/SunStudio # tar xvfj ../SunStudio12ml-solaris-x86-200709-pkg.tar.bz2
    root@wl ~/SunStudio # ./batch_installer --show-sla 1)
    메시지 생략
    Please contact Sun Microsystems, Inc.  4150 Network Circle,
    Santa Clara, California 95054 if you have questions.
    root@wl ~/SunStudio # ./batch_installer -p all --accept-sla 1)
    Java Accessibility Bridge for GNOME loaded.
    
    
    root@wl ~/SunStudio # cc 2)
    usage: cc [ options] files.  Use 'cc -flags' for details
    root@wl ~/SunStudio # 
    
    1) 라이센스를 확인한다. [./batch_installer -p all --accept-sla]는 라이센스에 동의하였으며, 아무것도 묻지 않고 전체설치할때 사용하는 명령어이다. [Java Accessibility Bridge for GNOME loaded] 메시지가 나온 이후 한참 걸린다.
    2) cc는 [/opt/SUNWspro/bin/cc]에 있다. 경로를 설정해주었으므로 cc만 쳐도 위와같이 나와야 한다. [/usr/ucb/cc: language optional software package not installed] 이렇게 나오면 안된다.
  2. 컴파일러를 설치한 후에는 패치를 해야 한다. Sun Studio 12 Patches에 가보면 버전별로 받아서 설치해야할 패치 목록이 나와있다. 리스트된 패치는 모두 무료로 제공되니 받아서 설치하면 된다. 물론 SDN에 가입해야 받을 수 있다. 솔라나라의 문서는 최소한 아래의 패치를 적용한 것을 기준으로 작성했다.
    root@wl ~/SunStudio/patch # ls -al *.zip
    -rw-r--r--   1 windy    staff    1487960 11월 18일  09:55 119964-11.zip
    -rw-r--r--   1 windy    staff    33330549 11월 18일  09:55 124864-08.zip
    -rw-r--r--   1 windy    staff    2099859 11월 18일  09:55 124868-07.zip
    -rw-r--r--   1 windy    staff    50663857 11월 18일  09:55 124869-02.zip
    -rw-r--r--   1 windy    staff    4446424 11월 18일  09:55 124873-06.zip
    -rw-r--r--   1 windy    staff     324661 11월 18일  09:55 126496-02.zip
    -rw-r--r--   1 windy    staff    6463178 11월 18일  09:55 126498-11.zip [먼저패치해야함]
    -rw-r--r--   1 windy    staff    3136678 11월 18일  09:55 126996-04.zip
    -rw-r--r--   1 windy    staff    10531891 11월 18일  09:55 127002-04.zip
    -rw-r--r--   1 windy    staff     538400 11월 18일  09:55 127144-03.zip [먼저패치해야함]
    root@wl ~/SunStudio/patch # unzip 126498-11
    ...
    root@wl ~/SunStudio/patch # patchadd 126498-11
    ...
    Patch packages installed:
      SPROcpl
      SPROcplx
      SPROmrcpl
      SPROscl
      SPROsclx
      SPROstl4a
      SPROstl4h
      SPROstl4o
      SPROstl4x
      SPROstl4y
      SPROtl7x
      SPROtlbn7
      SPROtll7
      SPROtll7x
    
    root@wl ~/SunStudio/patch # [다른 파일도 위와같이 실행한다]
    
  3. smpatch (위에서 설명) 를 이용하면 cc가 시스템과 같이 패치된다.

OpenSSL

더 자세한 사항은 윈디하나의 솔라나라: OpenSSL을 참고한다. 솔라나라에서 소개하는 상당수의 어플리케이션이 OpenSSL을 지원하고 있으며 SSL과 같이 컴파일할것이다.
root@wl ~/source # wget http://www.openssl.org/source/openssl-0.9.8h.tar.gz
root@wl ~/source # tar xvfz openssl-0.9.8h.tar.gz
root@wl ~/source # cd openssl-0.9.8h
root@wl ~/source/openssl-0.9.8h # ./config
root@wl ~/source/openssl-0.9.8h # make
root@wl ~/source/openssl-0.9.8h # make test
root@wl ~/source/openssl-0.9.8h # make install
Valid XHTML 1.0 Transitional Valid CSS!
Posted by 1010