JavaScript is required to for searching.
탐색 링크 건너뛰기
인쇄 보기 종료
Oracle Solaris 11.1 관리: ZFS 파일 시스템     Oracle Solaris 11.1 Information Library (한국어)
search filter icon
search icon

문서 정보

머리말

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

2.  Oracle Solaris ZFS 시작하기

3.  Oracle Solaris ZFS 저장소 풀 관리

4.  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 오류 식별

ZFS 저장소 풀에서 장치 누락

ZFS 저장소 풀에서 장치 손상

손상된 ZFS 데이터

ZFS 파일 시스템 무결성 검사

파일 시스템 복구

파일 시스템 검증

ZFS 데이터 스크러빙 제어

명시적 ZFS 데이터 스크러빙

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

ZFS 관련 문제 해결

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

zpool status 출력 결과 검토

전체 풀 상태 정보

풀 구성 정보

스크러빙 상태

데이터 손상 오류

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

손상된 ZFS 구성 복구

누락된 장치 해결

물리적으로 장치 재연결

ZFS에 장치 가용성 알림

손상된 장치 교체 또는 복구

장치 오류 유형 확인

일시적인 오류 지우기

ZFS 저장소 풀의 장치 교체

교체 가능한 장치인지 확인

교체할 수 없는 장치

ZFS 저장소 풀의 장치 교체

리실버링 상태 보기

손상된 데이터 복구

데이터 손상 유형 식별

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

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

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

부트할 수 없는 시스템 복구

11.  스냅샷 아카이브 및 루트 풀 복구

12.  Oracle Solaris ZFS 권장 방법

A.  Oracle Solaris ZFS 버전 설명

색인

손상된 데이터 복구

다음 절에서는 데이터 손상 유형을 식별하고 데이터를 복구하는 방법에 대해 설명합니다.

ZFS는 체크섬, 중복성 및 자체 치료 데이터를 사용하여 데이터 손상 위험을 최소화합니다. 그럼에도 불구하고, 풀이 중복되지 않은 경우, 풀 디그레이드 중에 손상이 발생한 경우 또는 일련의 이벤트가 동시에 발생하여 여러 데이터 복사본이 손상되는 경우 데이터 손상이 발생할 수 있습니다. 소스와 관계없이 결과는 같습니다. 즉, 데이터가 손상되어 더 이상 액세스할 수 없습니다. 수행할 조치는 손상된 데이터의 유형 및 관련 값에 따라 달라집니다. 두 가지 기본 유형의 데이터가 손상될 수 있습니다.

일반 작업 중이나 스크러빙을 통해 데이터를 확인할 수 있습니다. 풀 데이터의 무결성을 확인하는 방법에 대한 자세한 내용은 ZFS 파일 시스템 무결성 검사를 참조하십시오.

데이터 손상 유형 식별

기본적으로 zpool status 명령은 손상이 발생했다는 것만 표시하고 이 손상이 발생한 위치는 표시하지 않습니다. 예를 들면 다음과 같습니다.:

# zpool status 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://support.oracle.com/msg/ZFS-8000-8A
config:

        NAME                       STATE     READ WRITE CKSUM
        tank                       ONLINE       4     0     0
          c0t5000C500335E106Bd0    ONLINE       0     0     0
          c0t5000C500335FC3E7d0    ONLINE       4     0     0


errors: 2 data errors, use '-v' for a list

각 오류는 지정된 시점에서 오류가 발생했다는 사실만 표시할 뿐 반드시 시스템에 아직도 이러한 오류가 있다는 것은 아닙니다. 그러나 이는 정상적인 상황에서 적용되는 내용입니다. 일시적인 특정 작동 중단은 데이터 손상을 일으키지만 이러한 손상은 작동 중단이 종료되면 자동으로 복구됩니다. 풀의 모든 활성 블록을 검사하기 위해 전체 풀 스크러빙이 보장됩니다. 따라서 스크러빙이 완료될 때마다 오류 로그가 재설정됩니다. 더 이상 오류가 존재하지 않는 것으로 확인되어 스크러빙이 완료될 때까지 기다리지 않아도 되는 경우 zpool online 명령을 사용하여 풀의 모든 오류를 재설정하십시오.

