完全擦除外部SSD,包括SWAP

完全擦除外部SSD,包括SWAP

我有一个外部 SSD,需要将其完全擦除。我在上面安装了 Mint,带有 SWAP 和一些root目录。那些我不知何故无法摆脱的。我尝试过,sudo dd但这只是擦除sdc,其他两个条目似乎与 分开sdc,所以我的问题是如何摆脱那些 (sr0zram0),擦除?这里图片...我的外部 SSD 的屏幕截图

答案1

您应该提及 Linux 启动的设备。

sr0是 CDROM 或 DVD,并不是您真正想要擦除的内容。使用可擦除光盘(CD-RW)如果你确实想擦除它,你可以尝试一下cdrecord -v blank=fast dev=/dev/sr0。当然,如果删除启动设备,则会遇到一些麻烦。

zram0是 RAM 的压缩视图。只需关闭电脑或重新启动zram0即可将其删除。

答案2

  • sr0是 cd/dvd 阅读器,0代表 scsi 控制器上的第一个设备。要么进行网络搜索linux sr0是什么或者其他人可以解释这个命名约定背后的历史。/dev/sr0如今,您的 CD/DVD 阅读器几乎就是这样,rom最后一列下方的TYPE列名称也显示了这一点。
  • zram0位于内存中
    • https://docs.kernel.org/admin-guide/blockdev/zram.html
    • 抱歉,对此了解不多,但从技术上讲,这不是您的 SSD,以及从 SSD 复制到此的内容交换内存中的空间将在重新启动时被清除,假设您使用的是传统的 DIMM RAM,而不是一些非易失性 RAM,如 intel optane,它在断电时保留数据
    • 如果您需要进入硬核擦除数据模式,请执行类似“dd if=/dev/zero of=<zram mount?>我没有足够的数据可以按照您的图片继续进行”的操作of=

使用lsblk -o size,fstype,model,name,serial,uuid' to see more descriptivelsblk` 输出来确定您正在使用的内容。

给定你的图片,如果/sdc你想要擦除你的 SSD,上面有这 3 个分区,这就是我会做的

  • /parted /dev/sdc

    • mklabel gpt
    • 当提示有关 gpt 擦除磁盘上的所有数据时,键入 yes
    • mkpart primary 0% 100%
    • quit
  • mkfs.xfs /dev/sdc或者mkfs.ext4 /dev/sdc

  • `lsblk -o 大小、fstype、型号、名称、序列号、uuid'

  • 从 lsblk 输出验证仅一个分区/dev/sdc1根据您的mkfs选择正确的 FSTYPE,这将跨越整个磁盘。此时磁盘已经非常干净了。

  • 由于它是 SSD,因此请利用 TRIM 安全地擦除磁盘。较旧的 SSD 的控制器在 ATA 功能方面所支持的内容鱼龙混杂。

    • mount /dev/sdc1 /myssd
    • fstrim --verbose /myssd
  • 如何检查 TRIM?

  • https://wiki.archlinux.org/title/Solid_state_drive

    • 用于lsblk --discard查看 TRIM 是否可用
    • 检查 DISC-GRAN(丢弃粒度)和 DISC-MAX(丢弃最大字节)列的值。非零值表示 TRIM 支持。仅对于 SATA SSD,hdparm 软件包可以通过hdparm -I /dev/sda | grep TRIMroot 用户身份检测 TRIM 支持。hdparm但不支持 NVMe SSD,其中该DISC-MAX列未设置为0B

擦拭磁盘,在您重新制作 GPT 分区标签并仅制作 1 个跨越整个磁盘的分区后,您可以dd if=/dev/zero of=/dev/sdc1 count=? bs=?使用正确的块大小和计数值将所有零推入该分区。做一次没什么大不了的,频繁做的话会缩短SSD的寿命。

https://man7.org/linux/man-pages/man8/blkdiscard.8.html

还有blkdiscard用于丢弃设备扇区,对于固态驱动器 (SSD) 和精简配置存储很有用,与 fstrim 不同,此命令直接在块设备上使用。

相关内容