동일한 루트 풀이나 새 루트 풀에 새 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에서와 동일한 명령을 보여 줍니다. 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에서와 동일한 명령을 보여 줍니다. 이 예에서 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, dump 및 swap과 함께 rpool2에 만들어집니다. 부트 환경 new-zfsBE는 이제 업그레이드하고 활성화할 수 있습니다.