JavaScript is required to for searching.
탐색 링크 건너뛰기
인쇄 보기 종료
Oracle Solaris ZFS 관리 설명서     Oracle Solaris 10 1/13 Information Library (한국어)
search filter icon
search icon

문서 정보

머리말

1.  Oracle Solaris ZFS 파일 시스템(소개)

2.  Oracle Solaris ZFS 시작하기

3.  Oracle Solaris ZFS 저장소 풀 관리

4.  Oracle Solaris ZFS 루트 파일 시스템 설치 및 부트

5.  Oracle Solaris ZFS 파일 시스템 관리

6.  Oracle Solaris ZFS 스냅샷 및 복제 작업

7.  ACL 및 속성을 사용하여 Oracle Solaris ZFS 파일 보호

8.  Oracle Solaris ZFS 위임 관리

9.  Oracle Solaris ZFS 고급 주제

10.  Oracle Solaris ZFS 문제 해결 및 풀 복구

ZFS 문제 식별

일반 하드웨어 문제 해결

하드웨어 및 장치 결함 식별

ZFS 오류 메시지에 대한 시스템 보고

ZFS 저장소 풀을 사용하여 문제 식별

ZFS 저장소 풀에 문제가 있는지 확인

zpool status 출력 결과 검토

전체 풀 상태 정보

ZFS 저장소 풀 구성 정보

ZFS 저장소 풀 스크러빙 상태

ZFS 데이터 손상 오류

ZFS 저장 장치 문제 해결

누락되었거나 제거된 장치 해결

제거된 장치 해결

물리적으로 장치 재연결

ZFS에 장치 가용성 알림

손상된 장치 교체 또는 복구

장치 오류 유형 확인

일시적인 데이터 오류 지우기

ZFS 저장소 풀의 장치 교체

교체 가능한 장치인지 확인

교체할 수 없는 장치

ZFS 저장소 풀의 장치 교체

리실버링 상태 보기

ZFS 파일 시스템 문제 해결

ZFS 저장소 풀의 데이터 문제 해결

ZFS 파일 시스템 무결성 검사

파일 시스템 복구

파일 시스템 검증

ZFS 데이터 스크러빙 제어

명시적 ZFS 데이터 스크러빙

ZFS 데이터 스크러빙 및 리실버링

손상된 ZFS 데이터

ZFS 공간 문제 해결

ZFS 파일 시스템 공간 보고

ZFS 저장소 풀 공간 보고

손상된 데이터 복구

데이터 손상 유형 식별

손상된 파일 또는 디렉토리 복구

여러 블록 참조를 사용하여 손상된 데이터 복구

ZFS 저장소 풀 전반의 손상 복구

손상된 ZFS 구성 복구

부트할 수 없는 시스템 복구

11.  Oracle Solaris ZFS 권장 방법

A.  Oracle Solaris ZFS 버전 설명

색인

ZFS 저장 장치 문제 해결

다음 섹션을 검토하여 누락, 제거 또는 결함이 있는 장치를 해결합니다.

누락되었거나 제거된 장치 해결

장치를 열 수 없는 경우 zpool status 출력에 UNAVAIL 상태가 표시됩니다. 이 상태는 풀에 처음 액세스할 때 ZFS에서 장치를 열 수 없거나 장치를 사용할 수 없게 되었음을 의미합니다. 장치로 인해 최상위 가상 장치를 사용할 수 없게 될 경우 풀에 있는 어떠한 장치에도 액세스할 수 없습니다. 그렇지 않은 경우 풀의 결함 허용이 손상될 수 있습니다. 어떤 경우든지 장치를 시스템에 다시 연결하여 일반 작업을 복원해야 합니다. 결함이 발생하여 UNAVAIL 상태인 장치를 교체해야 할 경우 ZFS 저장소 풀의 장치 교체를 참조하십시오.

장치가 루트 풀 또는 미러링된 루트 풀에서 UNAVAIL인 경우 다음 참조 자료를 참조하십시오.

예를 들어, 장치 오류 후 fmd에서 다음과 비슷한 메시지를 표시할 수 있습니다.

