我需要安全地格式化我的硬盘。我从 USB 密钥启动,并计划在整个硬盘上运行以下命令:
sudo shred -v -n3 -z /dev/the-partition
我的问题是:如何识别所有分区以便彻底清除硬盘?
以下是输出lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 1.8G 1 loop /rofs
loop1 7:1 0 91M 1 loop /snap/core/6350
loop2 7:2 0 34.6M 1 loop /snap/gtk-common-themes/818
loop3 7:3 0 140.7M 1 loop /snap/gnome-3-26-1604/74
loop4 7:4 0 2.3M 1 loop /snap/gnome-calculator/260
loop5 7:5 0 13M 1 loop /snap/gnome-characters/139
loop6 7:6 0 14.5M 1 loop /snap/gnome-logs/45
loop7 7:7 0 3.7M 1 loop /snap/gnome-system-monitor/57
sda 8:0 1 7.5G 0 disk /cdrom
├─sda1 8:1 1 1.9G 0 part
└─sda2 8:2 1 2.4M 0 part
nvme0n1 259:0 0 238.5G 0 disk
这是df -h
Filesystem Size Used Avail Use% Mounted on
udev 3.9G 0 3.9G 0% /dev
tmpfs 786M 1.7M 785M 1% /run
/dev/sda 1.9G 1.9G 0 100% /cdrom
/dev/loop0 1.8G 1.8G 0 100% /rofs
/cow 3.9G 331M 3.6G 9% /
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
tmpfs 3.9G 0 3.9G 0% /tmp
tmpfs 786M 44K 786M 1% /run/user/999
/dev/loop1 91M 91M 0 100% /snap/core/6350
/dev/loop2 35M 35M 0 100% /snap/gtk-common-themes/818
/dev/loop3 141M 141M 0 100% /snap/gnome-3-26-1604/74
/dev/loop4 2.3M 2.3M 0 100% /snap/gnome-calculator/260
/dev/loop5 13M 13M 0 100% /snap/gnome-characters/139
/dev/loop6 15M 15M 0 100% /snap/gnome-logs/45
/dev/loop7 3.8M 3.8M 0 100% /snap/gnome-system-monitor/57
答案1
为什么不粉碎整个设备(重要!选择正确的设备进行粉碎!):
shred /dev/nvme0n1
... 而不是
shred /dev/nvme0n1p1
答案2
我喜欢lsblk
,它显示设备名称和其中的分区,以及已挂载的分区。
:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 465,8G 0 disk
├─sda1 8:1 0 100M 0 part
├─sda2 8:2 0 122G 0 part
├─sda3 8:3 0 1K 0 part
├─sda5 8:5 0 7,6G 0 part [SWAP]
├─sda6 8:6 0 69,9G 0 part /
└─sda7 8:7 0 266,2G 0 part /home
sr0 11:0 1 1024M 0 rom
sudo fdisk -l
提供更多细节,但需要超级用户访问权限。
~$ sudo fdisk -l
Disk /dev/sda: 465,8 GiB, 500107862016 bytes, 976773168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0xe0ec1799
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 206847 204800 100M 7 HPFS/NTFS/exFAT
/dev/sda2 206848 255999999 255793152 122G 7 HPFS/NTFS/exFAT
/dev/sda3 256002046 976771071 720769026 343,7G 5 Extended
/dev/sda5 256002048 272001023 15998976 7,6G 82 Linux swap / Solaris
/dev/sda6 272003072 418486271 146483200 69,9G 83 Linux
/dev/sda7 418488320 976771071 558282752 266,2G 83 Linux
我总是用它lsblk
来检测驱动器,然后注册/dev/zero
以擦除磁盘。
答案3
lsblk
为了从外部获取更有意义的报告噪音从数十种loop
设备中使用:
$ lsblk -o NAME,FSTYPE,LABEL,MOUNTPOINT,SIZE,MODEL | egrep -v "^loop"
NAME FSTYPE LABEL MOUNTPOINT SIZE MODEL
nvme0n1 477G Samsung SSD 960 PRO 512GB
├─nvme0n1p9 swap [SWAP] 7.9G
├─nvme0n1p7 ext4 Old_Ubuntu_16.04 /mnt/old 23.1G
├─nvme0n1p5 ntfs 859M
├─nvme0n1p3 16M
├─nvme0n1p1 ntfs 450M
├─nvme0n1p8 ntfs Shared_WSL+Linux /mnt/e 9G
├─nvme0n1p10 ext4 Ubuntu_18.04 /mnt/clone 27.2G
├─nvme0n1p6 ext4 New_Ubuntu_16.04 / 45.1G
├─nvme0n1p4 ntfs NVMe_Win10 /mnt/c 363.2G
└─nvme0n1p2 vfat /boot/efi 99M
sr0 1024M DVD+/-RW DW316
sda 931.5G HGST HTS721010A9
├─sda4 ntfs WINRETOOLS 450M
├─sda2 128M
├─sda5 ntfs Image 11.4G
├─sda3 ntfs HGST_Win10 /mnt/d 919G
└─sda1 vfat ESP 500M
答案4
如果你想彻底清除所有内容:
- 不要使用
shred
,它主要用于文件,而不是磁盘。 - 只需擦除整个磁盘
/dev/nvme0n1
,而不是单独擦除每个分区。 - 下载这个DBAN分叉并使用它安全地擦除您的驱动器。