Table of Contents
?️ 2. Use dd with /dev/zero (Basic Secure Wipe)
? 3. For Extra Security: Use shred
? 4. Optional: Use badblocks for Destructive Write Test
✅ Final Step: Verify the Wipe
⚠️ Important Notes:
Home System Tutorial LINUX How to Securely Erase a Hard Drive on Linux

How to Securely Erase a Hard Drive on Linux

Jul 24, 2025 am 12:08 AM
linux 硬盘擦除

Confirm the target hard disk device name (such as /dev/sda) to avoid accidentally deleting the system disk; 2. Use sudo dd if=/dev/zero of=/dev/sdX bs=1M status=progress to overwrite the zero value in full disk, which is suitable for most scenarios; 3. Use sudo shred -v -n 3 /dev/sdX for three random data overwrites to ensure that it cannot be restored; 4. Optionally execute sudo badblocks -wsv /dev/sdX for destructive write tests; finally use sudo hexdump -C /dev/sdX | head to verify that it is all zero and complete safe erasing.

How to Securely Erase a Hard Drive on Linux

If you're decommissioning a hard drive, selling an old laptop, or just want to make sure your data is truly gone, simply deleting files or reformatting isn't enough. On Linux, there are reliable, built-in tools to securely erase a hard drive so data can't be recovered—even with forensic tools.

How to Securely Erase a Hard Drive on Linux

Here's how to do it right:


? 1. Identify the Correct Drive

Before doing anything, double-check which drive you're targeting— wiping the wrong one could destroy your OS or data .

How to Securely Erase a Hard Drive on Linux
 lsblk

or

 sudo fdisk -l

Look for the device name like /dev/sda , /dev/nvme0n1 , etc.
? Pro tip: Unplug all unnecessary drives to avoid mistakes.

How to Securely Erase a Hard Drive on Linux

?️ 2. Use dd with /dev/zero (Basic Secure Wipe)

This overwrites the entire drive with zeros—good for most cases:

 sudo dd if=/dev/zero of=/dev/sdX bs=1M status=progress

Replace sdX with your actual drive (eg, sda ).

  • if=/dev/zero = input is all zeros
  • of=/dev/sdX = output to your target drive
  • bs=1M = faster write speed
  • status=progress = shows real-time progress

Why this works : Overwriting with zeros makes most recovery tools useless.
⚠️ Note : This takes time—hours for large drives.


? 3. For Extra Security: Use shred

shred writes random data multiple times (default: 3 passes), making recovery nearly impossible:

 sudo shred -v -n 3 /dev/sdX
  • -v = verbose (shows progress)
  • -n 3 = 3 overwrite passes (you can use more, but 3 is usually sufficient)

? Use this if the drive hold sensitive data like passwords, financial records, or personal documents.


? 4. Optional: Use badblocks for Destructive Write Test

This is overkill for most users but useful if you want to both test for bad sectors and wipe:

 sudo badblocks -wsv /dev/sdX
  • -w = destructive write test (wipes the drive)
  • -s = show progress
  • -v = verbose

This does one pass of predefined patterns —not as through as shred , but faster and still secure for casual use.


✅ Final Step: Verify the Wipe

After wiping, check that the drive is actually blank:

 sudo hexdump -C /dev/sdX | head

You should see only zeros (like 00000000: 00 00 00 ... ). If you see readable text or patterns, the wipe failed.


⚠️ Important Notes:

  • Unmount all partitions first :
     sudo umount /dev/sdX*
  • SSDs vs HDDs : For SSDs, use blkdiscard or the drive's built-in secure erase (via hdparm )—because wear leveling can leave data in unused blocks.
  • Physical destruction is the only 100% secure method for top-secret data—but that's beyond software.

  • Basically, for 99% of users:

    1. Identify the drive ✅
    2. Run shred -v -n 3 /dev/sdX ?
    3. Verify with hexdump

    It's not glamorous—but it's secure, simple, and uses tools already on your Linux system.

    The above is the detailed content of How to Securely Erase a Hard Drive on Linux. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undress AI Tool

Undress AI Tool

Undress images for free

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to install software on Linux using the terminal? How to install software on Linux using the terminal? Aug 02, 2025 pm 12:58 PM

