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/mapper
gemountet wird Geräte). -
Mit
losetup
(die unter/dev/loopX
gemountet 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
.img
mounten? Dateien nach/dev/sdXX
Gerä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).