Openwrt一條命令把整個路由器搞蹦了

2021-07-11 15:43:57 字數 1542 閱讀 8330

對於rm -rf這條命令以前吃過一次虧了,這次又沒有長記性。。。

以前本來想刪除某個目錄下所有的c檔案刪掉,但是cd到該目錄時少進了一級目錄,結果啊把其他人忙活裡幾天的**全搞沒了。。。

我只想說一下:當某種破壞已經造成,並且破壞沒有繼續,而你又一時不知所措時,最好的辦法就是保持冷靜,保護現場,在你沒有確保任何有效的解決方法之前,不要亂試臨時想起的方法,否則後果可能更嚴重,原本可能解決的路徑都有可能因為繼續的誤操作而被堵死。。。。。。

我之前的一次誤刪除之後,就下意識的又把該資料夾又壓縮裡乙份,而後來上網查如何恢復資料時,別人說這種情況下最好不要再往磁碟寫資料,因為刪除之後檔案資料還在磁碟上記錄著,而寫磁碟就有可能真的把被刪掉檔案的資料覆蓋掉,這樣就不肯能找回來了。而自己偏偏手賤,壓縮裡乙份。。。

而這次是想刪除乙個目錄下的bin資料夾,本來是rm -rf ./bin,手賤輸入了rm -rf /bin,結果呢整個/bin目錄都沒了,之後就是你所有的常用命令都一命唔呼了,什麼ls,cp,mount命令都沒有了,其實這些都不重要,無非恢復出廠設定就ok了,重要的是我在裡面新增裡許多設定和自己的程式,找不會來就苦逼了。。。。。。

後來又是手賤,想想重啟一下怎麼樣,結果再也起不來了。。。(這裡說的起來是指用ssh [email protected]登入路由器)因為/bin沒有裡 ash也就沒有了。許多服務自然也沒有了。沒辦法了,只能把路由器拆掉,接上串列埠看能不能通過console挽回。費了半天勁才拆開接上裡串列埠。啟動之後有點失望,被來想通過uboot搞一下累,可是他妹的uboot是自動引導裡,根本沒有給你控制console的機會!而是直接引導核心了!

真是有點失望了,後來繼續往下看,才找到了點希望:

原來openwrt提供裡一種保護機制,叫做 failsafe模式,這種模式只掛載squash檔案系統,它是唯讀檔案系統,在系統提示按【f】的地方立馬按 f 鍵然後回車就進入了failsafe模式,終於進入了系統,有點裡希望。但是後面又陷入裡自相矛盾的困境:

在這種模式下,系統是沒有掛載jffs2檔案系統(/overlay),也就讀不到裡面的檔案(空的資料夾),雖然有cp等命令。為了恢復資料只能執行mount_root命令掛載jffs2檔案系統,此時可以訪問到/overlay下面的檔案,也就是我們使用者自己寫的檔案,但是此時沒有任何可以操作檔案的命令可以使用,都是找不到命令,搞了半天真是醉了,後來想裡半天才找到一種解決辦法:

1.進入failsafe模式:cp -r /bin /tmp (雖然squash是唯讀檔案系統,但是/tmp下面掛載的是另外乙個檔案系統tmpfs,它是可以寫的)

2.mount_root:掛載jffs2檔案系統(此時原來的/bin目錄已經沒有了)

3.進入/tmp目錄:cd /tmp

此時下面有了bin!此時可以執行cp命令了!接下來可以做兩個操作來挽回:

(1)rm -rf /overlay/upper/bin(大哥,這個命令不要再用錯了!),此時問題已經解決,重新上電路由器原來的/bin目錄又恢復了!

(2)cp -r /overlay ./ (將使用者資料儲存到/tmp資料夾)或者 "scp -r 主機目錄 /overlay",完全將資料儲存在主機上。

thank godness!可以睡個安穩覺了!

一條路走不通了,就走另一條

今天看原始碼的時候,對於setcontentview 我ctrl 滑鼠左鍵,點不過去,我還以為是我的stadio出現問題了。我有問題,立馬解決。就找人請教,他們都會幫助我,真好。那麼多大神。很喜歡這個環境,10多個android開發。真的。後來才知道,他們做了乙個對映,就是以前的專案,裡面的r檔案,...

總有一條路,我們很迷茫

十年前,我家還處於乙個貧窮落後的小山村,周圍的人會根據我父母的收入來對待我,而十年後的今天,我家的那座小山村醫成為重點開發的地區,一夜之間我家成了所謂的土豪,周圍的人依然根據我家的收入對待我。現實,什麼是現實?這就是現實。從那一刻,我開始明白要想得到別人的尊重,首先你得有別人尊重的實力。所以,這麼多...

摸清this指向是一條漫長的路

預設繫結 var name tiboo function sayhi sayhi sayhi執行在全域性環境 隱式繫結 函式的呼叫是在某個物件上觸發的,即呼叫位置上存在上下文物件 var name yangfu function sayhi var testman testman.sayhi 物件屬...