如何将 Mac OS X 整合版镜像写入到 U 盘引导安装?
我想把 U 盘当作零售版安装 DVD 来使用,方便随时更换不同 Kext 测试各款 OSx86 整合版(Distro)。请问该如何将 Mac OS X 整合版镜像写入到 U 盘并引导开机?
- 主笔作者
- @nexusmac 发表于 2008-10-18
- 所属专区
- Leopard 10.5
- 典藏规模与记录
- 232,072 次历史阅读 · 32 则精选技术笔记(萃取自 37 则原始回帖) · 2008-10-18 – 2010-05-09
- 参与贡献成员 (14)
- @nexusmac (10)@nfoav8or (9)@naquaada (4)@dvkch (2)@zuz242 (2)@ArKayDe (2)@Dies@milanca@rocafellabryan@natewill18@Pyrokenesis_17@Taisto@00010@fairlyodd
- 相关硬件参考
- USB 3.2 Boot Flash Drives ↗ SATA III & NVMe SSDs ↗ AMD Radeon GPUs (QE/CI) ↗
我想把 U 盘当作零售版安装 DVD 来使用,
借此把 U 盘当成光驱,方便测试不同的 OSx86 整合版(Distros)与各种内核扩展(Kext)组合。
我的电脑支持从 U 盘引导启动,因此想把 OS X 整合版镜像写入到 U 盘里。
请问具体该如何操作才能实现呢?
社区实测与技术补充笔记
自 37 则原始讨论回帖中萃取 32 则高价值技术回应
你只需要确保在 U 盘的分区上启用并安装好引导程序(例如 Chameleon 或 EFI)就可以了。
nfoav8or,感谢你的回复。
请问我该如何确保或通过引导程序(Bootloader)在 U 盘上建立可引导分区?
我的意思不是要在 U 盘上直接运行已经安装好的 OS X 系统。
我的意思是想把像 Kalyway 这类安装 DVD 放进 U 盘里面运行。
也就是用插入 U 盘来代替放入 DVD 光盘,直接从 U 盘启动安装程序。
请问你能详细说明具体需要哪些操作步骤吗?
先正常开机进入 OS X 系统,然后打开“磁盘工具”(Disk Utility)。放入安装 DVD 光盘,或者找到你原本用来刻录 DVD 的 .iso 镜像文件(直接用 .iso 速度会快得多),接着在左侧列表选中你的 U 盘。然后点击顶部的“恢复”(Restore)标签页,将源与目标项目分别拖放到“源磁盘”(Source)与“目的磁盘”(Destination)栏位中。这个过程需要花上一段时间,你可以泡杯茶看本书或上网等它跑完。完成后,关闭磁盘工具并打开 Chameleon 安装程序……将安装目标选为你的 U 盘,这样应该就能正常引导了。
我对这个方案非常感兴趣!如果你有任何测试结果,请务必发上来分享。
通过磁盘工具将存放在电脑里的安装 DVD 镜像文件直接“恢复”到 U 盘后,我还可以在同一支 U 盘上一并放入许多专属的修复补丁与常用应用程序(有一支 8GB 的 U 盘确实帮了大忙)。
我用磁盘工具(Disk Utility)创建了一个空白镜像文件(DMG),因为磁盘工具直接读取 ISO 时会提示找不到索引之类的错误。先创建 DMG 并从 ISO 恢复到该 DMG 后,再从 DMG 恢复到 U 盘所需的时间就缩短了许多。
我暂时还没时间实际测试开机,稍后测试完会再上来反馈结果。
不过我心里有个疑问:我准备在 SB700 芯片组的主板上尝试这个方法,但有时某些整合版(Distro)在等待识别 USB 设备时会出问题,甚至直接无法识别而卡死停住。
我测试完整合版的 U 盘开机引导后,会再向大家反馈情况。
多谢 nfoav8or!
好消息,它确实成功开机引导了!但它看不到我的 IDE 硬盘,只把 U 盘自己当成了硬盘。
请问这该怎么解决呢?我甚至还没在 U 盘上安装 Chameleon,它自己就成功引导了 ;)
天啊,我刚才正在打字回帖,转头看了一眼电脑,居然发现 Mac OS X 已经直接启动进入系统了 :)
没错,它真的直接在 U 盘上运行起来了,我什么额外设置都没做。
就只是插着 U 盘而已 :) 我简直惊呆了 ;)
我现在正在检查有哪些硬件驱动被系统成功识别。
它运行得非常完美,速度甚至比我的 SATA 硬盘还要快 :)
真的难以置信!谁能告诉我这到底是怎么回事!
这只是一支普通的 Kingston 4GB U 盘,从 DMG 恢复花了足足 2 个小时,但启动运行 OS X 却只需要几秒钟!
发生什么乌龙了?
顺带一提,4GB 的 U 盘要装下像 OS X 这样庞大的操作系统,空间其实非常吃紧。
我自己都是用 8GB 的 U 盘来存放安装 DVD 镜像文件,这样我就有充裕的空间随意修改里面的文件,确保它能为我的硬件安装好所有正确的驱动与组件。
我最后也试着拿我的 Zen Vision M 播放器上的 UMS 分区(设置为 8GB)来照着做。它可以成功通过 Chameleon 开机引导,但随后不是卡在“still waiting for root device”,就是整个系统直接死机冻结(同时我的 Zen 屏幕上会显示已断开连接)。请问这是怎么回事?
附注:为了让 USB 在 OS X 下正常工作,我之前在 BIOS 中关闭了 Legacy USB;但为了能从 USB 磁盘引导开机,我刚才又把它重新启用了。
你在 U 盘上放的是哪一个整合版(Distro)?
如果 USB 安装盘里没有对应你主板芯片组的内核扩展(Kext),你就必须先将它们注入进去,安装程序才能识别到你机箱内的 SATA / IDE 硬盘。
我把 Leo4All 放进了 U 盘,在修改 Extensions 文件夹之前它都能正常工作。请问修改后我该如何重新创建 Extensions.mkext 文件?即使我以单用户模式(Single User Mode)开机并将 U 盘挂载为读写模式,执行 kextcache -k /System/Library/Extensions 依然无效。请问在正常开机引导过程中,要如何获得完整的读写权限?有没有类似 startup-sequence 或 autoexec.bat 的启动脚本机制?
当你使用“-s”参数开机进入单用户模式时,需要先执行以下命令来挂载磁盘:
/sbin/mount -uw /
请问你有执行这一步吗?
补充编辑:如果你是从 U 盘引导开机,为什么还要特地重建 .mkext 呢?直接用 rm 把它删掉,然后重启,系统就会自动加载所有 Kext 并重新创建缓存了。
如果我只用 -uw 参数,磁盘依然无法写入。我也试过 -rw 和 -ruw,请问这几个参数有什么区别?
我专门为 U 盘制作了一个整理得非常干净的 Leo4All v3 镜像文件。虽然这个安装镜像版本较旧,但在我看来,Leo4All v3 是我自 Tiger 时代以来用过超过 25 个版本当中最优秀的一个。如果有人感兴趣,我已经将它上传到 RapidShare,不过拿掉了主安装包 Leopard-10.5.2.pkg(这个文件必须从原版 DVD 复制过来)。因此下载大小“只有”约 980 MB,下载起来会快得多。
实测数据:开机时间(从 Darwin 倒计时结束到出现语言选择界面)仅需 41 秒;安装时间(选完驱动程序后)只需 8 分 30 秒。这是在 Athlon 64 4000+ 上的测试成绩,如果是更快的电脑,解压缩文件的速度会更快,整体耗时还会进一步缩短。
我使用了一支 8 GB 的 U 盘,并划分出一个 4.25 GB 的分区,实际生成的分区大小为 4.38 GB(4,697,620,480 bytes),刚好也能塞进一张单层 DVD(4,698,669,056 bytes)。另一个分区则用来存放系统更新包与安装所需的各类软件。我对这个镜像文件做了一些优化,让你可以直接访问常用的文件夹(System、Library、Applications、Installation 等)而无需任何特殊技巧,同时主窗口依然保持整洁,只会显示两个图标。最重要的一点是,这个镜像文件已经过碎片整理优化:原本主安装包的文件碎片散落在磁盘各处,我先将它删除并用 iDefrag 彻底整理了磁盘,现在最核心的文件(特别是 Kernel 与 Extensions)都直接排列在磁盘最前端,最后再用 Chameleon 将它制作成可引导磁盘。
若要用它来制作可引导 U 盘,请准备一支 8GB 或更大容量的 U 盘并创建两个分区,第一个分区必须设为 4.25 GB,并确认引导扇区类型设为 MBR 模式。接着将镜像文件恢复到第一个分区(该镜像文件已预先执行过恢复扫描验证),整个恢复过程大约需要 1.5 小时。完成后,放入 Leo4All 安装 DVD,打开光盘并按下 Windows 键盘上的 Alt+Shift+G(或 Mac 键盘上的 Command+Shift+G),输入路径:System/Installation/Packages 并按 Return。找到 Leopard-10.5.2.pkg 安装包后,建议先将它从 DVD 复制到电脑硬盘,再从硬盘复制到 U 盘中。在 U 盘上你不需要再次输入隐藏路径,可以直接通过镜像文件内的“Leo4All”文件夹访问该目录。完成后再用 Chameleon 让 U 盘具备开机引导能力即可。注意:如果你只有 4GB 的 U 盘,空间可能会不够用,这时你需要先删除一些你用不到的多国语言包来腾出空间。
即使你不打算使用 Leo4All 镜像文件,也可以参考这份指南,用你自己偏好的 OSx86 版本制作可引导安装 U 盘。把安装镜像放在 U 盘上真的非常方便,不仅省去了漫长的等待时间,应用程序的启动速度也快得多,而且还能直接用在现在那些没有内置 DVD 光驱的新款上网本(Netbook)上。
是啊,我原本也不确定该不该直接贴出下载链接……起初我不太想贴,但考虑到有些人不喜欢每次都要发私信(PM)索取,直接贴出来对大家还是方便得多。
nfoav8or,你可以帮帮我吗?
我的 U 盘在重启后,依然只把自身识别为硬盘。
在开机引导菜单中,我也只能看到这支 U 盘的名称被列为硬盘。
我完全看不到机箱内的硬盘,开机引导期间也检测不到它。
另外我要更正一下前面几篇回复里摆的乌龙 :)
我完全忘了机箱内原本就有一块已经安装好 OS X 的硬盘,结果误以为系统是真的在 U 盘上运行,实在太搞笑了!我自己都笑了好久!
唉,真是太丢人了 :)
所以问题依然存在:从 U 盘开机时,我该如何让它识别到机箱内的硬盘呢?
@nexusmac我的 U 盘在重启后,依然只把自身识别为硬盘。在开机引导菜单中,我也只能看到这支 U 盘的名称被列为硬盘。我完全看不到机箱内的硬盘,开机引导期间也检测不到它。所以问题依然存在:从 U 盘开机时,我该如何让它识别到机箱内的硬盘呢?
当你说 flash memory 时,你指的是能够保存写入数据的 U 盘/闪存介质,对吧……?
只要你放入了对应你硬件的正确内核扩展(Kernel Extensions),照着我们前面讨论过的方法操作,系统就应该能顺利看到机箱内的硬盘。
请务必先进入硬盘上已经安装好的 OS X 系统,在系统内对 U 盘上的这些 Kext 进行编辑与修改……千万不要在从 U 盘引导运行的状态下尝试把文件复制回该 U 盘上。
我有点跟不上你前面几篇回帖的思路,你能再说清楚一点吗?
我打算重新开始整个安装流程,先把所有东西重新整理好。
之后我再来理清其他细节。
顺带一问,你有看到我发的另一篇帖子吗?就是关于加载多个 mkext 文件选项的那篇?
好吧,我一直很努力在跟进这篇讨论,而且在自己的机器上也观察到了类似的现象。我第一次尝试安装时,误把 OS X 直接安装到了我的 8GB U 盘上。结果直到那次安装完成之后,Mac OS 安装程序才突然能够识别到我机箱内的硬盘。现在只要开机时插着这支 U 盘,Darwin 提示画面过后就会像正常 Mac 一样显示灰色 Apple 加载画面;但如果拔掉 U 盘开机,它就会退回典型的黑底白字画面,疯狂滚动大量文字(就像开启了 -v 啰嗦模式一样)。
我的问题是:这支 U 盘是不是在协助电脑完成开机引导?有没有办法把这个“开机引导盘”做成电脑内置硬盘上的一个分区,让我以后不再需要插着 U 盘才能开机?虽然听起来有点蠢,但我在 YouTube 视频上看过别人只要按下电源键,“啪”一声电脑就像真正的 Apple 电脑一样直接开机进系统了 lol。我现在就只希望能把自己的电脑调校到那种状态!
@rocafellabryan好吧,我一直很努力在跟进这篇讨论,而且在自己的机器上也观察到了类似的现象。我第一次尝试安装时,误把 OS X 直接安装到了我的 8GB U 盘上。结果直到那次安装完成之后,Mac OS 安装程序才突然能够识别到我机箱内的硬盘。现在只要开机时插着这支 U 盘,Darwin…
我想先问第一个问题:你是照着这篇讨论帖的方法制作了“MAC OS X 安装专用 U 盘”,还是你真的拿安装 DVD 把完整的 Mac OS X 系统安装到那支 U 盘里面去了?
我在这篇讨论帖分享的做法,目的是让大家能更快速地开机进入可用的“MAC OS X 安装专用 U 盘”,方便直接修改安装盘内容,测试市面上各种不同整合版(Distro)对自己硬件的支持度。
请问你有没有在内置硬盘(而不是 U 盘)上安装过 Chameleon 引导程序?
请告诉我你的具体情况,我再看看怎样帮你解决。
Wiki 已更新
我已经在 Wiki 的 Howto 区段中加入了一些关于从 U 盘安装系统的说明信息。
@nfoav8or先正常开机进入 OS X 系统,然后打开“磁盘工具”(Disk Utility)。放入安装 DVD 光盘,或者找到你原本用来刻录 DVD 的 .iso 镜像文件(直接用 .iso 速度会快得多),接着在左侧列表选中你的 U 盘。然后点击顶部的“恢复”(Restore)标签页,将源与目标项目分别拖放到“源磁盘”(Source)与“目的磁盘”(Destination)栏位中。这个过程需要花上一段时间,你可以泡杯茶看本书…
请问我可以把同样的方法套用到移动硬盘(External HDD)上吗?
- 把我想用的镜像文件传送到 Mac 硬盘上
- 插上我的移动硬盘(已格式化为 HFS+)
- 选择“恢复”,将 .iso 设为源磁盘,并将移动硬盘设为目的磁盘
- 打开 Chameleon 安装程序(请问这一步具体要在哪里、怎么操作?因为我是 Mac 新手),并选择外置 USB 硬盘作为安装目标(请问这一步是把实际运行的 OS X 系统安装到移动硬盘上吗?因为我并不想那样做,如果可以的话希望能跳过这一步)
@natewill18请问我可以把同样的方法套用到移动硬盘(External HDD)上吗? - 把我想用的镜像文件传送到 Mac 硬盘上 - 插上我的移动硬盘(已格式化为 HFS+) - 选择“恢复”,将 .iso 设为源磁盘,并将移动硬盘设为目的磁盘 - 打开 Chameleon 安装程序(请问这一步具体要在哪里、怎么操作?因为我是 Mac 新手),并选择外置 USB…
可以的。你可以通过磁盘工具将安装 DVD 恢复到移动硬盘上。当你安装 Chameleon 时,你只是在安装“引导程序”(Bootloader),而不是安装操作系统,这样你的 PC 主板才会知道可以从这块磁盘引导启动。若要安装 Chameleon,请先在已安装好的 OS X 系统下运行,并从 Chameleon 官方网站(chameleon.osx 86.hu/)下载安装包。运行安装程序后,请务必确认选中了正确的目标磁盘(在你完成镜像文件恢复之后再执行此步骤)。
这样一来,你以后安装系统的速度就会快得多了。祝你玩得开心!
未能成功
很高兴看到你们不少人已经成功走到这一步!但我自己却无法从 U 盘开机,画面一直跳出“EBIOS read error”,就像在读取一张损坏的磁盘一样。我已经从 ISO 执行了恢复,也在上面安装了 Chameleon,但全都徒劳无功!请问有人知道是什么原因吗?我使用的是 SanDisk Cruzer 4GB U 盘,搭配 ASUS Striker II Extreme 主板。
@Pyrokenesis_17很高兴看到你们不少人已经成功走到这一步!但我自己却无法从 U 盘开机,画面一直跳出“EBIOS read error”,就像在读取一张损坏的磁盘一样。我已经从 ISO 执行了恢复,也在上面安装了 Chameleon,但全都徒劳无功!请问有人知道是什么原因吗?我使用的是 SanDisk Cruzer 4GB U 盘,搭配 ASUS Striker II Extreme 主板。
我不太清楚这个 EBIOS 错误的具体成因,但我建议你先用 diskutil 将 .iso 文件转换为 .dmg 格式,接着再用 diskutil 对这个新生成的 .dmg 执行镜像扫描验证,最后才将它恢复到 U 盘上。完成后再安装 Chameleon,应该就能正常工作了。
请问将 ISO 转换为 DMG 时,应该选择哪种镜像格式(压缩、稀疏镜像……)?
我之前尝试直接使用 iPC 的 ISO 文件,结果从来没能成功做出可引导的 U 盘;电脑虽然会尝试从 U 盘启动,但画面上就只有一个不断闪烁的光标。
我之前的尝试步骤如下:
- 在我的 8GB U 盘上采用 MBR 分区表创建了一个 Mac OS 扩展(日志式)分区
- 直接从 ISO 进行恢复,并取消勾选“抹掉目的磁盘”(Erase Destination)——因为如果勾选的话,程序会报错抱怨镜像未经扫描(source needs to be imagescanned/scanned)
- 使用 OSX86Tools 安装了 EFI 引导程序
如果你打算从 CD/DVD 光盘启动,应该使用“未压缩”(non-compressed)的镜像格式。如果你把 ISO 镜像刻录到 DVD 后依然无法引导,我建议你调低刻录倍速再重新刻录一次。正常情况下它应该都能引导,所以很可能是你的 ISO 文件本身已损坏,或者是 DVD 刻录过程出了问题?
这个 ISO 刻成光盘是完全可以正常引导的,但我还是希望能改用 U 盘来加快安装速度。问题在于如果直接从 iPC 的 ISO 文件恢复到 U 盘上,开机时就会直接卡死。我是参考这篇指南操作的:
i hackintosh.com/2009/02/make-bootable-mac-osx86-usb-stick-installer-yourself/
该作者是使用 osx86tools 安装 PC_EFI v8 引导程序。有可能是这个引导程序在我的机器上不起作用,也有可能是不能直接拿 ISO 文件来恢复。因此我想先试着将它转换成 DMG 格式,看看能不能解决问题——虽然我心里对此还是有点怀疑。
我专门为 Toshiba L305 笔记本电脑修补了一份 Leopard DMG 镜像文件,而且做成 LIVE 版本,开机后就能直接进入完整的桌面环境使用所有功能;接着你还可以直接使用 Carbon Copy Cloner 应用程序,将这支 USB LIVE Leopard 磁盘完整克隆(Clone)到内置硬盘上完成安装。效果非常完美,甚至连我的 CPU 与内存(RAM)信息都能正确显示。
00010
好,我现在已经能通过 Chameleon 从 U 盘成功开机引导了,但加载进入安装程序后,却完全看不到我的内置硬盘?请问有人知道为什么会这样吗?
文献来源与贡献者溯源名录(共 14 位具名成员 · 原始讨论串 #1448)
| 成员用户名 | 本卷贡献角色 | 发帖数 | 活跃时间窗 |
|---|---|---|---|
| @nexusmac | 主笔作者 | 10 | 2008-10-18 → 2008-11-04 |
| @nfoav8or | 核心贡献者 | 9 | 2008-10-19 → 2009-01-05 |
| @naquaada | 核心贡献者 | 4 | 2008-10-24 → 2008-10-28 |
| @dvkch | 协作成员 | 2 | 2008-10-21 → 2008-10-23 |
| @zuz242 | 协作成员 | 2 | 2008-12-28 → 2009-02-24 |
| @ArKayDe | 协作成员 | 2 | 2009-03-22 |
| @Dies | 协作成员 | 1 | 2008-10-19 |
| @milanca | 协作成员 | 1 | 2008-10-23 |
| @rocafellabryan | 协作成员 | 1 | 2008-11-18 |
| @natewill18 | 协作成员 | 1 | 2009-01-04 |
| @Pyrokenesis_17 | 协作成员 | 1 | 2009-01-19 |
| @Taisto | 协作成员 | 1 | 2009-03-22 |
| @00010 | 协作成员 | 1 | 2010-02-07 |
| @fairlyodd | 协作成员 | 1 | 2010-05-09 |