Debian Boot · 1 min read · Oct 30, 2025

PowerPc Macで外部ファイアワイヤドライブからDebianを起動する

ベータ版Debian Etch ppcインストーラとinitrdなしのカーネルを使用しています。

警告!
このページはフィードバックが必要です。現在「私には動作します」。

私のDebianリソースページからの引用です。

はじめに

ブートプロセスをいじることは、Macでもデリケートな問題です。
Debianインストーラは、手順の途中で失敗することがありますので注意してください。
私は保証を提供せず、ハードウェア、ソフトウェア、またはデータに対して生じる可能性のある損失や損害について責任を負いません。
外部ファイアワイヤドライブからLinuxを起動する他の方法は、ネット上の他の場所に文書化されています。リソースセクションを参照してください。

USBキー、デジタルカメラ、他の外部HD、CD-ROMなどの周辺機器を追加または削除したり、devfs、udevなどをインストールまたは削除したりすると、Linuxがファイアワイヤドライブを認識する方法が変更される可能性があります。ブートプロセス中にyabootにブートオプションを提供することに慣れておくことをお勧めします。yabootおよびyaboot.confのマニュアルページを参照してください。

要件

  • 外部ファイアワイヤディスクから起動でき、yabootを使用してDebianを起動できるMacintosh。確実にする必要がある場合は、ファイアワイヤディスクにOSXをインストールし、再起動時にオプションキーを押し続けて表示されるか確認してください。私のファイアワイヤブート可能なPowerBookはやや古く、2001年には最高級品でしたので、新しいMacは問題ないはずです。
  • Linuxコマンドライン、Debianインストールマニュアル、およびカーネルコンパイルに関する知識が必要です。ネット上やHowtoforgeにたくさんのリソースがあります。また、公式のDebianリファレンスマニュアルも参照してください(ただし、あまり最新ではありません)。
  • 最近のDebianインストーラのバージョン。外部ファイアワイヤドライブを認識してパーティションを作成し、インストールできる必要があります。Debian Sargeインストーラは私には十分に新しくありませんでしたので、debian.orgからDebianインストーラのベータ版を取得することをお勧めします。私はテキストベースのバージョンを使用しました。
  • 次の手順ではカスタムDebianカーネルのコンパイルが必要ですので、動作するPowerPC Linuxビルディング環境が必要です。すでにLinuxがインストールされている場合は問題ありませんが、マシンに初めてDebianをインストールする場合は厄介です。(おそらく、UbuntuのようなライブCDディストリビューションを使用すると、カーネルをコンパイルしてDebian用にパッケージ化できます)。私のTitanium PowerBook第2シリーズで動作する.debカーネルパッケージを提供することに問題はありません(リソースを参照)。他のMacintoshモデルではおそらく動作しないでしょうし、新しいTitaniumも含めて(もしかしたらランレベル1でのブートが機能するかもしれませんが)、信頼できないソースから取得したバイナリ(特にカーネル)をダウンロードしてインストールすることはお勧めしません - このサイトのように :-)

ステップ1: カーネルの設定

私は公式のkernel.orgアーカイブからlinux-2.6.14.2を使用しました。安定した後のバージョンのカーネルも動作するはずです。大きなファイル転送のためのファイアワイヤサポートがバグっているため、以前のバージョンは避けるように言われています。ヒント: あなたのマシンで動作することが知られている.configを使用することを忘れないでください。

カーネルを設定する際(つまり、「make menuconfig」を使用して)、RAMディスクサポートオプション(デバイスドライバ -> ブロックデバイスにあります)を無効にします。

コンパイルする必要がある設定オプション、つまり有効ですがモジュールとしてマークされていないもの:

  • デバイスドライバ -> SCSIデバイスサポート: - SCSIデバイスサポート
  • SCSIディスクサポート
  • SCSI汎用サポート
  • Powermac外部および内部SCSIサポート(SCSI低レベルドライバの中に)
  • デバイスドライバ -> IEEE1394(ファイアワイヤ)サポート: - 生のIEEE1394 I/Oサポート
  • OHCI-1394サポート
  • SBP-2サポート さらに、ファイアワイヤカードに必要なドライバがあれば、それも有効にします。以下も有効にしましたが、必要ないかもしれません:
  • OUIデータベース
  • 追加設定をビルド
  • IP-1394エントリ
  • ファイルシステム: ファイアワイヤドライブで使用されるファイルシステムのサポート(私はXFSを使用しています)は、コンパイルされる必要があります。他はモジュールとして保持できます。

結果として得られるカーネルはinitrdを使用しないため、make-kpkgコマンドを発行する際に–initrdオプションを使用しないでください。

カーネルイメージが.debアーカイブとしてパッケージ化されます。

ステップ2: Debianの部分インストール

DebianインストーラCDからブートし、インストールを進めます。エキスパートオプションを選択する必要はありません。時々、インストーラがファイアワイヤドライブを認識しないことがあります。諦める前に、数回中止して再起動してみてください。

手動HDパーティショニング方法を使用することをお勧めします。何が起こっているのかを確認するためです。ファイアワイヤドライブには、少なくとも1つのブートパーティションと1つのルートファイルシステム用のパーティションが必要です。選択したブート用のパーティション番号とルートファイルシステム用のパーティション番号を書き留めてください。
ヒント: インストールを内部HDから独立させたい場合は、必要なパーティションがファイアワイヤドライブにあることを確認してください!内部HDのスワップおよびブートパーティションを未使用としてマークする必要があります。

