Geklonte VM, OpenSUSE, VirtualBox können nicht verwendet werden

Geklonte VM, OpenSUSE, VirtualBox können nicht verwendet werden

Ich habe eine VM geklont und beim Booten wird mir jetzt die folgende Meldung angezeigt:

Trying manual resume from /dev/sda1
Invoking userspace resume from /dev/sda1
resume: libgcrypt version: 1.5.0
Trying manual resume from /dev/sda1
invoking in-kernel resume from /dev/sda1
Waiting for device /dev/disk/by-id/ata-VBOX_HARDDISK_.....-part2 to appear: ...
Could not find /dev/disk/...-part2
Want me to fall back to /dev/disk/...-part2 (Y/n)

Wenn ich „Y“ drücke, versucht es erneut zu booten, scheitert und beendet dann den Vorgang zu /bin/sh. Wenn ich „n“ drücke, wird der Vorgang sofort zu /bin/sh beendet.

Ich habe hier eine Lösung gelesen:http://diggerpage.blogspot.com/2011/11/cannot-boot-opensuse-12-after-cloning.htmlaber ich verstehe nicht, wie ich auf Dateien auf der Festplatte zugreifen kann, um sie zu bearbeiten /etc/fstabund /boot/grub/menu.lst?

Antwort1

Ich konnte mein System folgendermaßen booten:

1) Notieren Sie sich die Geräte, die das System nicht finden kann.

2) Beantworten Sie diese Frage mit „n“. Sie sollten dann zu einer Eingabeaufforderung weitergeleitet werden.

3) Führen Sie diesen Befehl aus:cd /dev/disk/by-id

4) Führen Sie diesen Befehl aus:ls

5) Benennen Sie alle Dateien in diesem Ordner um und ersetzen Sie ihren aktuellen Namen durch den Namen des Geräts, den Sie in Schritt 1 notiert haben. Bsp.mv ata-VBOX_OLDNAME....-part2 ata-VBOX_HARDDISK....-part2

6) Wenn Sie fertig sind, geben Sie den folgenden Befehl ein:exit

7) Das System sollte normal booten.

Ich arbeite immer noch daran, herauszufinden, wie dies bei OpenSUSE 11.4 passiert.

Antwort2

Dieses Problem wird dadurch verursacht, dass SUSE Grub standardmäßig so konfiguriert, dass Festplatten nach Namen und nicht nach Bezeichnung oder Pfad gesucht werden. Beim Erstellen einer VM aus einer Appliance erstellt VirtualBox eine neue Festplatte mit einem neuen Namen und Grub kann die Startfestplatte dann nicht finden. Ich konnte das Problem behebenpermanentvon:

  1. Fügen Sie die Festplatte als sekundäres Laufwerk zu einem anderen Computer hinzu, der das Dateisystem mounten kann. Ich habe meines in /media/hd2 gemountet.

  2. Bearbeiten Sie /media/hd2/boot/grub/device.map und ersetzen Sie den Pfadnamen zur Festplatte /dev/disk/by-name/ata-VBOX....durch den By-Path-Pfad /dev/disk/by-path/pci-0000:00:0d.0-scsi-0:0:0:0.

  3. Bearbeiten Sie /media/hd2/boot/grub/menu.lst und ersetzen Sie die Pfade nach Namen durch die Pfade nach Pfaden. Bei mir habe ich alle Pfade von Teil 1 durch /dev/disk/by-path/pci-0000:00:0d.0-scsi-0:0:0:0-part1und alle Pfade von Teil 2 durch ersetzt /dev/disk/by-path/pci-0000:00:0d.0-scsi-0:0:0:0-part2.

Die von mir verwendeten Pfade geben die erste Festplatte an. Wenn Sie von einer anderen Festplatte (oder einem anderen Festplattentyp) booten möchten, müssen Sie herausfinden, wie SUSE den Pfad zuordnet. Ich habe festgestellt, dass SUSE eine zweite Festplatte als mountet pci-0000:00:0d.0-scsi-1:0:0:0.

Die Angabe des Festplattenpfads ist in manchen Fällen vielleicht nicht ideal, hat aber für die schnelle Lösung, die ich suchte, perfekt funktioniert.

Antwort3

Ich habe diesen Fehler erhalten und ihn behoben, indem ich die alte ID für die Festplatte durch die neue in etc/fstab und in boot/grub/menu.lst ersetzt habe.

  1. Drücken Sie bei der Rückfallfrage „n“.
  2. Holen Sie sich eine neue ID durch Ausführenhdparm -i /dev/sda
  3. Benennen Sie alle Datenträger gemäß der akzeptierten Lösung um und booten Sie Ihren Gast.
  4. Öffnen Sie das Terminal als Root und vi etc/fstabersetzen Sie die alte ID überall dort durch die neue, wo sie angezeigt wird. Speichern und schließen.
  5. vi boot/grub/menu.lstund ersetzen Sie die alte ID überall dort durch die neue, wo sie angezeigt wird. Speichern und schließen.
  6. Neustart.

Die akzeptierte Lösung funktioniert nur einmalig, während dies eindauerhafte Lösung. Ich hoffe es hilft!

Antwort4

Ich habe dieses Problem mit einer Mischung der anderen Lösungen gelöst.

Nur zum BootenMit dem System habe ich Folgendes gemacht:

  • Wenn Sie die Fehlermeldung beim Booten erhalten, notieren Sie sich die Partitions-ID, die beim Booten angefordert wurde (z. B. ID1), und geben Sie einn
  • cd /dev/disks
  • ls -lum zu sehen, welche die aktuellen IDs in den Linknamen zu den Datenträgern und Partitionen sind (z. B. ID2)
  • Erstellen Sie hier eine Kopie jedes Links und benennen Sie die Kopie mit der oben erforderlichen ID:

    mv ID2 ID1
    mv ID2-part1 ID1-part1
    ...
    

    z.B

    mv scsi-12345676890abcdefgh0987654321 scsi-0987654321hgfedcba1234567890
    mv scsi-12345676890abcdefgh0987654321-part1 scsi-0987654321hgfedcba1234567890-part1
    ...
    
  • exit

Das System wird gestartet.

Jetzt können Sie die Einstellung ändernum sicherzugehen, dass dieses Problem nicht wieder auftritt:

  • Öffnen Sie ein Terminal und starten Sie eine Root-Sitzung mitsudo su
  • vi /etc/fstab
  • Ersetzen Sie jeden Verweis auf Festplatten und Partitionen durch id( /dev/disks/by-id/...) durch einen Verweis auf /dev/...(z. B. /dev/sda, /dev/sda1…).
  • vi /boot/grub/menu.lst
  • Machen Sie dasselbe in dieser Datei

verwandte Informationen