Solaris 10 5/09 설치 설명서: Solaris Live Upgrade 및 업그레이드 계획

2 Solaris Live Upgrade를 사용하여 업그레이드 및 ZFS 루트 풀로 마이그레이션

여기에서는 Solaris Live Upgrade를 사용하여 ZFS 저장소 풀에서 비활성 부트 환경을 만들고 업그레이드하는 데 대한 개요와 지침을 제공합니다. 또한 UFS 루트(/) 파일 시스템을 ZFS 루트 풀로 마이그레이션할 수도 있습니다.

11장 Solaris Live Upgrade 및 ZFS(개요)

Solaris Live Upgrade를 사용하여 UFS 파일 시스템을 ZFS 루트 풀로 마이그레이션하고 기존 ZFS 루트 풀에서 ZFS 루트 파일 시스템을 만들 수 있습니다.


주 –

Solaris Live Upgrade를 사용하여 부트 환경을 만드는 작업은 Solaris 10 10/08 릴리스의 새로운 기능입니다. UFS 파일 시스템에서 Solaris Live Upgrade를 수행하면 명령줄 매개 변수와 Solaris Live Upgrade의 작동이 둘 다 변경되지 않는 상태로 유지됩니다. Solaris Live Upgrade를 UFS 파일 시스템이 있는 시스템에서 수행하려면 이 설명서의 제1부, Solaris Live Upgrade로 업그레이드를 참조하십시오.


다음 절에서는 이러한 작업에 대한 개요를 제공합니다.

ZFS와 함께 Solaris Live Upgrade 사용 소개

UFS 파일 시스템이 있는 경우 Solaris Live Upgrade는 이전 릴리스와 동일하게 작동합니다. 이제 UFS 파일 시스템에서 ZFS 루트 풀로 마이그레이션하고 ZFS 루트 풀에 새 부트 환경을 만들 수 있습니다. 이러한 작업을 위해 lucreate 명령이 -p 옵션을 사용하여 향상되었습니다. 명령 구문은 다음과 같습니다.


# lucreate [-c active_BE_name] -n BE_name [-p zfs_root_pool]

-p 옵션은 새 부트 환경이 있는 ZFS 풀을 지정합니다. 소스와 대상 부트 환경이 동일한 풀에 있는 경우 이 옵션은 생략할 수 있습니다.

lucreate 명령의 -m 옵션은 ZFS에서 지원되지 않습니다. 기타 lucreate 명령 옵션은 일부를 제외하고는 보통 때처럼 작동합니다. 제한 사항에 대한 자세한 내용은 Solaris Live Upgrade 사용 시 시스템 요구 사항 및 제한를 참조하십시오.

UFS 파일 시스템에서 ZFS 루트 풀로 마이그레이션

현재 실행 중인 시스템에서 부트 환경을 만드는 경우 lucreate 명령은 UFS 루트(/) 파일 시스템을 ZFS 루트 풀로 복사합니다. 복사 프로세스는 사용 중인 시스템에 따라 시간이 걸릴 수 있습니다.

UFS 파일 시스템에서 마이그레이션하는 경우 소스 부트 환경은 디스크 슬라이스에서 UFS 루트(/) 파일 시스템일 수 있습니다. ZFS 루트 풀의 소스 부트 환경에서 UFS 파일 시스템의 부트 환경을 만들 수 없습니다.

UFS 루트(/) 파일 시스템에서 ZFS 루트 풀로 마이그레이션

다음 명령은 ZFS 루트 풀을 만들고, 해당 ZFS 루트 풀의 UFS 루트(/) 파일 시스템에서 새 부트 환경을 만듭니다. ZFS 루트 풀은 lucreate 작업 전에 있어야 하며, 업그레이드 가능하고 부트 가능하도록 하려면 전체 디스크가 아닌 슬라이스로 만들어야 합니다. 디스크에는 EFI 레이블이 있을 수 없지만 SMI 레이블이 있어야 합니다. 제한 사항에 대한 자세한 내용은 Solaris Live Upgrade 사용 시 시스템 요구 사항 및 제한를 참조하십시오.

그림 11–1에서는 별도의 슬라이스 c0t1d0s5에 루트 풀 rpool을 만드는 zpool 명령을 보여 줍니다. 디스크 슬라이스 c0t0d0s0에는 UFS 루트(/) 파일 시스템이 들어 있습니다. lucreate 명령에서 -c 옵션은 현재 실행 중인 시스템 c0t0d0, 즉 UFS 루트(/) 파일 시스템의 이름을 지정합니다. -n 옵션은 만들려는 부트 환경에 이름 new-zfsBE를 할당합니다. -p 옵션은 새 부트 환경 rpool을 배치할 위치를 지정합니다. UFS /export 파일 시스템과 /swap 볼륨은 새 부트 환경에 복사되지 않습니다.

그림 11–1 UFS 파일 시스템에서 ZFS 루트 풀로 마이그레이션

그림에 대한 설명은 컨텍스트를 참조하십시오.


예 11–1 UFS 루트(/) 파일 시스템에서 ZFS 루트 풀로 마이그레이션

이 예에서는 그림 11–1에서와 동일한 명령을 보여 줍니다. 명령은 새 루트 풀 rpool을 만들고 UFS 루트(/) 파일 시스템의 풀에 새 부트 환경을 만듭니다. 이 예에서 zfs list 명령은 zpool 명령을 통해 만든 ZFS 루트 풀을 보여 줍니다. 다음 zfs list 명령은 lucreate 명령을 통해 만든 데이터 세트를 보여 줍니다.


# zpool create rpool c0t1d0s5
# zfs list
NAME                        USED  AVAIL  REFER  MOUNTPOINT 
rpool                      9.29G  57.6G    20K  /rpool

# lucreate -c c0t0d0 -n new-zfsBE -p rpool
# zfs list
NAME                        USED  AVAIL  REFER  MOUNTPOINT 
rpool                      9.29G  57.6G    20K  /rpool
rpool/ROOT                 5.38G  57.6G    18K  /rpool/ROOT
rpool/ROOT/new-zfsBE       5.38G  57.6G   551M  /tmp/.alt.luupdall.110034
rpool/dump                 1.95G      -  1.95G  - 
rpool/swap                 1.95G      -  1.95G  - 

새 부트 환경은 rpool/ROOT/new-zfsBE입니다. 부트 환경 new-zfsBE는 이제 업그레이드하고 활성화할 수 있습니다.


Solaris Volume Manager 볼륨이 구성된 UFS 파일 시스템을 ZFS 루트 파일 시스템으로 마이그레이션

시스템에 SVM(Solaris Volume Manager)의 볼륨이 있는 경우 UFS 파일 시스템을 마이그레이션할 수 있습니다. 기존 SVM 구성에서 UFS 부트 환경을 만들려면 현재 실행 중인 시스템에서 새 부트 환경을 만듭니다. 그런 다음 새 UFS 부트 환경에서 ZFS 부트 환경을 만듭니다.

SVM(Solaris Volume Manager)의 개요. ZFS에서는 물리적 저장소를 관리하기 위해 저장소 풀 개념을 사용합니다. 기존의 파일 시스템은 단일 물리적 장치의 맨 위에서 구성되었습니다. 여러 장치의 주소를 지정하고 데이터 중복성을 제공하는 볼륨 관리자의 개념이 도입되어 단일 장치의 이미지가 제공됩니다. 따라서 여러 장치를 사용하기 위해 파일 시스템을 수정하지 않아도 되지만 이 설계로 인해 계층이 복잡해졌습니다. 해당 파일 시스템에 가상 볼륨에 있는 데이터의 물리적 배치에 대한 제어 권한이 없기에 이 복잡성으로 인해 특정 파일 시스템이 결국 향상되지 못했습니다.

SVM을 대체하는 ZFS 저장소 풀. ZFS는 볼륨 관리를 완벽하게 제거했습니다. 사용자에게 가상 볼륨을 만들도록 강제하는 대신 ZFS는 장치를 저장소 풀에 결합합니다. 저장소 풀은 저장소 장치 레이아웃 및 데이터 중복성과 같은 물리적 특성에 대해 설명하고, 파일 시스템을 만들 수 있는 임의의 데이터 저장소 역할을 수행합니다. 파일 시스템은 개별 장치에 대해 더 이상 제약을 받지 않으며, 장치를 활성화하여 풀에서 모든 파일 시스템과 공간을 공유합니다. 파일 시스템은 저장소 풀에 할당된 공간 내에서 자동으로 커지므로 파일 시스템의 크기를 미리 결정하지 않아도 됩니다. 새 저장소가 추가되면 풀에 있는 모든 파일 시스템은 추가 작업 없이 즉시 추가 공간을 사용할 수 있습니다. 저장소 풀은 여러 가지 방법으로 가상 메모리 시스템 역할을 합니다. 메모리 DIMM이 시스템에 추가되면 운영 체제는 사용자가 몇 가지 명령을 호출하여 메모리를 구성하고 개별 프로세스에 메모리를 할당하도록 강제하지 않습니다. 모든 시스템 프로세스에서 추가 메모리가 자동으로 사용됩니다.


예 11–2 SVM 볼륨이 있는 UFS 루트(/) 파일 시스템에서 ZFS 루트 풀로 마이그레이션

SVM 볼륨이 있는 시스템을 마이그레이션하는 경우 SVM 볼륨은 무시됩니다. 다음 예에서와 같이 루트 풀 내에서 미러를 설정할 수 있습니다.

이 예에서 lucreate 명령은 -m 옵션과 같이 사용되어 현재 실행 중인 시스템에서 새 부트 환경을 만듭니다. 디스크 슬라이스 c1t0d0s0에는 SVM 볼륨으로 구성된 UFS 루트(/) 파일 시스템이 들어 있습니다. zpool 명령은 루트 풀 c1t0d0s0과 RAID-1 볼륨(미러) c2t0d0s0을 만듭니다. 두 번째 lucreate 명령에서 -n 옵션은 만들려는 부트 환경에 이름 c0t0d0s0을 지정합니다. -s 옵션은 UFS 루트(/) 파일 시스템을 식별합니다. -p 옵션은 새 부트 환경 rpool을 배치할 위치를 지정합니다.


# lucreate -n ufsBE -m /:/dev/md/dsk/d104:ufs
# zpool create rpool mirror c1t0d0s0 c20t0d0s0
# lucreate -n c0t0d0s0 -s ufsBE -p rpool

부트 환경 c0t0d0s0은 이제 업그레이드하고 활성화할 수 있습니다.


ZFS 루트 풀에서 새 부트 환경 만들기

