아직 사용 중인 /dev/sda4 장치를 포맷할 수 없습니다.

아직 사용 중인 /dev/sda4 장치를 포맷할 수 없습니다.

LUKS 명령을 사용하여 CentOS 7 서버에서 파티션을 암호화하려고 하면 cryptsetup -y luksFormat /dev/sda4오류와 함께 시도가 실패합니다.Cannot format device /dev/sda4 which is still in use. 이 오류를 해결하고 LUKS가 파티션을 성공적으로 암호화하는 방법은 무엇입니까?

이것은 터미널 로그입니다:

[root@localhost ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/dm-1        50G  1.1G   46G   3% /
devtmpfs        3.8G     0  3.8G   0% /dev
tmpfs           3.8G     0  3.8G   0% /dev/shm
tmpfs           3.8G  8.7M  3.8G   1% /run
tmpfs           3.8G     0  3.8G   0% /sys/fs/cgroup
/dev/sda6       296G   65M  281G   1% /vpn
/dev/sda2       477M  110M  338M  25% /boot
/dev/sda1       200M  9.8M  191M   5% /boot/efi
/dev/sda3       596G   73M  565G   1% /home
/dev/sda7       296G   65M  281G   1% /test
/dev/sda5       296G   65M  281G   1% /public
/dev/sda4       296G   65M  281G   1% /data
[root@localhost ~]# cryptsetup -y luksFormat /dev/sda4

WARNING!
========
This will overwrite data on /dev/sda4 irrevocably.

Are you sure? (Type uppercase yes): YES
Enter passphrase: 
Verify passphrase: 
Cannot format device /dev/sda4 which is still in use.

답변1

/data현재 디스크에 있는 모든 것을 완전히 파괴하고 완전히 비어 있는 암호화된 새 볼륨을 생성하는 것이 목표입니까 ? 왜냐하면 이것이 바로 이 명령으로 수행되는 작업이기 때문입니다. 이것이 바로 "경고: 이는 /dev/sda4의 데이터를 영구적으로 덮어쓰게 됩니다"라는 의미입니다. 현재 데이터가 모두 손실되고 빈 블록 장치로 다시 시작됩니다.

아마도 원하는 작업은 데이터 백업을 수행 /data하고 새 볼륨을 생성한 다음 백업을 새 암호화된 파일 시스템으로 복원하는 것입니다. 당신은 tar그것을 훌륭하게 사용할 수 있습니다 :

cd /data
tar czvf /root/data_backup.tar.gz .

그런 다음에만 을 사용할 수 있습니다 cryptsetup. 오류에 대한 해결책은 먼저 제거하는 것입니다.

umount /data
cryptsetup -y luksFormat /dev/sda4

그런 다음 luksOpen/dev/sda4를 생성하고 mkfs암호화된 맵을 입력한 다음 mount마지막으로 해당 맵에 CD를 넣고 를 사용하여 기존 데이터를 복원할 수 있습니다 tar.

현재 존재하는 모든 것을 돌이킬 수 없게 파괴하고 싶다고 100% 확신한다면 /data1단계를 건너뛰고 바로 그 단계로 이동하세요 umount /data.

편집: 이렇게 하면 현재 데이터가 민감할 수 있습니다. 그렇다면 다음을 고려하십시오.

  • cryptsetup luksFormat하다아니요기존 데이터를 모두 덮어씁니다. 처음 몇 KiB만 다룹니다. 데이터가 민감한 경우 먼저 파티션의 모든 데이터를 덮어쓰려고 합니다 wipe.https://superuser.com/questions/831486/complete-wiping-of-hard-drive-shred-wipe-or-dd. 파티션이 크고 다른 파티션에 데이터가 많지 않은 경우 외부 저장소의 백업에 모든 데이터를 포함하는 것이 더 빠릅니다. 내부 디스크의 "보안 삭제" 기능을 사용하여 즉시 지우고 /dataLUKS를 사용하여 그것을 준비하고 백업을 복원하십시오.
  • 민감한 데이터를 오염시키지 않으려면 충분히 큰 tmpfs, 나중에 안전하게 지울 수 있는 더 작은 볼륨 또는 암호화된 컨테이너의 새 파일 시스템에 쓰거나 /root백업을 쓰기 전에 tar출력을 파이프하십시오 .gpg
  • cryptsetup-reencrypt데이터는 내부에서 암호화될 수 있습니다. 이 도구는 충돌 방지 기능이 없으므로 여전히 백업이 권장됩니다.

기존 백업은 작업 중에 기본 복사본이 됩니다. 중요한 데이터는 2차 백업을 하여 항상 여러 개의 복사본이 존재하도록 해야 합니다.

관련 정보