탐색 링크 건너뛰기 | |
인쇄 보기 종료 | |
![]() |
Oracle Solaris 10 1/13 설치 설명서: Live Upgrade 및 업그레이드 계획 Oracle Solaris 10 1/13 Information Library (한국어) |
4. Live Upgrade를 사용하여 부트 환경 만들기(작업)
7. Live Upgrade 부트 환경 유지 관리(작업)
8. 비전역 영역이 설치된 시스템에서 Oracle Solaris OS 업그레이드
제2부Live Upgrade를 사용하여 업그레이드 및 ZFS 루트 풀로 마이그레이션
13. 비전역 영역이 설치된 ZFS용 Live Upgrade
이 절에서는 비전역 영역이 설치된 시스템에서 UFS 루트(/) 파일 시스템을 ZFS 루트 풀로 마이그레이션하는 단계별 지침을 제공합니다. UFS 파일 시스템의 공유 파일 시스템에는 비전역 영역이 없습니다.
lucreate 명령은 UFS 루트(/) 파일 시스템에서 ZFS 루트 풀의 부트 환경을 만듭니다. ZFS 루트 풀은 lucreate 작업 전에 있어야 하며, 업그레이드 가능하고 부트 가능하도록 하려면 전체 디스크가 아닌 슬라이스로 만들어야 합니다. 이 절차에서는 UFS 루트(/) 파일 시스템과 연결된 기존의 비전역 영역을 ZFS 루트 풀에 있는 새 부트 환경에 복사하는 방법에 대해 보여 줍니다.
주 - Live Upgrade를 사용하여 새 ZFS 부트 환경을 만들려면 최소한 Solaris 10 10/08 릴리스가 설치되어 있어야 합니다. 이전 릴리스에는 작업을 수행할 수 있는 ZFS 및 Live Upgrade 소프트웨어가 없습니다.
3개의 Live Upgrade 패키지인 SUNWluu, SUNWlur 및 SUNWlucfg가 Live Upgrade를 사용하여 업그레이드하기 위해 필요한 소프트웨어를 구성합니다. 이들 패키지는 기존 소프트웨어, 새 기능, 버그 수정 등을 포함합니다. 기존 패키지를 제거하지 않고 Live Upgrade를 사용하기 전에 시스템에 새 패키지를 설치한 경우에는 대상 릴리스로의 업그레이드가 실패합니다.
# pkgrm SUNWlucfg SUNWluu SUNWlur
My Oracle Support에 문의하여 가장 최근에 업데이트된 패치 목록이 있는지 확인하십시오. My Oracle Support에서 지식 문서 1004881.1 - Live Upgrade 소프트웨어 패치 요구 사항(이전의 206844)을 검색하십시오.
수퍼유저 또는 동등한 역할의 사용자로 로그인합니다.
주 - 역할에는 권한 부여 및 권한이 있는 명령이 포함됩니다. 역할에 대한 자세한 내용은 System Administration Guide: Security Services의 Configuring RBAC (Task Map)를 참조하십시오.
패치를 로컬 디스크에 저장하려는 경우에는 /var/tmp/lupatches와 같은 디렉토리를 만들고 해당 디렉토리로 패치를 다운로드합니다.
My Oracle Support 웹 사이트에서 패치 목록을 얻습니다.
패치 디렉토리로 변경합니다.
# cd /var/tmp/lupatches
patchadd 명령을 사용하여 패치를 설치합니다.
# patchadd patch_id
patch_id는 패치 번호입니다. 공백을 사용하여 여러 패치 이름을 구분합니다.
주 - My Oracle Support의 지식 문서 1004881.1 - Live Upgrade 소프트웨어 패치 요구 사항(이전의 206844)에 지정된 순서대로 패치를 적용해야 합니다.
필요한 경우 시스템을 재부트합니다. 특정 패치는 재부트해야만 적용됩니다.
x86에만 해당: 시스템을 재부트해야 하며, 그렇지 않으면 Live Upgrade가 실패합니다.
# init 6
ZFS 루트 풀은 부트 가능하고 업그레이드 가능하도록 단일 슬라이스에 있어야 합니다.
# zpool create rpool c3t0d0s0
이 예에서 만들려는 새 ZFS의 이름은 rpool입니다. 풀은 부트 가능한 슬라이스 c3t0d0s0에서 만들어집니다.
새 루트 풀 만들기에 대한 자세한 내용은 Oracle Solaris ZFS 관리 설명서를 참조하십시오.
# lucreate [-c ufsBE] -n new-zfsBE -p rpool
현재 UFS 부트 환경의 이름입니다. 이 옵션은 필수 사항이 아니며 부트 환경을 처음 만들 때만 사용됩니다. 처음 lucreate를 실행할 때 -c 옵션을 생략하면 소프트웨어에서는 사용자의 기본 파일 이름을 사용합니다.
만들 부트 환경의 이름입니다. 이름은 시스템에서 고유해야 합니다.
새로 만든 ZFS 루트(/) 파일 시스템을 rpool에 정의된 ZFS 루트 풀에 배치합니다.
공유되지 않는 모든 비전역 영역은 중요 파일 시스템과 함께 새 부트 환경으로 복사됩니다. 새 ZFS 부트 환경을 만들 때 약간 시간이 걸릴 수도 있습니다. UFS 파일 시스템 데이터는 ZFS 루트 풀로 복사됩니다. 비활성 부트 환경이 만들어지면 luupgrade 또는 luactivate 명령을 사용하여 새 ZFS 부트 환경을 업그레이드하거나 활성화할 수 있습니다.
lustatus 명령은 부트 환경 만들기가 완료되었고 부트 가능한지 보고합니다.
# lustatus boot environment Is Active Active Can Copy Name Complete Now OnReboot Delete Status ------------------------------------------------------------------------ ufsBE yes yes yes no - new-zfsBE yes no no yes -
list 명령은 시스템에 모든 데이터 세트 이름을 표시합니다. 이 예에서 rpool은 ZFS 풀 이름이고, new-zfsBE는 새로 만든 ZFS 부트 환경 이름입니다.
# zfs list NAME USED AVAIL REFER MOUNTPOINT rpool 11.4G 2.95G 31K /rpool rpool/ROOT 4.34G 2.95G 31K legacy rpool/ROOT/new-zfsBE 4.34G 2.95G 4.34G / rpool/dump 2.06G 5.02G 16K - rpool/swap 5.04G 7.99G 16K -
새 부트 환경에 대해 나열된 마운트 지점은 luactivate 명령이 실행될 때까지 임시로 사용됩니다. /dump 및 /swap 볼륨은 원래의 UFS 부트 환경과 공유되지 않지만 ZFS 루트 풀과 루트 풀에 있는 부트 환경 내에서는 공유됩니다.
예 13-1 비전역 영역이 설치된 UFS 루트(/) 파일 시스템에서 ZFS 루트 풀로 마이그레이션
다음 예에서는 기존 비전역 영역 myzone에 UFS 루트(/) 파일 시스템의 비전역 영역 루트가 있으며, 영역 zzone에는 기존 ZFS 저장소 풀 pool에 있는 ZFS 파일 시스템의 영역 루트가 있습니다. Live Upgrade는 UFS 부트 환경 c2t2d0s0을 ZFS 부트 환경 zfs2BE로 마이그레이션하는 데 사용됩니다. UFS 기반 myzone 영역은 Live Upgrade 작업 전에 만들어지는 새 ZFS 저장소 풀 mpool로 마이그레이션됩니다. ZFS 기반 비전역 영역 zzone은 복제되지만 ZFS 풀인 pool에 유지되며 새 zfs2BE 부트 환경으로 마이그레이션됩니다.
부트 환경을 만드는 명령은 다음과 같습니다.
# zoneadm list -iv ID NAME STATUS PATH BRAND IP 0 global running / native shared - myzone installed /zones/myzone native shared - zzone installed /pool/zones native shared # zpool create mpool mirror c3t0d0s0 c4td0s0 # lucreate -c c1t2d0s0 -n zfs2BE -p mpool Checking GRUB menu... Analyzing system configuration. Updating boot environment description database on all BEs. Updating system configuration files. The device </dev/dsk/c1t1d0s0> is not a root device for any boot environment; cannot get BE ID. Creating configuration for boot environment <zfs2BE>. Source boot environment is <c1t2d0s0>. Creating file systems on boot environment <zfs2BE>. Creating <zfs> file system for </> in zone <global> on <mpool/ROOT/zfs2BE>. Populating file systems on boot environment <zfs2BE>. Analyzing zones. Mounting ABE <zfs2BE>. Generating file list. Copying data from PBE <c1t2d0s0> to ABE <zfs2BE>. 100% of filenames transferred Finalizing ABE. Fixing zonepaths in ABE. Unmounting ABE <zfs2BE>. Fixing properties on ZFS datasets in ABE. Reverting state of zones in PBE <c1t2d0s0>. Making boot environment <zfs2BE> bootable. Updating bootenv.rc on ABE <zfs2BE>. Saving existing file </boot/grub/menu.lst> in top level dataset for BE <zfs2BE> as <mount-point>//boot/grub/menu.lst.prev. File </boot/grub/menu.lst> propagation successful Copied GRUB menu from PBE to ABE No entry for BE <zfs2BE> in GRUB menu Population of boot environment <zfs2BE> successful. Creation of boot environment <zfs2BE> successful.
lucreate 작업이 완료되면 lustatus 명령을 사용하여 이 예에서와 같이 부트 환경 상태를 봅니다.
# lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- c1t2d0s0 yes yes yes no - zfsBE yes no no yes -
# zoneadm list -iv ID NAME STATUS PATH BRAND IP 0 global running / native shared - myzone installed /zones/myzone native shared - zzone installed /pool/zones native shared
다음으로 luactivate 명령을 사용하여 새 ZFS 부트 환경을 활성화합니다. 예:
# luactivate zfsBE A Live Upgrade Sync operation will be performed on startup of boot environment <zfsBE>. ********************************************************************** The target boot environment has been activated. It will be used when you reboot. NOTE: You MUST NOT USE the reboot, halt, or uadmin commands. You MUST USE either the init or the shutdown command when you reboot. If you do not use either init or shutdown, the system will not boot using the target BE. ********************************************************************** In case of a failure while booting to the target BE, the following process needs to be followed to fallback to the currently working boot environment: 1. Enter the PROM monitor (ok prompt). 2. Boot the machine to Single User mode using a different boot device (like the Solaris Install CD or Network). Examples: At the PROM monitor (ok prompt): For boot to Solaris CD: boot cdrom -s For boot to network: boot net -s 3. Mount the Current boot environment root slice to some directory (like /mnt). You can use the following command to mount: mount -Fufs /dev/dsk/c1t0d0s0 /mnt 4. Run <luactivate> utility with out any arguments from the current boot environment root slice, as shown below: /mnt/sbin/luactivate 5. luactivate, activates the previous working boot environment and indicates the result. 6. Exit Single User mode and reboot the machine. ********************************************************************** Modifying boot archive service Activation of boot environment <zfsBE> successful.
ZFS BE로 시스템을 재부트합니다.
# init 6 # svc.startd: The system is coming down. Please wait. svc.startd: 79 system services are now being stopped. . . .
이 예에서와 같이 새 부트 환경과 마이그레이션된 영역의 상태를 확인합니다.
# lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- c1t2d0s0 yes yes yes no - zfsBE yes no no yes -
ZFS 저장소 풀은 UFS 부트 환경에서 자동으로 사용할 수 없으므로 UFS 부트 환경으로 폴백하면 ZFS 부트 환경에서 만들었던 ZFS 저장소 풀을 다시 가져와야 합니다. UFS 부트 환경으로 다시 전환하는 경우 다음과 유사한 메시지가 표시될 수 있습니다.
# luactivate c1t2d0s0 WARNING: The following files have changed on both the current boot environment <ZFSbe> zone <global> and the boot environment to be activated <c1t2d0s0>: /etc/zfs/zpool.cache INFORMATION: The files listed above are in conflict between the current boot environment <ZFSbe> zone <global> and the boot environment to be activated <c1t2d0s0>. These files will not be automatically synchronized from the current boot environment <ZFSbe> when boot environment <c1t2d0s0>