동일한 루트 풀이나 새 루트 풀에 새 ZFS 부트 환경을 만들 수 있습니다. 이 절에서는 다음에 대한 개요를 제공합니다.

동일한 루트 풀 내에 새 부트 환경 만들기

동일한 ZFS 루트 풀에서 새 부트 환경을 만드는 경우 lucreate 명령은 소스 부트 환경에서 스냅샷을 만들고, 복제는 스냅샷에서 만들어집니다. 스냅샷과 복제는 거의 즉시 만들어지며, 디스크 공간은 최소로 사용됩니다. 결국 필요한 디스크 공간의 크기는 업그레이드 프로세스의 일부로 교체되는 파일 수에 따라 달라집니다. 스냅샷은 읽기 전용이지만 복제는 스냅샷의 읽기/쓰기 복사본입니다. 복제 부트 환경에서 변경된 내용은 스냅샷이나 스냅샷이 만들어진 소스 부트 환경에 반영되지 않습니다.


주 –

활성 데이터 세트에서 데이터가 변경되면 스냅샷은 기존 데이터를 계속 참조하여 공간을 소모합니다. 결과적으로 스냅샷으로 인해 해당 데이터가 풀에 다시 해제되지 않습니다. 스냅샷에 대한 자세한 내용은 Solaris ZFS Administration Guide의 7 장, Working With ZFS Snapshots and Clones를 참조하십시오.


현재 부트 환경이 동일한 ZFS 풀에 있는 경우 -p 옵션을 생략합니다.

그림 11–2에서는 ZFS 루트 풀에서 ZFS 부트 환경 만들기를 보여 줍니다. 슬라이스 c0t0d0s0에는 ZFS 루트 풀 rpool이 들어 있습니다. lucreate 명령에서 -n 옵션은 만들려는 부트 환경에 이름 new-zfsBE를 할당합니다. 원래 루트 풀의 스냅샷은 rpool@new-zfsBE로 만들어집니다. 스냅샷은 새 부트 환경 new-zfsBE인 복제를 만드는 데 사용됩니다. 부트 환경 new-zfsBE는 이제 업그레이드하고 활성화할 수 있습니다.

그림 11–2 동일한 루트 풀에서 새 부트 환경 만들기

그림에 대한 설명은 컨텍스트를 참조하십시오.


예 11–3 동일한 ZFS 루트 풀 내에 부트 환경 만들기

이 예에서는 동일한 루트 풀에서 새 부트 환경을 만드는 그림 11–2에서와 동일한 명령을 보여 줍니다. lucreate 명령은 -c zfsBE 옵션을 사용하여 현재 실행 중인 부트 환경의 이름을 지정하며, -n new-zfsBE는 새 부트 환경을 만듭니다. zfs list 명령은 새 부트 환경과 스냅샷이 있는 ZFS 데이터 세트를 보여 줍니다.


# lucreate -c zfsBE -n new-zfsBE
# zfs list
AME                        USED  AVAIL  REFER  MOUNTPOINT 
rpool                      9.29G  57.6G    20K  /rpool
rpool/ROOT                 5.38G  57.6G    18K  /rpool/ROOT
rpool/ROOT/zfsBE           5.38G  57.6G   551M  
rpool/ROOT/zfsBE@new-zfsBE 66.5K      -   551M  -
rpool/ROOT/new-zfsBE       5.38G  57.6G   551M  /tmp/.alt.luupdall.110034
rpool/dump                 1.95G      -  1.95G  - 
rpool/swap                 1.95G      -  1.95G  - 

다른 루트 풀에 새 부트 환경 만들기

lucreate 명령을 사용하여 기존 ZFS 루트 풀을 다른 ZFS 루트 풀로 복사할 수 있습니다. 복사 프로세스는 사용 중인 시스템에 따라 약간 시간이 걸릴 수 있습니다.

그림 11–3에서는 부트 가능한 ZFS 루트 풀이 아직 없기 때문에 c0t1d0s5에 ZFS 루트 풀 rpool2를 만드는 zpool 명령을 보여 줍니다. lucreate 명령을 -n 옵션과 함께 사용하면 만들려는 부트 환경에 new-zfsBE 이름을 할당합니다. -p 옵션은 새 부트 환경을 배치할 위치를 지정합니다.

그림 11–3 다른 루트 풀에 새 부트 환경 만들기

그림에 대한 설명은 컨텍스트를 참조하십시오.


예 11–4 서로 다른 ZFS 루트 풀에 부트 환경 만들기

이 예에서는 새 루트 풀을 만들고 새로 만든 루트 풀에서 새 부트 환경을 만드는, 그림 11–3에서와 동일한 명령을 보여 줍니다. 이 예에서 zpool create 명령은 rpool2를 만듭니다. zfs list 명령은 rpool2에서 만든 ZFS 데이터 세트가 없음을 보여 줍니다. 데이터 세트는 lucreate 명령으로 만들어집니다.


# zpool create rpool2 c0t2d0s5
# zfs list
NAME                             USED    AVAIL   REFER   MOUNTPOINT 
rpool2                           9.29G    57.6G     20K   /rpool2 
rpool                            9.29G    57.6G     20K   /.new.lulib.rs.109262
rpool/ROOT                       5.46G    57.6G     18K   legacy
rpool/ROOT/zfsBE                 5.46G    57.6G   551M  
rpool/dump                       3.99G        -   3.99G   - 
rpool/swap                       3.99G        -   3.99G   - 

새 ZFS 루트 풀 rpool2는 디스크 슬라이스 c0t2d0s5에 만들어집니다.


# lucreate -n new-zfsBE -p rpool2
# zfs list
NAME                             USED    AVAIL   REFER   MOUNTPOINT 
rpool2                           9.29G    57.6G     20K   /rpool2 
rpool2/ROOT/                     5.38G    57.6G     18K   /rpool2/ROOT 
rpool2/ROOT/new-zfsBE            5.38G    57.6G    551M   /tmp/.new.luupdall.109859
rpool2/dump                      3.99G        -   3.99G   - 
rpool2/swap                      3.99G        -   3.99G   - 
rpool                            9.29G    57.6G     20K   /.new.lulib.rs.109262
rpool/ROOT                       5.46G    57.6G     18K   legacy
rpool/ROOT/zfsBE                 5.46G    57.6G   551M  
rpool/dump                       3.99G        -   3.99G   - 
rpool/swap                       3.99G        -   3.99G   - 

새 부트 환경 new-zfsBE는 다른 데이터 세트 ROOT, dumpswap과 함께 rpool2에 만들어집니다. 부트 환경 new-zfsBE는 이제 업그레이드하고 활성화할 수 있습니다.


현재 실행 중인 시스템 이외의 소스에서 새 부트 환경 만들기

부트 환경을 현재 실행 중인 시스템 이외의 소스에서 만들려는 경우 lucreate 명령을 -s 옵션과 함께 사용해야 합니다. -s 옵션은 UFS 파일 시스템의 경우와 동일하게 작동합니다. -s 옵션은 대체 루트(/) 파일 시스템의 경로를 제공합니다. 이 대체 루트(/) 파일 시스템은 새 ZFS 루트 풀을 만들기 위한 소스입니다. 대체 루트는 UFS(/) 루트 파일 시스템이거나 ZFS 루트 풀일 수 있습니다. 복사 프로세스는 사용 중인 시스템에 따라 시간이 걸릴 수 있습니다.


예 11–5 대체 루트(/) 파일 시스템에서 부트 환경 만들기

다음 명령은 기존 ZFS 루트 풀에서 새 ZFS 루트 풀을 만듭니다. -n 옵션은 만들려는 부트 환경에 이름 new-zfsBE를 할당합니다. -s 옵션은 부트 환경 source-zfsBE가 현재 실행 중인 부트 환경 대신 복사본의 소스로 사용되도록 지정합니다. -p 옵션은 newpool2에 새 부트 환경을 배치하도록 지정합니다.


# lucreate -n new-zfsBE  -s source-zfsBE -p rpool2

부트 환경 new-zfsBE는 이제 업그레이드하고 활성화할 수 있습니다.


비전역 영역이 설치된 시스템에서 ZFS 부트 환경 만들기

Solaris Live Upgrade를 사용하여 비전역 영역을 ZFS 루트 파일 시스템으로 마이그레이션할 수 있습니다. 개요, 계획 및 단계별 절차는 14 장비전역 영역이 설치된 ZFS용 Solaris Live Upgrade를 참조하십시오.

추가 자원

이 장에 포함된 항목에 대한 추가 정보는 표 11–1에 나열된 자원을 참조하십시오.

표 11–1 추가 자원

자원 

위치 

개요, 계획, 단계별 지침을 비롯한 ZFS 정보 

Solaris ZFS Administration Guide

UFS 파일 시스템이 있는 시스템에서 Solaris Live Upgrade 사용 

이 설명서의 제1부, Solaris Live Upgrade로 업그레이드

12장 ZFS용 Solaris Live Upgrade(계획)

이 장에서는 UFS 파일 시스템을 ZFS 파일 시스템으로 마이그레이션하기 전이나 기존 ZFS 루트 풀에서 새 ZFS 부트 환경을 만들기 전에 검토용으로 필요한 지침과 요구 사항에 대해 제공합니다.


주 –

Solaris Live Upgrade를 사용하여 부트 환경을 만드는 작업은 Solaris 10 10/08 릴리스의 새로운 기능입니다. UFS 파일 시스템에서 Solaris Live Upgrade를 수행하면 명령줄 매개 변수와 Solaris Live Upgrade의 작동이 둘 다 변경되지 않는 상태로 유지됩니다. Solaris Live Upgrade를 UFS 파일 시스템이 있는 시스템에서 수행하려면 이 설명서의 제1부, Solaris Live Upgrade로 업그레이드를 참조하십시오.


Solaris Live Upgrade 사용 시 시스템 요구 사항 및 제한

UFS 파일 시스템을 ZFS 파일 시스템으로 마이그레이션하기 전이나 기존 ZFS 루트 풀에서 새 ZFS 부트 환경을 만들기 전에 다음 요구 사항과 제한 사항을 읽고 이해해야 합니다. 이러한 요구 사항은 Solaris 10 5/09 설치 설명서: 설치 및 업그레이드 계획의 6 장, ZFS 루트 파일 시스템 설치(계획)에 나열된 요구 사항에 대한 추가 사항입니다.

표 12–1 요구 사항 및 제한 사항

요구 사항 또는 제한 사항 

설명 

정보 