SUNW-MSG-ID: ZFS-8000-FD, TYPE: Fault, VER: 1, SEVERITY: Major
EVENT-TIME: Thu Jun 24 10:42:36 PDT 2010
PLATFORM: SUNW,Sun-Fire-T200, CSN: -, HOSTNAME: daleks
SOURCE: zfs-diagnosis, REV: 1.0
EVENT-ID: a1fb66d0-cc51-cd14-a835-961c15696fcb
DESC: The number of I/O errors associated with a ZFS device exceeded
acceptable levels.  Refer to http://sun.com/msg/ZFS-8000-FD for more information.
AUTO-RESPONSE: The device has been offlined and marked as faulted.  An attempt
will be made to activate a hot spare if available. 
IMPACT: Fault tolerance of the pool may be compromised.
REC-ACTION: Run 'zpool status -x' and replace the bad device.

장치 문제 및 해결 방법에 대한 자세한 정보를 보려면 zpool status -x 명령을 사용하십시오. 예를 들면 다음과 같습니다.

# zpool status -x
  pool: tank
 state: DEGRADED
status: One or more devices could not be opened.  Sufficient replicas exist for
        the pool to continue functioning in a degraded state.
action: Attach the missing device and online it using 'zpool online'.
   see: http://www.sun.com/msg/ZFS-8000-2Q
  scan: scrub repaired 0 in 0h0m with 0 errors on Tue Sep 27 16:59:07 2011
config:

        NAME        STATE     READ WRITE CKSUM
        tank        DEGRADED     0     0     0
          mirror-0  DEGRADED     0     0     0
            c2t2d0  ONLINE       0     0     0
            c2t1d0  UNAVAIL      0     0     0  cannot open

errors: No known data errors

이 출력에서 c2t1d0 장치가 작동하지 않음을 확인할 수 있습니다. 이 장치에 오류가 있다고 판단되면 해당 장치를 교체하십시오.

필요한 경우 zpool online 명령을 사용하여 교체한 장치를 온라인 상태로 설정합니다. 예를 들면 다음과 같습니다.

# zpool online tank c2t1d0

fmadm faulty 출력에서 장치 오류가 식별되는 경우 장치가 교체되었음을 FMA에 알립니다. 예를 들면 다음과 같습니다.

# fmadm faulty
--------------- ------------------------------------  -------------- ---------
TIME            EVENT-ID                              MSG-ID         SEVERITY
--------------- ------------------------------------  -------------- ---------
Sep 27 16:58:50 e6bb52c3-5fe0-41a1-9ccc-c2f8a6b56100  ZFS-8000-D3    Major     

Host        : neo
Platform    : SUNW,Sun-Fire-T200        Chassis_id  : 
Product_sn  : 

Fault class : fault.fs.zfs.device
Affects     : zfs://pool=tank/vdev=c75a8336cda03110
                  faulted and taken out of service
Problem in  : zfs://pool=tank/vdev=c75a8336cda03110
                  faulted and taken out of service

Description : A ZFS device failed.  Refer to http://sun.com/msg/ZFS-8000-D3 for
              more information.

Response    : No automated response will occur.

Impact      : Fault tolerance of the pool may be compromised.

Action      : Run 'zpool status -x' and replace the bad device.

# fmadm repaired zfs://pool=tank/vdev=c75a8336cda03110

끝으로, 교체된 장치를 포함하는 풀이 정상적으로 작동하는지 확인하십시오. 예를 들면 다음과 같습니다.

# zpool status -x tank
pool 'tank' is healthy

제거된 장치 해결

시스템에서 장치가 완전히 제거되면 ZFS는 해당 장치를 열 수 없음을 감지하고 장치를 REMOVED 상태로 설정합니다. 풀의 데이터 복제 레벨에 따라 이 제거로 인해 전체 풀이 사용하지 못하게 될 수도 있고 그렇지 않을 수도 있습니다. 미러링된 장치나 RAID-Z 장치의 한 디스크만 제거되면 풀에 계속 액세스할 수 있습니다. 다음과 같은 조건에서는 풀이 UNAVAIL 상태가 될 수 있습니다. 이 경우 장치가 다시 연결될 때까지 데이터에 액세스할 수 없습니다.

물리적으로 장치 재연결

