EXT4의 향후 호환성은 얼마나 안전합니까?

EXT4의 향후 호환성은 얼마나 안전합니까?

64비트 ArchLinux(커널 5.4.50)에서 e2fsprogs 1.45.6-2를 사용하여 HDD를 EXT4로 포맷하고 데이터로 채웠습니다. 그 후 e2fsprogs 1.42.12-2+deb8u2를 사용하여 32비트 Debian Jessie(커널 3.16.84-1)를 실행하는 다른 컴퓨터에 설치하고 단일 파일을 복사했습니다.

이 버전 차이에 문제가 있으며 파일 시스템이 손상되었을 수 있습니까?

32비트 Jessie 시스템을 종료하는 동안 기본적으로 메타데이터_csum으로 인해 실행할 수 없다는 e2fsck 오류 메시지를 발견했습니다.

그래서 인터넷 검색을 통해 메타데이터 체크섬이 1.43에 도입되었다는 사실을 알아냈습니다. https://ext4.wiki.kernel.org/index.php/Ext4_Metadata_Checksums

나를 정말 불편하게 만드는 것은 거기에 있는 다음 인용문입니다. 메타데이터 체크섬이 활성화된 파일 시스템에 이전 fs 코드를 쓰는 것이 불가능해야 합니다. Metadata_csum 플래그는 ROCOMPAT 플래그로 구현되어 (악의적이지 않은) 오래된 프로그램이 문제를 일으키지 않도록 해야 합니다.

비호환성 문제가 있으면 파일 시스템을 전혀 마운트할 수 없을 것으로 예상했지만 FS를 망칠 수도 있다는 것이 정말 두렵습니다.

이에 대한 도움을 주시면 감사하겠습니다.

편집: 저는 GParted를 사용하여 FS를 생성했고 그 동안 mke2fs와 달리 16TiB 미만 드라이브(내 8TB 드라이브의 경우)에 대해 기본적으로 32비트 모드로 파일 시스템을 생성한다는 사실을 배웠습니다. 에서 제공하는 파일 시스템 기능을 확인하여 이를 확인했습니다 tune2fs -l /dev/sda | grep features. 그렇지 않으면 '64비트'라는 용어가 포함됩니다.

답변1

두 가지 별도의 호환성 검사가 있습니다. 하나는 커널에 의한 것이고, 다른 하나는 e2fsprogs 유틸리티에 의한 것입니다. 3.16 커널은 메타데이터 체크섬을 지원하므로 마운트하는 데 문제가 없었습니다. 그러나 Debian Jessie의 e2fsprogs 버전은 그렇지 않았습니다. 따라서 e2fsprogs 버전이 너무 오래되었기 때문에 e2fsck를 사용하여 파일 시스템을 확인하려는 시도가 실패했습니다. 어떤 프로그램이 e2fsck를 실행하려고 했는지는 잘 모르겠지만 분명히 e2fsck의 종료 상태를 무시했거나 수동으로 마운트한 것 같습니다.

이는 e2fsck가 파일 시스템을 확인할 수 없다고 말했음에도 불구하고 파일 시스템을 마운트할 수 있었던 이유를 설명합니다.

하지만 또 다른 주의 사항은 3.16이매우오래된 커널, 그리고 일부 버그 수정이 백포트되기는 하지만 모두가 그런 것은 아니며, 3.16에서는 아주 오래 전에 백포트를 가져오는 것을 중단했습니다. 그리고 3.16은 메타데이터 체크섬이 출시된 직후였고, 지금은 할 수 없습니다.모두3.16.84의 메타데이터 체크섬과 관련된 버그가 없음을 보장합니다. 그러나 단일 파일만 해당 파일 시스템에 복사했고 파일 내용이 체크아웃되었으며 최신 버전의 e2fsck가 어떤 문제도 감지하지 못한다면 아마도 괜찮을 것입니다.

관련 정보