최소 Solaris 10 10/08 릴리스가 설치되어 있어야 합니다. 

Solaris Live Upgrade를 사용하여 UFS 파일 시스템에서 ZFS 루트 풀로 마이그레이션하거나 루트 풀에서 새 부트 환경을 만드는 작업은 Solaris 10 10/08 릴리스의 새로운 기능입니다. 이 릴리스에는 ZFS와 함께 Solaris Live Upgrade를 사용하는 데 필요한 소프트웨어가 포함되어 있습니다. ZFS를 사용하려면 최소 이 릴리스가 설치되어 있어야 합니다.

 

디스크 공간 

부트 가능 ZFS 루트 파일 시스템에서 사용 가능한 최소 풀 공간 크기는 물리적 메모리의 양, 사용 가능한 디스크 공간, 만들어지는 부트 환경 수에 따라 달라집니다.  

자세한 내용은 Solaris 10 5/09 설치 설명서: 설치 및 업그레이드 계획ZFS 설치의 디스크 공간 요구 사항을 참조하십시오.

UFS 루트( /) 파일 시스템에서 ZFS 루트 풀로 마이그레이션하는 경우 이러한 요구 사항에 대해 고려하십시오.

  • UFS 파일 시스템에서 ZFS 파일 시스템으로의 마이그레이션만 가능합니다.

    • UFS 파일 시스템 이외의 파일 시스템은 ZFS 루트 풀로 전송할 수 없습니다.

    • UFS 파일 시스템은 ZFS 루트 풀에서 만들 수 없습니다.

  • 마이그레이션을 수행하기 전에 ZFS 저장소 풀이 있어야 합니다.

  • ZFS 저장소 풀을 업그레이드 가능하고 부트 가능하도록 하려면 전체 디스크가 아닌 슬라이스로 만들어야 합니다.

    • 슬라이스로 만들어진 풀은 미러될 수 있지만 RAID-Z 또는 여러 디스크의 비중복 구성의 경우는 가능하지 않습니다. SVM 장치 정보를 /dev/md/[r]dsk 디렉토리에서 사용할 수 있어야 합니다.

    • 풀에는 SMI 레이블이 있어야 합니다. EFI-레이블이 있는 디스크는 부트될 수 없습니다.

    • x86에만 해당: ZFS 풀은 fdisk 분할 영역이 있는 슬라이스에 있어야 합니다.

공유 파일 시스템을 마이그레이션하는 경우 공유 파일 시스템을 새 ZFS 루트 풀에서 별도의 슬라이스로 복사할 수 없습니다. 

예를 들어 UFS 루트(/) 파일 시스템에서 Solaris Live Upgrade를 수행하는 경우 -m 옵션을 사용하여 /export 파일 시스템을 다른 장치로 복사할 수 있습니다. 사용자에게는 공유 파일 시스템을 ZFS 풀로 복사하는 -m 옵션이 없습니다.

 

비전역 영역이 포함된 UFS 루트 파일 시스템을 마이그레이션하는 경우 공유 파일 시스템은 마이그레이션되지 않습니다. 

UFS 루트(/) 파일 시스템과 비전역 영역이 설치된 시스템에서 비전역 영역이 UFS - ZFS 마이그레이션의 일부로 중요 파일 시스템에 있는 경우 해당 영역이 마이그레이션됩니다. 그렇지 않고 동일한 ZFS 풀에서 업그레이드하는 경우에는 영역이 복제됩니다. 비전역 영역이 공유 UFS(/) 파일 시스템에 있는 경우 ZFS 루트 풀로 마이그레이션하려면 먼저 이전 Solaris 릴리스에서와 같이 해당 영역을 업그레이드해야 합니다.

ZFS rename 명령을 사용하지 마십시오.

Solaris Live Upgrade 기능은 이름 변경을 인식하지 못하며 ludelete와 같은 후속 명령이 실패합니다. 실제로 계속 사용하려는 기존 부트 환경이 있는 경우에는 ZFS 풀이나 파일 시스템의 이름을 변경하지 마십시오.

 

lucreate 명령을 사용하기 전에 데이터 세트 등록 정보를 설정합니다.

Solaris Live Upgrade는 부트 환경에서 데이터 세트를 만들고 스왑 영역과 덤프 장치에서 ZFS 볼륨을 만들지만 기존 데이터 세트 등록 정보의 수정은 고려하지 않습니다. 즉 데이터 세트 등록 정보가 새 부트 환경에서 활성화되려면 lucreate 작업 이전에 이 등록 정보를 설정해야 합니다. 예를 들면 다음과 같습니다.


# zfs set compression=on rpool/ROOT

Solaris ZFS Administration GuideIntroducing ZFS Properties를 참조하십시오.

동일한 ZFS 루트 풀에서 ZFS 부트 환경을 만드는 경우 lucreate 명령 포함 또는 제외 옵션을 사용하여 내용을 사용자 정의할 수 없습니다.

동일한 ZFS 루트 풀에서 부트 환경을 만드는 경우 -f, -o, -y, -Y-z 옵션을 사용하여 기본 부트 환경에서 파일을 포함하거나 제외시킬 수 없습니다. 하지만 다음의 경우 이러한 옵션을 사용할 수 있습니다.

  • UFS 파일 시스템 간 부트 환경 만들기

  • UFS 파일 시스템에서 ZFS 루트 풀로 부트 환경 만들기

  • ZFS 루트 풀에서 다른 ZFS 루트 풀로 부트 환경 만들기

포함 또는 제외 옵션 사용에 대한 자세한 내용은 부트 환경 만들기 및 내용 사용자 정의를 참조하십시오.

Solaris Live Upgrade를 사용하여 루트가 아닌 ZFS 파일 시스템을 업그레이드할 수는 없습니다. 

   

추가 자원

이 장에 포함된 항목에 대한 추가 정보는 표 12–2에 나열된 자원을 참조하십시오.

표 12–2 추가 자원

자원 

위치 

ZFS 설치 계획에 대한 자세한 내용 

Solaris 10 5/09 설치 설명서: 설치 및 업그레이드 계획의 6 장, ZFS 루트 파일 시스템 설치(계획)

개요, 계획, 단계별 지침을 비롯한 ZFS 정보 

Solaris ZFS Administration Guide

UFS 파일 시스템이 있는 시스템에서 Solaris Live Upgrade 사용 

이 설명서의 제1부, Solaris Live Upgrade로 업그레이드

13장 ZFS 루트 풀의 부트 환경 만들기

이 장에서는 Solaris Live Upgrade를 사용할 때 ZFS 부트 환경을 만드는 방법에 대한 단계별 절차에 대해 설명합니다.


주 –

UFS 파일 시스템에서 ZFS 루트 풀로의 마이그레이션이나 Solaris Live Upgrade를 사용한 ZFS 부트 환경 만들기는 Solaris 10 10/08 릴리스의 새로운 기능입니다. Solaris Live Upgrade를 UFS 파일 시스템이 있는 시스템에서 사용하려면 이 설명서의 제1부, Solaris Live Upgrade로 업그레이드를 참조하십시오.


이 장에서는 다음 작업의 절차에 대해 설명합니다.

비전역 영역이 설치되어 있는 경우 ZFS를 사용하는 절차는 14 장비전역 영역이 설치된 ZFS용 Solaris Live Upgrade를 참조하십시오.

UFS 파일 시스템을 ZFS 파일 시스템으로 마이그레이션

이 절차에서는 UFS 파일 시스템을 ZFS 파일 시스템으로 마이그레이션하는 방법에 대해 설명합니다. 부트 환경을 만들면 중요 파일 시스템을 활성 UFS 부트 환경에서 ZFS 루트 풀로 복사하는 방법이 제공됩니다. lucreate 명령은 중요 파일 시스템을 기존 ZFS 루트 풀에 있는 새 부트 환경으로 복사합니다. 사용자 정의(공유 가능) 파일 시스템은 복사되지 않으며 소스 UFS 부트 환경과 공유되지도 않습니다. 또한 /swap은 UFS 파일 시스템과 ZFS 루트 풀 사이에 공유되지 않습니다. 중요한 파일 시스템과 공유 가능한 파일 시스템에 대한 개요는 파일 시스템 유형을 참조하십시오.

ProcedureUFS 파일 시스템에서 ZFS 파일 시스템으로 마이그레이션하는 방법


주 –

