ksong的
http://bbs.pcbeta.com/viewthread.php?tid=294247
下面是偶的内容了
boot0的大小为512B,写入硬盘
dd if=boot0 of=/dev/rdiskX bs=400 count=1
boot1h的大小为1024B,写入分区
dd if=boot1h of=/dev/rdiskXsY bs=512 count=2
原理大致如下,zef说的啦
把boot0写在硬盘X上面,boot0就会向后寻找有引导代码的hfs+分区,如果找到代码(boot1h),就会启动.但是,如果它找到引导代码,但那段代码却是错误的,就会显示hfs+ partition error,而不会继续向后搜索;如果一直没搜索到可以引导的hfs+分区,则它会一直搜索下去.
注意boot0和boot1h是配套的,如果先安装了pc_efi,又安装变色龙的话,可能导致某个hfs+分区上面的引导是错误的,因此必须把引导的那两个扇区清零
dd if=/dev/zero of=/dev/rdiskXsY bs=512 count=2
这样就好了。这里还要补充一下:用zef的原话就是,由于GPT分区并没有激活分区的概念,所以,你可以把你要激活的hfs+分区之前的hfs+分区的引导代码统统清零,就可以达到相当于激活分区的效果了(即默认启动的分区),这个主意很妙啊
ps:
偶又向zef讨教了好些个问题
下面一一列出:
1.如何备份GPT分区表
dd if=/dev/rdiskX of=GPTbackup bs=512 count=63
GPTbackup可以是具体的路径,比如/volumes/Leopard/***.bin 以下雷同
2.如何备份引导
对于hfs+
dd if=/dev/rdiskXsY of=each_partition bs=512 count=2
注意备份变色龙必须要count=2,因为boot1h是1024B.但是估计pc_efi只需要count=1
对于fat32
dd if=/dev/rdiskXsY of=each_partition bs=512 count=1
貌似可以用来备份winxp,vista的引导,呵呵,没试过,不乱说
3.关于GPT+MBR混合磁盘的同步问题
diskutil会自动同步,只要你的GPT分区上有一个非HFS+的分区
不要使用系统自带的fdisk来update mbr,这样会破坏vista的引导,而变色龙手动版里面的fdisk是经过修改的,可以update mbr.因为它只同步前440B而不是512B.
4.关于在mac用磁盘工具调整分区大小会少掉128mb的空间
zef也不知道它是干什么的,但是反正是可以拿来当linux的swap的(这个是我在onmac.net上看到的,自己也验证了,见http://bbs.pcbeta.com/viewthread.php?tid=307335)
手动版 自动版Chameleon-1.0.11-build
http://href.hu/x/5zcp
自动版
chameleon_v.1.0.11.dmg
http://tinyurl.com/528n68
厄,写到这里真的很累了
走过路过的都来顶一下
[ 本帖最后由 youminbuluo 于 2008-8-18 18:22 编辑 ]
talk.zip
(2008-08-07 23:59:33, Size: 7.99 KB, Downloads: 6)

最新回复
顺便想问一下,用硬盘安装助手和Pacifist安装和什么区别.(这两个软件是不同OS下的我当然知道).如果在Tiger下用pacifist安装Leopard是不是可行?我的意思是用相应的CPU安装相应的版本,不需要使用Don't Panic修改CPUID,引导方面会出现什么问题?谢谢.
因此解压缩后系统就做好了,但是分区的引导还要自己写
那个安装助手是把iso写入一个空白分区
效果相当于在leopard中恢复一个iso文件到一个空白分区
但是安装助手带写引导的功能
注意,安装助手只是把安装文件拷贝到分区并使之可引导,并没有完成安装
你说的是完全可行的,事实上,一张live dvd就可以了
QUOTE:
还有个问题就是:我现在有Tiger(硬盘的主分区)系统可用,Leopard是用Pacifist安装在逻辑分区.而且是用pacifist安装的时候有提示:
是否要替换还是忽略mach_kernel,这是怎么回事,我应该选替换还是?
具体写引导可以用os x86 tools
想手动写入的话
要用dd,看看我上面的文章就明白了
boot0的大小为512B,写入硬盘
dd if=boot0 of=/dev/rdiskX bs=512 count=1
boot1h的大小为1024B,写入分区
dd if=boot1h of=/dev/rdiskXsY bs=512 count=2
dd if=boot1h of/dev/rdiskXsY bs=512 count=1
注意dd有危险,操作前先备份
Update MBR bootloader and flag partition 1 as bootable:
sudo fdisk -e /dev/rdisk0
fdisk: 1> update
Machine code updated.
fdisk:*1> f 1
Partition 1 marked active.
fdisk:*1> w
Device could not be accessed exclusively.
A reboot will be needed for changes to take effect. OK? [n] y
Writing MBR at offset 0.
fdisk: 1> q
这个也忘了,刚才搞混了
dd if=/dev/rdiskXsY of=/volumes/你的盘符/rdiskXsY.bin bs=512 count=1
./startupfiletool /dev/rdiskXsY ./boot 这步差点忘了
然后还要激活,用diskgen算了,千万不要用win的磁盘管理里面的工具
要是出错恢复可以用
dd if=/volumes/你的盘符/rdiskXsY.bin of=/dev/rdiskXsY bs=512 count=1
[ 本帖最后由 youminbuluo 于 2008-8-8 09:37 编辑 ]
(2008-08-08 08:39:01, Size: 389 B , Downloads: 2)
(2008-08-08 09:10:59, Size: 31 KB, Downloads: 1)
我知道用DDmac怎么用的了,DD写引导只能在win下用吧.而且好象不可以在已经装上的Leopard分区写引导...也许是我没弄明白.
还有种情况就是:我现在已经用pacifist已经装上了Leopard
我现在没有Win,只有Tiger,想用你说的os x86 tools,看了一下介绍,好象不支持Tiger,
请问有没有什么好的办法解决?
谢谢
那个自动版
偶现在思维有点乱
以前用pcefi都dd烦了,现在用boot-132,装到第2硬盘上,用的就是那128M分区.第1硬盘直接引导vista. bios选引导 ... 变色龙看不到我的ntfs,所以干脆用boot132直接引导leopard...第二硬盘是改成gpt/mbr才激活引导的 以后有空试试"引导代码统统清零"的方法. 有空多交流
这个识别不了啊
apple偷偷的藏起来了
我现在把它当swap用
玩过IA64的,对这个应该很清楚……
我把DMG直接恢复到USB硬盘里,然后安装 变色龙 到USB硬盘,然后就可以用USB硬盘来引导普通PC安装Leopard了,当然,还是要用破解替换一些东西,比如原版安装器不支持安装在非GPT分区表的分区里,所以黑客们重写了安装器来替换原版安装器……
还有很多破解的部分,但是我没有全部明白,为什么要破解,什么情况下需要破解,什么情况下不需要破解……