… | |
… | |
481 | |
481 | |
482 | vmbus=c376c1c3-d276-48d2-90a9-c04748072c60,12345678-a234-b234-c234-d2345678abcd |
482 | vmbus=c376c1c3-d276-48d2-90a9-c04748072c60,12345678-a234-b234-c234-d2345678abcd |
483 | |
483 | |
484 | =item C<partition=><I<parent>>,I<devicetype>,I<partitiontype>,I<diskid>,I<partitionid> |
484 | =item C<partition=><I<parent>>,I<devicetype>,I<partitiontype>,I<diskid>,I<partitionid> |
485 | |
485 | |
486 | This designates a specific partition on a block device. C<< <parent> |
486 | This designates a specific partition on a block device. I<parent> is an |
487 | >> is an optional parent device on which to search on, and is often |
487 | optional parent device on which to search on, and is often C<null>. Note |
488 | C<null>. Note that the angle brackets are part of the syntax. |
488 | that the angle brackets around I<parent> are part of the syntax. |
489 | |
489 | |
490 | I<devicetypes> is one of C<harddisk>, C<floppy>, C<cdrom>, C<ramdisk>, |
490 | I<devicetypes> is one of C<harddisk>, C<floppy>, C<cdrom>, C<ramdisk>, |
491 | C<file> or C<vhd>, where the first three should be self-explaining, |
491 | C<file> or C<vhd>, where the first three should be self-explaining, |
492 | C<file> is usually used to locate a device by finding a magic file, and |
492 | C<file> is usually used to locate a device by finding a magic file, and |
493 | C<vhd> is used for virtual harddisks - F<.vhd> and F<.vhdx> files. |
493 | C<vhd> is used for virtual harddisks - F<.vhd> and F<.vhdx> files. |
… | |
… | |
508 | MBR, interpreted as a 32 bit unsigned little endian integer and written as |
508 | MBR, interpreted as a 32 bit unsigned little endian integer and written as |
509 | hex number. That is, the bytes C<01 02 03 04> would become C<04030201>. |
509 | hex number. That is, the bytes C<01 02 03 04> would become C<04030201>. |
510 | |
510 | |
511 | Diskpart (using the C<DETAIL> command) and the C<lsblk> command typically |
511 | Diskpart (using the C<DETAIL> command) and the C<lsblk> command typically |
512 | found on GNU/Linux systems (using e.g. C<lsblk -o NAME,PARTUUID>) can |
512 | found on GNU/Linux systems (using e.g. C<lsblk -o NAME,PARTUUID>) can |
513 | display the C<diskid>. |
513 | display the I<diskid>. |
514 | |
514 | |
515 | The C<partitionid> is the byte offset(!) of the partition counting from |
515 | The I<partitionid> is the byte offset(!) of the partition counting from |
516 | the beginning of the MBR. |
516 | the beginning of the MBR. |
517 | |
517 | |
518 | Example, use the partition on the harddisk with C<diskid> C<47cbc08a> |
518 | Example, use the partition on the harddisk with I<diskid> C<47cbc08a> |
519 | starting at sector C<2048> (= 1048576 / 512). |
519 | starting at sector C<2048> (= 1048576 / 512). |
520 | |
520 | |
521 | partition=<null>,harddisk,mbr,47cbc08a,1048576 |
521 | partition=<null>,harddisk,mbr,47cbc08a,1048576 |
522 | |
522 | |
523 | =item C<gpt> |
523 | =item C<gpt> |
524 | |
524 | |
525 | The C<diskid> is the disk GUID/disk identifier GUID from the partition |
525 | The I<diskid> is the disk GUID/disk identifier GUID from the partition |
526 | table (as displayed e.g. by C<gdisk>), and the C<partitionid> is the |
526 | table (as displayed e.g. by F<gdisk>), and the I<partitionid> is the |
527 | partition unique GUID (displayed using e.g. the C<gdisk> C<i> command). |
527 | partition unique GUID (displayed using e.g. the F<gdisk> F<i> command). |
528 | |
528 | |
529 | Example: use the partition C<76d39e5f-ad1b-407e-9c05-c81eb83b57dd> on GPT |
529 | Example: use the partition C<76d39e5f-ad1b-407e-9c05-c81eb83b57dd> on GPT |
530 | disk C<9742e468-9206-48a0-b4e4-c4e9745a356a>. |
530 | disk C<9742e468-9206-48a0-b4e4-c4e9745a356a>. |
531 | |
531 | |
532 | partition=<null>,harddisk,gpt,9742e468-9206-48a0-b4e4-c4e9745a356a,76d39e5f-ad1b-407e-9c05-c81eb83b57dd |
532 | partition=<null>,harddisk,gpt,9742e468-9206-48a0-b4e4-c4e9745a356a,76d39e5f-ad1b-407e-9c05-c81eb83b57dd |
533 | |
533 | |
534 | =item C<raw> |
534 | =item C<raw> |
535 | |
535 | |
536 | Instead of C<diskid> and C<partitionid>, this type only accepts a decimal |
536 | Instead of I<diskid> and I<partitionid>, this type only accepts a decimal |
537 | disk number and signifies the whole disk. BCDEDIT cannot display the |
537 | disk number and signifies the whole disk. BCDEDIT cannot display the |
538 | resulting device, and I am doubtful whether it has a useful effect. |
538 | resulting device, and I am doubtful whether it has a useful effect. |
539 | |
539 | |
540 | =back |
540 | =back |
541 | |
541 | |
… | |
… | |
555 | =item C<locate=><I<parent>>,I<locatetype>,I<locatearg> |
555 | =item C<locate=><I<parent>>,I<locatetype>,I<locatearg> |
556 | |
556 | |
557 | This device description will make the bootloader search for a partition |
557 | This device description will make the bootloader search for a partition |
558 | with a given path. |
558 | with a given path. |
559 | |
559 | |
560 | The C<< <parent> >> device is the device to search on (angle brackets are |
560 | The I<parent> device is the device to search on (angle brackets are |
561 | still part of the syntax!) If it is C<< <null> >>, then C<locate> will |
561 | still part of the syntax!) If it is C<null>, then C<locate> will |
562 | search all disks it can find. |
562 | search all disks it can find. |
563 | |
563 | |
564 | C<locatetype> is either C<element> or C<path>, and merely distinguishes |
564 | I<locatetype> is either C<element> or C<path>, and merely distinguishes |
565 | between two different ways to specify the path to search for: C<element> |
565 | between two different ways to specify the path to search for: C<element> |
566 | uses an element ID (either as hex or as name) as C<locatearg> and C<path> |
566 | uses an element ID (either as hex or as name) as I<locatearg> and C<path> |
567 | uses a relative path as C<locatearg>. |
567 | uses a relative path as I<locatearg>. |
568 | |
568 | |
569 | Example: find any partition which has the C<magicfile.xxx> path in the |
569 | Example: find any partition which has the F<magicfile.xxx> path in the |
570 | root. |
570 | root. |
571 | |
571 | |
572 | locate=<null>,path,\magicfile.xxx |
572 | locate=<null>,path,\magicfile.xxx |
573 | |
573 | |
574 | Example: find any partition which has the path specified in the |
574 | Example: find any partition which has the path specified in the |
575 | C<systemroot> element (typically C<\Windows>). |
575 | C<systemroot> element (typically F<\Windows>). |
576 | |
576 | |
577 | locate=<null>,element,systemroot |
577 | locate=<null>,element,systemroot |
578 | |
578 | |
579 | =item C<block=>I<devicetype>,I<args...> |
579 | =item C<block=>I<devicetype>,I<args...> |
580 | |
580 | |
581 | Last not least, the most complex type, C<block>, which... specifies block |
581 | Last not least, the most complex type, C<block>, which... specifies block |
582 | devices (which could be inside a F<vhdx> file for example). |
582 | devices (which could be inside a F<vhdx> file for example). |
583 | |
583 | |
584 | C<devicetypes> is one of C<harddisk>, C<floppy>, C<cdrom>, C<ramdisk>, |
584 | I<devicetypes> is one of C<harddisk>, C<floppy>, C<cdrom>, C<ramdisk>, |
585 | C<file> or C<vhd> - the same as for C<partiion=>. |
585 | C<file> or C<vhd> - the same as for C<partiion=>. |
586 | |
586 | |
587 | The remaining arguments change depending on the C<devicetype>: |
587 | The remaining arguments change depending on the I<devicetype>: |
588 | |
588 | |
589 | =over |
589 | =over |
590 | |
590 | |
591 | =item C<block=file>,<I<parent>>,I<path> |
591 | =item C<block=file>,<I<parent>>,I<path> |
592 | |
592 | |
593 | Interprets the C<< <parent> >> device (typically a partition) as a |
593 | Interprets the I<parent> device (typically a partition) as a |
594 | filesystem and specifies a file path inside. |
594 | filesystem and specifies a file path inside. |
595 | |
595 | |
596 | =item C<block=vhd>,<I<parent>> |
596 | =item C<block=vhd>,<I<parent>> |
597 | |
597 | |
598 | Pretty much just changes the interpretation of C<< <parent> >>, which is |
598 | Pretty much just changes the interpretation of I<parent>, which is |
599 | usually a disk image (C<block=file,...)>) to be a F<vhd> or F<vhdx> file. |
599 | usually a disk image (C<block=file,...)>) to be a F<vhd> or F<vhdx> file. |
600 | |
600 | |
601 | =item C<block=ramdisk>,<I<parent>>,I<base>,I<size>,I<offset>,I<path> |
601 | =item C<block=ramdisk>,<I<parent>>,I<base>,I<size>,I<offset>,I<path> |
602 | |
602 | |
603 | Interprets the C<< <parent> >> device as RAM disk, using the (decimal) |
603 | Interprets the I<parent> device as RAM disk, using the (decimal) |
604 | base address, byte size and byte offset inside a file specified by |
604 | base address, byte size and byte offset inside a file specified by |
605 | C<path>. The numbers are usually all C<0> because they can be extracted |
605 | I<path>. The numbers are usually all C<0> because they can be extracted |
606 | from the RAM disk image or other parameters. |
606 | from the RAM disk image or other parameters. |
607 | |
607 | |
608 | This is most commonly used to boot C<wim> images. |
608 | This is most commonly used to boot C<wim> images. |
609 | |
609 | |
610 | =item C<block=floppy>,I<drivenum> |
610 | =item C<block=floppy>,I<drivenum> |