활성 UFS 루트(/) 파일 시스템을 ZFS 루트 풀로 마이그레이션하려면 루트 풀 이름을 제공해야 합니다. 중요 파일 시스템은 루트 풀로 복사됩니다.


  1. Solaris Live Upgrade를 처음으로 실행하기 전에 설치 매체에서 최신 Solaris Live Upgrade 패키지를 설치하고 SunSolve 정보 설명서 206844에 나열된 패치를 설치해야 합니다. SunSolve 웹 사이트에서 정보 설명서 206844(이전의 72099)를 검색합니다.

    최신 패키지 및 패치를 설치하면 릴리스에 모든 최신 버그 수정과 새로운 기능이 포함됩니다. 새 부트 환경 만들기를 진행하기 전에 시스템과 관련된 모든 패치를 설치해야 합니다.

    다음 하위 단계에서는 SunSolve 정보 설명서 206844에 나오는 단계에 대해 설명합니다.


    주 –

    Solaris Live Upgrade를 사용하여 새 ZFS 부트 환경을 만들려면 최소 Solaris 10 10/08 릴리스가 설치되어 있어야 합니다. 이전 릴리스에는 작업을 수행할 수 있는 ZFS 및 Solaris Live Upgrade 소프트웨어가 없습니다.


    1. 수퍼유저 또는 동등한 역할의 사용자로 로그인합니다.

    2. Solaris Live Upgrade 패키지를 제거하거나 추가하려면 SunSolve 웹 사이트에서 제공되는 정보 설명서 206844의 지침을 따르십시오.

      세 개의 Solaris Live Upgrade 패키지 SUNWluu, SUNWlur SUNWlucfg는 Solaris Live Upgrade를 사용한 업그레이드에 필요한 소프트웨어를 구성합니다. 이들 패키지는 기존 소프트웨어, 새 기능, 버그 수정 등을 포함합니다. 기존 패키지를 제거하지 않고 Solaris Live Upgrade를 사용하기 전에 시스템에 새 패키지를 설치한 경우에는 대상 릴리스로의 업그레이드가 실패합니다. SUMWlucfg 패키지는 Solaris 10 8/07 릴리스부터 지원되는 새로운 기능입니다. Solaris 10 8/07 이전 릴리스의 Solaris Live Upgrade 패키지를 사용하는 경우에는 이 패키지를 제거하지 않아도 됩니다.


      # pkgrm SUNWlucfg SUNWluu SUNWlur
      
    3. 업그레이드 중인 릴리스에서 새 Solaris Live Upgrade 패키지를 설치합니다. 자세한 내용은 Solaris Live Upgrade 설치를 참조하십시오.

    4. Solaris Live Upgrade를 실행하기 전에 다음 패치를 설치해야 합니다. 이러한 패치에서는 최신 버그 수정과 릴리스의 새로운 기능을 설치합니다.

      SunSolve을 참조하여 가장 최근에 업데이트된 패치 목록이 있는지 확인합니다. SunSolve 웹 사이트에서 정보 문서 206844(이전의 72099)를 검색합니다.

      • 패치를 로컬 디스크에 저장하려는 경우에는 /var/tmp/lupatches와 같은 디렉토리를 만들고 해당 디렉토리로 패치를 다운로드합니다.

      • SunSolve 웹 사이트에서 패치 목록을 확인합니다.

      • 패치 디렉토리로 변경합니다.


        # cd /var/tmp/lupatches
        
      • patchadd 명령을 사용하여 패치를 설치합니다.


        # patchadd patch_id
        

        patch_id는 패치 번호입니다. 공백을 사용하여 여러 패치 이름을 구분합니다.


        주 –

        패치는 정보 문서 206844에서 지정한 순서대로 적용해야 합니다.


      • 필요한 경우 시스템을 재부트합니다. 특정 패치는 재부트해야만 적용됩니다.

        x86에만 해당: 시스템을 재부트해야 하며, 그렇지 않으면 Solaris Live Upgrade가 실패합니다.


        # init 6
        

        이제 성공적으로 마이그레이션하는 데 필요한 패키지 및 패치가 설치되었습니다.

  2. ZFS 루트 풀을 만듭니다.

    ZFS 루트 풀은 부트 가능하고 업그레이드 가능하도록 단일 슬라이스에 있어야 합니다.


    # zpool create rpool  c0t1d0s5
    
    rpool

    만들려는 새 ZFS 루트 풀 이름을 지정합니다.

    c0t1d0s5

    디스크 슬라이스 c0t1d0s5에 새 루트 풀을 만듭니다.

    새 루트 풀을 만드는 방법에 대한 자세한 내용은 Solaris ZFS Administration Guide를 참조하십시오.

  3. UFS 루트(/) 파일 시스템을 새 ZFS 루트 풀로 마이그레이션합니다.


    # lucreate [-c ufsBE] -n new-zfsBE -p rpool
    
    -c ufsBE

    이름 ufsBE를 현재 UFS 부트 환경에 할당합니다. 이 옵션은 필수 사항이 아니며 부트 환경을 처음 만들 때만 사용됩니다. 처음 lucreate를 실행할 때 -c 옵션을 생략하면 소프트웨어에서는 사용자의 기본 파일 이름을 사용합니다.

    -n new-zfsBE

    이름 new-zfsBE를 만들려는 부트 환경에 할당합니다. 이름은 시스템에서 고유해야 합니다.

    -p rpool

    새로 만든 ZFS 루트(/) 파일 시스템을 rpool에 정의된 ZFS 루트 풀에 배치합니다.

    새 ZFS 부트 환경을 만들 때 약간 시간이 걸릴 수도 있습니다. UFS 파일 시스템 데이터는 ZFS 루트 풀로 복사됩니다. 비활성 부트 환경이 만들어지면 luupgrade 또는 luactivate 명령을 사용하여 새 ZFS 부트 환경을 업그레이드하거나 활성화할 수 있습니다.

  4. (선택 사항) 부트 환경이 완전한지 확인합니다.

    이 예에서 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         -
  5. (선택 사항) 시스템에서 기본 데이터 세트 정보를 확인합니다.

    list 명령은 시스템에 모든 데이터 집합 이름을 표시합니다. 이 예에서 rpool은 ZFS 풀 이름이고, new-zfsBE는 새로 만든 ZFS 부트 환경 이름입니다.


    # zfs list
    NAME                        USED  AVAIL  REFER  MOUNTPOINT 
    rpool                      9.29G  57.6G    20K  /rpool
    rpool/ROOT                 5.38G  57.6G    18K  /rpool/ROOT
    rpool/ROOT/new-zfsBE       5.38G  57.6G   551M  /tmp/.alt.luupdall.110034
    rpool/dump                 1.95G      -  1.95G  - 
    rpool/swap                 1.95G      -  1.95G  - 

    새 부트 환경에 대해 나열된 마운트 지점은 luactivate 명령이 실행될 때까지 임시로 사용됩니다. /dump/swap 볼륨은 원래의 UFS 부트 환경과 공유되지 않지만 ZFS 루트 풀과 루트 풀에 있는 부트 환경 내에서는 공유됩니다.

    이제 새 부트 환경을 업그레이드하고 활성화할 수 있습니다. 예 13–1을 참조하십시오.


예 13–1 UFS 루트(/) 파일 시스템을 ZFS 루트 풀로 마이그레이션

이 예에서 새 ZFS 루트 풀인 rpool은 별도의 슬라이스 C0t0d0s4에서 만들어집니다. lucreate 명령은 현재 실행 중인 UFS 부트 환경 c0t0d0을 새 ZFS 부트 환경 new-zfsBE로 마이그레이션하고 새 부트 환경을 rpool에 배치합니다.


# zpool create rpool C0t0d0s4

# zfs list
NAME                        USED  AVAIL  REFER  MOUNTPOINT 
rpool                      9.29G  57.6G    20K  /rpool
# lucreate -c c0t0d0 -n new-zfsBE -p rpool
Analyzing system configuration.
Current boot environment is named <c0t0d0>.
Creating initial configuration for primary boot environment <c0t0d0>.
The device </dev/dsk/c0t0d0> is not a root device for any boot 
environment; cannot get BE ID.
PBE configuration successful: PBE name <c0t0d0> PBE Boot Device 
</dev/dsk/c0t0d0>.
Comparing source boot environment <c0t0d0> file systems with the file 
system(s) you specified for the new boot environment. Determining which 
file systems should be in the new boot environment.
Updating boot environment description database on all BEs.
Updating system configuration files.
The device </dev/dsk/c1t0d0s0> is not a root device for any boot 
environment; cannot get BE ID.
Creating configuration for boot environment <new-zfsBE>.
Source boot environment is <c0t0d0>.
Creating boot environment <new-zfsBE>.
Creating file systems on boot environment <new-zfsBE>.
Creating <zfs> file system for </> in zone <global> on 
<rpool/ROOT/new-zfsBE>.
Populating file systems on boot environment <new-zfsBE>.
Checking selection integrity.
Integrity check OK.
Populating contents of mount point </>.
Copying.
Creating shared file system mount points.
Creating compare databases for boot environment <zfsBE>.
Creating compare database for file system </>.
Making boot environment <zfsBE> bootable.
Creating boot_archive for /.alt.tmp.b-cBc.mnt
updating /.alt.tmp.b-cBc.mnt/platform/sun4u/boot_archive
Population of boot environment <new-zfsBE> successful.
Creation of boot environment <new-zfsBE> successful.

# lustatus
boot environment   Is         Active   Active     Can	    Copy 
Name               Complete   Now	  OnReboot   Delete	 Status 
------------------------------------------------------------------------ 
c0t0d0             yes       yes      yes        no         - 
new-zfsBE           yes       no       no        yes       -

# zfs list
NAME                        USED  AVAIL  REFER  MOUNTPOINT 
rpool                      9.29G  57.6G    20K  /rpool
rpool/ROOT                 5.38G  57.6G    18K  /rpool/ROOT
rpool/ROOT/zfsBE           5.38G  57.6G   551M  
rpool/ROOT/new-zfsBE       5.38G  57.6G   551M  /tmp/.alt.luupdall.110034
rpool/dump                 1.95G      -  1.95G  - 
rpool/swap                 1.95G      -  1.95G  - 

이제 새 부트 환경을 업그레이드하거나 활성화할 수 있습니다.

이 예에서 새 부트 환경은 -s 옵션으로 지정된 위치에 저장된 이미지에서 luupgrade 명령을 사용하여 업그레이드됩니다.


# luupgrade -n zfsBE -u -s /net/install/export/s10/combined.s10
 51135 blocks 
miniroot filesystem is <lofs>
Mounting miniroot at 
</net/install/export/solaris_10/combined.solaris_10_wos
/Solaris_10/Tools/Boot> 
Validating the contents of the media 
</net/install/export/s10/combined.s10>. 
The media is a standard Solaris media. 
The media contains an operating system upgrade image. 
The media contains Solaris version <10_1008>. 
Constructing upgrade profile to use. 
Locating the operating system upgrade program. 
Checking for existence of previously scheduled Live 
Upgrade requests. 
Creating upgrade profile for BE <zfsBE>. 
Determining packages to install or upgrade for BE <zfsBE>. 
Performing the operating system upgrade of the BE <zfsBE>. 
CAUTION: Interrupting this process may leave the boot environment 
unstable or unbootable. 
Upgrading Solaris: 100% completed 
Installation of the packages from this media is complete. 
Adding operating system patches to the BE <zfsBE>. 
The operating system patch installation is complete. 
INFORMATION: The file /var/sadm/system/logs/upgrade_log on boot 
environment <zfsBE> contains a log of the upgrade operation. 
INFORMATION: The file var/sadm/system/data/upgrade_cleanup on boot 
environment <zfsBE> contains a log of cleanup operations required. 
INFORMATION: Review the files listed above. Remember that all 
of the files are located on boot environment <zfsBE>. 
Before you activate boot environment <zfsBE>, determine if any 
additional system maintenance is required or if additional media 
of the software distribution must be installed. 
The Solaris upgrade of the boot environment <zfsBE> is complete.

새 부트 환경을 만든 후에는 언제든지 활성화할 수 있습니다.


# luactivate new-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. Change the boot device back to the original boot environment by typing:

     setenv boot-device /pci@1f,0/pci@1/scsi@4,1/disk@2,0:a

3. Boot to the original boot environment by typing:

     boot

**********************************************************************

Modifying boot archive service
Activation of boot environment <new-zfsBE> successful.

ZFS 부트 환경으로 시스템을 재부트합니다.


# init 6
# svc.startd: The system is coming down.  Please wait.
svc.startd: 79 system services are now being stopped.
.
.
.