누락된 장치가 다시 연결되는 방식에 따라 문제가 발생하는 장치가 달라집니다. 장치가 네트워크 연결 드라이브일 경우 네트워크 연결을 복원해야 합니다. 장치가 USB 장치이거나 기타 이동식 매체일 경우 시스템에 다시 연결해야 합니다. 장치가 로컬 디스크일 경우 컨트롤러에서 오류가 발생하여 장치가 더 이상 시스템에 표시되지 않을 수 있습니다. 이 경우 컨트롤러를 교체해야 합니다. 그러면 디스크를 다시 사용할 수 있게 됩니다. 다른 문제가 존재할 수 있으며 이러한 문제는 하드웨어 및 하드웨어 구성의 유형에 따라 달라집니다. 드라이버에서 오류가 발생하여 시스템에 더 이상 표시되지 않을 경우 장치를 손상된 장치로 간주해야 합니다. 손상된 장치 교체 또는 복구에 설명된 절차를 수행하십시오.

장치 연결이 손상된 경우 풀이 SUSPENDED 상태일 수 있습니다. 풀은 장치 문제가 해결될 때까지 SUSPENDED 상태를 유지합니다. 예를 들면 다음과 같습니다.

# zpool status cybermen
  pool: cybermen
 state: SUSPENDED
status: One or more devices are unavailable in response to IO failures.
        The pool is suspended.
action: Make sure the affected devices are connected, then run 'zpool clear' or
        'fmadm repaired'.
    see: http://www.sun.com/msg/ZFS-8000-HC
  scan: none requested
config:

        NAME           STATE     READ WRITE CKSUM
        cybermen       UNAVAIL      0    16     0
            c8t3d0     UNAVAIL      0     0     0
            c8t1d0     UNAVAIL      0     0     0

장치 연결이 복원된 후 풀 또는 장치 오류를 지우십시오.

# zpool clear cybermen
# fmadm repaired zfs://pool=name/vdev=guid

ZFS에 장치 가용성 알림

장치를 시스템에 다시 연결하면 ZFS에서 자동으로 해당 장치가 사용 가능한지를 감지할 수도 있고 그렇지 않을 수도 있습니다. 풀이 이전에 UNAVAIL 또는 SUSPENDED 상태였거나 시스템이 attach 프로시저의 일부로 재부트된 경우에는 ZFS에서 풀을 열려고 할 때 자동으로 모든 장치를 다시 스캔합니다. 풀이 디그레이드되어 시스템 실행 중에 장치를 교체한 경우 zpool online 명령을 사용하여 이제 장치를 사용할 수 있으며 다시 열 준비가 되었음을 ZFS에 알려야 합니다. 예를 들면 다음과 같습니다.

# zpool online tank c0t1d0

장치를 온라인으로 설정하는 방법은 온라인으로 장치 설정을 참조하십시오.

손상된 장치 교체 또는 복구

이 절에서는 장치 오류 유형 확인, 일시적인 오류 지우기 및 장치 교체 방법에 대해 설명합니다.

장치 오류 유형 확인

손상된 장치라는 용어는 다소 모호하므로 여러 가지 가능한 상황을 들어 설명할 수 있습니다.

장치에서 발생한 문제가 무엇인지 정확하게 확인하는 것은 어려운 프로세스일 수 있습니다. 첫번째 단계는 zpool status 출력에서 오류 카운트를 확인하는 것입니다. 예를 들면 다음과 같습니다.

# zpool status -v tank
  pool: tank
 state: ONLINE
status: One or more devices has experienced an error resulting in data
        corruption.  Applications may be affected.
action: Restore the file in question if possible.  Otherwise restore the
        entire pool from backup.
   see: http://www.sun.com/msg/ZFS-8000-8A
  scan: scrub in progress since Tue Sep 27 17:12:40 2011
    63.9M scanned out of 528M at 10.7M/s, 0h0m to go
    0 repaired, 12.11% done
config:

        NAME        STATE     READ WRITE CKSUM
        tank        ONLINE       2     0     0
          mirror-0  ONLINE       2     0     0
            c2t2d0  ONLINE       2     0     0
            c2t1d0  ONLINE       2     0     0

errors: Permanent errors have been detected in the following files:

        /tank/words

