Linux

修復虛擬 Linux 來賓作業系統 (Virtualbox) 中可能的文件系統損壞

  • August 28, 2020

背景

最近我不在家的時候下雨了,我斷電了。當我回來時,電源仍然沒電,當它重新打開時,我的系統似乎遇到了一些問題。

關於我的系統的一些資訊:

它是一個執行 Windows 10 Professional 的桌面,安裝在 RAID0 中的兩個 SSD 上。它還有一個由三個 6TB 磁碟組成的 RAID5 陣列,用於大容量儲存媒體。

我使用 Virtualbox 在 Linux Mint 18.3 來賓作業系統中執行幾乎所有東西。

安裝 Linux Mint 的主虛擬磁碟 (VDI) 儲存在 SSD 上,我的 RAID5 陣列上的所有媒體都通過 VirtualBox 的共享文件夾功能與 Linux 來賓作業系統共享。

細節

當我的地方恢復供電時,我嘗試給機器通電。Windows 10 主機作業系統啟動良好,甚至不需要執行磁碟檢查或我注意到的任何事情。似乎執行良好。

當我嘗試啟動我的 Linux Mint VM 時,它似乎也可以正常啟動,但是當我嘗試檢查作業系統更新時,我收到以下錯誤:

E: Can't write /root/.synaptic/selections.update

W: Not using locking for read only lock file /root/.synaptic/lock
W: Not using locking for read only lock file /root/.synaptic/lock.non-interactive

在此之後,我意識到我安裝 linux 的整個主文件系統都以只讀模式安裝。我無法創建新文件或寫入任何現有文件。從我讀過的內容來看,Linux 似乎會自動啟動到只讀模式,因為文件系統可能已損壞。

我目前正在備份整個虛擬磁碟映像。它幾乎是 TB,所以還剩幾個小時,之後我將嘗試修復 VM。

問題

我在網上找到的簡短建議是我應該執行fsck命令來嘗試修復文件系統,但我只能在未安裝的文件系統上執行此操作。根據我的閱讀,建議從 USB/LiveCD 啟動並使用它fsck在解除安裝的文件系統上執行。

我可以為我的 VirtualBox VM 執行此操作嗎?如果是這樣,怎麼做?有人對我如何嘗試修復此系統有任何其他建議嗎?

回答:

與 NTFS 相比,ext3/ext4 文件系統上的文件恢復一點也不容易。對於您的問題,確實fsck從其他系統執行將使您重回正軌,但您需要檢查您的分區/文件以查看是否缺少任何內容。大多數情況下,當文件在 ext 文件系統上失去時,它會導致零字節文件或文件完全失去。事實上,斷電可能會對您的文件造成一些損害,但通常這應該不是太大的問題,因為大多數受影響的文件是斷電時 SSD-Cache/Ram 上的文件。此外,使用製造商工具檢查您的所有 SSD 以獲取它們的狀態並查看它們是否沒有受到影響。

回到您的虛擬磁碟以及如何修復它,只需下載任何實時 ISO linux 發行版,將其安裝在您的虛擬機上,在其上啟動並從那裡在您的磁碟上執行掃描。如果您更喜歡 GUI,您可以在掃描後使用KDE-Partition-Manager ,只需重新啟動並刪除 ISO 文件即可;你應該很高興。

搜尋失去的文件

在零文件的情況下,您可以在重要目錄上使用此命令來搜尋零大小的文件,但請記住,您將找到的大多數是確實是零字節文件的合法文件;然後,您需要檢查結果列表並蒐索可疑的失去文件。

find . -size 0 -print

此外,正如我所提到的,大多數受影響的文件都是載入在記憶體中的文件,因此我建議您檢查崩潰發生時使用的文件/應用程序。

最後,Virtualbox 具有快照功能:您可以使用它以有效的方式快速進行備份。

引用自:https://unix.stackexchange.com/questions/519745