dev-manual: Updated to the "Creating Partitioned Images" section

new information on how wic works

(From yocto-docs rev: 7b6a54a593a678442541b1fa6847498a792183c7)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Scott Rifenbark 2016-12-12 17:04:46 -08:00 committed by Richard Purdie
parent 617b5bd4f3
commit 27751642cd
1 changed files with 908 additions and 810 deletions

View File

@ -3984,7 +3984,7 @@
</para></listitem>
</itemizedlist>
</para>
'
<para>
For the RPM Package Management System, the following implementation details
exist:
@ -4365,40 +4365,85 @@
format the device requires.
Should your device require multiple partitions on an SD card, flash,
or an HDD, you can use the OpenEmbedded Image Creator,
<filename>wic</filename>, to create the properly partitioned image.
Wic, to create the properly partitioned image.
</para>
<para>
The <filename>wic</filename> command generates partitioned images
from existing OpenEmbedded build artifacts.
Image generation is driven by partitioning commands contained
in an Openembedded kickstart file (<filename>.wks</filename>)
specified either directly on the command line or as one of a
selection of canned <filename>.wks</filename> files as shown
with the <filename>wic list images</filename> command in the
"<link linkend='using-a-provided-kickstart_file'>Using an Existing Kickstart File</link>"
You can generate Wic-partitioned images
(<replaceable>image</replaceable><filename>.wic</filename>)
two ways: using the OpenEmbedded build system and by running
the OpenEmbedded Image Creator Wic directly.
The former way is preferable as it is easier to use and understand.
</para>
<section id='creating-wic-images-oe'>
<title>Creating Wic-Partitioned Images</title>
<para>
The OpenEmbedded build system can generate
Wic-partitioned images the same way as it generates
any other image type.
To generate a Wic-partitioned image, you need to modify
two variables.
<itemizedlist>
<listitem><para>
Include "wic" as part of the
<ulink url='&YOCTO_DOCS_REF_URL;#var-IMAGE_FSTYPES'><filename>IMAGE_FSTYPES</filename></ulink>
variable.
</para></listitem>
<listitem><para>
Include the name of the
<link linkend='openembedded-kickstart-wks-reference'>wic kickstart file</link>
as part of the
<ulink url='&YOCTO_DOCS_REF_URL;#var-WKS_FILE'><filename>WKS_FILE</filename></ulink>
variable
</para></listitem>
</itemizedlist>
Further steps to generate a Wic-partitioned image
are the same as for any other image type.
For information on image types, see the
"<link linkend='building-images'>Building Images</link>"
section.
When applied to a given set of build artifacts, the result is an
image or set of images that can be directly written onto media and
used on a particular system.
</para>
</section>
<section id='create-wic-images-wic'>
<title>Using OpenEmbedded Image Creator Wic to Generate Partitioned Images</title>
<para>
The <filename>wic</filename> command generates partitioned
images from existing OpenEmbedded build artifacts.
Image generation is driven by partitioning commands
contained in an Openembedded kickstart file
(<filename>.wks</filename>) specified either directly on
the command line or as one of a selection of canned
<filename>.wks</filename> files as shown with the
<filename>wic list images</filename> command in the
"<link linkend='using-a-provided-kickstart-file'>Using an Existing Kickstart File</link>"
section.
When you apply the command to a given set of build
artifacts, the result is an image or set of images that
can be directly written onto media and used on a particular
system.
</para>
<para>
The <filename>wic</filename> command and the infrastructure
it is based on is by definition incomplete.
Its purpose is to allow the generation of customized images,
and as such was designed to be completely extensible through a
plug-in interface.
The purpose of the command is to allow the generation of
customized images, and as such, was designed to be
completely extensible through a plug-in interface.
See the
"<link linkend='openembedded-kickstart-plugins'>Plug-ins</link>"
section for information on these plug-ins.
</para>
<para>
This section provides some background information on
<filename>wic</filename>, describes what you need to have in
This section provides some background information on Wic,
describes what you need to have in
place to run the tool, provides instruction on how to use
<filename>wic</filename>, and provides several examples.
the <filename>wic</filename> utility,
and provides several examples.
</para>
<section id='wic-background'>
@ -4408,33 +4453,35 @@
This section provides some background on the
<filename>wic</filename> utility.
While none of this information is required to use
<filename>wic</filename>, you might find it interesting.
Wic, you might find it interesting.
<itemizedlist>
<listitem><para>
The name "wic" is derived from OpenEmbedded
The name "Wic" is derived from OpenEmbedded
Image Creator (oeic).
The "oe" diphthong in "oeic" was promoted to the
letter "w", because "oeic" is both difficult to remember and
pronounce.</para></listitem>
letter "w", because "oeic" is both difficult to
remember and to pronounce.
</para></listitem>
<listitem><para>
<filename>wic</filename> is loosely based on the
Wic is loosely based on the
Meego Image Creator (<filename>mic</filename>)
framework.
The <filename>wic</filename> implementation has been
The Wic implementation has been
heavily modified to make direct use of OpenEmbedded
build artifacts instead of package installation and
configuration, which are already incorporated within
the OpenEmbedded artifacts.</para></listitem>
the OpenEmbedded artifacts.
</para></listitem>
<listitem><para>
<filename>wic</filename> is a completely independent
Wic is a completely independent
standalone utility that initially provides
easier-to-use and more flexible replacements for a
couple bits of existing functionality in OE Core's
existing functionality in OE Core's
<ulink url='&YOCTO_DOCS_REF_URL;#ref-classes-image-live'><filename>image-live</filename></ulink>
class and <filename>mkefidisk.sh</filename> script.
The difference between
<filename>wic</filename> and those examples is
that with <filename>wic</filename> the
Wic and those examples is
that with Wic the
functionality of those scripts is implemented
by a general-purpose partitioning language, which is
based on Redhat kickstart syntax.</para></listitem>
@ -4454,8 +4501,10 @@
development host must support the Yocto Project.
See the
"<ulink url='&YOCTO_DOCS_REF_URL;#detailed-supported-distros'>Supported Linux Distributions</ulink>"
section in the Yocto Project Reference Manual for this
list of distributions.</para></listitem>
section in the Yocto Project Reference Manual for
the list of distributions that support the
Yocto Project.
</para></listitem>
<listitem><para>
The standard system utilities, such as
<filename>cp</filename>, must be installed on your
@ -4467,10 +4516,10 @@
have already created an image using the
Openembedded build system (e.g.
<filename>core-image-minimal</filename>).
While it might seem redundant to generate an image in
order to create an image using
<filename>wic</filename>, the current version of
<filename>wic</filename> requires the artifacts
While it might seem redundant to generate an image
in order to create an image using
Wic, the current version of
Wic requires the artifacts
in the form generated by the build system.
</para></listitem>
<listitem><para>
@ -4498,8 +4547,9 @@
<para>
You can get general help for the <filename>wic</filename>
by entering the <filename>wic</filename> command by itself
or by entering the command with a help argument as follows:
command by entering the <filename>wic</filename> command
by itself or by entering the command with a help argument
as follows:
<literallayout class='monospaced'>
$ wic -h
$ wic --help
@ -4507,11 +4557,13 @@
</para>
<para>
Currently, <filename>wic</filename> supports two commands:
Currently, Wic supports two commands:
<filename>create</filename> and <filename>list</filename>.
You can get help for these commands as follows:
<literallayout class='monospaced'>
$ wic help <replaceable>command</replaceable>
with <replaceable>command</replaceable> being either
<filename>create</filename> or <filename>list</filename>.
</literallayout>
</para>
@ -4531,13 +4583,13 @@
<para>
You can find out more about the images
<filename>wic</filename> creates using the existing
Wic creates using the existing
kickstart files with the following form of the command:
<literallayout class='monospaced'>
$ wic list <replaceable>image</replaceable> help
</literallayout>
where <filename><replaceable>image</replaceable></filename> is either
<filename>directdisk</filename> or
with <filename><replaceable>image</replaceable></filename>
being either <filename>directdisk</filename> or
<filename>mkefidisk</filename>.
</para>
</section>
@ -4546,19 +4598,23 @@
<title>Operational Modes</title>
<para>
You can use <filename>wic</filename> in two different
You can use Wic in two different
modes, depending on how much control you need for
specifying the Openembedded build artifacts that are
used for creating the image: Raw and Cooked:
<itemizedlist>
<listitem><para><emphasis>Raw Mode:</emphasis>
<listitem><para>
<emphasis>Raw Mode:</emphasis>
You explicitly specify build artifacts through
command-line arguments.</para></listitem>
<listitem><para><emphasis>Cooked Mode:</emphasis>
command-line arguments.
</para></listitem>
<listitem><para>
<emphasis>Cooked Mode:</emphasis>
The current
<ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE'><filename>MACHINE</filename></ulink>
setting and image name are used to automatically locate
and provide the build artifacts.</para></listitem>
setting and image name are used to automatically
locate and provide the build artifacts.
</para></listitem>
</itemizedlist>
</para>
@ -4577,7 +4633,8 @@
<title>Raw Mode</title>
<para>
The general form of the 'wic' command in raw mode is:
The general form of the
<filename>wic</filename> command in raw mode is:
<literallayout class='monospaced'>
$ wic create <replaceable>image_name</replaceable>.wks [<replaceable>options</replaceable>] [...]
@ -4624,7 +4681,7 @@
</literallayout>
<note>
You do not need root privileges to run
<filename>wic</filename>.
Wic.
In fact, you should not run as root when using the
utility.
</note>
@ -4644,7 +4701,7 @@
<replaceable>kickstart_file</replaceable>
An OpenEmbedded kickstart file. You can provide your own
custom file or supplied file.
custom file or a supplied file.
<replaceable>image_name</replaceable>
Specifies the image built using the OpenEmbedded build
@ -4659,13 +4716,13 @@
</section>
</section>
<section id='using-a-provided-kickstart_file'>
<section id='using-a-provided-kickstart-file'>
<title>Using an Existing Kickstart File</title>
<para>
If you do not want to create your own
<filename>.wks</filename> file, you can use an existing
file provided by the <filename>wic</filename> installation.
file provided by the Wic installation.
Use the following command to list the available files:
<literallayout class='monospaced'>
$ wic list images
@ -4684,8 +4741,8 @@
<para>
Here are the actual partition language commands
used in the <filename>mkefidisk.wks</filename> file to generate
an image:
used in the <filename>mkefidisk.wks</filename> file to
generate an image:
<literallayout class='monospaced'>
# short-description: Create an EFI disk image
# long-description: Creates a partitioned EFI disk image that the user
@ -4709,8 +4766,8 @@
This section provides several examples that show how to use
the <filename>wic</filename> utility.
All the examples assume the list of requirements in the
"<link linkend='wic-requirements'>Requirements</link>" section
have been met.
"<link linkend='wic-requirements'>Requirements</link>"
section have been met.
The examples assume the previously generated image is
<filename>core-image-minimal</filename>.
</para>
@ -4737,14 +4794,13 @@
KERNEL_DIR: /home/trz/yocto/yocto-image/build/tmp/sysroots/minnow/usr/src/kernel
NATIVE_SYSROOT: /home/trz/yocto/yocto-image/build/tmp/sysroots/x86_64-linux
The image(s) were created using OE kickstart file:
/home/trz/yocto/yocto-image/scripts/lib/image/canned-wks/mkefidisk.wks
</literallayout>
This example shows the easiest way to create an image
by running in Cooked Mode and using the
<filename>-e</filename> option with an existing kickstart
file.
The previous example shows the easiest way to create
an image by running in Cooked Mode and using the
<filename>-e</filename> option with an existing
kickstart file.
All that is necessary is to specify the image used to
generate the artifacts.
Your <filename>local.conf</filename> needs to have the
@ -4757,12 +4813,12 @@
The output specifies the exact image created as well as
where it was created.
The output also names the artifacts used and the exact
<filename>.wks</filename> script that was used to generate
the image.
<filename>.wks</filename> script that was used to
generate the image.
<note>
You should always verify the details provided in the
output to make sure that the image was indeed created
exactly as expected.
output to make sure that the image was indeed
created exactly as expected.
</note>
</para>
@ -4777,7 +4833,7 @@
182274+0 records in
182274+0 records out
93324288 bytes (93 MB) copied, 14.4777 s, 6.4 MB/s
[trz@empanada ~]$ sudo eject /dev/sdb
[trz at empanada ~]$ sudo eject /dev/sdb
</literallayout>
</para>
</section>
@ -4786,9 +4842,9 @@
<title>Using a Modified Kickstart File</title>
<para>
Because <filename>wic</filename> image creation is driven
by the kickstart file, it is easy to affect image creation
by changing the parameters in the file.
Because Wic-partitioned image creation is
driven by the kickstart file, it is easy to affect
image creation by changing the parameters in the file.
This next example demonstrates that through modification
of the <filename>directdisk</filename> kickstart file.
</para>
@ -4801,19 +4857,21 @@
<filename>scripts/lib/image/canned-wks/</filename>
located in the
<link linkend='source-directory'>Source Directory</link>.
Because the available files reside in this directory, you
can create and add your own custom files to the directory.
Subsequent use of the <filename>wic list images</filename>
command would then include your kickstart files.
Because the available files reside in this directory,
you can create and add your own custom files to the
directory.
Subsequent use of the
<filename>wic list images</filename> command would then
include your kickstart files.
</para>
<para>
In this example, the existing
<filename>directdisk</filename> file already does most
of what is needed.
However, for the hardware in this example, the image will
need to boot from <filename>sdb</filename> instead of
<filename>sda</filename>, which is what the
However, for the hardware in this example, the image
will need to boot from <filename>sdb</filename> instead
of <filename>sda</filename>, which is what the
<filename>directdisk</filename> kickstart file uses.
</para>
@ -4821,18 +4879,18 @@
The example begins by making a copy of the
<filename>directdisk.wks</filename> file in the
<filename>scripts/lib/image/canned-wks</filename>
directory and then changing the lines that specify the
target disk from which to boot.
directory and then by changing the lines that specify
the target disk from which to boot.
<literallayout class='monospaced'>
$ cp /home/trz/yocto/yocto-image/scripts/lib/image/canned-wks/directdisk.wks \
/home/trz/yocto/yocto-image/scripts/lib/image/canned-wks/directdisksdb.wks
</literallayout>
Next, the example modifies the
<filename>directdisksdb.wks</filename> file and changes all
instances of "<filename>--ondisk sda</filename>"
<filename>directdisksdb.wks</filename> file and changes
all instances of "<filename>--ondisk sda</filename>"
to "<filename>--ondisk sdb</filename>".
The example changes the following two lines and leaves the
remaining lines untouched:
The example changes the following two lines and leaves
the remaining lines untouched:
<literallayout class='monospaced'>
part /boot --source bootimg-pcbios --ondisk sdb --label boot --active --align 1024
part / --source rootfs --ondisk sdb --fstype=ext3 --label platform --align 1024
@ -4840,8 +4898,8 @@
Once the lines are changed, the example generates the
<filename>directdisksdb</filename> image.
The command points the process at the
<filename>core-image-minimal</filename> artifacts for the
Next Unit of Computing (nuc)
<filename>core-image-minimal</filename> artifacts for
the Next Unit of Computing (nuc)
<ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE'><filename>MACHINE</filename></ulink>
the <filename>local.conf</filename>.
<literallayout class='monospaced'>
@ -4855,12 +4913,12 @@
/var/tmp/wic/build/directdisksdb-201310231131-sdb.direct
The following build artifacts were used to create the image(s):
ROOTFS_DIR: /home/trz/yocto/yocto-image/build/tmp/work/nuc-poky-linux/core-image-minimal/1.0-r0/rootfs
BOOTIMG_DIR: /home/trz/yocto/yocto-image/build/tmp/sysroots/nuc/usr/share
KERNEL_DIR: /home/trz/yocto/yocto-image/build/tmp/sysroots/nuc/usr/src/kernel
NATIVE_SYSROOT: /home/trz/yocto/yocto-image/build/tmp/sysroots/x86_64-linux
The image(s) were created using OE kickstart file:
/home/trz/yocto/yocto-image/scripts/lib/image/canned-wks/directdisksdb.wks
</literallayout>
@ -4873,7 +4931,7 @@
86018+0 records in
86018+0 records out
44041216 bytes (44 MB) copied, 13.0734 s, 3.4 MB/s
[trz@empanada tmp]$ sudo eject /dev/sdb
[trz at empanada tmp]$ sudo eject /dev/sdb
</literallayout>
</para>
</section>
@ -4918,7 +4976,7 @@
This next example manually specifies each build artifact
(runs in Raw Mode) and uses a modified kickstart file.
The example also uses the <filename>-o</filename> option
to cause <filename>wic</filename> to create the output
to cause Wic to create the output
somewhere other than the default
<filename>/var/tmp/wic</filename> directory:
<literallayout class='monospaced'>
@ -4946,8 +5004,8 @@
For this example,
<ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE'><filename>MACHINE</filename></ulink>
did not have to be specified in the
<filename>local.conf</filename> file since the artifact is
manually specified.
<filename>local.conf</filename> file since the
artifact is manually specified.
</para>
</section>
</section>
@ -4956,65 +5014,65 @@
<title>Plug-ins</title>
<para>
Plug-ins allow <filename>wic</filename> functionality to
Plug-ins allow Wic functionality to
be extended and specialized by users.
This section documents the plugin interface, which is
currently restricted to source plug ins.
This section documents the plug-in interface, which is
currently restricted to source plug-ins.
</para>
<para>
Source plug ins provide a mechanism to customize
Source plug-ins provide a mechanism to customize
various aspects of the image generation process in
<filename>wic</filename>, mainly the contents of
Wic, mainly the contents of
partitions.
The plug ins provide a mechanism for mapping values
The plug-ins provide a mechanism for mapping values
specified in <filename>.wks</filename> files using the
<filename>--source</filename> keyword to a
particular plugin implementation that populates a
particular plug-in implementation that populates a
corresponding partition.
</para>
<para>
A source plugin is created as a subclass of
A source plug-in is created as a subclass of
<filename>SourcePlugin</filename>.
The plugin file containing it is added to
The plug-in file containing it is added to
<filename>scripts/lib/wic/plugins/source/</filename> to
make the plugin implementation available to the
<filename>wic</filename> implementation.
make the plug-in implementation available to the
Wic implementation.
For more information, see
<filename>scripts/lib/wic/pluginbase.py</filename>.
</para>
<para>
Source plugins can also be implemented and added by
Source plug-ins can also be implemented and added by
external layers.
As such, any plugins found in a
As such, any plug-ins found in a
<filename>scripts/lib/wic/plugins/source/</filename>
directory in an external layer are also made
available.
</para>
<para>
When the <filename>wic</filename> implementation needs
When the Wic implementation needs
to invoke a partition-specific implementation, it looks
for the plugin that has the same name as the
for the plug-in that has the same name as the
<filename>--source</filename> parameter given to
that partition.
For example, if the partition is set up as follows:
<literallayout class='monospaced'>
part /boot --source bootimg-pcbios ...
</literallayout>
The methods defined as class members of the plugin
The methods defined as class members of the plug-in
having the matching <filename>bootimg-pcbios.name</filename>
class member are used.
</para>
<para>
To be more concrete, here is the plugin definition that
To be more concrete, here is the plug-in definition that
matches a
<filename>--source bootimg-pcbios</filename> usage,
along with an example
method called by the <filename>wic</filename> implementation
method called by the Wic implementation
when it needs to invoke an implementation-specific
partition-preparation function:
<literallayout class='monospaced'>
@ -5026,7 +5084,7 @@
</literallayout>
If the subclass itself does not implement a function, a
default version in a superclass is located and
used, which is why all plugins must be derived from
used, which is why all plug-ins must be derived from
<filename>SourcePlugin</filename>.
</para>
@ -5034,7 +5092,7 @@
The <filename>SourcePlugin</filename> class defines the
following methods, which is the current set of methods
that can be implemented or overridden by
<filename>--source</filename> plugins.
<filename>--source</filename> plug-ins.
Any methods not implemented by a
<filename>SourcePlugin</filename> subclass inherit the
implementations present in the
@ -5045,27 +5103,31 @@
<para>
<itemizedlist>
<listitem><para><emphasis><filename>do_prepare_partition()</filename>:</emphasis>
<listitem><para>
<emphasis><filename>do_prepare_partition()</filename>:</emphasis>
Called to do the actual content population for a
partition.
In other words, the method prepares the final
partition image that is incorporated into the
disk image.
</para></listitem>
<listitem><para><emphasis><filename>do_configure_partition()</filename>:</emphasis>
<listitem><para>
<emphasis><filename>do_configure_partition()</filename>:</emphasis>
Called before
<filename>do_prepare_partition()</filename>.
This method is typically used to create custom
configuration files for a partition (e.g. syslinux or
grub configuration files).
configuration files for a partition (e.g. syslinux
or grub configuration files).
</para></listitem>
<listitem><para><emphasis><filename>do_install_disk()</filename>:</emphasis>
<listitem><para>
<emphasis><filename>do_install_disk()</filename>:</emphasis>
Called after all partitions have been prepared and
assembled into a disk image.
This method provides a hook to allow finalization of a
disk image, (e.g. writing an MBR).
This method provides a hook to allow finalization
of a disk image, (e.g. writing an MBR).
</para></listitem>
<listitem><para><emphasis><filename>do_stage_partition()</filename>:</emphasis>
<listitem><para>
<emphasis><filename>do_stage_partition()</filename>:</emphasis>
Special content-staging hook called before
<filename>do_prepare_partition()</filename>.
This method is normally empty.</para>
@ -5091,9 +5153,9 @@
<para>
This scheme is extensible.
Adding more hooks is a simple matter of adding more
plugin methods to <filename>SourcePlugin</filename> and
plug-in methods to <filename>SourcePlugin</filename> and
derived classes.
The code that then needs to call the plugin methods uses
The code that then needs to call the plug-in methods uses
<filename>plugin.get_source_plugin_methods()</filename>
to find the method or methods needed by the call.
Retrieval of those methods is accomplished
@ -5101,16 +5163,16 @@
containing the method names of interest.
On success, these will be filled in with the actual
methods.
Please see the <filename>wic</filename>
Please see the Wic
implementation for examples and details.
</para>
</section>
<section id='openembedded-kickstart-wks-reference'>
<title>OpenEmbedded Kickstart (.wks) Reference</title>
<title>OpenEmbedded Kickstart (<filename>.wks</filename>) Reference</title>
<para>
The current <filename>wic</filename> implementation supports
The current Wic implementation supports
only the basic kickstart partitioning commands:
<filename>partition</filename> (or <filename>part</filename>
for short) and <filename>bootloader</filename>.
@ -5126,7 +5188,7 @@
and meanings.
The commands are based on the Fedora
kickstart versions but with modifications to
reflect <filename>wic</filename> capabilities.
reflect Wic capabilities.
You can see the original documentation for those commands
at the following links:
<itemizedlist>
@ -5144,27 +5206,30 @@
<para>
Either of these commands create a partition on the system
and uses the following syntax:
and use the following syntax:
<literallayout class='monospaced'>
part [<replaceable>mntpoint</replaceable>]
partition [<replaceable>mntpoint</replaceable>]
</literallayout>
If you do not provide
<replaceable>mntpoint</replaceable>, wic creates a partition
but does not mount it.
<replaceable>mntpoint</replaceable>, Wic creates a
partition but does not mount it.
</para>
<para>
The <filename><replaceable>mntpoint</replaceable></filename>
is where the
partition will be mounted and must be of one of the
following forms:
The
<filename><replaceable>mntpoint</replaceable></filename>
is where the partition will be mounted and must be of
one of the following forms:
<itemizedlist>
<listitem><para><filename>/<replaceable>path</replaceable></filename>:
<listitem><para>
<filename>/<replaceable>path</replaceable></filename>:
For example, <filename>/</filename>,
<filename>/usr</filename>, or
<filename>/home</filename></para></listitem>
<listitem><para><filename>swap</filename>:
<filename>/home</filename>
</para></listitem>
<listitem><para>
<filename>swap</filename>:
The created partition is used as swap space.
</para></listitem>
</itemizedlist>
@ -5178,8 +5243,8 @@
In order for wic to generate a valid fstab, you must
also provide one of the <filename>--ondrive</filename>,
<filename>--ondisk</filename>, or
<filename>--use-uuid</filename> partition options as part
of the command.
<filename>--use-uuid</filename> partition options as
part of the command.
Here is an example using "/" as the mountpoint.
The command uses "--ondisk" to force the partition onto
the <filename>sdb</filename> disk:
@ -5189,32 +5254,35 @@
</para>
<para>
Here is a list that describes other supported options you
can use with the <filename>part</filename> and
Here is a list that describes other supported options
you can use with the <filename>part</filename> and
<filename>partition</filename> commands:
<itemizedlist>
<listitem><para><emphasis><filename>--size</filename>:</emphasis>
<listitem><para>
<emphasis><filename>--size</filename>:</emphasis>
The minimum partition size in MBytes.
Specify an integer value such as 500.
Do not append the number with "MB".
You do not need this option if you use
<filename>--source</filename>.</para></listitem>
<listitem><para><emphasis><filename>--source</filename>:</emphasis>
<filename>--source</filename>.
</para></listitem>
<listitem><para>
<emphasis><filename>--source</filename>:</emphasis>
This option is a
<filename>wic</filename>-specific option that
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
"<link linkend='openembedded-kickstart-plugins'>Plugins</link>"
a valid source plug-in.
For information on the source plug-ins, see the
"<link linkend='openembedded-kickstart-plugins'>Plug-ins</link>"
section.</para>
<para>If you use
<filename>--source rootfs</filename>,
<filename>wic</filename> creates a partition as
large as needed and to fill it with the contents of
the root filesystem pointed to by the
Wic creates a partition as
large as needed and to fill it with the contents
of the root filesystem pointed to by the
<filename>-r</filename> command-line option
or the equivalent rootfs derived from the
<filename>-e</filename> command-line
@ -5229,30 +5297,33 @@
</para>
<para>If you use
<filename>--source <replaceable>plugin-name</replaceable></filename>,
<filename>wic</filename> 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
Wic creates a partition as
large as needed and fills it with the contents
of the partition that is generated by the
specified plug-in name using the data pointed
to by the <filename>-r</filename> command-line
option or the equivalent rootfs derived from the
<filename>-e</filename> command-line
option.
Exactly what those contents and filesystem type end
up being are dependent on the given plugin
Exactly what those contents and filesystem type
end up being are dependent on the given plug-in
implementation.
</para>
<para>If you do not use the
<filename>--source</filename> option, the
<filename>wic</filename> command creates an empty
partition.
<filename>wic</filename> command creates an
empty partition.
Consequently, you must use the
<filename>--size</filename> option to specify the
size of the empty partition.
<filename>--size</filename> option to specify
the size of the empty partition.
</para></listitem>
<listitem><para><emphasis><filename>--ondisk</filename> or <filename>--ondrive</filename>:</emphasis>
Forces the partition to be created on a particular
disk.</para></listitem>
<listitem><para><emphasis><filename>--fstype</filename>:</emphasis>
<listitem><para>
<emphasis><filename>--ondisk</filename> or <filename>--ondrive</filename>:</emphasis>
Forces the partition to be created on a
particular disk.
</para></listitem>
<listitem><para>
<emphasis><filename>--fstype</filename>:</emphasis>
Sets the file system type for the partition.
Valid values are:
<itemizedlist>
@ -5268,8 +5339,10 @@
</para></listitem>
<listitem><para><filename>swap</filename>
</para></listitem>
</itemizedlist></para></listitem>
<listitem><para><emphasis><filename>--fsoptions</filename>:</emphasis>
</itemizedlist>
</para></listitem>
<listitem><para>
<emphasis><filename>--fsoptions</filename>:</emphasis>
Specifies a free-form string of options to be
used when mounting the filesystem.
This string will be copied into the
@ -5279,59 +5352,78 @@
If not specified, the default string
is "defaults".
</para></listitem>
<listitem><para><emphasis><filename>--label label</filename>:</emphasis>
<listitem><para>
<emphasis><filename>--label label</filename>:</emphasis>
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.</para></listitem>
<listitem><para><emphasis><filename>--active</filename>:</emphasis>
Marks the partition as active.</para></listitem>
<listitem><para><emphasis><filename>--align (in KBytes)</filename>:</emphasis>
This option is a <filename>wic</filename>-specific
option that says to start a partition on an
x KBytes boundary.</para></listitem>
<listitem><para><emphasis><filename>--no-table</filename>:</emphasis>
This option is a <filename>wic</filename>-specific
option.
Using the option reserves space for the partition
and causes it to become populated.
partition.
</para></listitem>
<listitem><para>
<emphasis><filename>--active</filename>:</emphasis>
Marks the partition as active.
</para></listitem>
<listitem><para>
<emphasis><filename>--align (in KBytes)</filename>:</emphasis>
This option is a
Wic-specific option that
says to start a partition on an
<replaceable>x</replaceable> KBytes
boundary.</para></listitem>
<listitem><para>
<emphasis><filename>--no-table</filename>:</emphasis>
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.
</para></listitem>
<listitem><para><emphasis><filename>--extra-space</filename>:</emphasis>
This option is a <filename>wic</filename>-specific
option that adds extra space after the space
filled by the content of the partition.
<listitem><para>
<emphasis><filename>--extra-space</filename>:</emphasis>
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 go beyond the size specified
by the <filename>--size</filename> option.
The default value is 10 Mbytes.
</para></listitem>
<listitem><para><emphasis><filename>--overhead-factor</filename>:</emphasis>
This option is a <filename>wic</filename>-specific
option that multiplies the size of the partition by
the option's value.
<listitem><para>
<emphasis><filename>--overhead-factor</filename>:</emphasis>
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".
</para></listitem>
<listitem><para><emphasis><filename>--part-type</filename>:</emphasis>
This option is a <filename>wic</filename>-specific
option that specifies the partition type globally
<listitem><para>
<emphasis><filename>--part-type</filename>:</emphasis>
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
<ulink url='http://en.wikipedia.org/wiki/GUID_Partition_Table#Partition_type_GUIDs'></ulink>.
</para></listitem>
<listitem><para><emphasis><filename>--use-uuid</filename>:</emphasis>
This option is a <filename>wic</filename>-specific
option that causes <filename>wic</filename> to
generate a random GUID for the partition.
The generated identifier is used in the bootloader
configuration to specify the root partition.
<listitem><para>
<emphasis><filename>--use-uuid</filename>:</emphasis>
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.
</para></listitem>
<listitem><para><emphasis><filename>--uuid</filename>:</emphasis>
This option is a <filename>wic</filename>-specific
<listitem><para>
<emphasis><filename>--uuid</filename>:</emphasis>
This option is a
Wic-specific
option that specifies the partition UUID.
</para></listitem>
</itemizedlist>
@ -5348,34 +5440,40 @@
Bootloader functionality and boot partitions are
implemented by the various
<filename>--source</filename>
plugins that implement bootloader functionality.
The bootloader command essentially provides a means of
modifying bootloader configuration.
plug-ins that implement bootloader functionality.
The bootloader command essentially provides a
means of modifying bootloader configuration.
</note>
<itemizedlist>
<listitem><para><emphasis><filename>--timeout</filename>:</emphasis>
<listitem><para>
<emphasis><filename>--timeout</filename>:</emphasis>
Specifies the number of seconds before the
bootloader times out and boots the default option.
bootloader times out and boots the default
option.
</para></listitem>
<listitem><para><emphasis><filename>--append</filename>:</emphasis>
<listitem><para>
<emphasis><filename>--append</filename>:</emphasis>
Specifies kernel parameters.
These parameters will be added to the syslinux
<filename>APPEND</filename> or
<filename>grub</filename> kernel command line.
</para></listitem>
<listitem><para><emphasis><filename>--configfile</filename>:</emphasis>
<listitem><para>
<emphasis><filename>--configfile</filename>:</emphasis>
Specifies a user-defined configuration file for
the bootloader.
You can provide a full pathname for the file or
a file that exists in the
<filename>canned-wks</filename> folder.
This option overrides all other bootloader options.
This option overrides all other bootloader
options.
</para></listitem>
</itemizedlist>
</para>
</section>
</section>
</section>
</section>
<section id='configuring-the-kernel'>
<title>Configuring the Kernel</title>