실수로 삭제된 파일에 썼습니다(루프 장치)

실수로 삭제된 파일에 썼습니다(루프 장치)

실수로 루프 장치를 통해 삭제된 파일을 썼습니다.

운영 체제: 우분투 20.04

내 시나리오는 다음과 같습니다.

1 - RAW 이미지 파일을 만들었습니다.

# qemu-img create -f raw sda.img 10G

2 - sfdisk dump를 사용하여 파티션을 만들었습니다.

# sfdisk sda.img < sda.dump

3 - 루프 장치(loop18)를 통해 이미지를 설치했습니다.

# losetup -f --show -P sda.img

알겠어요:

# lsblk /dev/loop18
NAME       MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
loop18       7:18   0   10G  0 loop 
└─loop18p1 259:0    0  9,8G  0 part 

4 - (실수로) 이미지 파일을 삭제했습니다.

# rm sda.img

5 - 백업 이미지를 파티션에 복사합니다.

# dd if=sda1.img.bak of=/dev/loop18p1 status=progress

오류가 없습니다. dd 명령이 제대로 작동합니다.

losetup명령은 이미지 파일이 삭제되었음을 나타냅니다.

# losetup /dev/loop18
/dev/loop18: [2049]:1972579 ( (deleted))

테스트를 위해 파티션에 임의의 데이터를 썼습니다(ctrl+C).

# dd if=/dev/urandom of=/dev/loop18p1 status=progress 
146953728 octets (147 MB, 140 MiB) copiés, 4 s, 36,7 MB/s^C
327621+0 enregistrements lus
327621+0 enregistrements écrits
167741952 octets (168 MB, 160 MiB) copiés, 5,10425 s, 32,9 MB/s

왜 작동합니까? 내 Ubuntu 운영 체제의 ext4 파일 시스템은 안전합니까?

감사해요.

관련 정보