ZFS 저장소 풀은 UFS 부트 환경에서 자동으로 사용할 수 없으므로 UFS 부트 환경으로 폴백하면 ZFS 부트 환경에서 만들었던 ZFS 저장소 풀을 다시 가져와야 합니다. UFS 부트 환경으로 다시 전환하는 경우 다음 예와 유사한 메시지가 표시될 수 있습니다.


# luactivate c0t0d0
WARNING: The following files have changed on both the current boot 
environment <new-zfsBE> zone <global> and the boot environment 
to be activated <c0t0d0>:
 /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 <c0t0d0>. These files will not be automatically synchronized 
from the current boot environment <new-zfsBE> when boot environment <c0t0d0>

동일한 ZFS 루트 풀 내에 부트 환경 만들기

기존 ZFS 루트 풀이 있으며 해당 풀 내에서 새 ZFS 부트 환경을 만들려는 경우 다음 절차에서 제공하는 해당 단계를 참조하십시오. 비활성 부트 환경을 만든 후에는 편리한 시간에 새 부트 환경을 업그레이드하고 활성화할 수 있습니다. 동일한 풀 내에 부트 환경을 만드는 경우에는 -p 옵션이 필요 없습니다.

Procedure동일한 ZFS 루트 풀 내에서 ZFS 부트 환경을 만드는 방법

  1. Solaris Live Upgrade를 처음으로 실행하기 전에 설치 매체에서 최신 Solaris Live Upgrade 패키지를 설치하고 SunSolve 정보 설명서 206844에 나열된 패치를 설치해야 합니다. SunSolve 웹 사이트에서 정보 설명서 206844(이전의 72099)를 검색합니다.

    최신 패키지 및 패치를 설치하면 릴리스에 모든 최신 버그 수정과 새로운 기능이 포함됩니다. 새 부트 환경 만들기를 진행하기 전에 시스템과 관련된 모든 패치를 설치해야 합니다.

    다음 하위 단계에서는 SunSolve 정보 설명서 206844에 나오는 단계에 대해 설명합니다.


    주 –

    Solaris Live Upgrade를 사용하여 새 ZFS 부트 환경을 만들려면 최소 Solaris 10 10/08 릴리스가 설치되어 있어야 합니다. 이전 릴리스에는 작업을 수행할 수 있는 ZFS 및 Solaris Live Upgrade 소프트웨어가 없습니다.


    1. 수퍼유저 또는 동등한 역할의 사용자로 로그인합니다.

    2. Solaris Live Upgrade 패키지를 제거하거나 추가하려면 SunSolve 웹 사이트에서 제공되는 정보 설명서 206844의 지침을 따르십시오.

      세 개의 Solaris Live Upgrade 패키지 SUNWluu, SUNWlur SUNWlucfg는 Solaris Live Upgrade를 사용한 업그레이드에 필요한 소프트웨어를 구성합니다. 이들 패키지는 기존 소프트웨어, 새 기능, 버그 수정 등을 포함합니다. 기존 패키지를 제거하지 않고 Solaris Live Upgrade를 사용하기 전에 시스템에 새 패키지를 설치한 경우에는 대상 릴리스로의 업그레이드가 실패합니다. SUMWlucfg 패키지는 Solaris 10 8/07 릴리스부터 지원되는 새로운 기능입니다. Solaris 10 8/07 이전 릴리스의 Solaris Live Upgrade 패키지를 사용하는 경우에는 이 패키지를 제거하지 않아도 됩니다.


      주 –

      SUMWlucfg 패키지는 Solaris 10 8/07 릴리스부터 지원되는 새로운 기능입니다. 이전 릴리스의 Solaris Live Upgrade 패키지를 사용하는 경우에는 이 패키지를 제거하지 않아도 됩니다.



      # pkgrm SUNWlucfg SUNWluu SUNWlur
      
    3. 새 Solaris Live Upgrade 패키지를 설치합니다. 자세한 내용은 Solaris Live Upgrade 설치를 참조하십시오.

    4. Solaris Live Upgrade를 실행하기 전에 다음 패치를 설치해야 합니다. 이러한 패치에서는 최신 버그 수정과 릴리스의 새로운 기능을 설치합니다.

      SunSolve을 참조하여 가장 최근에 업데이트된 패치 목록이 있는지 확인합니다. SunSolve 웹 사이트에서 정보 문서 206844(이전의 72099)를 검색합니다.

      • 패치를 로컬 디스크에 저장하려는 경우에는 /var/tmp/lupatches와 같은 디렉토리를 만들고 해당 디렉토리로 패치를 다운로드합니다.

      • SunSolve 웹 사이트에서 패치 목록을 확인합니다.

      • 이 예에서처럼 패치 디렉토리를 변경합니다.


        # cd /var/tmp/lupatches
        
      • patchadd 명령을 사용하여 패치를 설치합니다.


        # patchadd path-to-patches patch_id patch_id
        

        path-to-patches는 패치 디렉토리의 경로(예: /var/tmp/lupatches)입니다. patch_id는 패치 번호입니다. 공백을 사용하여 여러 패치 이름을 구분합니다.


        주 –

        패치는 정보 문서 206844에서 지정한 순서대로 적용해야 합니다.


      • 필요한 경우 시스템을 재부트합니다. 특정 패치는 재부트해야만 적용됩니다.

        x86에만 해당: 시스템을 재부트해야 하며, 그렇지 않으면 Solaris Live Upgrade가 실패합니다.


        # init 6
        

        이제 새 부트 환경을 성공적으로 만드는 데 필요한 패키지 및 패치가 설치되었습니다.

  2. 새 부트 환경을 만듭니다.


    # lucreate [-c zfsBE] -n new-zfsBE
    
    -c zfsBE

    이름 zfsBE를 현재 부트 환경에 할당합니다. 이 옵션은 필수 사항이 아니며 부트 환경을 처음 만들 때만 사용됩니다. 처음 lucreate를 실행할 때 -c 옵션을 생략하면 소프트웨어에서는 기본 파일 이름을 사용합니다.

    -n new-zfsBE

    만들려는 부트 환경에 이름을 할당합니다. 이름은 시스템에서 고유해야 합니다.

    새 부트 환경은 거의 즉시 만들어집니다. 현재 ZFS 루트 풀에 있는 각 데이터 세트의 스냅샷이 만들어지며, 클론이 각 스냅샷에서 만들어집니다. 스냅샷은 디스크 공간 측면에서 매우 효율적이며, 이 프로세스에서는 최소의 디스크 공간이 사용됩니다. 비활성 부트 환경이 만들어지면 luupgrade 또는 luactivate 명령을 사용하여 새 ZFS 부트 환경을 업그레이드하거나 활성화할 수 있습니다.

  3. (선택 사항) 부트 환경이 완전한지 확인합니다.

    lustatus 명령은 부트 환경 만들기가 완료되었고 부트 가능한지 보고합니다.


    # lustatus
    boot environment   Is        Active  Active     Can	    Copy 
    Name               Complete  Now	 OnReboot   Delete	 Status 
    ------------------------------------------------------------------------ 
    zfsBE               yes       yes     yes         no             -
    new-zfsBE           yes       no      no          yes            -
  4. (선택 사항) 시스템에서 기본 데이터 세트 정보를 확인합니다.

    이 예에서 ZFS 루트 풀은 rpool로 이름이 지정되며 @ 기호는 스냅샷을 나타냅니다. 새 부트 환경의 마운트 지점은 luactivate 명령이 실행될 때까지 임시로 사용됩니다. /dump/swap 볼륨은 ZFS 루트 풀과 루트 풀에 있는 부트 환경과 공유됩니다.


    # zfs list
    NAME                                      USED  AVAIL  REFER  MOUNTPOINT 
    rpool                                    9.29G  57.6G    20K  /rpool 
    rpool/ROOT                               5.38G  57.6G    18K  /rpool/ROOT 
    rpool/ROOT/zfsBE                         5.38G  57.6G   551M  
    rpool/ROOT/zfsBE@new-zfsBE               66.5K      -   551M  -
    rpool/ROOT/new-zfsBE                     85.5K  57.6G   551M  /tmp/.alt.103197
    rpool/dump                               1.95G      -  1.95G  - 
    rpool/swap                               1.95G      -  1.95G  - 

    이제 새 부트 환경을 업그레이드하고 활성화할 수 있습니다. 예 13–2를 참조하십시오.


예 13–2 동일한 ZFS 루트 풀 내에 부트 환경 만들기

다음 명령은 새 ZFS 부트 환경 new-zfsBE를 만듭니다. 부트 환경이 동일한 루트 풀 내에 만들어지므로 -p 옵션이 필요 없습니다.


# lucreate [-c zfsBE] -n new-zfsBE
Analyzing system configuration.
Comparing source boot environment <zfsBE> file systems with the file
system(s) you specified for the new boot environment. Determining which
file systems should be in the new boot environment.
Updating boot environment description database on all BEs.
Creating configuration for boot environment new-zfsBE.
Source boot environment is zfsBE.
Creating boot environment new-zfsBE.
Cloning file systems from boot environment zfsBE to create 
boot environment new-zfsBE.
Creating snapshot for <rpool> on <rpool> Creating clone for <rpool>. 
Setting canmount=noauto for <rpool> in zone <global> on <rpool>. 
Population of boot environment zfsBE successful on <rpool>.
# lustatus
boot environment   Is        Active  Active     Can	    Copy 
Name               Complete  Now	   OnReboot   Delete	 Status 
------------------------------------------------------------------------ 
zfsBE               yes       yes     yes         no          - 
new-zfsBE           yes       no      no          yes         -
# zfs list
NAME                                      USED  AVAIL  REFER  MOUNTPOINT 
rpool                                    9.29G  57.6G    20K  /rpool 
rpool/ROOT                               5.38G  57.6G    18K  /rpool/ROOT 
rpool/ROOT/zfsBE                         5.38G  57.6G   551M  
rpool/ROOT/zfsBE@new-zfsBE               66.5K      -   551M  - 
rpool/ROOT/new-zfsBE                     85.5K  57.6G   551M  /tmp/.alt.103197 
rpool/dump                               1.95G      -  1.95G  - 
rpool/swap                               1.95G      -  1.95G  - 

이제 새 부트 환경을 업그레이드하고 활성화할 수 있습니다. ZFS 부트 환경의 업그레이드에 대한 예는 예 13–1을 참조하십시오. luupgrade 명령 사용에 대한 예는 5 장Solaris Live Upgrade를 통해 업그레이드(작업)를 참조하십시오.


# luactivate new-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. Change the boot device back to the original boot environment by typing:

     setenv boot-device /pci@1f,0/pci@1/scsi@4,1/disk@2,0:a

