123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234 |
- .. SPDX-License-Identifier: CC-BY-SA-2.0-UK
- *******************************************
- OpenEmbedded Kickstart (``.wks``) Reference
- *******************************************
- .. _openembedded-kickstart-wks-reference:
- Introduction
- ============
- The current Wic implementation supports only the basic kickstart
- partitioning commands: ``partition`` (or ``part`` for short) and
- ``bootloader``.
- .. note::
- Future updates will implement more commands and options. If you use
- anything that is not specifically supported, results can be
- unpredictable.
- This chapter provides a reference on the available kickstart commands.
- The information lists the commands, their syntax, and meanings.
- Kickstart commands are based on the Fedora kickstart versions but with
- modifications to reflect Wic capabilities. You can see the original
- documentation for those commands at the following link:
- https://pykickstart.readthedocs.io/en/latest/kickstart-docs.html
- Command: part or partition
- ==========================
- Either of these commands creates a partition on the system and uses the
- following syntax::
- part [mntpoint]
- partition [mntpoint]
- If you do not
- provide mntpoint, Wic creates a partition but does not mount it.
- The ``mntpoint`` is where the partition is mounted and must be in one of
- the following forms:
- - ``/path``: For example, "/", "/usr", or "/home"
- - ``swap``: The created partition is used as swap space
- Specifying a mntpoint causes the partition to automatically be mounted.
- Wic achieves this by adding entries to the filesystem table (fstab)
- during image generation. In order for Wic to generate a valid fstab, you
- must also provide one of the ``--ondrive``, ``--ondisk``, or
- ``--use-uuid`` partition options as part of the command.
- .. note::
- The mount program must understand the PARTUUID syntax you use with
- ``--use-uuid`` and non-root *mountpoint*, including swap. The default
- configuration of BusyBox in OpenEmbedded supports this, but this may
- be disabled in custom configurations.
- Here is an example that uses "/" as the mountpoint. The command uses
- ``--ondisk`` to force the partition onto the ``sdb`` disk::
- part / --source rootfs --ondisk sdb --fstype=ext3 --label platform --align 1024
- Here is a list that describes other supported options you can use with
- the ``part`` and ``partition`` commands:
- - ``--size``: The minimum partition size. Specify as an integer value
- optionally followed by one of the units "k" / "K" for kibibyte,
- "M" for mebibyte and "G" for gibibyte. The default unit if none is
- given is "M". You do not need this option if you use ``--source``.
- - ``--fixed-size``: The exact partition size. Specify as an integer
- value optionally followed by one of the units "k" / "K" for kibibyte,
- "M" for mebibyte and "G" for gibibyte. The default unit if none is
- given is "M". Cannot be specify together with ``--size``. An error
- occurs when assembling the disk image if the partition data is larger
- than ``--fixed-size``.
- - ``--source``: This option is a Wic-specific option that names the
- source of the data that populates the partition. The most common
- value for this option is "rootfs", but you can use any value that
- maps to a valid source plugin. For information on the source plugins,
- see the ":ref:`dev-manual/wic:using the wic plugin interface`"
- section in the Yocto Project Development Tasks Manual.
- If you use ``--source rootfs``, Wic creates a partition as large as
- needed and fills it with the contents of the root filesystem pointed
- to by the ``-r`` command-line option or the equivalent root filesystem derived
- from the ``-e`` command-line option. The filesystem type used to
- create the partition is driven by the value of the ``--fstype``
- option specified for the partition. See the entry on ``--fstype``
- that follows for more information.
- If you use ``--source plugin-name``, Wic creates a partition as large
- as needed and fills it with the contents of the partition that is
- generated by the specified plugin name using the data pointed to by
- the ``-r`` command-line option or the equivalent root filesystem derived from
- the ``-e`` command-line option. Exactly what those contents are and
- filesystem type used are dependent on the given plugin
- implementation.
- If you do not use the ``--source`` option, the ``wic`` command
- creates an empty partition. Consequently, you must use the ``--size``
- option to specify the size of the empty partition.
- - ``--ondisk`` or ``--ondrive``: Forces the partition to be created
- on a particular disk.
- - ``--fstype``: Sets the file system type for the partition. Valid
- values are:
- - ``btrfs``
- - ``erofs``
- - ``ext2``
- - ``ext3``
- - ``ext4``
- - ``squashfs``
- - ``swap``
- - ``vfat``
- - ``--fsoptions``: Specifies a free-form string of options to be used
- when mounting the filesystem. This string is copied into the
- ``/etc/fstab`` file of the installed system and should be enclosed in
- quotes. If not specified, the default string is "defaults".
- - ``--label label``: Specifies the label to give to the filesystem to
- be made on the partition. If the given label is already in use by
- another filesystem, a new label is created for the partition.
- - ``--active``: Marks the partition as active.
- - ``--align (in KBytes)``: This option is a Wic-specific option that
- says to start partitions on boundaries given x KBytes.
- - ``--offset``: This option is a Wic-specific option that
- says to place a partition at exactly the specified offset. If the
- partition cannot be placed at the specified offset, the image build
- will fail. Specify as an integer value optionally followed by one of
- the units "s" / "S" for 512 byte sector, "k" / "K" for kibibyte, "M"
- for mebibyte and "G" for gibibyte. The default unit if none is given
- is "k".
- - ``--no-table``: This option is a Wic-specific option. Using the
- option reserves space for the partition and causes it to become
- populated. However, the partition is not added to the partition
- table.
- - ``--exclude-path``: This option is a Wic-specific option that
- excludes the given relative path from the resulting image. This
- option is only effective with the rootfs source plugin.
- - ``--extra-space``: This option is a Wic-specific option that adds
- extra space after the space filled by the content of the partition.
- The final size can exceed the size specified by the ``--size``
- option. The default value is 10M. Specify as an integer value
- optionally followed by one of the units "k" / "K" for kibibyte, "M"
- for mebibyte and "G" for gibibyte. The default unit if none is given
- is "M".
- - ``--overhead-factor``: This option is a Wic-specific option that
- multiplies the size of the partition by the option's value. You must
- supply a value greater than or equal to "1". The default value is
- "1.3".
- - ``--part-name``: This option is a Wic-specific option that
- specifies a name for GPT partitions.
- - ``--part-type``: This option is a Wic-specific option that
- specifies the partition type globally unique identifier (GUID) for
- GPT partitions. You can find the list of partition type GUIDs at
- :wikipedia:`GUID_Partition_Table#Partition_type_GUIDs`.
- - ``--use-uuid``: This option is a Wic-specific option that causes
- Wic to generate a random GUID for the partition. The generated
- identifier is used in the bootloader configuration to specify the
- root partition.
- - ``--uuid``: This option is a Wic-specific option that specifies the
- partition UUID.
- - ``--fsuuid``: This option is a Wic-specific option that specifies
- the filesystem UUID. You can generate or modify
- :term:`WKS_FILE` with this option if a preconfigured
- filesystem UUID is added to the kernel command line in the bootloader
- configuration before you run Wic.
- - ``--system-id``: This option is a Wic-specific option that
- specifies the partition system ID, which is a one byte long,
- hexadecimal parameter with or without the 0x prefix.
- - ``--mkfs-extraopts``: This option specifies additional options to
- pass to the ``mkfs`` utility. Some default options for certain
- filesystems do not take effect. See Wic's help on kickstart (i.e.
- ``wic help kickstart``).
- Command: bootloader
- ===================
- This command specifies how the bootloader should be configured and
- supports the following options:
- .. note::
- Bootloader functionality and boot partitions are implemented by the
- various source plugins that implement bootloader functionality. The bootloader
- command essentially provides a means of modifying bootloader
- configuration.
- - ``--append``: Specifies kernel parameters. These parameters will be
- added to the syslinux :term:`APPEND` or ``grub`` kernel command line.
- - ``--configfile``: Specifies a user-defined configuration file for
- the bootloader. You can provide a full pathname for the file or a
- file located in the ``canned-wks`` folder. This option overrides
- all other bootloader options.
- - ``--ptable``: Specifies the partition table format. Valid values are:
- - ``msdos``
- - ``gpt``
- - ``--timeout``: Specifies the number of seconds before the
- bootloader times out and boots the default option.
|