Ich habe grub2 verwendet, um die Ubuntu-ISO-Datei von meiner Festplatte zu booten (ohne sie auf eine DVD oder ein Flash-Laufwerk zu brennen), aber ich möchte Ubuntu nicht auf einer Partition auf meiner Festplatte installieren; stattdessen möchte ich es in einer Disk-Image-Datei (.img) installieren.
Also habe ich eine .img-Datei erstellt (mit dd ) und dann habe ich die .img gemountet Datei auf mehrere Arten:
-
Verwenden von
kpartx(die unter/dev/mappergemountet wird Geräte). -
Mit
losetup(die unter/dev/loopXgemountet wird Geräte).
Aber wenn ich das Ubuntu-Installationsprogramm (ubuquity ) scheint der Installer das Loop-Gerät nicht als Festplatte zu erkennen, also bekomme ich nur /dev/sdXX Gerät und kann keine Loop-Geräte sehen!
Jetzt habe ich nicht versucht, das Image mit mount zu mounten Befehl, aber ich bin mir sicher, dass es das gleiche Problem zeigen wird, denn soweit ich weiß, dass losetup verwendet mount um die Dateien zu mounten.
Also habe ich zwei Fragen:
-
Gibt es eine Möglichkeit, Ubiquity dazu zu bringen, „Loop-Geräte“ als Festplatten zu erkennen?
-
Kann ich
.imgmounten? Dateien nach/dev/sdXXGeräte (anstelle der normalen/dev/loopX)?
Akzeptierte Antwort:
Dazu habe ich einen Blogbeitrag geschrieben.
Im Grunde müssen Sie nur ein virtuelles Blockgerät unter /dev/sdX erstellen , und montieren Sie Ihr LOFS darauf. Dann können Sie das Installationsprogramm ausführen und Ubuntu darauf installieren. Beachten Sie jedoch, dass Sie GRUB nicht direkt darauf installieren können (und es auch keinen Sinn macht).