3TB 80% 전체 ext4 블록 장치를 btrfs로 변환하고 프로세스와 관련된 위험을 추정하고 싶습니다.
변환 중에 실수로 전원이 꺼지면 데이터가 손실됩니까?
btrfs에 대한 2년간의 경험에 따르면 정전 중에 파일 시스템은 중간 정도만 안전하다는 것이 밝혀졌습니다. 전원이 두 번 이상 연속으로 꺼지면 내 데이터 중 일부가 파괴됩니다.
답변1
데이터 손실은 컨트롤러의 디스크 쓰기 작업 실패로 인해 발생할 가능성이 가장 높으며 전체 디스크 파티션 테이블이 손상될 수도 있습니다.
말했듯이 사전에 백업이 이루어지지만 변환 작업 자체는 원본 데이터를 건드리지 않는 방식으로 설계되었습니다. Btrfs는 원래 FS 버전의 스냅샷을 만들고 추가 작업을 위해 사용 가능한 블록을 사용합니다.
100GB 파티션에 새 ext4 FS를 생성하고 실행하는 경우
#df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 99G 60M 94G 1% /ext4convert2btrfs
그런 다음 제거하고 변환을 실행하십시오.
#unmount /ext4convert2btrfs
#btrfs-convert /dev/sda3
creating btrfs metadata.
creating ext2fs image file.
cleaning up system chunk.
conversion complete.
그런 다음 다시 mount run df를 실행하면 다음과 같은 내용이 표시됩니다.
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 100G 1.8G 66G 3% /ext4convert2btrfs
남은 공간은 기본 FS 스냅샷에서 사용됩니다. 시스템 관리자만이 스냅샷을 삭제하고 원본 데이터를 덮어쓰기해도 안전한 시기를 결정할 수 있습니다.
여유 공간을 복원하고 변환을 영구적으로 만들려면 다음을 수행하십시오.
#cd /ext4convert2btrfs
#btrfs subvol delete ext2_saved
#btrfs balance start /ext4convert2btrfs
#df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 100G 544K 99G 1% /ext4convert2btrfs
그게 다야 :)
답변2
파티션 변환 중에 정전이 발생하면 데이터가 손상될 수 있습니다. 이러한 이유로 이러한 작업을 수행하기 전에 항상 백업을 수행하는 것이 좋습니다.
그러나 Btrfs-convert에는 변환을 되돌리는 스위치가 있으므로 변환을 취소해야 -r
하는 경우에 사용할 수 있습니다 . deconvert
또한 다음 답변 중 하나에서 복구가 일반적으로 훨씬 더 빠르다고 보고하는 사용자를 발견했습니다.https://askubuntu.com/questions/256652/ext4-to-btrfs-conversion-how-long-can-it-take-space-requirements
변환은 비교적 빠르므로 실행하는 데 며칠이 걸릴 것으로 예상해서는 안 됩니다. 최근에 SSD 드라이브에서 ~20Gb 파티션을 변환했는데 몇 초 밖에 걸리지 않았습니다. 3TB 데이터가 HDD에 있다고 가정하면 시간이 더 오래 걸립니다.