&">nbsp; Ubuntu可以安装到支持Firewire的磁盘分区中。然而,引导进入ubuntu的安装是件麻烦的事!(Firewire是国际工业标准(高性能串行总线)之苹果版本) 首先,BIOS必须找到引导程序(如Grub或Yaboot),这取决于硬件的性能; 其次,引导程序需用BIOS来调用Kernel和Initrd文件,其反过来又依赖于BIOS; 最后,内核引导时可能无法找到磁盘上的Root用户分区,这是因为Initrd中缺乏相应的驱动模块。一旦如此,请重新编译initrd以添加依赖模块。(详见man mkinitrd 和 man update-initramfs)
设备无法正常工作
Ubuntu的内核不支持对SCSI、FireWire驱动器和SBP-2(Serial Bus Protocol)设备的位编译,因此这些设备无法正常使用。请根据http://macubuntu.blogspot.com/ 上面的指示来使其正常工作。
Original post
该页面来源于Bugzilla中的1181号文档。(Bugzilla是一个Bug追踪系统设计用来帮助你管理软件开发。) 这里有一个链接是教你如何从硬盘启动的。我不敢肯定该链接的有效期是多久,所以你要注意以下重要部分:
接下来是设置FireWire驱动器的固件路径:
# find /proc/device-tree/ -name disk@\* | grep -i firewire
/proc/device-tree/pci@f4y000000/FireWire@e/node@0001d200e00260c6/sbp-2@c000/disk@0
接下来在FireWire驱动器上创建yaboot.conf文件,下面的配置文件基于上述的FireWire地址。
# pico /mnt/fw/boot/yaboot.conf
ofboot=fw/node/sbp-2/disk@0:
init-message=”Welcome top Yellow Dog Linux! \n Hit <TAB> for boot options.
\n\n”
partition=4
timeout=30
install=/usr/lib/yaboot/yaboot
magicboot=/usr/lib/yaboot/ofboot
default=linux
image=/boot/vmlinux-2.4.20-8dsmp
label=linux
root=/dev/sda4
read-only
initrd=/boot/initrd-2.4.20-8dsmp.gz
defaultos=linux
delay=10
enablecdboot
我认为“partition=4”这一行可以归类写入“image=”一段。如果有多个启动镜像的话需要有不同的分区(partition)选项。但是,这样做是为了简单方便。由于这个例子只是使用一个FireWire驱动器安装了YDL(Yellow Dog Linux),所以无须移动该行。ofboot 这一行应该是FireWire驱动器的固件路径。
现在,我们要祈祷该驱动能被苹果的引导程序发现。
# ybin -v --boot /dev/sda2 --nonvram --config /mnt/fw/boot/yaboot.conf
此时,你应该准备使用苹果的引导程序来启动FireWire驱动器。使用苹果的引导程序之前必须重启机器:
# shutdown –r now
然后按住以下键:
ALT + APPLE KEY + O + F
你会看到一个启动提示符,然后输入:
> boot fw/node/sbp-2/disk@0:2, yaboot
注意,“disk@0:2”是FireWire的路径,“2”是指启动分区。如果你改变了启动分区的位置,这个选项会有所改变。
现在,你应该可以看到来自FireWire驱动器的yaboot引导载入程序了,你只要按下Enter键就可以进入YDL(Yellow Dog Linux)了。
固件路径
要找到你的FireWire硬盘的固件路径,输入以下命令: ( find /proc/device-tree - name disk@\* | grep firewire ) 删除/proc/device-tree然后输入OpenFirmware的路径。固件的别名可以在proc/device-tree/aliases中找到,对于单个Firewire硬盘可以是简单的路径地址,就像我们的例子一样。