3. Boot to the original boot environment by typing:

     boot

**********************************************************************

Modifying boot archive service
Activation of boot environment <new-zfsBE> successful.

ZFS 부트 환경으로 시스템을 재부트합니다.


# init 6
# svc.startd: The system is coming down.  Please wait.
svc.startd: 79 system services are now being stopped.
.
.
.

새 루트 풀에 부트 환경 만들기

기존 ZFS 루트 풀이 있지만 새 루트 풀에서 새 ZFS 부트 환경을 만들려는 경우 다음 절차에서 제공하는 해당 단계를 참조하십시오. 비활성 부트 환경을 만든 후에는 편리한 시간에 새 부트 환경을 업그레이드하고 활성화할 수 있습니다. 새 부트 환경을 배치하는 위치를 참조하려면 -p 옵션이 필요합니다. 기존 ZFS 루트 풀이 있어야 하며, 부트 가능하고 업그레이드 가능하도록 개별 슬라이스에 있어야 합니다.

Procedure새 ZFS 루트 풀에 부트 환경을 만드는 방법

  1. Solaris Live Upgrade를 처음으로 실행하기 전에 설치 매체에서 최신 Solaris Live Upgrade 패키지를 설치하고 SunSolve 정보 설명서 206844에 나열된 패치를 설치해야 합니다. SunSolve 웹 사이트에서 정보 설명서 206844(이전의 72099)를 검색합니다.

    최신 패키지 및 패치를 설치하면 릴리스에 모든 최신 버그 수정과 새로운 기능이 포함됩니다. 새 부트 환경 만들기를 진행하기 전에 시스템과 관련된 모든 패치를 설치해야 합니다.

    다음 하위 단계에서는 SunSolve 정보 설명서 206844에 나오는 단계에 대해 설명합니다.


    주 –

    Solaris Live Upgrade를 사용하여 새 ZFS 부트 환경을 만들려면 최소 Solaris 10 10/08 릴리스가 설치되어 있어야 합니다. 이전 릴리스에는 작업을 수행할 수 있는 ZFS 및 Solaris Live Upgrade 소프트웨어가 없습니다.


    1. 수퍼유저 또는 동등한 역할의 사용자로 로그인합니다.

    2. Solaris Live Upgrade 패키지를 제거하거나 추가하려면 SunSolve 웹 사이트에서 제공되는 정보 설명서 206844의 지침을 따르십시오.

      세 개의 Solaris Live Upgrade 패키지 SUNWluu, SUNWlur SUNWlucfg는 Solaris Live Upgrade를 사용한 업그레이드에 필요한 소프트웨어를 구성합니다. 이들 패키지는 기존 소프트웨어, 새 기능, 버그 수정 등을 포함합니다. 기존 패키지를 제거하지 않고 Solaris Live Upgrade를 사용하기 전에 시스템에 새 패키지를 설치한 경우에는 대상 릴리스로의 업그레이드가 실패합니다. SUMWlucfg 패키지는 Solaris 10 8/07 릴리스부터 지원되는 새로운 기능입니다. Solaris 10 8/07 이전 릴리스의 Solaris Live Upgrade 패키지를 사용하는 경우에는 이 패키지를 제거하지 않아도 됩니다.


      주 –

      SUMWlucfg 패키지는 Solaris 10 8/07 릴리스부터 지원되는 새로운 기능입니다. 이전 릴리스의 Solaris Live Upgrade 패키지를 사용하는 경우에는 이 패키지를 제거하지 않아도 됩니다.



      # pkgrm SUNWlucfg SUNWluu SUNWlur
      
    3. 새 Solaris Live Upgrade 패키지를 설치합니다. 자세한 내용은 Solaris Live Upgrade 설치를 참조하십시오.

    4. Solaris Live Upgrade를 실행하기 전에 다음 패치를 설치해야 합니다. 이러한 패치에서는 최신 버그 수정과 릴리스의 새로운 기능을 설치합니다.

      SunSolve을 참조하여 가장 최근에 업데이트된 패치 목록이 있는지 확인합니다. SunSolve 웹 사이트에서 정보 문서 206844(이전의 72099)를 검색합니다.

      • 패치를 로컬 디스크에 저장하려는 경우에는 /var/tmp/lupatches와 같은 디렉토리를 만들고 해당 디렉토리로 패치를 다운로드합니다.

      • SunSolve 웹 사이트에서 패치 목록을 확인합니다.

      • 이 예에서처럼 패치 디렉토리를 변경합니다.


        # cd /var/tmp/lupatches
        
      • patchadd 명령을 사용하여 패치를 설치합니다.


        # patchadd path-to-patches patch_id patch_id
        

        path-to-patches는 패치 디렉토리의 경로(예: /var/tmp/lupatches)입니다. patch_id는 패치 번호입니다. 공백을 사용하여 여러 패치 이름을 구분합니다.


        주 –

        패치는 정보 문서 206844에서 지정한 순서대로 적용해야 합니다.


      • 필요한 경우 시스템을 재부트합니다. 특정 패치는 재부트해야만 적용됩니다.

        x86에만 해당: 시스템을 재부트해야 하며, 그렇지 않으면 Solaris Live Upgrade가 실패합니다.


        # init 6
        

        이제 성공적으로 마이그레이션하는 데 필요한 패키지 및 패치가 설치되었습니다.

  2. ZFS 루트 풀을 만듭니다.

    ZFS 루트 풀은 부트 가능하고 업그레이드 가능하도록 단일 슬라이스에 있어야 합니다.


    # zpool create rpool2 c0t1d0s5
    
    rpool2

    새 ZFS 루트 풀의 이름입니다.

    c0t1d0s5

    부트 가능 슬라이스 c0t1d0s5rpool2를 배치하도록 지정합니다.

    새 루트 풀을 만드는 방법에 대한 자세한 내용은 Solaris ZFS Administration Guide를 참조하십시오.

  3. 새 부트 환경을 만듭니다.


    # lucreate [-c zfsBE] -n new-zfsBE -p rpool2
    
    -c zfsBE

    이름 zfsBE를 현재 ZFS 부트 환경에 할당합니다.

    -n new-zfsBE

    만들려는 부트 환경에 이름을 할당합니다. 이름은 시스템에서 고유해야 합니다.

    -p rpool2

    새로 만든 ZFS 루트 부트 환경을 rpool2에 정의된 ZFS 루트 풀에 배치합니다.

    새 ZFS 부트 환경을 만들 때 약간 시간이 걸릴 수도 있습니다. 파일 시스템 데이터는 새 ZFS 루트 풀로 복사됩니다. 비활성 부트 환경이 만들어지면 luupgrade 또는 luactivate 명령을 사용하여 새 ZFS 부트 환경을 업그레이드하거나 활성화할 수 있습니다.

  4. (선택 사항) 부트 환경이 완전한지 확인합니다.

    lustatus 명령은 부트 환경 만들기가 완료되었고 부트 가능한지 보고합니다.


    # lustatus
    boot environment   Is        Active  Active     Can	    Copy 
    Name               Complete  Now	 OnReboot   Delete	 Status 
    ------------------------------------------------------------------------ 
    zfsBE                       yes      yes     yes        no        - 
    new-zfsBE                   yes      no      no         yes        -
  5. (선택 사항) 시스템에서 기본 데이터 세트 정보를 확인합니다.

    다음 예에서는 시스템에 모든 데이터 세트 이름을 표시합니다. 새 부트 환경에 대해 나열된 마운트 지점은 luactivate 명령이 실행될 때까지 임시로 사용됩니다. 새 부트 환경은 볼륨 rpool2/dumprpool2/swaprpool2 ZFS 부트 환경과 공유합니다.


    # zfs list
    NAME                             USED    AVAIL   REFER   MOUNTPOINT 
    rpool2                           9.29G    57.6G     20K   /rpool2 
    rpool2/ROOT/                     5.38G    57.6G     18K   /rpool2/ROOT 
    rpool2/ROOT/new-zfsBE            5.38G    57.6G    551M  /tmp/.new.luupdall.109859
    rpool2/dump                      3.99G        -   3.99G   - 
    rpool2/swap                      3.99G        -   3.99G   - 
    rpool                            9.29G    57.6G     20K   /.new.lulib.rs.109262
    rpool/ROOT                       5.46G    57.6G     18K   legacy
    rpool/ROOT/zfsBE                 5.46G    57.6G    551M  
    rpool/dump                       3.99G        -   3.99G   - 
    rpool/swap                       3.99G        -   3.99G   - 

    이제 새 부트 환경을 업그레이드하고 활성화할 수 있습니다. 예 13–3을 참조하십시오.


예 13–3 새 루트 풀에 부트 환경 만들기

이 예에서 새 ZFS 루트 풀인 rpool은 별도의 슬라이스 C0t2d0s5에서 만들어집니다. lucreate 명령은 새 ZFS 부트 환경 new-zfsBE를 만듭니다. 부트 환경이 서로 다른 루트 풀 내에 만들어지므로 -p 옵션이 필요합니다.


# zpool create rpool C0t1d0s5
# zfs list
NAME                             USED    AVAIL   REFER   MOUNTPOINT 
rpool2                           9.29G    57.6G     20K   /rpool2 
rpool                            9.29G    57.6G     20K   /.new.lulib.rs.109262
rpool/ROOT					             5.46G    57.6G     18K   legacy
rpool/ROOT/zfsBE                 5.46G    57.6G    551M  
rpool/dump                       3.99G        -   3.99G   - 
rpool/swap                       3.99G        -   3.99G   - 

# lucreate -c rpool -n new-zfsBE -p rpool2
Analyzing system configuration.
Current boot environment is named <rpool>.
Creating initial configuration for primary boot environment <rpool>.
The device </dev/dsk/c0t0d0> is not a root device for any 
boot environment; cannot get BE ID.
PBE configuration successful: PBE name <rpool> PBE Boot 
Device </dev/dsk/rpool>.
Comparing source boot environment <rpool> file systems with 
the file system(s) you specified for the new boot environment. 
Determining which file systems should be in the new boot environment.
Updating boot environment description database on all BEs.
Updating system configuration files.
The device </dev/dsk/c1t0d0s0> is not a root device for any 
boot environment; cannot get BE ID.
Creating configuration for boot environment <new-zfsBE>.
Source boot environment is <rpool>.
Creating boot environment <new-zfsBE>.
Creating file systems on boot environment <new-zfsBE>.
Creating <zfs> file system for </> in zone <global> on 
<rpool2/ROOT/new-zfsBE>.
Populating file systems on boot environment <new-zfsBE>.
Checking selection integrity.
Integrity check OK.
Populating contents of mount point </>.
Copying.
Creating shared file system mount points.
Creating compare databases for boot environment <zfsBE>.
Creating compare database for file system </>.
Making boot environment <new-zfsBE> bootable.
Creating boot_archive for /.alt.tmp.b-cBc.mnt
updating /.alt.tmp.b-cBc.mnt/platform/sun4u/boot_archive
Population of boot environment <new-zfsBE> successful.
Creation of boot environment <new-zfsBE> successful.

