오래된 노트북의 루트 장치(HD+SD 카드)에서 write-around bcache를 1년 넘게 사용한 후 마침내 심각한 파일 시스템 손상에 직면했다는 사실을 발견했습니다. 그 결과 백업에 의존하고 모든 것을 두 번 다시 설치하게 되었습니다(!!)— —모두 때문에커널 업데이트/업그레이드 후 재부팅 후 캐시 장치의 bcache가 손상됨.
해결 방법은 캐시를 읽는 것이므로 상당히 "간단"합니다. 부팅 프로세스에서 내 장치가 자동으로 복구할 수 없을 정도로 손상되었음을 나타낼 경우 캐시된 장치를 삭제하고 캐시를 다시 생성한 후 다시 등록하기만 하면 됩니다. 수동 fsck. --그런데 손상된 write-around bcache를 사용하여 손상된 것으로 의심되는 파일 시스템을 fsck하지 마십시오. 그렇게 하면 데이터가 실제로 손상될 수 있습니다.
질문:이러한 부패를 방지할 수 있는 방법은 무엇입니까? 따라서 저는 Archlinux를 사용하고 항상 최신 버전을 사용합니다. 현재 커널은 4.19.4입니다.
답변1
여러 업데이트가 포함된 여러 컴퓨터에서 자체적으로 입증된 해결 방법을 찾았습니다.
일반적인 시스템 및 커널 업그레이드 후 재부팅하기 전에 bcache를 중지하세요.
echo 1 >/sys/fs/bcache/*/stop;sleep 2;sync;sync;shutdown -r now;logout
다음에 재부팅하면 손상 없이 bcache가 다시 시작됩니다.
대부분의 경우 bcache는 커널 버전에서 커널 버전으로 형식을 변경하지 않지만 사실은 커널 업데이트 없이 컴퓨터를 다시 시작해도 bcache의 캐시 장치가 손상되지 않는 반면, 커널을 업데이트하면 bcache의 캐시 장비가 손상된다는 것입니다. 심지어 이것은 작은 업데이트입니다.