it-swarm-ko.tech

명령 줄에서 모든 파티션 삭제

Linux의 명령 줄 (특히 Ubuntu)에서 장치의 모든 파티션을 어떻게 삭제합니까? fdisk를 보려고했지만 대화식 프롬프트가 표시됩니다. 장치 경로 (예 :/dev/sda)를 제공 할 수있는 단일 명령을 찾고 있는데 ext4, linux-swap 및 기타 파티션을 삭제합니다. 기본적으로 이것은 GParted를 열고 모든 파티션을 수동으로 선택하고 삭제하는 것과 같습니다. 이것은 매우 단순 해 보이지만 불행히도 Google을 통해 아무것도 찾을 수 없었습니다.

41
Cerin

이것으로 충분합니까?

dd if=/dev/zero of=/dev/sda bs=512 count=1 conv=notrunc
45
pk.

wipefs 프로그램을 사용하면 파티션 테이블 서명을 쉽게 삭제할 수 있습니다.

wipefs -a /dev/sda

man wipefs부터

wipefs는 지정된 장치에서 파일 시스템, RAID 또는 파티션 테이블 서명 (매직 문자열)을 지워서 libblkid에 서명을 보이지 않게 할 수 있습니다.

wipefs는 파일 시스템 자체 나 장치의 다른 데이터를 지우지 않습니다. 옵션없이 사용하면 wipefs는 보이는 모든 파일 시스템과 기본 서명의 오프셋을 나열합니다.

wipefs는 파티션 테이블 서명을 지울 때 BLKRRPART ioctl을 호출하여 변경 사항을 커널에 알립니다.

34
user144437

빠르고 더러운 : gparted를 사용하여 파티션을 삭제하거나 급한 경우 :

dd if=/dev/zero of=/dev/[disk device] bs=512 count=1

이렇게하면 드라이브의 MBR이 zap됩니다 (데이터는 그대로 유지됨).

또는

dd if=/dev/zero of=/dev/[disk device]

전체 드라이브를 지우려면 (모든 것에 단일 패스 0을 작성하십시오. "보안되지는 않지만 일반적으로 충분합니다"), 또는 안전한 디스크 정리를 위해 "디스크 분쇄기"도구를 사용하십시오.

12
voretaq7

보다 man sfdisk, 이것은 비 대화식 fdisk 변형입니다. 그 외에는 pk가 쓴 것처럼 dd를 사용하여 전체 파티션 테이블을 삭제할 수 있습니다.

7
Sven

이 경우에도 parted을 사용할 수 있어야하지만 파티션을 반복하는 스크립팅이 필요할 수 있습니다.

6
Decado

MBR 스타일 파티션에 대해 이야기한다면 ...

dd if=/dev/zero of=/dev/[disk device] bs=1 count=64 seek=446 conv=notrunc

설명:

dd

이 표준 명령은 소스에서 바이트를 복사하여 대상에 씁니다. 이 작업을위한 가장 간단한 유연한 도구입니다.

if=/dev/zero

여기서 우리는 NUL bytes--zeros를 방출하는 특수 장치 인 /dev/zero에서 읽도록 지정합니다.

of=/dev/[disk device]

여기에서는 우리가 쓰는 장치를 지정합니다.

bs=1

ddblocks의 관점에서 생각합니다. 기본 블록 크기는 시스템에 따라 512 바이트, 1024 바이트 또는 4096 바이트 일 수 있습니다. 그러나 그보다 더 정확하게 처리해야하므로 블록 크기 1 바이트를 사용하도록 dd에 지시합니다.

카운트 = 64

여기서, 1 차 파티션 테이블은 4 개의 16 바이트 파티션 항목으로 구성되어 총 64 바이트이므로 64 개의 블록 (또는 bs=1 매개 변수로 인해 바이트)을 쓰도록 dd에 지시합니다. .

찾기 = 446

MBR 내의 기본 파티션 테이블 (여기서는 GPT에 대해서는 언급하지 않음)은 446 바이트에 있으므로 dd에 446 바이트를 찾도록 지시합니다.

확장 파티션은 일반적으로 확장 파티션 테이블을 가리 키도록 기본 파티션 슬롯을 사용하여 만들어 지므로 4 개의 기본 파티션을 지우면 확장 파티션 테이블도 효과적으로 지울 수 있습니다. OS에서 찾을 수 없으므로 읽고 해석 할 수 없습니다. 확장 파티션 테이블을 지우려면 운영 체제에 대한 자세한 정보가 필요합니다. 다른 운영 체제는 다른 방식으로 확장 파티션을 수행합니다.

4
Michael Mol

나는 똑같은 일을하고 싶었지만 (슬랙웨어 14.2는 제외) 여기에 제안 된 대부분의 솔루션에 영향을 줄 수 없다는 것을 알았습니다. 가장 정교하고 잘 문서화 된 솔루션은 교체 파티션을 만드는 새로운 문제를 만듭니다. 파티션을 삭제했지만 일부 파티션 소프트웨어가 파티션 백업을 자동으로 찾은 것 같습니다.

F3probe ( http://oss.digirati.com.br/f )는 모든 파티션을 빠르고 쉽게 삭제하고 대용량 드라이브로 작업하는 문제를 해결하고 정확히 1 개의 파티션 스패닝을 생성한다는 것을 알았습니다. 삭제하기 쉬운 전체 드라이브.

거기에서 새 파티션을 간단하게 만들 수도 있습니다.

즉.

f3probe --destructive --time-ops /dev/sdb
# Now we know only 1 partition exists on /dev/sdb
#    which is /dev/sdb1
#
# Unmount that partition
umount /dev/sdb1

#
# Delete that single partition
parted /dev/sdb rm 1

#
# Now you can create new partitions
# i.e. parted /dev/sdb mkpart primary fat32 1049K 15.8G
# 
# Update /etc/fstab before rebooting....
2
John

향상된 비 대화식 fdisk 버전 인 sfdisk 를 사용하십시오.

파티션 테이블을 지우려면 다음 명령을 사용하십시오.

sfdisk --delete /dev/sda
0
Suncatcher