黑苹果日记六
程序员文章站
2024-01-17 19:38:28
...
打算把MAC OS X和Win7装到同一块硬盘的不同分区,所以要研究一下变色龙的引导程序。
目前变色龙原版最新只更新到V2.4_R2877版本,后面的版本是它的分支Enoch_V2.4_R2921。
MBR引导时,一般是用grldr来装载wowpc.iso来进入变色龙程序。
wowpc.iso是一个可引导的光盘镜像,而且是一个Hybrid/ISO混合模式的镜像,用UltroISO不能原样保存。
打开wowpc.iso里面也没有几个文件,试着解压出来,用grldr直接引导里面的boot文件,似乎也可以。
不过没有GUI界面了,变成了BIOS默认的文本显示方式。
这个boot程序会自动扫描HFS格式的磁盘,然后列表显示出来让你选择要从哪个磁盘启动。
如果没猜错的话,那应该可以用GRUB4DOS来做双系统引导了。
附上GRUB4DOS的引导命令:
#引导Windows
chainloader /Bootmgr
boot
#引导变色龙的wowpc.iso
map /wowpc.iso (hd32)
map --hook
chainloader (hd32)
boot
#引导变色龙的boot
#注意这个boot文件与windows系统的boot目录重名了,最好改为其它文件名。
kernel /boot
boot
另外,在黑白界面的变色龙程序里找到了内置的帮助文档,发现它的配置参数还是不少。
管它用得上用不上,先复制出来做个记录保存一下:
The boot: prompt waits for you to type advanced startup options.
If you don't type anything, the computer continues starting up normally. It
uses the kernel and configuration files on the startup device, which it also
uses as the root device.
Advanced startup options use the following syntax:
[device]<kernel> [arguments]
Example arguments include
device: rd=<BSD device name> (e.g. rd=disk0s2)
rd=*<IODeviceTree path> (e.g. rd=*/[email protected]/[email protected]/@0:1)
kernel: kernel name (e.g. "mach_kernel" - must be in "/" )
flags: -v (verbose), -s (single user mode),
-x (safe mode), -f (ignore caches),
-F (ignore "Kernel Flags" specified in boot configuration file)
"Graphics Mode"="WIDTHxHEIGHTxDEPTH" (e.g. "1024x768x32")
kernel flags (e.g. debug=0x144)
io=0xffffffff (defined in IOKit/IOKitDebug.h)
Example: mach_kernel rd=disk0s1 -v "Graphics Mode"="1920x1200x32"
If the computer won't start up properly, you may be able to start it up using
safe mode. Type -x to start up in safe mode, which ignores all cached
driver files.
Special booter hotkeys:
-----------------------
F5 Rescans optical drive.
F10 Scans and displays all BIOS accessible drives.
Special booter commands:
------------------------
?memory Displays information about the computer's memory.
?video Displays VESA video modes supported by the computer's BIOS.
?norescan Leaves optical drive rescan mode.
Additional useful command-line options:
---------------------------------------
config=<file> Use an alternate Boot.plist file.
Options useful in the org.chameleon.Boot.plist file:
----------------------------------------------------
Wait=Yes|No Prompt for a key press before starting the kernel.
"Quiet Boot"=Yes|No Use quiet boot mode (no messages or prompt).
Timeout=8 Number of seconds to pause at the boot: prompt.
"Instant Menu"=Yes Force displaying the partition selection menu.
"Default Partition" Sets the default boot partition,
=hd(x,y)|UUID|"Label" Specified as a disk/partition pair, an UUID, or a
label enclosed in quotes.
"Hide Partition" Remove unwanted partition(s) from the boot menu.
=partition Specified, possibly multiple times, as hd(x,y), an
[;partition2 ...] UUID or label enclosed in quotes.
"Rename Partition" Rename partition(s) for the boot menu.
=partition <alias> Where partition is hd(x,y), UUID or label enclosed
[;partition2 <alias2> in quotes. The alias can optionally be quoted too.
...]
GUI=No Disable the GUI (enabled by default).
"Boot Banner"=Yes|No Show boot banner in GUI mode (disabled by default).
ShowInfo=No Disables display of partition and resolution details.
"Boot Banner"=No will also disable this info.
"Legacy Logo"=Yes|No Use the legacy grey apple logo (enabled by default).
RebootOnPanic=Yes|No (disabled by default).
EnableHiDPI=Yes|No Enable High resolution display (disabled by default).
BlackMode=Yes|No The new BlackMode loads the white Apple logo,
instead of the gray Apple logo, on a black background (disabled by default).
CsrActiveConfig=<value> Set CsrActiveConfig for OS 10.11.x, range 0..255 (default 0x67)
P*ot=<value> Use an alternate value for P*ot (default value 0).
UseKernelCache=Yes|No Yes will load pre-linked kernel and will ignore /E/E
and /S/L/E/Extensions.mkext.
Default is No but Yes if you use Lion on a Raid partition.
KeyLayout=keymap Use to change the keyboard mapping of the bootloader
(e.g. KeyLayout=mac-fr)
HDAEnabler=Yes|No Automatic device-properties generation for audio controllers.
HDEFLayoutID=<value> Inject alternate value of layout-id for HDEF (HEX).
HDAULayoutID=<value> Inject alternate value of layout-id for HDAU (HEX).
GraphicsEnabler=Yes|No Automatic device-properties generation for graphics cards.
SkipIntelGfx=Yes|No Skip the Automatic device-properties generation for Intel cards.
SkipNvidiaGfx=Yes|No Skip the Automatic device-properties generation for Nvidia cards.
SkipAtiGfx=Yes|No Skip the Automatic device-properties generation for Ati cards.
NvidiaGeneric=Yes|No Use the classic Nvidia name for the SystemProfiler (disabled by default).
NvidiaSingle=Yes|No If you have two cards Nvidia and wants to inject only
first one then you can set this parameter (enbaled by default).
NvidiaNoEFI=Yes|No Inject NVDA,noEFI value as true
AtiConfig=<cardcfg> Use a different card config, e.g. AtiConfig=Megalodon.
AtiPorts=<value> Specify the number of ports, e.g. AtiPorts=2.
UseAtiROM=Yes|No Use an alternate Ati ROM image
(default path: /Extra/<vendorid>_<devid>_<subsysid>.rom)
UseNvidiaROM=Yes|No Use an alternate Nvidia ROM image
(default path: /Extra/<vendorid>_<devid>.rom)
VBIOS=Yes|No Inject VBIOS to device-properties.
display_0=<value> Inject alternate value of display-cfg into NVDA,[email protected] (HEX).
display_1=<value> Inject alternate value of display-cfg into NVDA,[email protected] (HEX).
IntelCapriFB=<value> For Intel Ivy Bridge, range 0-11.
IntelAzulFB=<value> For Intel Haswell, range 0-16.
IntelBdwFB=<value> For Intel Broadwell, range 0-19.
IntelSklFB=<value> For Intel Skylake, range 0-12.
InjectIntel-ig=<value> Inject alternate value into AAPL,ig-platform-id (HEX).
EnableBacklight=Yes Enable Back light option for NVIDIA and ATI
EnableDualLink=Yes Enable DualLink option for NVIDIA and ATI
EnableHDMIAudio=Yes Inject HDMI audio for NVIDIA and ATI.
EthernetBuiltIn=Yes|No Automatic "built-in"=YES device-properties generation
for ethernet interfaces.
ForceHPET=Yes|No Force HPET on (disabled by default).
USBBusFix=Yes Enable the XHCI, EHCI and UHCI fixes (disabled by default).
EHCIacquire=Yes Enable the EHCI fix (disabled by default).
UHCIreset=Yes Enable the UHCI fix (disabled by default).
USBLegacyOff=Yes Force USB Legacy off for XHCI and EHCI (disabled by default).
XHCILegacyOff=Yes Force USB Legacy off for XHCI (disabled by default).
Wake=No Disable wake up after hibernation (enbaled by default).
ForceWake=Yes Force using the sleepimage (disabled by default).
WakeImage=<file> Use an alternate sleepimage file
(default path is /private/var/vm/sleepimage).
DropSSDT=Yes Skip the SSDT tables while relocating the ACPI tables.
Drop<file>=Yes Skip:[HPET, SLIC, SBST, ECDT, ASF! or DMAR]
DSDT=<file> Use an alternate DSDT.aml file
(default path: /DSDT.aml
/Extra/DSDT.aml bt(0,0)/Extra/DSDT.aml).
HPET=<file> Use an alternate HPET.aml file
(default path: /HPET.aml
/Extra/HPET.aml bt(0,0)/Extra/HPET.aml).
SBST=<file> Use an alternate SBST.aml file
(default path: /SBST.aml
/Extra/SBST.aml bt(0,0)/Extra/SBST.aml).
ECDT=<file> Use an alternate ECDT.aml file
(default path: /ECDT.aml
/Extra/ECDT.aml bt(0,0)/Extra/ECDT.aml).
ASFT=<file> Use an alternate ASFT.aml file
(default path: /ASFT.aml
/Extra/ASFT.aml bt(0,0)/Extra/ASFT.aml).
DMAR=<file> Use an alternate DMAR.aml file
(default path: /DMAR.aml
/Extra/DMAR.aml bt(0,0)/Extra/DMAR.aml).
APIC=<file> Use an alternate APIC.aml file
(default path: /APIC.aml
/Extra/APIC.aml bt(0,0)/Extra/APIC.aml).
MCFG=<file> Use an alternate MCFG.aml file
(default path: /MCFG.aml
/Extra/MCFG.aml bt(0,0)/Extra/MCFG.aml).
FADT=<file> Use an alternate FADT.aml file
(default path: /FADT.aml
/Extra/FADT.aml bt(0,0)/Extra/FADT.aml).
GenerateCStates=Yes Enable auto generation of processor idle sleep states
(C-States).
GeneratePStates=Yes Enable auto generation of processor power performance
states (P-States).
CSTUsingSystemIO=Yes New C-State _CST generation method using SystemIO
registers instead of FixedHW.
EnableC2State=Yes Enable specific Processor power state, C2.
EnableC3State=Yes Enable specific Processor power state, C3.
EnableC4State=Yes Enable specific Processor power state, C4.
EnableC6State=Yes Enable specific Processor power state, C6.
EnableC7State=Yes Enable specific Processor power state, C7.
PrivateData=No Show masked data (serial number) in bdmesg log (enbaled by default).
ForceFullMemInfo=Yes Force SMBIOS Table 17 to be 27 bytes long (disabled by default).
SMBIOS=<file> Use an alternate SMBIOS.plist file
(default path: /smbios.plist /Extra/smbios.plist
bt(0,0)/Extra/smbios.plist).
SMBIOSdefaults=No Don't use the Default values for SMBIOS overriding
if smbios.plist doesn't exist, factory
values are kept.
KERNELPlist=<file> Use an alternate kernel.plist file
(default path: /Extra/Kernel.plist
bt(0,0)/Extra/kernel.plist).
KEXTPlist=<file> Use an alternate kext.plist file
(default path: /Extra/Kext.plist
bt(0,0)/Extra/kext.plist).
"Scan Single Drive" Scan the drive only where the booter got loaded from.
=Yes|No Fix rescan issues when using a DVD reader in AHCI mode.
Rescan=Yes Enable CD-ROM rescan mode.
"Rescan Prompt"=Yes Prompts for enable CD-ROM rescan mode.
SystemId=<UUID> Set the system id manually to UUID.
Deprecated - Now SMsystemuuid in smbios.plist
SMUUID in smbios config (reserved field) isn't used then.
SystemType=<n> Set the system type to n, where n is between 0..6
(default=1 Desktop)
md0=<file> Load raw img file into memory for use as XNU's md0
ramdisk. /Extra/Postboot.img is used otherwise.
上一篇: php 操作mysql 分表的一种方法
下一篇: Mac OS X下Maven的安装与配置