오류는 I/O 오류와 체크섬 오류로 분류되는데, 둘 다 발생 가능한 오류 유형을 나타냅니다. 일반적인 작업의 경우 매우 적은 수의 오류(긴 기간 동안 소수의 오류)가 발생할 것으로 예측됩니다. 많은 수의 오류가 표시될 경우 이는 임박한 장치 오류나 전체 장치 오류를 나타내는 것일 수 있습니다. 그러나 관리자 오류로 인해 많은 오류 카운트가 발생할 수도 있습니다. 정보의 다른 소스는 syslog 시스템 로그입니다. 로그에 많은 수의 SCSI 또는 Fibre Channel 드라이버 메시지가 표시될 경우 이는 심각한 하드웨어 문제를 나타내는 것일 수 있습니다. syslog 메시지가 생성되지 않을 경우 일시적인 손상일 수 있습니다.

목표는 다음 질문에 답하는 것입니다.

이 장치에서 또 다른 오류가 발생할 가능성이 있습니까?

한 번만 발생하는 오류는 일시적인 오류로 간주되고 잠재적인 실패를 나타내지 않습니다. 잠재적인 하드웨어 실패를 나타낼 수 있는 영구적이거나 심각한 오류는 치명적인 오류로 간주됩니다. 오류의 유형을 확인하는 작업은 현재 ZFS에서 제공하는 자동 소프트웨어의 범위를 벗어나는 것이므로, 관리자가 수동으로 많은 부분을 수행해야 합니다. 확인이 이루어진 후에 적절한 조치를 취할 수 있습니다. 일시적인 오류를 지우거나 치명적인 오류가 발생한 장치를 교체하십시오. 이러한 복구 절차는 다음 절에서 설명합니다.

장치 오류가 일시적인 오류로 간주되더라도 풀 내에서 해결할 수 없는 데이터 오류를 일으킬 수도 있습니다. 이 경우 기본 장치가 정상적으로 작동하거나 복구되었다 하더라도 이러한 오류에는 특별한 복구 절차가 필요합니다. 데이터 오류 복구에 대한 자세한 내용은 손상된 데이터 복구를 참조하십시오.

일시적인 데이터 오류 지우기

장치 오류가 일시적인 오류로 간주될 경우, 장치의 이후 상태에 영향을 줄 가능성이 거의 없으므로 치명적인 오류가 발생하지 않음을 나타내도록 안전하게 오류를 지우십시오. RAID-Z 또는 미러링된 장치에 대한 오류 카운터를 지우려면 zpool clear 명령을 사용하십시오. 예를 들면 다음과 같습니다.

# zpool clear tank c1t1d0

이 구문은 장치 오류를 지우고 해당 장치와 연관된 데이터 오류 카운트를 지웁니다.

풀의 가상 장치와 연관된 모든 오류를 지우고 해당 풀과 연관된 데이터 오류 카운트를 지우려면 다음 구문을 사용하십시오.

# zpool clear tank

풀 오류 지우기에 대한 자세한 내용은 저장소 풀 장치 오류 지우기를 참조하십시오.

ZFS 저장소 풀의 장치 교체

장치 손상이 영구적이거나 이후에 영구적인 손상이 될 가능성이 있을 경우 장치를 교체해야 합니다. 장치를 교체할 수 있는 여부는 구성에 따라 달라집니다.

교체 가능한 장치인지 확인

교체할 장치가 중복 구성의 일부일 경우 정상적인 데이터를 검색할 수 있는 충분한 복제본이 있어야 합니다. 예를 들어 4방향 미러의 두 디스크가 UNAVAIL 상태인 경우 정상 상태인 복제본을 사용할 수 있으므로 둘 중 한 디스크를 교체할 수 있습니다. 그러나 4방향 RAID-Z(raidz1) 가상 장치의 두 디스크가 UNAVAIL 상태인 경우, 데이터를 검색할 수 있는 충분한 복제본이 없으므로 어떠한 디스크도 교체할 수 없습니다. 장치가 손상되었으나 온라인일 경우 풀이 UNAVAIL 상태가 아니라면 장치를 교체할 수 있습니다. 그러나 정상적인 데이터를 포함하는 복제본이 부족할 경우 장치의 손상된 데이터가 새 장치로 복사됩니다.

다음 구성에서 c1t1d0 디스크는 교체할 수 있으며, 풀의 데이터는 정상 복제본 c1t0d0에서 복사됩니다.

    mirror            DEGRADED
    c1t0d0             ONLINE
    c1t1d0             FAULTED