데이터 손상이 풀 전체 메타 데이터에서 발생한 경우 출력 결과가 약간 다릅니다. 예를 들면 다음과 같습니다.

# zpool status -v morpheus
  pool: morpheus
    id: 13289416187275223932
 state: UNAVAIL
status: The pool metadata is corrupted.
action: The pool cannot be imported due to damaged devices or data.
   see: http://support.oracle.com/msg/ZFS-8000-72
config:

        morpheus    FAULTED   corrupted data
          c1t10d0   ONLINE

풀 전체 손상의 경우 풀이 원하는 중복성 레벨을 제공할 수 없기 때문에 풀이 FAULTED 상태가 됩니다.

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

파일 또는 디렉토리가 손상된 경우 손상 유형에 따라 시스템이 계속 작동할 수 있습니다. 시스템에 정상적인 데이터 복사본이 없을 경우 결과적으로 손상을 복구할 수 없습니다. 중요한 데이터일 경우 영향을 받는 데이터를 백업에서 복원해야 합니다. 이 경우에도 전체 풀을 복원하지 않고 이 손상에서 복구할 수 있습니다.

파일 데이터 블록에서 손상이 발생한 경우 파일을 안전하게 제거하면 시스템에서 오류가 지워집니다. 영구적인 오류가 발생한 파일 이름 목록을 표시하려면 zpool status -v 명령을 사용하십시오. 예를 들면 다음과 같습니다.

# zpool status tank -v
  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://support.oracle.com/msg/ZFS-8000-8A
config:

        NAME                       STATE     READ WRITE CKSUM
        tank                       ONLINE       4     0     0
          c0t5000C500335E106Bd0    ONLINE       0     0     0
          c0t5000C500335FC3E7d0    ONLINE       4     0     0

errors: Permanent errors have been detected in the following files:
        /tank/file.1
        /tank/file.2

영구적인 오류가 발생한 파일 이름 목록은 다음과 같이 설명될 수 있습니다.

손상이 디렉토리 또는 파일의 메타 데이터 내에서 발생한 경우 파일을 다른 곳으로 이동할 수만 있습니다. 파일이나 디렉토리를 덜 편리한 위치로 안전하게 이동하면 원본 객체를 해당 위치에서 복원할 수 있습니다.

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

손상된 파일 시스템에 스냅샷에서와 같이 여러 블록 참조가 있는 손상된 데이터가 있는 경우 zpool status -v 명령은 손상된 데이터 경로를 모두 표시하지는 않습니다. ZFS 스크럽 알고리즘은 풀을 순회하고 데이터의 각 블록을 한번만 방문합니다. 손상이 발생하면 처음에만 손상을 보고할 수 있습니다. 따라서 영향을 받는 파일에 대한 단일 경로만 생성합니다. 이는 중복이 제거된 손상된 블록에도 적용됩니다.

손상된 데이터가 있고 zpool status - v 명령이 스냅샷 데이터가 영향을 받았음을 식별하는 경우 추가로 손상된 경로가 있는지 검색해 보십시오.

# find mount-point -inum $inode -print
# find mount-point/.zfs/snapshot -inum $inode -print 

첫번째 명령은 지정된 파일 시스템 및 모든 스냅샷에서 보고된 손상 데이터의 inode 번호를 검색합니다. 두번째 명령은 동일한 inode 번호가 있는 스냅샷을 검색합니다.

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

풀 메타 데이터에서 손상이 발생했는데 이 손상으로 인해 풀을 열거나 가져올 수 없는 경우 다음 옵션을 사용할 수 있습니다.