# lustatus
boot environment   Is        Active  Active     Can	    Copy 
Name               Complete  Now	OnReboot   Delete	 Status 
------------------------------------------------------------------------ 
zfsBE                yes      yes     yes        no        - 
new-zfsBE            yes      no      no         yes        -
# zfs list
NAME                             USED    AVAIL   REFER   MOUNTPOINT 
rpool2                           9.29G    57.6G     20K   /rpool2 
rpool2/ROOT/                     5.38G    57.6G     18K   /rpool2/ROOT 
rpool2/ROOT/new-zfsBE            5.38G    57.6G    551M   /tmp/.new.luupdall.109859
rpool2/dump                      3.99G        -   3.99G   - 
rpool2/swap                      3.99G        -   3.99G   - 
rpool                            9.29G    57.6G     20K   /.new.lulib.rs.109262
rpool/ROOT                       5.46G    57.6G     18K   legacy
rpool/ROOT/zfsBE                 5.46G    57.6G    551M  
rpool/dump                       3.99G        -   3.99G   - 
rpool/swap                       3.99G        -   3.99G   - 

현재 실행 중인 시스템 이외의 소스에서 부트 환경 만들기

기존 ZFS 루트 풀이 있거나 현재 활성 부트 환경으로 사용되지 않는 UFS 부트 환경이 있는 경우 다음 예를 사용하여 이 부트 환경에서 새 ZFS 부트 환경을 만들 수 있습니다. 새 ZFS 부트 환경을 만든 후에는 편리한 시간에 새 부트 환경을 업그레이드하고 활성화할 수 있습니다.

부트 환경을 현재 실행 중인 시스템 이외의 소스에서 만들려는 경우 lucreate 명령을 -s 옵션과 함께 사용해야 합니다. -s 옵션은 UFS 파일 시스템의 경우와 동일하게 작동합니다. -s 옵션은 대체 루트(/) 파일 시스템의 경로를 제공합니다. 이 대체 루트(/) 파일 시스템은 새 ZFS 루트 풀을 만들기 위한 소스입니다. 대체 루트는 UFS(/) 루트 파일 시스템이거나 ZFS 루트 풀일 수 있습니다. 복사 프로세스는 사용 중인 시스템에 따라 시간이 걸릴 수 있습니다.

다음 예에서는 다른 ZFS 루트 풀에서 부트 환경을 만들 때 -s 옵션이 사용되는 방법을 보여 줍니다.


예 13–4 현재 실행 중인 시스템 이외의 소스에서 부트 환경을 만드는 방법

다음 명령은 기존 ZFS 루트 풀에서 새 ZFS 루트 풀을 만듭니다. -n 옵션은 만들려는 부트 환경에 이름 new-zfsBE를 할당합니다. -s 옵션은 부트 환경 rpool3이 현재 실행 중인 부트 환경 대신 복사본의 소스로 사용되도록 지정합니다. -p 옵션은 rpool2에 새 부트 환경을 배치하도록 지정합니다.


# lucreate -n new-zfsBE -s rpool3 -p rpool2
# lustatus
boot environment   Is        Active  Active     Can	    Copy 
Name               Complete  Now	 OnReboot   Delete	 Status 
------------------------------------------------------------------------ 
zfsBE               yes      yes     yes        no         - 
zfsBE2              yes      no      no         yes        -
zfsBE3              yes      no      no         yes        -
new-zfsBE           yes      no      no         yes        -

# zfs list
NAME                            USED    AVAIL   REFER   MOUNTPOINT 
rpool2                         9.29G    57.6G     20K   /rpool2 
rpool2/ROOT/                   5.38G    57.6G     18K   /rpool2/ROOT 
rpool2/ROOT/new-zfsBE          5.38G    57.6G    551M   /tmp/.new.luupdall.109859
rpool2/dump                    3.99G        -   3.99G   - 
rpool2/swap                    3.99G        -   3.99G   - 
rpool3                         9.29G    57.6G     20K   /rpool2 
rpool3/ROOT/                   5.38G    57.6G     18K   /rpool2/ROOT 
rpool3/ROOT/zfsBE3             5.38G    57.6G   551M    /tmp/.new.luupdall.109859
rpool3/dump                    3.99G        -   3.99G   - 
rpool3/swap                    3.99G        -   3.99G   - 
prool                          9.29G    57.6G     20K   /.new.lulib.rs.109262
rpool/ROOT                     5.46G    57.6G     18K   legacy
rpool/ROOT/zfsBE               5.46G    57.6G   551M  
rpool/dump                     3.99G        -   3.99G   - 
rpool/swap                     3.99G        -   3.99G   -

이제 새 부트 환경을 업그레이드하고 활성화할 수 있습니다.


ZFS 부트 환경으로 폴백

업그레이드 후 오류가 감지되거나 응용 프로그램이 업그레이드된 구성 요소와 호환되지 않는 경우 luactivate 명령을 사용하여 원래의 부트 환경으로 폴백할 수 있습니다.

UFS 부트 환경에서 ZFS 루트 풀로 마이그레이션한 다음 UFS 부트 환경으로 폴백하도록 결정하면 ZFS 부트 환경에서 만들었던 ZFS 저장소 풀을 다시 가져와야 합니다. 이 ZFS 저장소 풀은 UFS 부트 환경에서 자동으로 사용할 수 없습니다. UFS 부트 환경으로 다시 전환하는 경우 다음 예와 유사한 메시지가 표시될 수 있습니다.


# luactivate c0t0d0
WARNING: The following files have changed on both the current boot 
environment <new-ZFSbe> zone <global> and the boot environment 
to be activated <c0t0d0>: /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 <c0t0d0>. These files will not be automatically synchronized 
from the current boot environment <new-ZFSbe> when boot 
environment <c0t0d0>

원래 부트 환경으로 폴백에 대한 예는 6 장오류 복구: 원래 부트 환경으로 폴백(작업)을 참조하십시오.

추가 자원

이 장에 포함된 항목에 대한 추가 정보는 표 13–1에 나열된 자원을 참조하십시오.

표 13–1 추가 자원

자원 

위치 

개요, 계획, 단계별 지침을 비롯한 ZFS 정보 

Solaris ZFS Administration Guide

UFS 파일 시스템이 있는 시스템에서 Solaris Live Upgrade 사용 

이 설명서의 제1부, Solaris Live Upgrade로 업그레이드

14장 비전역 영역이 설치된 ZFS용 Solaris Live Upgrade

이 장에서는 UFS(/) 루트 파일 시스템을 ZFS 루트 풀로 마이그레이션하는 작업에 대한 개요와 단계별 절차를 제공합니다.


주 –

UFS 루트(/) 파일 시스템에서 ZFS 루트 풀로의 마이그레이션이나 Solaris Live Upgrade를 사용한 ZFS 부트 환경 만들기는 Solaris 10 10/08 릴리스의 새로운 기능입니다. UFS 파일 시스템에서 Solaris Live Upgrade를 수행하면 명령줄 매개 변수와 Solaris Live Upgrade의 작동이 둘 다 변경되지 않는 상태로 유지됩니다. Solaris Live Upgrade를 UFS 파일 시스템이 있는 시스템에서 수행하려면 이 설명서의 제1부, Solaris Live Upgrade로 업그레이드를 참조하십시오.


비전역 영역이 설치된 시스템에 ZFS 부트 환경 만들기(개요 및 계획)

Solaris Live Upgrade를 사용하여 비전역 영역이 설치된 UFS 루트(/) 파일 시스템을 ZFS 루트 풀로 마이그레이션할 수 있습니다. 파일 시스템과 연관된 모든 비전역 영역은 새 부트 환경으로도 복사됩니다. 다음 비전역 영역 마이그레이션 시나리오가 지원됩니다.

사전 마이그레이션 루트 파일 시스템 및 영역 결합  

사후 마이그레이션 루트 파일 시스템 및 영역 결합 

UFS 파일 시스템에서 비전역 영역 루트 디렉토리가 있는 UFS 루트 파일 시스템 

ZFS 루트 풀에서 비전역 영역 루트 디렉토리가 있는 UFS 루트 파일 시스템 

 

ZFS 루트 풀에서 비전역 영역 루트 디렉토리가 있는 ZFS 루트 풀 

 

UFS 파일 시스템에서 비전역 영역 루트 디렉토리가 있는 ZFS 루트 풀 

ZFS 루트 풀에서 비전역 영역 루트가 있는 UFS 루트 파일 시스템 

ZFS 루트 풀에서 비전역 영역 루트가 있는 ZFS 루트 풀 

 

ZFS 루트 풀에서 비전역 영역 루트가 있는 UFS 루트 파일 시스템 

ZFS 루트 풀에서 비전역 영역 루트 디렉토리가 있는 ZFS 루트 풀 

ZFS 루트 풀에서 비전역 영역 루트 디렉토리가 있는 ZFS 루트 풀 

UFS 루트(/) 파일 시스템과 비전역 영역이 설치된 시스템에서 비전역 영역이 UFS - ZFS 마이그레이션의 일부로 공유되지 않는 파일 시스템에 있는 경우 해당 영역이 마이그레이션됩니다. 그렇지 않고 동일한 ZFS 풀에서 업그레이드하는 경우에는 영역이 복제됩니다. 비전역 영역이 공유 UFS 파일 시스템에 있는 경우 다른 ZFS 루트 풀로 마이그레이션하려면 먼저 이전 Solaris 릴리스에서와 같이 비전역 영역을 업그레이드해야 합니다.

비전역 영역이 설치된 UFS 루트(/) 파일 시스템에서 ZFS 루트 풀로 마이그레이션(작업)

이 장에서는 비전역 영역이 설치된 시스템에서 UFS 루트(/) 파일 시스템을 ZFS 루트 풀로 마이그레이션하는 단계별 지침을 제공합니다. UFS 파일 시스템의 공유 파일 시스템에는 비전역 영역이 없습니다.