c1t0d0 디스크도 교체할 수 있지만, 정상적인 복제본을 사용할 수 없으므로 데이터 자체 치료가 수행되지 않습니다.

다음 구성에서는 UNAVAIL 디스크를 교체할 수 없습니다. ONLINE 디스크는 풀 자체가 UNAVAIL 상태이므로 교체할 수 없습니다.

    raidz              FAULTED
    c1t0d0             ONLINE
    c2t0d0             FAULTED
    c3t0d0             FAULTED
    c4t0d0             ONLINE

다음 구성에서 최상위 디스크는 교체할 수 있지만, 디스크에 있는 잘못된 데이터가 새 디스크로 복사됩니다.

c1t0d0         ONLINE
c1t1d0         ONLINE

디스크가 UNAVAIL인 경우 풀 자체가 UNAVAIL이기 때문에 교체를 수행할 수 없습니다.

교체할 수 없는 장치

장치 손실로 인해 풀이 UNAVAIL 상태가 되거나 장치의 비중복 구성에 너무 많은 데이터 오류가 있는 경우 장치를 안전하게 교체할 수 없습니다. 충분한 중복성을 사용하지 않으면 손상된 장치를 치료할 수 있는 정상적인 데이터가 생기지 않습니다. 이 경우 유일한 옵션은 풀을 삭제하고 구성을 다시 생성한 다음 백업 복사본에서 데이터를 복원하는 것입니다.

전체 풀 복원에 대한 자세한 내용은 ZFS 저장소 풀 전반의 손상 복구를 참조하십시오.

ZFS 저장소 풀의 장치 교체

교체할 수 있다고 장치로 확인되었으면 zpool replace 명령을 사용하여 장치를 교체하십시오. 손상된 장치를 다른 장치로 교체할 경우 다음과 비슷한 구문을 사용하십시오.

# zpool replace tank c1t1d0 c2t0d0

이 명령은 손상된 장치 또는 풀의 다른 장치(중복 구성인 경우)에서 새 장치로 데이터를 마이그레이션합니다. 명령이 완료되면 구성에서 손상된 장치가 분리됩니다. 따라서 시스템에서 해당 당치를 제거할 수 있습니다. 아미 장치를 제거하고 같은 위치의 새 장치로 교체한 경우 명령의 단일 장치 양식을 사용하십시오. 예를 들면 다음과 같습니다.

# zpool replace tank c1t1d0

이 명령은 포맷되지 않은 디스크를 가져와서 적절하게 포맷한 다음 나머지 구성에서 데이터를 리실버링합니다.

zpool replace 명령에 대한 자세한 내용은 저장소 풀의 장치 교체를 참조하십시오.

예 10-1 ZFS 저장소 풀의 SATA 디스크 교체

다음 예에서는 SATA 장치가 있는 시스템의 미러링된 저장소 풀 tank에서 장치(c1t3d0)를 교체하는 방법을 보여줍니다. c1t3d0 디스크를 같은 위치(c1t3d0)의 새 디스크로 교체하려면 디스크 교체를 시도하기 전에 디스크를 구성 해제해야 합니다. 교체할 디스크가 SATA 디스크가 아니면 저장소 풀의 장치 교체를 참조하십시오.

기본 단계는 다음과 같습니다.

다음 예는 ZFS 저장소 풀에서 디스크를 교체하는 단계를 보여줍니다.

# zpool offline tank c1t3d0
# cfgadm | grep c1t3d0
sata1/3::dsk/c1t3d0            disk         connected    configured   ok
# cfgadm -c unconfigure sata1/3
Unconfigure the device at: /devices/pci@0,0/pci1022,7458@2/pci11ab,11ab@1:3
This operation will suspend activity on the SATA device
Continue (yes/no)? yes
# cfgadm | grep sata1/3
sata1/3                        disk         connected    unconfigured ok
<Physically replace the failed disk c1t3d0>
# cfgadm -c configure sata1/3
# cfgadm | grep sata1/3
sata1/3::dsk/c1t3d0            disk         connected    configured   ok
# zpool online tank c1t3d0
# zpool replace tank c1t3d0
# zpool status tank
  pool: tank
 state: ONLINE
 scrub: resilver completed after 0h0m with 0 errors on Tue Feb  2 13:17:32 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
          mirror-1  ONLINE       0     0     0
            c0t2d0  ONLINE       0     0     0
            c1t2d0  ONLINE       0     0     0
          mirror-2  ONLINE       0     0     0
            c0t3d0  ONLINE       0     0     0
            c1t3d0  ONLINE       0     0     0

