Mac OS X Lion安装盘的制作方法(Linux Live CD)教程
本教程假定你对Linux环境有一定程度的了解,至少应知道一些常用命令。
简要步骤:
1 下载SystemRescue CD (支持HFS Plus文件系统的写入以便制作 Lion安装盘,可以刻录到光盘也可以将它写入U盘以便加速引导。
ISO映像下载地址:
写入映像到U盘可以用这个软件
2 获取Lion正式版
3准备一个5G以上的U盘(或者移动硬盘),我们要将Lion安装文件写入到该介质。
4 进入Linux LiveCD环境
5 分区并挂载:
如果你目标硬盘是MBR分区的话,建议最好是在目标硬盘上先分一个100M的小分区,在这个分区上安装变色龙、DSDT.aml、/Extra/Extensions。这样做的好处是只需安装一次变色龙,以后每一次重新安装Lion就不用再费事安装变色龙了。如果你的目标盘是采用GPT分区表的话,那么你可以把变色龙、Extra等安装到EFI分区(论坛有教程)。
在控制台键入wizard进入桌面环境。
在U盘或者移动硬盘上分一个5g以上的主分区,可以用GParted分区,并格式化为HFS Plus格式,卷标为LionInst。然后挂载LionInst。运行如下命令:
mkdir /mnt/lioninst
mount -t hfsplus -o rw,force /dev/sdxy /mnt/lioninst
其中/dev/sdxy是你的U盘(移动硬盘)分区的设备名,不要输错(可以用fdisk –l来查询到底是那个设备名)。
在目标硬盘(安装Lion的硬盘)上分一个100M分区,格式化为HFSPlus,卷标为chameleon。挂载该分区:
mkdir /mnt/chameleon
mount -t hfsplus -o rw,force /dev/sdxy /mnt/chameleon
sdxy是引导分区的设备名,注意和上文的xy不同。
在目标硬盘(安装Lion的硬盘)上再分一个分区,格式化为HFS Plus,卷标为Lion,这是Lion的安装分区。
6 确定你的Lion安装文件所在的硬盘分区,然后挂载该分区(一般都是NTFS分区,所以我们用ntfs-3g命令挂载):
mkdir /mnt/win
ntfs-3g /dev/sdxy /mnt/win
#sdxy是Windows NTFS分区的设备名。
找到你的Lion安装文件的路径,并进入该目录。
cd /mnt/win/path_to_your_lion_installer_dir
7 假定你的生成中间文件(在下文会提到)所在的目录是NTFS分区work目录,即/mnt/win/work
mkdir /mnt/win/work
把InstallESD.dmg移到/mnt/win/work
mv InstallESD.dmg /mnt/win/work
8 然后把InstallESD.dmg转成Linux能够挂载的格式:
cd /mnt/win/work
7z x InstallESD.dmg
会解压出一个文件夹名为:InstallMacOSX.pkg
然后再解压InstallMacOSX.pkg里的InstallESD.dmg(和刚才的文件同名,但不是一个文件),
cd InstallMacOSX.pkg
7z x InstallESD.dmg
可以得到当前目录下的5.hfs这个文件,这个文件是可以挂载的:
mkdir /mnt/installesd
mount -t hfsplus -o loop 5.hfs /mnt/installesd
9 把BaseSystem.dmg转成可挂载的格式并挂载
cd /mnt/win/work
mkdir basesys
cd basesys
7z x /mnt/installesd/BaseSystem.dmg
当前目录会有一个名为5.hfs的文件(和上文的5.hfs同名但不是一个文件),我们要挂载它。
mkdir /mnt/basesystem
mount -t hfsplus -o loop 5.hfs /mnt/basesystem
10现在开始创建Lion安装介质(U盘),直接拷贝文件即可,我们用rsync。
rsync --numeric-ids -av /mnt/basesystem/* /mnt/lioninst/
然后复制Packages目录。
rm -f /mnt/lioninst/System/Installation/Packages
rsync --numeric-ids --progress -av /mnt/installesd/Packages /mnt/lioninst/System/Installation/
复制内核:
cp /mnt/installesd/mach_kernel /mnt/lioninst/
11还需要破解2个文件(OSInstall)。如果不破解的话只能在GPT分区中安装Lion,而我们通常用的分区格式是MBR。
解压附件里的Lion_OSInstall.tar.bz2到/mnt/lioninst:命令为
tar xvf Lion_OSInstall.tar.bz2 -C /mnt/lioninst
12接下来安装变色龙(boot loader)
解压附件的chameleon_boot.tar.gz,有2个文件
boot0hfs是要写到mbr的引导程序(之所以用boot0hfs而不用boot0是因为boot0是先找活动分区,找到之后再把控制权交给活动分区的boot1h,boot0hfs是找第一个HFS分区,如果找到的话执行这个HFS分区的boot1h。这样就不用把这个100M分区设成活动分区了,但你必须保证这个100M分区是此硬盘的第一个HFS分区),boot1h是要写到Lion引导分区(100M分区)开始位置的。
命令如下:
dd if=boot0hfs of=/dev/sdx bs=440 count=1 #sdx是引导分区(100M分区)所在硬盘的设备名,440是boot0hfs代码的实际大小(这个文件是512字节,如果把512字节全都写入的话,分区表会被覆盖)。
dd if=boot1h of=/dev/sdxy #sdxy是引导分区的设备名。
附件的Extra.tar.gz(boot包含在这个压缩文件里)
目录结构如下:
boot
Extra
Themes
org.chameleon.Boot.plist
smbios.plist
Extensions
各种内核扩展.kext(不详细列出了)
解压命令:
tar xvf Extra.tar.gz -C /mnt/chameleon/
chown -R 0:0 /mnt/chameleon/
chmod -R 755 /mnt/chameleon/
特别注意:你需要根据你的情况对以上的文件进行增删。
另外需要注意的是,每次提及的/dev/sdxy 或 /dev/sdx 都是不同的设备名。你需要用fdisk -l来确定x和y到底是什么。千万小心,如果弄错的话,你硬盘的数据可能会丢失。
然后重启计算机(在bios里把目标硬盘设为第一启动设备),会进入变色龙,选择LionInst这个分区,就可以开始安装了。
安装完之后,重启,同样会进入变色龙,然后选择你的Lion分区进入即可享受你的安装成果了。