There are three main ways to install software on Linux: 1. Use a package manager, such as apt, dnf or pacman, and then execute the install command after updating the source, such as sudoaptininstallcurl; 2. For .deb or .rpm files, use dpkg or rpm commands to install, and repair dependencies when needed; 3. Use snap or flatpak to install applications across platforms, such as sudosnapinstall software name, which is suitable for users who are pursuing version updates. It is recommended to use the system's own package manager for better compatibility and performance.

The Ultimate Guide to High-Performance Gaming on Linux The Ultimate Guide to High-Performance Gaming on Linux Aug 03, 2025 am 05:51 AM

ChoosePop!_OS,Ubuntu,NobaraLinux,orArchLinuxforoptimalgamingperformancewithminimaloverhead.2.InstallofficialNVIDIAproprietarydriversforNVIDIAGPUs,ensureup-to-dateMesaandkernelversionsforAMDandIntelGPUs.3.EnabletheperformanceCPUgovernor,usealow-latenc

What are the main pros and cons of Linux vs. Windows? What are the main pros and cons of Linux vs. Windows? Aug 03, 2025 am 02:56 AM

Linux is suitable for old hardware, has high security and is customizable, but has weak software compatibility; Windows software is rich and easy to use, but has high resource utilization. 1. In terms of performance, Linux is lightweight and efficient, suitable for old devices; Windows has high hardware requirements. 2. In terms of software, Windows has wider compatibility, especially professional tools and games; Linux needs to use tools to run some software. 3. In terms of security, Linux permission management is stricter and updates are convenient; although Windows is protected, it is still vulnerable to attacks. 4. In terms of difficulty of use, the Linux learning curve is steep; Windows operation is intuitive. Choose according to requirements: choose Linux with performance and security, and choose Windows with compatibility and ease of use.

Understanding RAID Configurations on a Linux Server Understanding RAID Configurations on a Linux Server Aug 05, 2025 am 11:50 AM

RAIDimprovesstorageperformanceandreliabilityonLinuxserversthroughvariousconfigurations;RAID0offersspeedbutnoredundancy;RAID1providesmirroringforcriticaldatawith50�pacityloss;RAID5supportssingle-drivefailuretoleranceusingparityandrequiresatleastthre

Linux how to enable and disable services at boot Linux how to enable and disable services at boot Aug 08, 2025 am 10:23 AM

To manage the startup of Linux services, use the systemctl command. 1. Check the service status: systemctlstatus can check whether the service is running, enabled or disabled. 2. Enable the service startup: sudosystemctlenable, such as sudosystemctlenablenginx. If it is started at the same time, use sudosystemctlenable--nownginx. 3. Disable the service startup: sudosystemctldisable, such as sudosystemctldisablecups. If it is stopped at the same time, use sudosystemctldisabl

Linux how to list all running processes Linux how to list all running processes Aug 08, 2025 am 06:42 AM

Usepsauxforacompletesnapshotofallrunningprocesses,showingdetailedinformationlikeUSER,PID,CPU,andmemoryusage.2.Usetoporhtopforreal-timemonitoringofprocesseswithdynamicupdates,wherehtopoffersamoreintuitiveinterface.3.UsepgreporpidoftoquicklyfindthePIDs

How to clean up your Linux system How to clean up your Linux system Aug 22, 2025 am 07:42 AM

Removeunusedpackagesanddependencieswithsudoaptautoremove,cleanpackagecacheusingsudoaptcleanorautoclean,andremoveoldkernelsviasudoaptautoremove--purge.2.Clearsystemlogswithsudojournalctl--vacuum-time=7d,deletearchivedlogsin/var/log,andempty/tmpand/var

Linux how to view the contents of a file Linux how to view the contents of a file Aug 19, 2025 pm 06:44 PM

ToviewfilecontentsinLinux,usedifferentcommandsbasedonyourneeds:1.Forsmallfiles,usecattodisplaytheentirecontentatonce,withcat-ntoshowlinenumbers.2.Forlargefiles,uselesstoscrollpagebypageorlinebyline,searchwith/search_term,andquitwithq.3.Usemoreforbasi

See all articles