Debian Boot · 7 min read · Oct 30, 2025
Debian von einem externen Firewire-Laufwerk auf PowerPc Mac booten.
Verwendung des Beta Debian Etch ppc Installers und eines Kernels ohne initrd.
WARNUNG!
Diese Seite benötigt Feedback, derzeit “Funktioniert für mich”.
Entnommen von meiner Debian-Ressourcenseite
Einführung
Mit einem Bootprozess herumzuspielen ist eine heikle Angelegenheit, selbst auf einem Mac.
Beachten Sie, dass der Debian-Installer irgendwann während des Verfahrens fehlschlagen wird.
Ich übernehme keine Garantie und keine Verantwortung für jeglichen Verlust oder Schaden, der Ihrer Hardware, Software oder Daten entstehen könnte.
Es gibt andere Möglichkeiten, Linux von einem externen Firewire-Laufwerk zu booten, die an anderer Stelle im Netz dokumentiert sind. Siehe den Abschnitt Ressourcen.
Das Hinzufügen oder Entfernen von Peripheriegeräten wie USB-Sticks, Digitalkameras, anderen externen Festplatten, CD-ROMs usw. oder das Installieren/Entfernen von devfs, udev und ähnlichem kann die Art und Weise ändern, wie Linux das Firewire-Laufwerk sieht. Ich empfehle, sich mit dem Bereitstellen von Boot-Optionen für yaboot während des Bootprozesses vertraut zu machen. Siehe Man-Seiten von yaboot und yaboot.conf.
Anforderungen
- Ein Macintosh, der von externen Firewire-Disketten booten kann und der Debian mit yaboot booten kann. Wenn Sie sich wirklich sicher sein müssen, versuchen Sie, OSX auf der Firewire-Diskette zu installieren, halten Sie die Optionstaste während des Neustarts gedrückt, um zu sehen, ob sie angezeigt wird. Mein Firewire-bootfähiger Powerbook ist etwas älter, war 2001 das Topmodell, also sollten neuere Macs in Ordnung sein.
- Vertrautheit mit der Linux-Befehlszeile, dem Debian-Installationshandbuch und mit der Kernel-Kompilation für Versionen 2.6.xxxxx des Kernels. Es gibt viele Ressourcen dazu im Netz und auf Howtoforge. Siehe auch das offizielle Debian-Referenzhandbuch (das jedoch nicht ganz aktuell ist).
- Eine aktuelle Version des Debian-Installers. Er muss in der Lage sein, das externe Firewire-Laufwerk zu erkennen, um es zu partitionieren und darauf zu installieren. Der Debian Sarge-Installer war für mich NICHT aktuell genug, also empfehle ich, eine Beta des Debian-Installers von debian.org zu beziehen. Ich habe die textbasierte Version verwendet.
- Das folgende Verfahren erfordert die Kompilierung eines benutzerdefinierten Debian-Kernels, daher ist eine funktionierende Powerpc Linux-Bauumgebung erforderlich. Keine Probleme, wenn Sie bereits Linux installiert haben, knifflig, wenn es Ihre erste Debian-Installation auf der Maschine ist. (Vielleicht kann eine Live-CD-Distribution wie Ubuntu Ihnen helfen, einen Kernel zu kompilieren und ihn für Debian zu paketieren?). Ich habe keine Probleme damit, ein .deb-Kernelpaket anzubieten, das für mein Titanium Powerbook der zweiten Serie funktioniert (siehe Ressourcen). Es wird wahrscheinlich nicht mit anderen Macintosh-Modellen funktionieren, neueren Titaniums eingeschlossen (vielleicht funktioniert das Booten im Runlevel 1?), und ich empfehle NICHT, Binaries (BESONDERS DEN KERNEL) von unzuverlässigen Quellen herunterzuladen und zu installieren - wie dieser Seite :-)
Schritt 1: Kernel-Konfiguration
Ich habe linux-2.6.14.2 aus den offiziellen kernel.org-Archiven verwendet. Jede stabile spätere Version des Kernels sollte ebenfalls funktionieren. Man hat mir gesagt, frühere Versionen zu vermeiden, da die Firewire-Unterstützung bei großen Dateiübertragungen fehlerhaft ist. TIPP: Denken Sie daran, eine .config zu verwenden, von der bekannt ist, dass sie auf Ihrer Maschine funktioniert.
Bei der Konfiguration des Kernels (d.h. mit “make menuconfig”) deaktivieren Sie die Option RAM-Disk-Unterstützung (zu finden unter Geräte- Treiber -> Blockgeräte).
Konfigurationsoptionen, die kompiliert werden müssen, d.h. aktiviert, aber NICHT als Module markiert:
- Geräte-Treiber -> SCSI-Geräteunterstützung: - SCSI-Geräteunterstützung
- SCSI-Disk-Unterstützung
- SCSI-Generische Unterstützung
- Powermac externe und interne SCSI-Unterstützung (unter SCSI-Niedrigsttreiber)
- Geräte-Treiber -> IEEE1394 (Firewire) Unterstützung: - Roh-IEEE1394 I/O-Unterstützung
- OHCI-1394-Unterstützung
- SBP-2-Unterstützung Plus die Treiber, die für Ihre Firewire-Karte benötigt werden, falls vorhanden. Ich habe auch Folgendes aktiviert, vielleicht unnötig: - OUI-Datenbank
- Extra-Konfiguration einbauen
- IP-1394-Eintrag
- Dateisysteme: die Unterstützung für das Dateisystem, das auf dem Firewire-Laufwerk verwendet werden soll (ich verwende XFS), muss kompiliert werden. Andere können als Module behalten werden.
Der resultierende Kernel wird initrd nicht verwenden, also verwenden Sie nicht die –initrd-Option, wenn Sie den make-kpkg-Befehl ausführen.
Sie erhalten ein Kernel-Image, das als .deb-Archiv verpackt ist.
Schritt 2: Teilinstallation von Debian
Booten Sie von der Debian-Installations-CD und fahren Sie mit der Installation fort. Es ist nicht wirklich notwendig, die Expertenoption auszuwählen. Manchmal erkennt der Installer das Firewire-Laufwerk nicht. Versuchen Sie, ein paar Mal abzubrechen und neu zu starten, bevor Sie aufgeben.
Ich empfehle, die manuelle HD-Partitionierungsmethode zu verwenden, um sicherzustellen, dass Sie wissen, was vor sich geht. Mindestens eine Bootpartition und eine für das Root-Dateisystem sind auf dem Firewire-Laufwerk erforderlich. Notieren Sie sich die Partitionsnummer, die Sie für den Boot und die für das Root-Dateisystem gewählt haben.
TIPP: Stellen Sie sicher, dass die benötigten Partitionen sich auf dem Firewire-Laufwerk befinden, wenn Sie möchten, dass Ihre Installation unabhängig von Ihrer internen HD ist! Sie müssen Ihre internen HD-Swap- und Bootpartitionen als ungenutzt markieren.
Der Schritt Yaboot auf einer Festplatte installieren wird mit einem roten Bildschirm fehlschlagen. Wählen Sie Zurück zum Installationsmenü und wählen Sie Fortfahren ohne Bootloader. Der Installer zeigt den Namen der Root-Dateisystempartition in der Form /dev/sd Xn an, wobei X ein Buchstabe und n eine Zahl ist. Notieren Sie sich den Buchstaben, die Zahl ist identisch mit der Root-Partitionsnummer.
Bei der Benachrichtigung Installation abgeschlossen wählen Sie erneut Zurück zum Installationsmenü und Führen Sie eine Shell aus.
Schritt 3: Kopieren des Kernel .deb und Anpassen von yaboot.conf
Die Root-Partition Ihrer Teilinstallation von Debian ist unter /target eingehängt. Kopieren Sie das Kernel .deb, das Sie kompiliert haben, nach /target. Sie müssen ein Verzeichnis erstellen und das Dateisystem, das Ihren Kernel enthält, dort einhängen. Beachten Sie, dass das /dev-Verzeichnis des Debian-Installers eine sehr andere Struktur haben kann als die, die Sie gewohnt sind. Zum Beispiel, das vierte Partition meiner internen IDE-Festplatte einhängen und das .deb von dort kopieren:
Yaboot muss den “Open Firmware-Pfad” zum Firewire-Laufwerk kennen, der mit folgendem Befehl abgerufen werden kann:
/proc/device-tree/pci@f4000000/firewire@e/node@0010b9210040ad70/sbp-2@c000
Wir benötigen auch die “Major- und Minor-Nummer” der Root-Partition, die derzeit unter /target eingehängt ist:
…
/dev/scsi/host0/bus0/target1/lun0/part3 auf /target Typ …
…
brw——- 1 root root 8, 3 1. Jan 1970 /dev/scsi/…
Ich habe die Major- und Minor-Nummer jeweils unterstrichen. Jetzt ist es Zeit, eine /etc/yaboot.conf-Datei vorzubereiten. Bearbeiten Sie sie mit nano.
Die Dinge, die angepasst werden müssen, sind im folgenden Beispiel unterstrichen. Ich nehme an, dass die richtige Einrückung wichtig ist, Zeilen nach dem Bild sind mit einem einzelnen Tabulator eingerückt.
boot=/dev/sd a7
ofboot= /pci@f4000000/firewire@e/node@0010b9210040ad70/sbp-2@c000/disk@0:7
device= /pci@f4000000/firewire@e/node@0010b9210040ad70/sbp-2@c000/disk@0:3
partition= 3
delay=15
timeout=100
install=/usr/lib/yaboot/yaboot
magicboot=/usr/lib/yaboot/ofboot
enablecdboot
image=/boot/vmlinux
label=Linux
read-only
root= 8:3
append=”rootdelay=12”
boot= muss gefolgt werden von /dev/sdXn, X muss durch den Buchstaben ersetzt werden, den Sie zuvor notiert haben, und n durch die Nummer der Bootpartition.
ofboot= muss gefolgt werden vom Open Firmware-Pfad, der mit /pci… beginnt und endet mit …/disk@0:n, wobei n wiederum die Nummer der Bootpartition ist.
device= ist wie ofboot, aber die letzte Zahl ist die der Root-Dateisystempartition, die ebenfalls nach partition= gesetzt werden muss.
root= muss gefolgt werden von den Major- und Minor-Nummern, die Sie zuvor notiert haben, getrennt durch einen Doppelpunkt.
Die Root-Delay-Option lässt das System warten, damit das Firewire-Laufwerk vom Kernel erkannt werden kann. Außerdem möchten Sie möglicherweise einige Bootloader-Optionen hinzufügen/beibehalten, um von Ihren anderen Linux/macOS/OSX-Partitionen zu booten.
Schritt 4: Installation von Kernel und Bootloader.
Dies geschieht durch Chrooten in /target:
…
Hmmm…
Hmmm…
…
#
Schließlich verlassen Sie das Chroot und dann die Shell mit ctrl-d oder dem Befehl exit und beenden die Installation. Der Installer wird das System neu starten.
Letzter Schritt: Sehen Sie, was passiert.
Wenn alles gut geht, wird die Auswahl von (l)inux an der Bootloader-Eingabeaufforderung und das Drücken der Eingabetaste in der zweiten Phase Debian booten und das System wird mit der finalen Installationsphase fortfahren. Manchmal benötigt ein korrekt eingerichteter Kernel zu viel Zeit, um das Laufwerk zu erkennen, und Sie haben einen Kernel-Panik. Versuchen Sie, zurückzusetzen und erneut zu booten, bevor Sie aufgeben. Der Kernel kann panikieren, weil er das Root-Verzeichnis wirklich nicht finden kann, oder Open Firmware konnte die Partition nicht sehen: das bedeutet, dass Sie das System zurücksetzen müssen, indem Sie mit verschiedenen Bootparametern, die an yaboot übergeben werden, erneut versuchen oder die Optionstaste gedrückt halten, um von CD oder anderen Partitionen neu zu starten. Beachten Sie, dass Sie, um Änderungen an yaboot.conf vorzunehmen, wie folgt vorgehen müssen: in den Debian-Installer im Expertenmodus gelangen, zu der Phase gelangen, in der das Firewire-Laufwerk erkannt wird, eine Shell ausführen, die Root-Dateisystempartition einhängen, yaboot.conf reparieren, in die Root-Dateisystempartition chrooten und ybin erneut ausführen. Viel Glück.
Tipp: Markieren Sie Ihr Kernel-Image als nicht aktualisierbar
Debian-Updates möchten möglicherweise eine neuere Version des Kernel-Images installieren, anstelle des benutzerdefinierten Kernels. Das ist eine schlechte Idee. Siehe, wie man Pakete auf Halteposition in den Debian-Dokumenten setzt.
Feedback, Kommentare
Lassen Sie mich wissen, ob diese Seite für Sie hilfreich war, mailen Sie mir an: dllm70-boborosso at yahoo.com oder kommentieren Sie den Artikel.
Ressourcen
Meine Dateien - wenn Sie mehr Details oder Inspiration für Ihre Einrichtung benötigen:
- Meine eigene .config für Version 2.6.14.2 des Kernels.
- Meine eigene yaboot.conf-Datei.
- Schreiben Sie mir eine E-Mail, wenn Sie wirklich, wirklich den gesamten Kernel benötigen.
Andere Seiten, die sich mit externem Firewire-Boot für Linux befassen:
- IBM Developerworks umfassender Artikel für eine initrd-Kernelinstallation unter Linux, er ist nicht mac-spezifisch: http://www-128.ibm.com/developerworks/linux/library/l-fireboot.html
- Gentoo - (Ich habe alle wichtigen Hinweise von dieser Seite):
http://hansmi.ch/articles/boot-linux-from-firewire - Ubuntu - http://ubuntuforums.org/showthread.php?t=29837
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.