user5507535 Asked: 2022-03-05 07:04:24 +0800 CST2022-03-05 07:04:24 +0800 CST 2022-03-05 07:04:24 +0800 CST 我可以从正在运行的 Linux 系统格式化我的 HD 吗? 772 我有一台 Debian Linux PC,我想彻底清除 HD。 是否可以在运行 Linux 时执行此操作,而无需插入可移动媒体并启动它?要格式化的 HD 与目前正在运行的 Linux 相同。 linux format 1 个回答 Voted Best Answer user1686 2022-03-05T07:32:37+08:002022-03-05T07:32:37+08:00 是的,您可以向磁盘发出“完全擦除”命令,并且您可以直接覆盖磁盘/dev而不管它的分区是否仍然挂载——人们甚至会错误地这样做;我见过很多人不小心将 .iso 写入他们的系统磁盘而不是 USB 记忆棒的情况。 尽管在挂载文件系统时,操作系统仍可能将新数据写回 HDD,例如,在擦除超级块之后,操作系统可能最终将其写回。此外,操作系统可能会由于尝试读取已从磁盘中擦除的文件系统结构而崩溃。 因此,对于完全覆盖,您需要做一些准备工作,以尽可能减少操作系统的后台活动。理想情况下,唯一运行的进程应该是您的 root shell,没有其他会导致操作系统读取或写入数据的进程。 为此,请在救援模式下启动 Linux,或者如果无法做到这一点,请通过文本控制台或 SSH 登录,然后在 GUI 正在运行时关闭它(停止“gdm”或“lightdm”服务)。还要关闭任何其他服务,尤其是那些将数据写入磁盘的服务(syslog、systemd-journald、httpd)。 然后卸载不必要的分区(如/home)并使用mount -o remount,ro以只读方式重新安装/文件系统,或者如果这不起作用,fsfreeze则暂停任何进一步的写入。 最后开始擦除。如前所述,此时您可以通过 /dev 覆盖整个块设备,但我建议使用hdparm发出“ATA Secure Erase”命令,该命令告诉磁盘完全擦除自身。这对于标准 HDD 来说只有很小的优势,但对于 SSD 和 SMR HDD 来说变得更加重要,因为它甚至能够擦除操作系统无法访问的“重新分配”位置。 注意:对于 SATA SSD,更喜欢“ATA Enhanced Secure Erase”(对于 HDD 来说没关系)。对于 NVMe 磁盘,请改为通过nvme-cli. 对于 SAS 磁盘,sg_sanitize应该是等效的。 当 hdparm 返回时(HDD 1-2 小时后,SSD 几秒钟后),只需物理关闭机器电源即可。(您可能可以通过 /proc/sysrq-trigger 关闭电源。常规的关闭命令将不起作用,因为您刚刚删除了它。) (故意省略了确切的 hdparm 命令。)
是的,您可以向磁盘发出“完全擦除”命令,并且您可以直接覆盖磁盘
/dev
而不管它的分区是否仍然挂载——人们甚至会错误地这样做;我见过很多人不小心将 .iso 写入他们的系统磁盘而不是 USB 记忆棒的情况。尽管在挂载文件系统时,操作系统仍可能将新数据写回 HDD,例如,在擦除超级块之后,操作系统可能最终将其写回。此外,操作系统可能会由于尝试读取已从磁盘中擦除的文件系统结构而崩溃。
因此,对于完全覆盖,您需要做一些准备工作,以尽可能减少操作系统的后台活动。理想情况下,唯一运行的进程应该是您的 root shell,没有其他会导致操作系统读取或写入数据的进程。
为此,请在救援模式下启动 Linux,或者如果无法做到这一点,请通过文本控制台或 SSH 登录,然后在 GUI 正在运行时关闭它(停止“gdm”或“lightdm”服务)。还要关闭任何其他服务,尤其是那些将数据写入磁盘的服务(syslog、systemd-journald、httpd)。
然后卸载不必要的分区(如/home)并使用
mount -o remount,ro
以只读方式重新安装/
文件系统,或者如果这不起作用,fsfreeze
则暂停任何进一步的写入。最后开始擦除。如前所述,此时您可以通过 /dev 覆盖整个块设备,但我建议使用
hdparm
发出“ATA Secure Erase”命令,该命令告诉磁盘完全擦除自身。这对于标准 HDD 来说只有很小的优势,但对于 SSD 和 SMR HDD 来说变得更加重要,因为它甚至能够擦除操作系统无法访问的“重新分配”位置。注意:对于 SATA SSD,更喜欢“ATA Enhanced Secure Erase”(对于 HDD 来说没关系)。对于 NVMe 磁盘,请改为通过
nvme-cli
. 对于 SAS 磁盘,sg_sanitize
应该是等效的。当 hdparm 返回时(HDD 1-2 小时后,SSD 几秒钟后),只需物理关闭机器电源即可。(您可能可以通过 /proc/sysrq-trigger 关闭电源。常规的关闭命令将不起作用,因为您刚刚删除了它。)
(故意省略了确切的 hdparm 命令。)