SSD의 모든 파티션과 데이터를 깨끗하게 정리하고 다시 분할 할 수 있습니다 (보안 목적이 아님).
나는 살펴 보았지만 sudo dd if=/dev/zero of=/dev/sdb bs=1M
이것이 각 파티션을 0으로 채우면 내가하고 싶은 일이 확실하지 않습니다.
이 명령을 자주 실행할 계획이며 SSD 쓰기를 소진하고 싶지 않습니다. 누구 든지이 문제를 해결하는 데 조언을 줄 수 있습니까?
답변
SSD에서 :을 사용하여 전체 디스크 또는 파티션을 트리밍 할 수 있습니다 blkdiscard
. 매우 안전하지는 않지만 실제로 즉각적입니다 (디스크는 모든 셀을 사용하지 않는 것으로 표시합니다).
보안 : 전체 디스크 암호화를 사용하십시오. 암호화 된 경우 전체 디스크를 지우지 마십시오. 키가 포함 된 영역 (예 : 모든 암호화 된 파티션의 첫 1-2 MiB) 만 정리하면됩니다.
재 파티셔닝 : 모든 데이터를 지우지 않아도됩니다. 를 사용하여 파일 시스템을 삭제 wipefs
한 다음 디스크의 첫 번째 1MiB를 문질러 남아있는 부트 로더를 제거하면됩니다. 를 사용하여 파티션을 포맷 mkfs
하면 OS는 단순히 완전히 비어 있다고 가정합니다.
실제로 Linux에서는 mkfs.ext4가 포맷하기 전에 전체 파티션을 자동으로 트리밍합니다.
답변
Kamil Maciorowski가 언급 했듯이 전체 디스크 를 삭제하는 가장 적은 쓰기 작업으로 ATA ‘secure erase’명령을 사용하는 것이 가장 좋습니다 . 이렇게하면와 같은 도구를 사용하여 셀을 반복적으로 덮어 쓰지 않고 하드웨어가 단일 전체 지우기를 수행하도록 지시합니다 shred
. 파티션을 선택적으로 지워야 하는 경우 전체 디스크에 대해서만 수행 할 수 있습니다. grawity ‘s answer ( blkdiscard
)를 참조하십시오.
명령의 정확한 구현은 하드웨어에 따라 다릅니다.
-
대부분의 SSD 는 대량의 전기 신호를 사용하여 전체 칩을 전혀 또는 전혀 방식으로 닦아냅니다. 이로 인해 (정상적인) 쓰기 마모가 발생하지만 가능한 최소 범위 (~ 단일 쓰기주기)까지 발생합니다.
-
자체 암호화 SSD 는 일반적으로 컨트롤러 칩 내부의 암호화 키를 삭제합니다 (실제로 순간). 자체 암호화 드라이브 는 기본적으로 기본 공장 키를 사용하여 항상 암호화합니다. 따라서 키를 닦으면 사용자 키가 설정되지 않은 경우에도 플래시 칩에서 해독 할 수없는 혼란이 발생합니다.
- Spinning-Rust 하드 디스크 는 모든 섹터에 대해 하드웨어 기반의 제로 쓰기를 수행
dd if=/dev/zero
합니다.
프로세스는 https://www.thomas-krenn.com/en/wiki/SSD_Secure_Erase에 잘 설명되어 있습니다
(OS를 다시 설치할 때 자체 SSD 에서이 프로세스를 반복적으로 사용했습니다)
편집 : 보안 영향에 관심이 있다면이 Security.SE의 질문을 확인하십시오.
답변
디스크를 빠르게 지우는 방법에 대한 해결책을 요청했습니다. / dev / sdx를 디스크로 바꾸십시오.
파티션 테이블이 지워집니다.
dd if=/dev/zero of=/dev/sdx bs=1024 count=50
디스크 전체가 지워지는데 시간이 걸립니다.
cat /dev/zero > /dev/sdx