lxc-autostart processes containers with lxc.start.auto set. It lets
the user start, shutdown, kill, restart containers in the right
order, waiting the right time. Supports filtering by lxc.group or
just run against all defined containers. It can also be used by
external tools in list mode where no action will be performed and the
list of affected containers (and if relevant, delays) will be shown.
The [-r], [-s] and [-k] options specify the action to perform. If
none is specified, then the containers will be started. [-a] and
[-g] are used to specify which containers will be affected. By
default only containers without a lxc.group set will be affected.
[-t TIMEOUT] specifies the maximum amount of time to wait for the
container to complete the shutdown or reboot.
Request a reboot of the container.
Request a clean shutdown. If a [-t timeout] greater than 0 is
given and the container has not shut down within this period,
it will be killed as with the [-k kill] option.
Rather than requesting a clean shutdown of the container,
explicitly kill all tasks in the container.
Rather than performing the action, just print the container
name and wait delays until starting the next container.
Wait TIMEOUT seconds before hard-stopping the container.
Comma separated list of groups to select (defaults to those
without a lxc.group - the NULL group). This option may be
specified multiple times and the arguments concatenated. The
NULL or empty group may be specified as a leading comma,
trailing comma, embedded double comma, or empty argument where
the NULL group should be processed. Groups are processed in
the order specified on the command line. Multiple invocations
of the -g option may be freely intermixed with the comma
separated lists and will be combined in specified order.
Ignore lxc.group and select all auto-started containers.
Ignore the lxc.start.auto flag. Combined with -a, will select
all containers on the system.
The lxc-autostart command is used as part of the LXC system service,
when enabled to run on host system at bootup and at shutdown. It's
used to select which containers to start in what order and how much
to delay between each startup when the host system boots.
Each container can be part of any number of groups or no group at
all. Two groups are special. One is the NULL group, i.e. the
container does not belong to any group. The other group is the
When the system boots with the LXC service enabled, it will first
attempt to boot any containers with lxc.start.auto == 1 that is a
member of the "onboot" group. The startup will be in order of
lxc.start.order. If an lxc.start.delay has been specified, that
delay will be honored before attempting to start the next container
to give the current container time to begin initialization and reduce
overloading the host system. After starting the members of the
"onboot" group, the LXC system will proceed to boot containers with
lxc.start.auto == 1 which are not members of any group (the NULL
group) and proceed as with the onboot group.
Start the "onboot" group first then the NULL group.
This is the equivalent of: -g onboot -g "".
Starts the "dns" group first, the "web" group second, then the
NULL group followed by the "onboot" group.
This is the equivalent of: -g dns,web -g ,onboot or -g dns -gweb -g "" -g onboot.
This page is part of the lxc (Linux containers) project. Information
about the project can be found at ⟨http://linuxcontainers.org/⟩. If
you have a bug report for this manual page, send it to
email@example.com. This page was obtained from the
project's upstream Git repository ⟨git://github.com/lxc/lxc⟩ on
2020-07-14. (At that time, the date of the most recent commit that
was found in the repository was 2020-07-08.) If you discover any
rendering problems in this HTML version of the page, or you believe
there is a better or more up-to-date source for the page, or you have
corrections or improvements to the information in this COLOPHON
(which is not part of the original manual page), send a mail to