
TLDR; 내 ZFS 미러 풀에 체크섬 오류가 발생했습니다. 이것이 가장 가능성 있는 원인이라고 생각하여 컨트롤러를 교체했지만 오류가 지워지지 않습니다. 풀 클리어는 일시적으로 재설정하지만 다음에 스크럽을 실행할 때 다시 나타납니다. 어떻게 하면 그것들을 영원히 지울 수 있나요?
전체 내용: 저는 한동안 우분투 20.04.2 LTS에서 ZFS 미러-0을 설정하고 실행했습니다. 드라이브 중 하나가 죽었을 때 두 드라이브를 더 큰 드라이브로 교체하지 못했고 새 드라이브에 SATA-III PCI 카드를 추가했습니다(이전 드라이브는 온보드 SATA II 컨트롤러에 연결되어 있었습니다). , 더 이상 사용할 수 있는 SATA III 포트가 없었기 때문입니다). 몇 주 동안 새 드라이브와 컨트롤러에서 실행한 후 ZFS는 두 새 드라이브 모두에서 체크섬 오류에 대해 불평했고 그 결과 어레이가 "성능 저하" 상태가 되었습니다.
일부 연구에 따르면 두 드라이브 모두 정확히 동일한 수의 체크섬 오류를 표시하므로 드라이브 자체보다 컨트롤러에 문제가 있을 가능성이 훨씬 높다는 결론에 도달했습니다. 그래서 새 컨트롤러를 꺼내서 드라이브를 온보드 SATA II 컨트롤러에 다시 장착하고 문제가 있는지 확인한 후 컨트롤러 카드를 교체하려고 했습니다. 그런 다음 zpool status -v
영구 오류가 있는 것으로 표시된 두 파일을 삭제하고 zpool clear data
오류를 재설정하기 위해 명령을 실행한 다음 스크럽을 실행했습니다.
불행하게도 스크러빙 후에 오류가 다시 나타났습니다. 이제는 -v
더 이상 파일이 표시되지 않고 이전에 삭제한 파일 중 하나에 대한 주소(inode라고 생각합니다)만 표시됩니다. 다시 시도했지만 같은 결과가 나왔습니다. 스크럽을 실행할 때마다 다음과 같은 결과가 나타납니다.
root@watchman:~# zpool status -v
pool: data
state: DEGRADED
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://zfsonlinux.org/msg/ZFS-8000-8A
scan: scrub repaired 16K in 0 days 09:10:20 with 1 errors on Sat Jul 24 15:48:21 2021
config:
NAME STATE READ WRITE CKSUM
data DEGRADED 0 0 0
mirror-0 DEGRADED 0 0 0
ata-ST8000VE000-2P6101_WSD1M5NW DEGRADED 0 0 15 too many errors
ata-ST8000VE000-2P6101_WSD1HEJX DEGRADED 0 0 15 too many errors
errors: Permanent errors have been detected in the following files:
data:<0x380508>
내가 알 수 있는 바에 따르면 이것은 아마도 불량 컨트롤러로 인해 이미 존재했던 것과 동일한 문제이지만 해결할 수 없는 것 같습니다. 미러를 완전히 작동하는 상태로 복원하려면 어떻게 해야 합니까?
업데이트: 마침내 오류를 지우는 아이디어를 포기하고 대신 다시 시작했습니다. 기존 미러에서 드라이브 중 하나를 가져와 새 풀을 만들었습니다. 그런 다음 a를 실행하여 rsync
이전 풀의 모든 데이터를 새 풀로 복사했습니다. 이로 인해 몇 가지 오류가 발생했지만(zfs는 데이터 오류에 대해 거짓말을 하지 않았습니다) 중요하거나 문제가 되는 것은 없었으며 오류가 발생한 파일을 제외하면 rsync가 성공적으로 완료되었습니다. 그런 다음 새 풀에 두 번째 드라이브를 추가했고, 리실버 후에는 모든 것이 괜찮아 보이고 새 풀에 대한 스크럽이 오류 없이 완료되었습니다.
따라서 다음 주 동안 모든 것이 계속 좋아진다고 가정하면 SATA III 카드가 문제의 원인이라고 가정하고 더 나은 브랜드/옵션으로 교체하는 것이 안전하다고 생각합니다. :)