Procedure비전역 영역이 설치된 시스템에서 UFS 파일 시스템을 ZFS 파일 시스템으로 마이그레이션하는 방법

lucreate 명령은 UFS 루트(/) 파일 시스템에서 ZFS 루트 풀의 부트 환경을 만듭니다. ZFS 루트 풀은 lucreate 작업 전에 있어야 하며, 업그레이드 가능하고 부트 가능하도록 하려면 전체 디스크가 아닌 슬라이스로 만들어야 합니다. 이 절차에서는 UFS 루트(/) 파일 시스템과 연결된 기존의 비전역 영역을 ZFS 루트 풀에 있는 새 부트 환경에 복사하는 방법에 대해 보여 줍니다.

다음 예에서는 기존 비전역 영역 myzone에 UFS 루트(/) 파일 시스템의 비전역 영역 루트가 있으며, 영역 zzone에는 기존 ZFS 저장소 풀 pool에 있는 ZFS 파일 시스템의 영역 루트가 있습니다. Solaris Live Upgrade는 UFS 부트 환경 c2t2d0s0을 ZFS 부트 환경 zfs2BE로 마이그레이션하는 데 사용됩니다. UFS 기반 myzone 영역은 Solaris Live Upgrade 작업 전에 만든 새 ZFS 저장소 풀 mpool로 마이그레이션합니다. ZFS 기반 비전역 영역 zzone은 복제되지만 ZFS 풀 pool에서 유지되며 새 zfs2BE 부트 환경으로 마이그레이션됩니다.

  1. Solaris Live Upgrade를 맨 처음 수행할 때 다음 단계를 수행합니다.


    주 –

    Solaris Live Upgrade를 사용하여 새 ZFS 부트 환경을 만들려면 최소 Solaris 10 10/08 릴리스가 설치되어 있어야 합니다. 이전 릴리스에는 작업을 수행할 수 있는 ZFS 및 Solaris Live Upgrade 소프트웨어가 없습니다.


    1. 필요한 경우 시스템에서 기존 Solaris Live Upgrade 패키지를 제거합니다. 새 릴리스로 업그레이드하려면 해당 릴리스의 패키지를 설치해야 합니다.

      세 개의 Solaris Live Upgrade 패키지 SUNWluu, SUNWlur SUNWlucfg는 Solaris Live Upgrade를 사용한 업그레이드에 필요한 소프트웨어를 구성합니다. 이들 패키지는 기존 소프트웨어, 새 기능, 버그 수정 등을 포함합니다. 기존 패키지를 제거하지 않고 Solaris Live Upgrade를 사용하기 전에 시스템에 새 패키지를 설치한 경우에는 대상 릴리스로의 업그레이드가 실패합니다.


      # pkgrm SUNWlucfg SUNWluu SUNWlur
      
    2. 업그레이드 중인 릴리스에서 새 Solaris Live Upgrade 패키지를 설치합니다. 자세한 내용은 Solaris Live Upgrade 설치를 참조하십시오.

    3. Solaris Live Upgrade를 설치하거나 실행하기 전에 다음 패치를 설치해야 합니다. 이러한 패치에서는 최신 버그 수정과 릴리스의 새로운 기능을 설치합니다.

      SunSolve을 참조하여 가장 최근에 업데이트된 패치 목록이 있는지 확인합니다. SunSolve 웹 사이트에서 정보 문서 206844(이전의 72099)를 검색합니다.

      • 수퍼유저 또는 동등한 역할의 사용자로 로그인합니다.

      • 패치를 로컬 디스크에 저장하려는 경우에는 /var/tmp/lupatches와 같은 디렉토리를 만들고 해당 디렉토리로 패치를 다운로드합니다.

      • SunSolve 웹 사이트에서 패치 목록을 확인합니다.

      • 패치 디렉토리로 변경합니다.


        # cd /var/tmp/lupatches
        
      • patchadd 명령을 사용하여 패치를 설치합니다.


        # patchadd patch_id
        

        patch_id는 패치 번호입니다. 공백을 사용하여 여러 패치 이름을 구분합니다.


        주 –

        패치는 정보 문서 206844에서 지정한 순서대로 적용해야 합니다.


      • 필요한 경우 시스템을 재부트합니다. 특정 패치는 재부트해야만 적용됩니다.

        x86에만 해당: 시스템을 재부트해야 하며, 그렇지 않으면 Solaris Live Upgrade가 실패합니다.


        # init 6
        
  2. ZFS 루트 풀을 만듭니다.

    ZFS 루트 풀은 부트 가능하고 업그레이드 가능하도록 단일 슬라이스에 있어야 합니다.


    # zpool create rpool c3t0d0s0
    

    이 예에서 만들려는 새 ZFS의 이름은 rpool입니다. 풀은 부트 가능한 슬라이스 c3t0d0s0에서 만들어집니다.

    새 루트 풀을 만드는 방법에 대한 자세한 내용은 Solaris ZFS Administration Guide를 참조하십시오.

  3. UFS 루트(/) 파일 시스템을 새 ZFS 루트 풀로 마이그레이션합니다.


    # lucreate [-c ufsBE] -n new-zfsBE -p rpool
    
    -c ufsBE

    이름 ufsBE를 현재 UFS 부트 환경에 할당합니다. 이 옵션은 필수 사항이 아니며 부트 환경을 처음 만들 때만 사용됩니다. 처음 lucreate를 실행할 때 -c 옵션을 생략하면 소프트웨어에서는 사용자의 기본 파일 이름을 사용합니다.

    -n new-zfsBE

    이름 new-zfsBE를 만들려는 부트 환경에 할당합니다. 이름은 시스템에서 고유해야 합니다.

    -p rpool

    새로 만든 ZFS 루트(/) 파일 시스템을 rpool에 정의된 ZFS 루트 풀에 배치합니다.

    공유되지 않는 모든 비전역 영역은 중요 파일 시스템과 함께 새 부트 환경으로 복사됩니다. 새 ZFS 부트 환경을 만들 때 약간 시간이 걸릴 수도 있습니다. UFS 파일 시스템 데이터는 ZFS 루트 풀로 복사됩니다. 비활성 부트 환경이 만들어지면 luupgrade 또는 luactivate 명령을 사용하여 새 ZFS 부트 환경을 업그레이드하거나 활성화할 수 있습니다.

  4. (선택 사항) 부트 환경이 완전한지 확인합니다.

    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         -
  5. (선택 사항) 시스템에서 기본 데이터 세트 정보를 확인합니다.

    list 명령은 시스템에 모든 데이터 집합 이름을 표시합니다. 이 예에서 rpool은 ZFS 풀 이름이고, new-zfsBE는 새로 만든 ZFS 부트 환경 이름입니다.


    # zfs list
    NAME                        USED  AVAIL  REFER  MOUNTPOINT 
    rpool                      9.29G  57.6G    20K  /rpool
    rpool/ROOT                 5.38G  57.6G    18K  /rpool/ROOT
    rpool/ROOT/new-zfsBE       5.38G  57.6G   551M  /tmp/.alt.luupdall.110034
    rpool/dump                 1.95G      -  1.95G  - 
    rpool/swap                 1.95G      -  1.95G  - 

    새 부트 환경에 대해 나열된 마운트 지점은 luactivate 명령이 실행될 때까지 임시로 사용됩니다. /dump/swap 볼륨은 원래의 UFS 부트 환경과 공유되지 않지만 ZFS 루트 풀과 루트 풀에 있는 부트 환경 내에서는 공유됩니다.


예 14–1 비전역 영역이 설치된 UFS 루트(/) 파일 시스템에서 ZFS 루트 풀로 마이그레이션

다음 예에서는 기존 비전역 영역 myzone에 UFS 루트(/) 파일 시스템의 비전역 영역 루트가 있으며, 영역 zzone에는 기존 ZFS 저장소 풀 pool에 있는 ZFS 파일 시스템의 영역 루트가 있습니다. Solaris Live Upgrade는 UFS 부트 환경 c2t2d0s0을 ZFS 부트 환경 zfs2BE로 마이그레이션하는 데 사용됩니다. UFS 기반 myzone 영역은 Solaris 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
Analyzing system configuration.
No name for current boot environment.
Current boot environment is named <c1t2d0s0>.
Creating initial configuration for primary boot environment <c1t2d0s0>.
The device </dev/dsk/c1t2d0s0> is not a root device for any 
boot environment; cannot get BE ID.
PBE configuration successful: PBE name <c1t2d0s0> PBE Boot Device 
</dev/dsk/c1t2d0s0>.
Comparing source boot environment <c1t2d0s0> file systems with the file 
system(s) you specified for the new boot environment. Determining which 
file systems should be in the new boot environment.
Updating boot environment description database on all BEs.
Updating system configuration files.
The device </dev/dsk/c1t0d0s0> is not a root device for any boot
environment; cannot get BE ID.
Creating configuration for boot environment <zfsBE>.
Source boot environment is <c1t2d0s0>.
Creating boot environment <zfsBE>.
Creating file systems on boot environment <zfsBE>.
Creating <zfs> file system for </> in zone <global> on <rpool/ROOT/zfsBE>.
Populating file systems on boot environment <zfsBE>.
Checking selection integrity.
Integrity check OK.
Populating contents of mount point </>.
Copying.
Creating shared file system mount points.
Creating compare databases for boot environment <zfsBE>.
Creating compare database for file system </>.
Making boot environment <zfsBE> bootable.
Creating boot_archive for /.alt.tmp.b-cBc.mnt
updating /.alt.tmp.b-cBc.mnt/platform/sun4u/boot_archive
Population of boot environment <zfsBE> successful.
Creation of boot environment <zfsBE> 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
**********************************************************************

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. Change the boot device back to the original boot environment by typing:

     setenv boot-device /pci@1f,0/pci@1/scsi@4,1/disk@2,0:a

3. Boot to the original boot environment by typing:

     boot

**********************************************************************

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>

추가 자원

이 장에 포함된 항목에 대한 추가 정보는 표 14–1에 나열된 자원을 참조하십시오.

표 14–1 추가 자원

자원 

위치 

개요, 계획, 단계별 지침을 비롯한 비전역 영역 정보 

System Administration Guide: Solaris Containers-Resource Management and Solaris Zones

개요, 계획, 단계별 지침을 비롯한 ZFS 정보 

Solaris ZFS Administration Guide

UFS 파일 시스템이 있는 시스템에서 Solaris Live Upgrade 사용 정보 

이 설명서의 제1부, Solaris Live Upgrade로 업그레이드, 8 장비전역 영역이 설치된 시스템에서 Solaris OS 업그레이드