linux 下root用戶執行rm -rf /後,系統會有哪些反應,會立刻死機嗎?

rm -rf是個非常危險的操作,root也是個非常危險的用戶。大家用root執行過rm -rf /嗎?


不會,不過你刪的過程中會有很多報錯,刪完了你基本只能使用內建命令,正在運行的東西,只要它們不去讀新文件,基本不會有任何影響(當然有些影響就是,你如果開著httpd,那麼有可能404而且有可能讀不到404的頁面(很滑雞),sshd可能無法完成認證,這種)

一個比較弱的情況你可以用alt-sysrq-s, alt-sysrq-u掛載根為只讀來體驗一下類似的感覺……以及拔移動硬碟的體驗和刪光根的體驗是一樣的

不過不是所有的圖形界面都會死的。


謝……謝邀?

首先正如其他答案所說,rm對根分區有特殊對待的保護措施(但也僅限於 / ,如果刪 /* 的話是沒有保護的),不加 --no-preserve-root 參數是不會真的刪掉/的。

如果真的刪掉 / 的話我當然是沒試過,不過遇到過最接近的情況是高中的時候在移動硬碟里裝了 linux 拿到班級電腦上用,結果USB介面接觸不良,用著用著根分區掉了……現象就是,圖形界面黑屏只剩滑鼠能動,切到 tty 終端輸出了一堆文件系統錯誤。當時沒有已登錄的 shell 可用,根沒了也沒法開新 shell 登錄,就沒法操作了。如果有登錄 shell 的話應該還能用內置命令。

估計刪根之後效果跟這個差不多,圖形界面(如果有的話)大概會死掉,字元終端不會死,但是無法開新進程,除了內置命令都會 command not found 。


親測,不會立刻死機!!

我用kali linux ,默認的是root登陸,當時想刪除當前目錄下的文件,直接輸入了 rm -rf ./* 。 由於我大意,把.丟了導致輸了樓主所說命令。。。

基本上所有命令全部失效,均提示找不到命令,至於桌面還是存在的,只是所有軟體基本都打不開了。。。

所以,建議以後不要直接用root刪東西。。。


沒有執行過,

理論上說不會馬上死機,甚至不會死機,內核常駐內存,緩存中有部分文件系統,

建議你搭個虛擬機試一下,

下面這個用root執行會死機:

:(){ : | : };:


基本命令都還是能用的,但要是想訪問文件或者某些命令就不能用了。畢竟核心的東西都在內存當中。不過,一旦重啟就廢了。

我真的試過


不需要用這個指令驗證,用網卡啟動linux,搞個無盤linux,啟動之後拔掉網線,看看結果。除了文件操作報錯外,其他操作一切正常。


反正我這邊一點事都沒有,如果愛作死的話放心去執行吧。


這種問題自己開個虛擬機親自試一次不就清楚了,不知道有什麼可問的。


有一天和一個關係不錯的同學去上實驗課,那是最後一節實驗課,我們就想著,最後實驗做完,做點啥,我們倆就一起想到了,運行一下這個rm -rf這個命令[手動滑稽]

剛開始還運行一些基本的命令,進行操作,後來我們運行完這個命令,系統並沒有死機,也並沒有看起來有啥可怕的,只是一些命令就用不了了

對了,走之前還把實驗室電腦的window系統上裝了六個殺毒軟體,看著他們互相殺,然後就死機了。。。。。


不會立刻死機,這個好危險


自己開個虛擬機跑一下就知道了,


剛手殘的怒答一番,執行之後,並沒有什麼反應,從xshell斷開重連後,你會發現報錯…


我們退租伺服器的時候就是rm -fr / --no-preserve-root ,執行完之後還能執行shutdown -h now。


Arch論壇上有人用這條命令把電腦刪成磚的。UEFI固件損壞。原因是uefi var節點掛載為RW了。

所以,作死需謹慎。


虛擬機試試就知道了,不死機,除了shell內建命令都用不了了,重啟進入grub,但執行不了grub命令,掛載磁碟文件都被刪除,但還有部分目錄沒有被刪除例如sys、proc等。


剛入職的時候,在伺服器上寫bash腳本,手生,不小心這個 rm -rf /* 就被執行了。。。

當時首先沒有立即死機,但絕大多數常用命令都用不了,比如ls, cp什麼的。

文件數據什麼的嘛,當然是都沒有了。。。

心裏面嘛,也是空空的,,,

這個梗同事們一直笑到我退職。。


推薦閱讀:

在Android的發展歷程中有沒有什麼有趣的故事或者小細節?
如何評價NetHack?
Linux 大爆炸:一個內核,無數發行版
庫文件與系統調用

TAG:操作系統 | Linux | Debian | CentOS | Linux運維 |