Nieprzetworzona sieroca lista i-węzłów w VirtualBox VM

16

Ostatnio podczas korzystania z mojej maszyny wirtualnej VirtualBox system się zawiesił. Afterwords, maszyna wirtualna nie chce się już uruchamiać (używam Vagrant). Podczas rozwiązywania problemów włączyłem GUI VirtualBox i stwierdziłem, że przyczyną, dla której maszyna wirtualna nie uruchamia się, jest następujący błąd:

Couldn't remount RDWR because of unprocessed orphan inode list.

Szukałem tego błędu w Google i stwierdziłem, że może to być spowodowane uszkodzeniem systemu plików, ale można go naprawić za pomocą zwykłego odmontowania / ponownego zamontowania. Niestety nie mogę dostać się do konsoli, aby to zrobić, a przynajmniej nie mogę znaleźć sposobu, aby to zrobić. Czy istnieje sposób, w jaki mogę naprawić ten błąd bez konsoli, czy zamiast tego, czy mogę uzyskać dostęp do konsoli na mojej maszynie wirtualnej bez możliwości zamontowania wirtualnego dysku twardego?

Anthony Hilyard
źródło

Odpowiedzi:

34

Udało mi się rozwiązać ten problem dziś rano. Oto kroki, które podjąłem na wypadek, gdyby ktoś napotkał ten problem:

Pobierz bootowalny linux .iso.

Używam Ubuntu 14.04 x64 w moim VM, więc postanowiłem pobrać 64-bitowej instalacji Ubuntu 14.04 .iso z tutaj . Tak naprawdę nie powinno mieć znaczenia, którą wersję pobierasz, o ile obsługuje ona Twój system plików i znasz ją.

Zamontuj plik .iso na maszynie wirtualnej jako wirtualny dysk CD-ROM.

Z konsoli uruchom, virtualboxaby otworzyć GUI konfiguracji Virtual Box. Następnie przejdź do: Ustawienia -> Pamięć -> Dodaj urządzenie CD / DVD -> Wybierz dysk. Przejdź do właśnie pobranego pliku .iso.

Uruchom z pliku .iso.

Teraz uruchom proces rozruchu maszyny wirtualnej za pomocą polecenia vagrant up. Podczas rozruchu powinien zostać wyświetlony monit o naciśnięcie klawisza, aby wybrać urządzenie rozruchowe (dla mnie tak było F12). Teraz wybierz CD-ROM, z którego chcesz uruchomić komputer. Pobrane pliki .iso powinny zostać uruchomione. Jeśli używasz Ubuntu, wybierz Wypróbuj Ubuntu. Teraz uruchom okno terminala.

Odmontuj i fsck dysk

W terminalu może być konieczne odinstalowanie wirtualnego dysku twardego. Jeśli masz dysk /dev/sda1, użyj następującego polecenia:

sudo umount /dev/sda1

Następnie możesz uruchomić fsckna dysku:

fsck /dev/sda1

Po potwierdzeniu poprawek uruchom ponownie maszynę wirtualną. Wszystko powinno wrócić do normy.

Anthony Hilyard
źródło
Pomoc na czas, kiedy katastrofa zaćmienia pozostawiła mnie suchego.
GuSuku,
9
To działa! Jako dodatkową wskazówkę, po zamontowaniu bootowalnej płyty CD w ustawieniach VirtualBox, przejdź do zakładki „Systemy” i wybierz CD / DVD w „Kolejności rozruchu”. Możesz także umieścić go na wierzchu, aby wymusić rozruch z dysku CD podczas dokonywania poprawki (F12 nie działał na moim Macu ...).
RayOnAir,
3
Działa to z krokami sugerowanymi przez @RayOnAir. Dodatkowo obraz serwera Ubuntu nie działał. Musiałem użyć obrazu pulpitu, aby użyć polecenia fsck.
Raja Ehtesham
2
Aby to wyjaśnić: krok „Teraz uruchom okno terminala” jest wykonywany z poziomu Ubuntu na maszynie gościa. Kliknij ikonę Ubuntu w lewym górnym rogu, wpisz „terminal” i kliknij ikonę aplikacji Terminal.
Rick Gladwin,
1
To mnie uratowało! Kolejna wskazówka: musiałem użyć sudo do uruchomienia fsck -sudo fsck /dev/sda1
jessica