积分 19 最后登录 2023-12-22 精华 0 阅读权限 10 主题 5 UID 2122853 帖子 48 PB币 60 威望 0 贡献 0 技术 0 活跃 3
UID 2122853 帖子 48 PB币 60 贡献 0 技术 0 活跃 3
该死的前言:
昨天终于基本上征服了我的小狮子,这个让我苦恼了半年的问题终于解决了。由于此款小本没有光驱,加上dell的BIOS那叫一个蛋疼,导致了我的无论是用外置光驱还是用移动硬盘或者是U盘量产始终都是一个令我的无比蛋疼的结果:
Still waiting for root device...
Still waiting for root device...
Still waiting for root device...
抓狂的过程:
准备工作:(为了不浪费大家的PB,这里打成一个包吧: )
两个主分区:6G以上的一个(我的: rdisk0s2),30G左右的一个(我的: rdisk0s3),VMware 8(www.verycd.com ),两个帖子(下面会提供),snowleopard_10.6.5.iso, lion_10.7.iso, lion_10.7.3.dmg(原版的,这个自己找吧),Chameleon_boot: Chameleon.zip
感谢前辈们:
https://bbs.pcbeta.com/forum.php?mod=viewthread&tid=863656
https://bbs.pcbeta.com/forum.php?mod=viewthread&tid=899592
https://bbs.pcbeta.com/viewthread-942484-1-1.html (lion 10.7.iso)
开动前的啰嗦:
总体思路:
1. 建虚拟机(FreeBSD 64bit),挂上前面两个物理分区(我就爱VMware这一点,NB)分配2G内存给它 (忘记说了要4G以上的内存,关闭其它软件尤其是该死的迅雷,对内存空间只占用不释放,如果你已经开
过了,那重启吧,反正4G才刚刚好够用)
2. 安装SnowLeopard(原来装在G450上的一直留着)到rdisk0s3(这么做是因为,我装了上面的 lion_10.7.iso, 开不了,显卡驱动也不支持,10.7.3 原版是支持的)
3. 利用lion_10.7.3.dmg,装好的snow, 6G分区制作本地安装盘
(别忘记了加必要的kexts,并把分区标识改成 “AF”{DiskGen这可以})
4. 挂载lion_10.7.iso(如果你有别的可引导的lion.iso也是可以的)引导刚刚的6G分区安装lion到我的 rdisk0s3
5. 安装完成后加入需要的kext,smbios.plit,并安装上boot
6. 一切妥当后关闭虚拟机,重启你的笔记本,别进windows了 引导你的rdisk0s3(引导方法后面会提到)
准备好了吗,出发!
1. 虚拟机安装主要我提以下几点:
1)内存要2G(2048M)以上
2)系统如果有Mac OS X就选它,没有就选FreeBSD 64bit,然后用记事本修改配制文件:
字段:guestOS = "darwin10" (改这一行即可)
附上我的配置文件:
3)虚拟机添加之前的两个物理分区(我的是rdisk0s2 rdisk0s3)考虑到安全,只选两个分区不要选全盘
2. Snowleopard安装过程一些问题:
1)不要装太多驱动,够用就行了(比如SleepEnable之类的)
2)安装完成的时候会报安装失败,没关系,只是引导程序没有装上,后面用光盘引导这个系统就可以
3)重启后进入你可能会遇到在(are you already own a MAC)时无法下一步,没关系,此时设置网卡 为NAT看看有没有跳过,如果还不行就再改成其它的(比如:HostOnly)。如果顺利会问你以何种方式 联网,选择无Internet连接 那一行继续就好。
3. 制作安装分区:
1)你需要事先把需要的文件传到SnowLeopard虚拟机里面去(做成ISO是个比较稳妥的方法:UltraISO)
lion_10.7.3.dmg, 一些必备 kexts, smbios.plist(我用的是8,1的) kexts: FakeSMC.kext, NullCPUPowerManager.kext(如果启动报AppleIntelCPUManager.kext错就需 要),AppleACPIPS2Nub.kext, IOATAFamily.kext, VoodooPS2Controller.kext
把你需要的kext通通复制到“6G分区/System/Library/Extentions/”
smbios.plist在这:“6G分区/Extra/ ” (如果没有看到有这个分区,自己建一个吧)
如果你是彻底的伸手党,好吧,我给你包好了
2)你需要把双击InstallESD.dmg(就是你下载的Lion _10.7.3.dmg)挂载它。把里面的BaseSystem.dmg复制 到你的桌面。如果你告诉我你没有看到,那是正常的,试试下面命令:
$ sudo cp /Volumes/(你挂的dmg名称,没错,所有分区默认挂在这里)/BaseSystem.dmg ~/Desktop/
$ sudo chflags -R nohidden ~/Desktop/BaseSystem.dmg (很快你会发现它出现在桌面了)
然后将BaseSystem.dmg恢复到你的6G分区(Disk Utility)用鼠标拖动就好,后面的运作自己领会, 做好了以后把6G分区挂上,用InsallESD.dmg里面的Packages文件夹替换6G分区中的 System/Installation/Packages(这原来只是一个链接)
还有一个隐藏的文件,那就是InstallESD.dmg中的mach_kernel没错内核文件,不过这个文件还是让它
隐藏着比较好,真的。
你需要下载lion适用的OSInstall.mpkg和OSInstall文件 分别替换到
OSInstall.mpkg: /System/Installation/Packages/OSInstall.mpkg
OSInstall: /System/Library/Pri1vateFrameworks/InstallFramework/Frameworks/OSInstall.Framework/Versions/A/OSInstall
4. 现在是lion 时间:
好了,一切就绪重启SnowLeopard, 用lion_10.7.iso(破解版的N久以前下的)来引导进入刚刚的那个6G
分区,你肯定会问,这孩子装苹果装傻了,用刚刚Snow的光盘引导不就好了。但是,事实是残酷的,我试
了好几次, 不成功,而且,lion.iso里面有一些我想要的东西(比如某些kext) 也很方便。
安装lion过程我就不说了,安装目标就是30G的分区(没错,就是安装snowleopard的那个,如果你舍不
得,再来一个也行,或者把Snowleopard装其它地方去,总之必须给它一个30G左右的主分区,如果你的手
头实在紧也不要小于20G)
安装完成以后,先不要进入系统,先进刚刚的安装界面,还有一些事要做:
1)把先前的需要kexts(NullCPUPowerManager可以先不复制,报错了再复制也不晚)复制 到/Volumes/"30G分区"/System/Library/Extentions/
2)把smbios.plist 复制到/Volumes/"30G分区"/Extra/ (如果没有这个文件夹就自己建吧)
3)修正文件的权限:
$ chmod -R 755 /Volumes/"30G分区"/mach_kernel
$ chown -R root:wheel /Volumes/"30G分区"/mach_kernel
$ chmod -R 755 /Volumes/"30G分区"/System/Library/Extentions
$ chown -R root:wheel /Volumes/"30G分区"/System/Library/Extetions
4)现在有一件很重要的事情要做就是弄清楚你的30G硬盘的设备名即rdiskXsY中的X和Y的值
(X代表是第几个硬盘,你从本地硬盘引导时它就是0,Y是第几个分区,居然是从1开始计算也就是说第一个分区就是1,尴尬)
Jacks-Mac-Pro:~ jackson$ mount /dev/disk0s3 on / (hfs, local, journaled) devfs on /dev (devfs, local, nobrowse) map -hosts on /net (autofs, nosuid, automounted, nobrowse) map auto_home on /home (autofs, automounted, nobrowse) /dev/disk0s2 on /Volumes/Mac OS X Base System (hfs, local)
从上面我可以看到,我的安装分区是/Volumes/Mac OS Base System 也就是disk0s2,但是
要引导的时候要加个"r"也就是rdisk0s2变色龙才能识别,不要问为什么,这是操作系统层面的,
有兴趣就学学FreeBSD好处多多。这里我们要是不是rdisk0s2而是那个30G的,我现在已经在这
个lion中了,所以它直接挂在“/” (叫“根”的东西),顺便看看它们的大小吧Jacks-Mac-Pro:~ jackson$ df -g Filesystem 1G-blocks Used Available Capacity Mounted on /dev/disk0s3 33 12 21 38% / /dev/disk0s1 30 23 6 80% /Volumes/Windows /dev/disk0s5 20 12 7 65% /Volumes/Software /dev/disk0s7 188 141 46 76% /Volumes/Something /dev/disk0s2 6 4 1 74% /Volumes/Mac OS X Base System
我的lion是33G左右,且是/dev/disk0s3,所以我会记住这个:rdisk0s3(看看,用英文当卷
标的好处)
5)虚拟机中引导新安装的Lion
好了,之前的准备工作已经做完了,可以用lion.iso引导lion了。最好加上 -v 参数
如果,你因AppleIntelCPUPowerManager.kext引起内核 Panic,请引导进入安装分区,加
入Null**.kext
如果,你的内核Panic,错误信息里面有uuid-media之类的,引导时加上 rd=rdisk1s3 -v
(这是我的参数,这里为什么从0变成1了呢?因为,是从光盘引导,光盘占用了0,那么硬盘就变成下一个了。具体是多少,你加了-v参数引导时,你可以在屏幕上看到大量的hd(1,3) /System/Library/....类似的信息,没错,那就是你要的两个数字)
6)意外,意外,意外
如果不出意外,没错,你已经在lion里面了,后面注册什么的事情做完以后关机(虚拟
机)。然后重启你的笔记本,准备在物理机上引导你的lion,我当时那个激动啊。这里有新的问题--
How?
设想1:你居然有个外接光驱,很好,把你此前刻好lion盘接上和虚拟一样
设想2:你和我一样没有外接光驱,或者你只是不想浪费一张盘,好,装个win版的变色龙
设想3:你win版的变色龙起不了作用(我的可以),你有可以量产的U盘,把iso量产进去
设想4:你还想啥,把你的破本子扔了,买台苹果去!然后,按下苹果开机键
备用:如果出现UUID-media的问题,引导时加上 "-v rd=rdiskXsY "(X, Y不用我解释了
吧)。如果是其它问题去好好看看,我之前给的贴子,看看你哪步没有做好,那帖子写得非常详细,
在此我要严重地感谢一下他的作者。
7)意外过后,你真的成功了
首先,冷静。还有一些小问题要解决:
你的lion居然不能自己引导自己,这怎么行。(当然如果你装了win版的变色龙,就没有此
问题)
i. 哥,装一个win版的变色龙吧(支持lion的才行,找pcbeta要去,或者google)
ii. 在Lion中手动安装引导程序(可引导win)(帖子前面有个chameleon.zip解压到桌面):
### 开动前清醒一下,以下步骤有点危险,一定要小心小心再小心 ###
$ cd ~/Desktop/chameleon (这不用我解释吧)
$ sudo ./fdisk044 -f boot0 -u -y /dev/rdisk0 (将引导程序写入你的主引导记录
(MBR))
(怎么又变成该死的0了,因为你从光盘跳转到本地硬盘了)
$ sudo dd if=boot1h of=/dev/rdisk0s2 (为我的安装分区写入引导程度)
$ sudo dd if=boot1h of=/dev/rdisk0s3 (这才是我的lion的窝)
$ sudo cp ./boot / ; sudo chflags -R hidden /boot (复制变色龙到“根”,并让它
隐身)
如果你觉得用命令行的样子的变色龙引导很丢面子,那就去找个你喜欢皮肤吧放在这里:
$ sudo cp **/theme /Extra/ (theme文件夹就放着图形化皮肤文件,自己找
pcbeta要吧)
如果你遇到uuid问题(我就是这样),又不想每次都输入 rd=rdisk0s3:
解压出来,复制到:/Extra/ (需要你打开编辑,修改成你的rdiskXsY)
啰嗦:由此你知道了一个常见的开机过程:初始化BIOS,它找到了硬盘(MBR,boot0),boot0找到了分区(boot1h),boot1h找到了变色龙(boot),最后boot找到了操作系统的内核(mach_kernel),经过mach_kernel一阵子的梳妆打扮,lion优雅呈现
iii. 哥,你要是觉得这两种都不合适,换个电脑吧。
你的lion还有一些驱动有问题:我的无线网卡,声卡,小狮子一睡(休眠)不醒, USB
i. 无线网卡:我的也在找,一起吧。
ii. 声卡:哈哈,我有snowleopard.iso我从里面找到了voodooHDA.kext(万能的)居然可
以用
iii. 一睡不醒:加上一个kext即可里面还有一个电池显示的
iv. USB问题:usb3.0有驱动,usb2.0可以识别键盘,但是U盘没办法,一起努力吧。
还有一些小烦恼:鼠标滚轮方向,指针移动速度,耳塞问题
i. 滚轮方向:在鼠标设置里面第一行,那个钩去掉吧
ii. 指针:打开一个命令行窗口(别问我在哪里,我会打人的)
$ sudo defaults write -g com.apple.mouse.scaling -1 (这是数字1,你有三个选择-1,0,1)
iii. 听哥的时候,想用耳塞的时候,插上去居然还是喇叭在响尴尬。在系统设置里面选择声
音,选择输出(output)选择(headphone)耳麦就可以了。只是,你每次都要手动切换,你这时
拔掉喇叭是不发声的。
5. 与国际接轨
此次,我经过努力终于得到了可爱的lion,我有很多话想说。
我想说:我要感谢远去的老乔,给我们带来如此美好的东西,感谢pcbeta(我不做广告,我真心)提供
一个如此专业的交流平台,感谢这里的、google.com的前辈们给予如此丰富的资源(虽然有些要花好几
个PB或者别的什么币 )感谢你们,通通真诚地感谢你们,你们让我的lion成为可能。最后我想
说:DAOBAN在这是一种对美的追求!
差点忘记了:最最感激的是VMware公司(虽然我没有合法地支持他,呵呵)。他们的虚拟机可以
挂载物理分区的功能实在太NB了,此次战役中起着决定性的作用。让我终于可以不后悔笔记本没有配那该
死的光驱,再也不要受苦于那蛋疼的dell BIOS,永远不再重演那场万恶的悲剧了:
Still waiting for root device...
Still waiting for root device...
展开阅读全文​