errors: No known data errors

zpool output의 경우 replacing 제목 아래에 새 디스크와 이전 디스크를 모두 표시할 수 있습니다. 예를 들면 다음과 같습니다.

replacing     DEGRADED     0     0    0
  c1t3d0s0/o  FAULTED      0     0    0
  c1t3d0      ONLINE       0     0    0

이 텍스트는 교체 프로세스가 진행 중이며 새 디스크를 리실버링하는 중임을 의미합니다.

디스크(c1t3d0)를 다른 디스크(c4t3d0)로 교체하려는 경우에는 zpool replace 명령을 실행하기만 하면 됩니다. 예를 들면 다음과 같습니다.

# zpool replace tank c1t3d0 c4t3d0
# zpool status
  pool: tank
 state: DEGRADED
 scrub: resilver completed after 0h0m with 0 errors on Tue Feb  2 13:35:41 2010
config:

        NAME             STATE     READ WRITE CKSUM
        tank             DEGRADED     0     0     0
          mirror-0       ONLINE       0     0     0
            c0t1d0       ONLINE       0     0     0
            c1t1d0       ONLINE       0     0     0
          mirror-1       ONLINE       0     0     0
            c0t2d0       ONLINE       0     0     0
            c1t2d0       ONLINE       0     0     0
          mirror-2       DEGRADED     0     0     0
            c0t3d0       ONLINE       0     0     0
            replacing    DEGRADED     0     0     0
              c1t3d0     OFFLINE      0     0     0
              c4t3d0     ONLINE       0     0     0

errors: No known data errors

디스크 교체가 완료될 때까지 zpool status 명령을 여러 번 실행해야 할 수도 있습니다.

# zpool status tank
  pool: tank
 state: ONLINE
 scrub: resilver completed after 0h0m with 0 errors on Tue Feb  2 13:35:41 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
          mirror-1    ONLINE       0     0     0
            c0t2d0    ONLINE       0     0     0
            c1t2d0    ONLINE       0     0     0
          mirror-2    ONLINE       0     0     0
            c0t3d0    ONLINE       0     0     0
            c4t3d0    ONLINE       0     0     0

예 10-2 실패한 로그 장치 교체

ZFS는 zpool status 명령 출력에서 계획 로그 오류를 식별합니다. FMA(Fault Management Architecture)에서는 이러한 오류도 보고됩니다. ZFS 및 FMA 모두 의도 로그 오류에서 복구하는 방법을 설명합니다.

다음 예는 저장소 풀(pool)의 실패한 로그 장치(c0t5d0)에서 복구하는 방법을 보여줍니다. 기본 단계는 다음과 같습니다.

# zpool status -x
  pool: pool
 state: FAULTED
status: One or more of the intent logs could not be read.
        Waiting for adminstrator intervention to fix the faulted pool.
action: Either restore the affected device(s) and run 'zpool online',
        or ignore the intent log records by running 'zpool clear'.
 scrub: none requested
config:

        NAME        STATE     READ WRITE CKSUM
        pool        FAULTED      0     0     0 bad intent log
          mirror    ONLINE       0     0     0
            c0t1d0  ONLINE       0     0     0
            c0t4d0  ONLINE       0     0     0
        logs        FAULTED      0     0     0 bad intent log
          c0t5d0    UNAVAIL      0     0     0 cannot open
<Physically replace the failed log device>
# zpool online pool c0t5d0
# zpool clear pool

예를 들어 별도의 로그 장치가 있는 풀에 동기식 쓰기 작업이 커밋되기 전에 시스템이 갑자기 종료된 경우에는 다음과 비슷한 메시지가 표시됩니다.

# zpool status -x
  pool: pool
 state: FAULTED
status: One or more of the intent logs could not be read.
        Waiting for adminstrator intervention to fix the faulted pool.
