Wie verwendet man Syslinux, um die Ubuntu-Installation zu verketten?

4145
Noverull

Ich versuche mein Bestes, um meine Frage ausführlich darzustellen. Wenn Ihnen die Geduld ausgehen würde, gehen Sie zum letzten Absatz.

Ich habe Ubuntu 13.04 von seiner offiziellen Website heruntergeladen und die Dateien in einen Ordner ubuntu\auf einem USB-Stick extrahiert (Z: zum Beispiel). So sind jetzt Dateien inZ:\ubuntu\

Zuvor habe ich Syslinux 5.10 heruntergeladen (6.00 hat Fehler) und mit diesem Befehl Bootcode auf USB-Stick installiert:

syslinux.exe --mbr --active - verzeichnis / boot / syslinux / --install Z:

Dann kopierte ich chain.c32 und benötigte libs nach Z:\boot\syslinuxund fügte hinzu syslinux.cfg(unwichtiger Teil wird ignoriert):

COM32-Kette.c32

APPEND isolinux = / ubuntu / isolinux / isolinux.cfg

Syslinux hat erfolgreich gebootet, aber Ubuntu konnte nicht gestartet werden.

Err: Option 'Karten' erfordert einen Sektor '', aber ich wusste nicht, was es bedeutet.

Dann habe ich versucht, Ubuntus isolinux configure mit folgendem Befehl zu laden:

config /ubuntu/isolinux/isolinux.cfg / ubuntu

Bekam aber nur die Nachricht:

Laden von gfxboot ... Fehler: Keine solche Datei oder Verzeichnis

Ich habe es erneut versucht mit:

config /ubuntu/isolinux/isolinux.cfg / ubuntu / isolinux /

Und es sagte:

Fehler beim Laden der COM32-Datei gfxboot.c32

Aber ich konnte LABELs mit [TAB]Key sehen:

Stiefel:

live live installieren check memtest hd mainmenu help

Also habe ich versucht, Ubuntu über die Kommandozeile zu booten:

boot: leben

Und es zeigte sich:

Laden von / casper / vmlinuz fehlgeschlagen: Keine solche Datei oder Verzeichnis

Ich denke, dass Syslinux Z:\als Root-Verzeichnis erkennt /, nicht Z:\ubuntu\, daher konnte vmlinz nicht geladen werden. Also habe ich Dateien verschoben Z:\und neu gestartet. Obwohl syslinux immer noch fehlschlug, gfxboot zu laden, aber ich bootete erfolgreich mit Ubuntu

config /isolinux/isolinux.cfg / isolinux /

boot: leben

Ich verstehe nicht, warum es gfxboot.c32 nicht laden konnte, wenn es die korrekte Konfiguration von isolinux liest. Syslinux, das ich verwende, und Isolinux, das Ubuntu verwendet, sind möglicherweise nicht dasselbe, und der Bootcode und der gfxboot sind nicht kompatibel.

Syslinux Wiki erwähnt, dass CONFIG den Bootloader mit einer anderen Konfigurationsdatei neu starten und ein neues Home-Verzeichnis festlegen kann:

CONFIG /path/to/cfg/file/configfile.cfg / path / to / new / base / dir

Ich folgte der Anleitung, ließ aber Syslinux Z:\ubuntu\als Root-Verzeichnis festlegen . Vielleicht habe ich diesen Leitfaden falsch verstanden.

Meine Frage ist also, wie man Ubuntu oder ein anderes Betriebssystem in einem eigenständigen Ordner ablegt und syslinux richtig konfiguriert, um die Verzeichnisse festzulegen, in denen Ubuntu oder ein anderes Betriebssystem als Stammverzeichnis gespeichert ist, damit ich das Betriebssystem erfolgreich booten kann.

