OpenBSD Installation auf größeres Laufwerk übertragen

dev0

Rock Hopper
Ich habe aufgrund von Platzproblemen die interne SSD meines Laptops, auf dem OpenBSD Current wunderbar läuft (Thinkpad X240) durch ein größeres Modell ersetzt und das ehemals interne Laufwerk in ein externes USB Gehäuse eingesetzt. Der Start des System erfolgt per UEFI, was auch sehr gut funktioniert.

Meine Idee war jetzt, den Laptop vom externen USB Laufwerk zu starten, dann von dort das neue Laufwerk zu initialisieren und zu partitionieren und dann auf diese neue Partition das System zu übertragen. Nachdem der Kopiervorgang per cp -R abgeschlossen war, wollte ich das System vom neuen internen Laufwerk starten, was aber leider fehlschlug.
Ich bekomme bereits am Boot Prompt die Fehlermeldung
Code:
boot>
booting hd0a:/bsd: open hd0a:/bsd No such file or directory
  failed(2). will try /bsd

boot> machine diskinfo
Disk  Blksize   IoAlign  Size      Flags     Checksum
hd0   512       4        953GB     0x2       0x9e35b7a8

Wenn ich dann das externe Laufwerk wieder anschließe und das System davon starte, dann sehe ich, daß auf dem internen Laufwerk der Kernel vorhanden ist. Was könnte den das Problem sein? Ich bin jeden Hinweis dankbar.
 
Wie muß ich denn installboot aufrufen? Angenommen, ich habe OpenBSD vom externen Laufwerk da0 gestartet und das interne Laufwerk sd0 unter /mnt eingebunden. Muß ich da
Code:
# chroot /dev/sd0a
machen oder kann ich einfach im Terminal
Code:
# installboot sd0 /usr/mdec/biosboot /usr/mdec/boot
ausführen? Ist /usr/mdec/biosboot auch für UEFI Systeme korrekt?
 
In dem Fall einfach
Code:
# installboot sd0

Das zweite Beispiel legt den Speicherort explizit fest. Ist im allgemeinen nicht nötig.
Noch einmal: wenn Du dir nicht sicher bist, machs über die bsd.rd. Deine Daten werden dabei nicht beeinträchtigt, Du hast dann ein aktuelles Grundsystem, welches ja nicht nur aus dem Kernel besteht und installboot wird automatisch mit den korrekten Werten ausgeführt.
 
Du könntest auch einfach einmal auf der neuen Platten neu installieren und dann einfach die alte installation drüber kopieren.

(Oder, das würde ich machen wenns kein allzu komplexes System ist, nur die userdaten übernehmen)
 
Wenn Du die mdec directories irgendwo unter /mnt hast, dann musst du den Pfad anpassen. Sonst kann installboot nicht wissen, wo es das herholen soll (hier geht's um die quelle der datei, nicht das ziel).

oder halt bsd.rd/installer machen lassen.

Sowas ist ne offene OP, da muss man schon mal in den install.sub quellcode schauen, sonst ist man auch mal schnell falsch abgebogen und das laesst sich mit frage+antwort Spielchen im Forum schlecht nachvollziehen
 
Ich lese recht viel auf @misc der OpenBSD Mailing-Liste mit - die Tendenz der Entwickler ist immer wieder "Supported / Empfohlen" ist die Neuinstallation.
 
Ich lese recht viel auf @misc der OpenBSD Mailing-Liste mit - die Tendenz der Entwickler ist immer wieder "Supported / Empfohlen" ist die Neuinstallation.
Naja, das ist dann doch mit Kanonen auf Spatzen schiessen.
Ich hab schon einigemale ein System auf die Tour wie der TO umgezogen (meistens mit tar aber auch mit copy). Ein anschließendes Upgrade mit der bsd.rd versetzt das System wieder in einen konsistenten Zustand und macht es auch wieder bootfähig.
 
Ich habe jetzt eine Vermutung, warum das System nicht vom internen Laufwerk startet. Das Laufwerk wird anscheinend von OpenBSD nicht erkannt. Wenn ich das Install Image vom USB Stick starte, wird sd0 nicht gefunden, d.h. es gibt keinen Eintrag dafür in /dev, obwohl es in dmesg aufgelistet wird. Woran kann das denn liegen? Es handelt sich dabei um ein ganz normales SATA SSD Laufwerk. Leider klappen daher weder Update noch Neuinstallation. Hat irgendjemand nocht einen Tip für mich? Ansonsten würde ich auf FreeBSD umsteigen müssen. Das erkennt das interne Laufwerk tadellos.
 
Hatten die x240 schon sonnen intel-raid modus? Wenn ja den ausschalten. Da Sollte ahci stehen.

Was passiert denn wenn du versucht einfach mal vom installier die Platte zu Partitionieren (Strg + C dann fdisk sda oder so)
 
Bei OpenBSD legt der Installer nicht alle Device Files in /dev an. Eventuell mal ein
Code:
sh MAKEDEV.sh st1
aufrufen.
 
st1? es ist cd /dev; sh MAKEDEV sd0 sd1 sd2 (1+2 je nachdem, was da noch alles fleucht)

Sonst aber auch mal einen "vollen" kernel starten, im installer ist nicht jede exoten (kombo) drin.
Zeig mal die sd0 dmesg line - wenn da nicht was "not configured" steht, dann kann das mit MAKEDEV schon reichen,

AHCI Hinweis auch wichtig.
 
Durch

# cd /dev
# sh MAKEDEV sd0 sd1 sd2

konnte ich die interne SSD konfigurieren und entsprechend einbinden. Ein anschließendes Update hat dann zu einer funktionieren Installation von OpenBSD auf dem internen Laufwerk geführt. Ein separater Aufruf von installboot war nicht erforderlich. Nun kann der zusätzliche Speicherplatz verwendet werden.

Vielen Dank für eure Hinweise.
 
Zurück
Oben