action: Either restore the affected device(s) and run 'zpool online',
        or ignore the intent log records by running 'zpool clear'.
 scrub: none requested
config:

        NAME          STATE     READ WRITE CKSUM
        pool          FAULTED      0     0     0 bad intent log
          mirror-0    ONLINE       0     0     0
            c0t1d0    ONLINE       0     0     0
            c0t4d0    ONLINE       0     0     0
        logs          FAULTED      0     0     0 bad intent log
          c0t5d0      UNAVAIL      0     0     0 cannot open
<Physically replace the failed log device>
# zpool online pool c0t5d0
# zpool clear pool
# fmadm faulty
# fmadm repair zfs://pool=name/vdev=guid

로그 장치 오류는 다음과 같은 방식으로 해결할 수 있습니다.

실패한 로그 장치를 교체하지 않고 이 오류로부터 복구하려면 zpool clear 명령을 사용하여 오류를 지울 수 있습니다. 이 시나리오에서 풀은 성능 저하 모드로 작동하며 별도의 로그 장치가 교체될 때까지 로그 레코드가 기본 풀에 작성됩니다.

로그 장치 오류 시나리오를 방지하려면 미러링된 로그 장치를 사용하는 것이 좋습니다.

리실버링 상태 보기

장치를 교체하는 프로세스는 장치의 크기 및 풀에 포함된 데이터의 양에 따라 상당한 시간이 걸릴 수 있습니다. 데이터를 한 장치에서 다른 장치로 이동하는 프로세스를 리실버링이라고 하며 zpool status 명령을 사용하여 모니터링할 수 있습니다.

기존 파일 시스템은 블록 레벨에서 데이터를 리실버링합니다. ZFS에서는 볼륨 관리자의 인공 계층이 제거되므로 훨씬 더 강력하고 제어된 방식으로 리실버링을 수행할 수 있습니다. 이 기능의 두 가지 주요 이점은 다음과 같습니다.

리실버링 프로세스를 확인하려면 zpool status 명령을 사용하십시오. 예를 들면 다음과 같습니다.

# zpool status tank
  pool: tank
 state: DEGRADED
status: One or more devices is currently being resilvered.  The pool will
        continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
 scrub: resilver in progress for 0h0m, 22.60% done, 0h1m to go
config:
        NAME                  STATE     READ WRITE CKSUM 
        tank             DEGRADED     0     0     0
          mirror-0       DEGRADED     0     0     0
            replacing-0  DEGRADED     0     0     0
              c1t0d0     UNAVAIL      0     0     0  cannot open
              c2t0d0     ONLINE       0     0     0  85.0M resilvered
            c1t1d0       ONLINE       0     0     0

errors: No known data errors

이 예에서 c1t0d0 디스크가 c2t0d0으로 교체되는 중입니다. 상태 출력 결과에서 구성에 replacing 가상 장치가 있다면 이 이벤트를 확인할 수 있습니다. 이 장치는 실제가 아니므로 이 장치를 사용하여 풀을 만들 수 없습니다. 아 장치의 목적은 리실버링 진행률을 표시하고 교체할 장치를 식별하기 위한 것입니다.

리실버링 프로세스가 완료될 때까지 풀이 원하는 레벨의 중복성을 제공할 수 없기 때문에 현재 리실버링이 진행 중인 풀은 ONLINE 또는 DEGRADED 상태입니다. 리실버링은 가능한 빠르게 진행되지만, 시스템에 미치는 영향을 최소화하기 위해 I/O는 항상 사용자가 요청한 I/O보다 낮은 우선 순위로 예약됩니다. 리실버링이 완료되면 구성이 완료된 새 구성으로 되돌아갑니다. 예를 들면 다음과 같습니다.

# zpool status tank
  pool: tank
 state: ONLINE
 scrub: resilver completed after 0h1m with 0 errors on Tue Feb  2 13:54:30 2010
config:

        NAME        STATE     READ WRITE CKSUM
        tank        ONLINE       0     0     0
          mirror-0  ONLINE       0     0     0
            c2t0d0  ONLINE       0     0     0  377M resilvered
            c1t1d0  ONLINE       0     0     0

errors: No known data errors

풀이 다시 ONLINE 상태가 되고, 실패한 원래 디스크(c1t0d0)가 구성에서 제거되었습니다.