4
Ich habe nicht viel Erfahrung mit syslinux, aber haben Sie überlegt, in [arch wiki] (https://wiki.archlinux.org/index.php/Syslinux) nachzuschauen? Die meisten Dokumentationen sind auch für andere Distributionen relevant. Szymon Szydełko vor 10 Jahren 0
Übrigens, welches Dateisystem ist `Z:`? NTFS? Ich vermute, es ist wegen `\\` Szymon Szydełko vor 10 Jahren 0
@ SzymonSzydełko Danke für Ihre umgehende Antwort. Syslinux unterstützt nur das FAT-Dateisystem. Das Dateisystem von Z: ist also FAT (32). Ich habe einen kurzen Blick auf Arch Wiki geworfen, es gibt anscheinend keine Informationen, die ich brauche. Noverull vor 10 Jahren 0
@ SzymonSzydełko `Ich habe den Verdacht, dass es '\' 'ist. Was meinst du? Noverull vor 10 Jahren 0
Sie möchten Ubuntu auf FAT-32-Laufwerk setzen? Szymon Szydełko vor 10 Jahren 0
@ SzymonSzydełko Nein. Ich möchte nur meinen USB-Stick als CD verwenden. Ubuntu-Installationsdatenträger Verwendet zum Booten Isolinux, und Syslinux könnte Isolinux laden. Dies bedeutet, dass ich Syslinux zum Booten von Ubuntu Install Disc verwenden könnte, sodass ich Ubuntu ohne CD / DVD-Laufwerk installieren kann. Noverull vor 10 Jahren 0
Kannst du nicht einfach ein Ubuntu-Image auf USB? Szymon Szydełko vor 10 Jahren 0
@ SzymonSzydełko Ja, ich könnte. Aber das macht meinen USB-Stick unbrauchbar. Ich möchte es verwenden, um Ubuntu (sogar andere Betriebssysteme) zu installieren und gleichzeitig Software, Dokumente oder etwas anderes zu speichern. Noverull vor 10 Jahren 0
@ SzymonSzydełko Nein. Ich möchte meinen USB-Stick verwenden, um Ubuntu auf PCs zu installieren. Syslinux ist so leistungsfähig, dass ich Ubuntu, Fedora, Arch und sogar Windows nur mit einem USB-Stick installieren konnte. Außerdem kann ich auf meinem USB-Stick ein kleines Linux installieren, damit ich es überall booten kann. dd ist auch mächtig, kann aber so etwas nicht tun. Noverull vor 10 Jahren 0

2 Antworten auf die Frage

1
Asavar Tzeth

Ich weiß nicht, ob dies relevant ist, aber ich habe die gleichen Probleme und spiele immer noch damit. Ich hatte einige Erfolge, die ich teilen möchte.

Vor allem, da ich versuche, dasselbe zu erreichen, wusste ich sofort, was er erreichen will. Er versucht, einen Multi-Boot-USB-Stick für die Installation mehrerer Linux-Distributionen zu erstellen.

Um jedes Betriebssystem zu integrieren und Updates zu vereinfachen, ist es daher sinnvoll, den Bootloader jeder Distribution zu versuchen und zu laden, als ob er sich alleine im Dateisystem befände. Daher hat er versucht, das isolinux-Setup (das mit der .iso mitgeliefert wird) zu laden. Ich habe es auch versucht, aber ich hatte noch kein Glück.

Die einzige Problemumgehung, die ich gefunden habe (nur mit netboot iso getestet), besteht darin, die Methode zum Laden der neuen Konfiguration (in diesem Fall /path/to/distro/isolinux.cfg) mithilfe der CONFIG-Anweisung zu verwenden. Nur in diesem Fall bekam das ein paar Fehler, also habe ich die untergeordnete Konfig "menu.cfg" ausprobiert. Das Ubuntu-Startmenü wurde übersprungen, der Ubuntu-Installer wurde jedoch erfolgreich geladen.

Denken Sie daran, dass Sie das neue Zuhause entweder in der CONFIG-Leitung oder mithilfe von APPEND angeben müssen.

Zum Schluss noch ein paar Anmerkungen zur Frage. Wenn es um PATH (Z :) geht, spielt es keine Rolle, denn wenn Sie tatsächlich vom USB-Stick laufen, verwenden Sie keine Windows- und UNIX-Regeln. Geben Sie also nur den Pfad auf UNIX-Weise / xxx / zzz ein. Beispielsweise macht "Ich denke, Syslinux erkennt Z: \ als Stammverzeichnis /" keinen Sinn, da / = root unter Windows (Laufwerkbuchstabe +) \ (\ = root).

Da Sie das gleiche Ziel und die gleichen Probleme wie ich haben, werde ich meine zukünftigen Fortschritte mit Ihnen teilen.

EDIT: Hier ist die Antwort, die höchstwahrscheinlich alles lösen wird.

Die einfache Tatsache, die Sie beachten müssen, ist, dass die COM32-Dateien zwischen verschiedenen Versionen von SYSLINUX / ISOLINUX nicht kompatibel sind. SYSLINUX und ISOLINUX sind untereinander kompatibel.

Auf Ubuntu Netboot.iso wird nur eine COM32-Datei verwendet, vesamenu.c32. Ich habe dies einfach durch das aus meiner Hauptinstallation von syslinux auf der usb (/boot/syslinux/vesamenu.c32) ersetzt.

Rufen Sie dann einfach Ihr Startmenü auf die Datei auf, die andernfalls die Betriebssysteminstallation starten würde (/boot/ubuntu/isolinux.cfg). Verwenden Sie CONFIG für dieses und es funktioniert einfach magisch. Nicht mehr "vesamenu.c32 konnte nicht geladen werden".

Hallo, danke für dein Teilen. Ich legte Ubuntu 14.04-Dateien in Z: \ ubuntu \ und versuchte mit CONFIG /ubuntu/isolinux/isolinux.cfg / ubuntu / isolinux / zu laden und Ubuntu zu booten, indem Sie `live` eingeben, aber sagte /casper/vmlinuz.efi nicht gefunden. Kein Problem, wenn sich Dateien in Z: \ befanden. Ich finde keine Möglichkeit, dies zu tun (Dateien in Z: \ ubuntu \ packen und Ubuntu erfolgreich booten), ohne ubuntu / isolinux / txt.cfg zu ändern. Können Sie Ihre Umstände detailliert beschreiben? Ich verstehe nicht, warum es ubuntu / in / boot / gibt Noverull vor 9 Jahren 0
-1
Szymon Szydełko

OK, nachdem Sie die Fakten zusammengestellt und die Frage und unsere Diskussion erneut gelesen haben: Sie können das Betriebssystem nicht im "Ordner" installieren (dh Sie können Linux nicht im Ordner " /ubuntu/, you need to install it to/ folder). Linuxes want a full featured partition: they need to put/ usr ,/ var") im Stammverzeichnis von installieren was sie als Dateisystem sehen (chrooting beiseite)

Linux kann auch nicht auf FAT-32 installiert werden. Diesem Dateisystem fehlen Symlinks und einige andere Funktionen, die einen Grundstein für den Betrieb von Linux bilden.

Sie benötigen ext3 / 4, xfs oder ein anderes unterstütztes reales Dateisystem. Sie können ubuntu jedoch auf jedem USB-Laufwerk wie auf jeder normalen Festplatte installieren - einfach setup: fat32 oder ext2 für Boot und Kernel-Image sowie ext4 für das Betriebssystem. Sie können apt-getProgramme einspielen, Dokumente speichern und so weiter.

Es tut mir leid für meine schlechte Ausdrucksweise (und für mein schlechtes Englisch). Ja, ich sollte ein Linux-Ditro auf meinem USB-Stick installieren, und wenn ich es tun würde, müsste ich Ihrem Tutorial folgen. Aber das ist mein weiterer Plan. Canonical bietet Benutzern ein ISO-Image zum Brennen auf CD, mit dem sie Ubuntu installieren können. Ich nenne das ISO-Image "Installation". Ich möchte Ubuntu installieren, aber ich möchte es nicht auf CD brennen. Und Syslinux ermöglicht es mir, die Ubuntu-Installation auf einen USB-Stick zu laden und zu booten. Und ich möchte den USB-Stick nicht unbrauchbar machen. Und ich möchte die Ubuntu-Installation in einem Ordner ablegen. Und jetzt habe ich Probleme. Noverull vor 10 Jahren 0
Sie möchten gleichzeitig Ubuntu Installer und Installation auf demselben Stick haben, oder? Wenn ja, versuchen Sie es wie folgt: Machen Sie drei Partitionen auf der Festplatte: 1. ext2 und verwenden Sie es als `/ boot /` from ... 2. ext4, auf dem die normalen ubuntu / anderen linux der Wahl 3 installiert werden, hier `` dd `installation` .iso` und vergewissern Sie sich, dass es von der ersten Partition aus geladen wird. etwas hackig, aber das ist das Beste, was ich erfinden kann Szymon Szydełko vor 10 Jahren 0
Tut mir leid, dass ich mich wieder schlecht ausgesprochen habe Ich meine hier Installateur. Es ist besser, eine Partition beizubehalten, da Windows nicht mehr als eine Partition erkennt. Und ich möchte das Ubuntu-Installationsprogramm in einem Ordner ablegen. Sie können neugierig sein, warum ich alle Dateien in einem Ordner ablegen muss. Wenn ich es tat, könnte ich dasselbe mit dem Installationsprogramm eines anderen Betriebssystems tun. Legen Sie einfach verschiedene Installationsprogramme in verschiedenen Ordnern ab. Dann könnte ich wählen, welche booten soll, wenn der USB-Stick angeschlossen wird. Und es ist leicht, einen hinzuzufügen und zu entfernen. Ich erinnere mich, dass ich so etwas schon einmal erfolgreich gemacht habe. Noverull vor 10 Jahren 0