zpool add 명령 이외에 zpool attach 명령을 사용하여 새 장치를 기존 미러링된 장치 또는 미러링되지 않은 장치에 추가할 수 있습니다.
디스크를 연결하여 미러링된 루트 풀을 만드는 경우 미러링된 루트 풀을 구성하는 방법(SPARC 또는 x86/VTOC)을 참조하십시오.
ZFS 루트 풀에서 디스크를 교체할 경우 ZFS 루트 풀의 디스크 교체 방법(SPARC 또는 x86/VTOC)을 참조하십시오.
예 3-5 이중 미러된 저장소 풀을 삼중 미러된 저장소 풀로 변환이 예에서는 zeepool이 기존 이중 미러이고, 새 장치 c2t1d0을 기존 장치 c1t1d0에 연결하여 삼중 미러로 변환합니다.
# zpool status zeepool pool: zeepool state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM zeepool ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c0t1d0 ONLINE 0 0 0 c1t1d0 ONLINE 0 0 0 errors: No known data errors # zpool attach zeepool c1t1d0 c2t1d0 # zpool status zeepool pool: zeepool state: ONLINE scrub: resilver completed after 0h0m with 0 errors on Fri Jan 8 12:59:20 2010 config: NAME STATE READ WRITE CKSUM zeepool ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c0t1d0 ONLINE 0 0 0 c1t1d0 ONLINE 0 0 0 c2t1d0 ONLINE 0 0 0 592K resilvered errors: No known data errors
기존 장치가 삼중 미러의 일부인 경우 새 장치를 연결하면 사중 미러가 만들어지고, 이런 방식으로 계속 이어집니다. 어떠한 경우든지 새 장치는 즉시 재구성을 시작합니다.
예 3-6 중복되지 않은 ZFS 저장소 풀을 미러된 ZFS 저장소 풀로 변환또한 zpool attach 명령을 사용하여 중복되지 않은 저장소 풀을 중복된 저장소 풀로 변환할 수 있습니다. 예를 들면 다음과 같습니다.
# zpool create tank c0t1d0 # zpool status tank pool: tank state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM tank ONLINE 0 0 0 c0t1d0 ONLINE 0 0 0 errors: No known data errors # zpool attach tank c0t1d0 c1t1d0 # zpool status tank pool: tank state: ONLINE scrub: resilver completed after 0h0m with 0 errors on Fri Jan 8 14:28:23 2010 config: NAME STATE READ WRITE CKSUM tank ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c0t1d0 ONLINE 0 0 0 c1t1d0 ONLINE 0 0 0 73.5K resilvered errors: No known data errors
zpool detach 명령을 사용하여 미러된 저장소 풀에서 장치를 분리할 수 있습니다. 예를 들면 다음과 같습니다.
# zpool detach zeepool c2t1d0
하지만 데이터의 다른 유효한 복제본이 존재할 경우 이 작업은 실패합니다. 예를 들면 다음과 같습니다.
# zpool detach newpool c1t2d0 cannot detach c1t2d0: only applicable to mirror and replacing vdevs