導(dǎo)讀
Linux命令行佷有用、很高效,也很有趣,但有時(shí)候也很危險(xiǎn),尤其是在你不確定你自己在正在做什么時(shí)候。這篇文章將會(huì)向你介紹十條命令,但你最好不要嘗試著去使用。
當(dāng)然linux命令,以下命令通常都是在root權(quán)限下才能將愚蠢發(fā)揮到無可救藥;在普通用戶身份下,破壞的只是自己的一畝三分地。
1. rm -rf 命令
rm -rf命令是刪除文件夾及其內(nèi)容最快的方式之一。 僅僅一丁點(diǎn)的敲錯(cuò)或無知都可能導(dǎo)致不可恢復(fù)的系統(tǒng)崩壞。 下列是一些rm 命令的選項(xiàng): rm 命令在Linux下通常用來刪除文件。 rm -r 命令遞歸的刪除文件夾,甚至是空的文件夾。 rm -f 命令能不經(jīng)過詢問直接刪除‘只讀文件’。Linux下刪除文件并不在乎該文件是否是只讀的,而只是在意其父目錄是否有寫權(quán)限。所以,-f這個(gè)參數(shù)只是表示不必一個(gè)個(gè)刪除確認(rèn),而是一律悄悄刪除。另外,原始的rm命令其實(shí)也是沒有刪除提示的,只是一般的發(fā)行版都會(huì)將rm通過別名的方式增加-i參數(shù)來要求刪除確認(rèn),而-f則抑制了這個(gè)提示。 rm -rf / : 強(qiáng)制刪除根目錄下所有東東。 rm -rf *: 強(qiáng)制刪除當(dāng)前目錄的所有文件。 rm -rf . : 強(qiáng)制刪除當(dāng)前文件夾及其子文件夾。 從現(xiàn)在起,當(dāng)你要執(zhí)行rm -rf命令時(shí)請(qǐng)留心一點(diǎn)。我們可以在“.bashrc”文件對(duì)‘rm‘命令創(chuàng)建rm -i的別名,來預(yù)防用 ‘rm‘命令刪除文件時(shí)的事故,它會(huì)要求你確認(rèn)每一個(gè)刪除請(qǐng)求。(譯注:大多數(shù)發(fā)行版已經(jīng)這樣做了,如果還沒有,請(qǐng)這樣做,并在使用-f參數(shù)前一定考慮好你在做什么!譯者本人有著血淚的教訓(xùn)啊。)
2. :(){:|:&};: 命令
這就是個(gè)fork 炸彈的實(shí)例。 具體操作是通過定義一個(gè)名為 ‘:‘的函數(shù),它會(huì)調(diào)用自己兩次,一次在前臺(tái)另一次運(yùn)行在后臺(tái)。它會(huì)反復(fù)的執(zhí)行下去直到系統(tǒng)崩潰。
3. 命令> /dev/sda
這個(gè)命令會(huì)將某個(gè)‘命令‘的輸出寫到塊設(shè)備/dev/sda中。 該操作會(huì)將在塊設(shè)備中的所有數(shù)據(jù)塊替換為命令寫入的原始數(shù)據(jù),從而導(dǎo)致整個(gè)塊設(shè)備的數(shù)據(jù)丟失。
4. mv 文件夾 /dev/null
這個(gè)命令會(huì)移動(dòng)某個(gè)‘文件夾‘到/dev/null。 在Linux中 /dev/null 或 null 設(shè)備是一個(gè)特殊的文件,所有寫入它的數(shù)據(jù)都會(huì)被清除,然后返回寫操作成功。 當(dāng)然,要說明的是這個(gè)命令并不能阻止數(shù)據(jù)恢復(fù)軟件——所以,真正的徹底毀滅,需要采用專用的軟件或者手法來完成。
5. wget -O- | sh
下載后執(zhí)行這個(gè)腳本,給yum添加atomic源的軟件支持,執(zhí)行:。當(dāng)某個(gè)任務(wù)由該服務(wù)啟動(dòng)后,這個(gè)任務(wù)會(huì)執(zhí)行一個(gè)db-backup bash腳本linux命令,這個(gè)腳本會(huì)使用sudo命令執(zhí)行另外一個(gè)命令。這里需要注意一個(gè)叫“run-parts”的參數(shù),如果加上這個(gè)參數(shù),代表執(zhí)行文件夾中的命令,而不是執(zhí)行腳本或者命令,如果不加則代表執(zhí)行命令或者腳本。
6. mkfs.ext3 /dev/sda
上列命令會(huì)格式化塊設(shè)備‘sda’,在執(zhí)行這個(gè)命令后你的塊設(shè)備(硬盤驅(qū)動(dòng)器)會(huì)被格式化,直接讓你的系統(tǒng)達(dá)到不可恢復(fù)的階段。 通常我們不會(huì)直接使用/dev/sda這樣的設(shè)備,除非是作為raw設(shè)備使用。 一般都需要將sda分成類似sda1、sda2這樣的分區(qū)后才使用。當(dāng)然,無論你使用sda還是sda1,這樣對(duì)塊設(shè)備或分區(qū)進(jìn)行mkfs都是毀滅性的,上面的數(shù)據(jù)都會(huì)被蒸發(fā)了。
7. > file
這個(gè)命令常用來清空文件內(nèi)容或記錄命令輸出。 不過請(qǐng)?jiān)趫?zhí)行前,確認(rèn)輸出的文件是空的或者還不存在,否則原來的文件可真是恢復(fù)不了了——連數(shù)據(jù)恢復(fù)軟件都未必能幫助你了。 你可能真正想用的是“>>”,即累加新的輸出到文件,而不是刷新那個(gè)文件。 如果用上列執(zhí)行時(shí)輸入錯(cuò)誤或無知的輸入類似 “> xt.conf” 的命令會(huì)覆蓋配置文件或其他任何的系統(tǒng)配置文件。
這個(gè)命令用來編輯先前運(yùn)行的命令而無需重打整個(gè)命令。 用foobar命令時(shí)如果你沒有徹底檢查改變?cè)济畹娘L(fēng)險(xiǎn),這可能導(dǎo)致真正的麻煩。
9. dd if=/dev/random of=/dev/sda
這個(gè)命令會(huì)向塊設(shè)備sda寫入隨機(jī)的垃圾文件從而擦出數(shù)據(jù),讓你的系統(tǒng)可能陷入混亂和不可恢復(fù)的狀態(tài)。 記得上面說過mv到黑洞并不能徹底刪除數(shù)據(jù)么?那么這個(gè)命令就是給了你一個(gè)徹底刪除的方法!當(dāng)然為了保險(xiǎn)起見,你可以覆寫多次。
10. 隱藏命令