ハードディスクにyabootをインストールするインストールステップは赤い画面で失敗します。インストールメニューに戻るを選択し、ブートローダなしで続行を選択します。インストーラは、ルートファイルシステムパーティション名を/dev/sd Xnの形式で表示します。ここでXは文字、nは数字です。文字を書き留めてください。数字はルートパーティション番号と同じです。

インストール完了の通知で、再度インストールメニューに戻るを選択し、シェルを実行します。

ステップ3: カーネル.debのコピーとyaboot.confのカスタマイズ

部分インストールのDebianのルートパーティションは/targetにマウントされています。コンパイルしたカーネル.debを/targetにコピーします。カーネルを含むファイルシステムをマウントするためのディレクトリを作成する必要があります。Debianインストーラの/devディレクトリは、あなたが慣れているものとは非常に異なる構造を持っている可能性があることに注意してください。例えば、私の内部IDEドライブの4番目のパーティションをマウントし、そこから.debをコピーする:

# mkdir /mnt  
# mount /dev/ide/host0/bus0/target1/lun0/part4 /mnt  
# cp /mnt/usr/src/kernel-image-2.6.14.2_1_powerpc.deb /mnt

Yabootはファイアワイヤドライブへの「Open Firmwareパス」を知る必要があります。これは次のコマンドで取得できます:

# echo /proc/device-tree/pci*/firewire*/node*/sbp-2*  
/proc/device-tree/pci@f4000000/firewire@e/node@0010b9210040ad70/sbp-2@c000

また、現在/targetにマウントされているルートパーティションの「メジャー番号とマイナー番号」も必要です:

# mount  
...  
/dev/scsi/host0/bus0/target1/lun0/part3 on /target type ...  
...  
# ls -l /dev/scsi/host0/bus0/target1/lun0/part3  
brw------- 1 root root 8, 3 Jan 1 1970 /dev/scsi/...

それぞれメジャー番号とマイナー番号を下線で示しました。さて、/etc/yaboot.confファイルを準備する時間です。nanoを使用して編集します。

# nano /target/etc/yaboot.conf

カスタマイズする必要があるものは、以下の例で下線を引いています。正しいインデントが重要だと思います。imageの後の行は単一のタブでインデントされています。

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=の後には/dev/sdXnが続く必要があります。Xは以前に書き留めた文字に置き換え、nはブートパーティションの番号に置き換えます。

ofboot=の後にはOpen Firmwareパスが続く必要があります。これは/pci…で始まり、…/disk@0:nで終わります。ここでnは再びブートパーティションの番号です。

device=はofbootと同様ですが、最後の数字はルートファイルシステムパーティションの番号であり、partition=の後にも同じ番号を置く必要があります。

root=の後には、以前に書き留めたメジャー番号とマイナー番号がコロンで区切られて続く必要があります。

ルート遅延オプションは、ファイアワイヤドライブがカーネルによって認識されるまでシステムが待機するようにします。また、他のLinux/MacOS/OSXパーティションからブートするためにブートローダオプションを追加/保持することも考慮するかもしれません。

ステップ4: カーネルとブートローダのインストール。

これは/targetにchrootすることで行います:

# chroot /target  
# dpkg -i kernel-image-2.6.xxxxx_powerpc.deb  
...  
Hmmm...  
Hmmm...  
...  
# ybin  
#

最後に、chrootから退出し、シェルからctrl-dまたはexitコマンドで退出し、インストールを完了します。インストーラはシステムを再起動します。

最終ステップ: 何が起こるかを見る。

すべてがうまくいけば、ブートローダプロンプトで(l)inuxを選択し、リターンを押すことでDebianが起動し、システムは最終インストールフェーズに進みます。時々、正しく設定されたカーネルがドライブを認識するのに時間がかかり、カーネルパニックが発生することがあります。諦める前にリセットして再起動してみてください。カーネルが本当にルートを見つけられないか、Open Firmwareがパーティションを認識できない可能性があります。これは、システムをリセットし、yabootに異なるブートパラメータを再試行するか、オプションキーを押し続けてCDまたは他のパーティションから再起動する必要があることを意味します。yaboot.confを変更するには、エキスパートモードでDebianインストーラに入り、ファイアワイヤドライブが認識されるフェーズに到達し、シェルを実行し、ファイルシステムルートパーティションをマウントし、yaboot.confを修正し、ファイルシステムルートパーティションにchrootし、再度ybinを実行する必要があります。頑張ってください。

ヒント: カーネルイメージをアップグレード不可としてマークする

Debianのアップグレードは、カスタムカーネルの代わりに新しいバージョンのカーネルイメージをインストールしようとするかもしれません。それは悪いアイデアです。Debianドキュメントでパッケージを保留にする方法を参照してください。

フィードバック、コメント

このページが役に立ったかどうか教えてください。メールはdllm70-boborosso at yahoo.comまで、または記事にコメントしてください。

リソース

私のファイル - セットアップの詳細やインスピレーションが必要な場合:

  • カーネルのバージョン2.6.14.2用の私のown.config。
  • 私のown yaboot.confファイル。
  • 本当にカーネル全体が必要な場合はメールしてください。

Linuxのための外部ファイアワイヤブートに関する他のページ:

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。