mirror of
https://github.com/systemd/systemd
synced 2024-10-06 16:21:34 +00:00
nspawn,machined: change default container image location from /var/lib/container to /var/lib/machines
Given that this is also the place to store raw disk images which are very much bootable with qemu/kvm it sounds like a misnomer to call the directory "container". Hence, let's change this sooner rather than later, and use the generic name, in particular since we otherwise try to use the generic "machine" preferably over the more specific "container" or "vm".
This commit is contained in:
parent
aceac2f0b6
commit
5f129649b9
|
@ -291,10 +291,10 @@
|
|||
name. <command>systemd-nspawn</command>
|
||||
looks for a container image by the
|
||||
specified name in
|
||||
<filename>/var/lib/container</filename>
|
||||
and runs it. Use
|
||||
<command>list-images</command> (see
|
||||
below), for listing available
|
||||
<filename>/var/lib/machines/</filename>
|
||||
(and other search paths, see below) and runs
|
||||
it. Use <command>list-images</command>
|
||||
(see below), for listing available
|
||||
container images to start.</para>
|
||||
|
||||
<para>Note that
|
||||
|
@ -488,7 +488,7 @@
|
|||
images. This enumerates all raw disk
|
||||
images and container directories and
|
||||
subvolumes in
|
||||
<filename>/var/lib/container/</filename>. Use
|
||||
<filename>/var/lib/machines/</filename> (and other search paths, see below). Use
|
||||
<command>start</command> (see above)
|
||||
to run a container off one of the
|
||||
listed images. Note that by default
|
||||
|
@ -595,6 +595,51 @@
|
|||
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Files and Directories</title>
|
||||
|
||||
<para>Machine images are preferably stored in
|
||||
<filename>/var/lib/machines/</filename>, but are also
|
||||
searched for in
|
||||
<filename>/usr/local/lib/machines/</filename> and
|
||||
<filename>/usr/lib/machines/</filename>. For
|
||||
compatibility reasons the directory
|
||||
<filename>/var/lib/container/</filename> is searched,
|
||||
too. Note that images stored below
|
||||
<filename>/usr</filename> are always considered
|
||||
read-only. It is possible to symlink machines images
|
||||
from other directories into
|
||||
<filename>/var/lib/machines/</filename> to make them
|
||||
available for control with
|
||||
<command>machinectl</command>.</para>
|
||||
|
||||
<para>Disk images are understood in three formats:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>A simple directory tree,
|
||||
containing the files and directories of the
|
||||
container to boot.</para></listitem>
|
||||
|
||||
<listitem><para>A subvolume (on btrfs file
|
||||
systems), which are similar to the simple
|
||||
directories, described above. However, they
|
||||
have additional benefits, such as efficient
|
||||
cloning and quota reporting.</para></listitem>
|
||||
|
||||
<listitem><para>"Raw" disk images, i.e. binary
|
||||
images of disks with a GPT or MBR partition
|
||||
table. Images of this type are regular
|
||||
files with the suffix
|
||||
<literal>.raw</literal>.</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
for more information on image formats, in particular
|
||||
it's <option>--directory=</option> and
|
||||
<option>--image=</option> options.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
|
|
|
@ -171,7 +171,7 @@
|
|||
<option>--directory=</option>, nor
|
||||
<option>--image=</option> is specified
|
||||
the directory is determined as
|
||||
<filename>/var/lib/container/</filename>
|
||||
<filename>/var/lib/machines/</filename>
|
||||
suffixed by the machine name as
|
||||
specified with
|
||||
<option>--machine=</option>. If
|
||||
|
@ -247,10 +247,13 @@
|
|||
the root directory for the container
|
||||
from. Takes a path to a regular file
|
||||
or to a block device node. The file or
|
||||
block device must contain a GUID
|
||||
Partition Table with a root partition
|
||||
which is mounted as the root directory
|
||||
of the container. Optionally, it may
|
||||
block device must contain either an
|
||||
MBR partition table with a single
|
||||
partition of type 0x83 that is marked
|
||||
bootable, or a GUID partition table
|
||||
with a root partition which is mounted
|
||||
as the root directory of the
|
||||
container. Optionally, GPT images may
|
||||
contain a home and/or a server data
|
||||
partition which are mounted to the
|
||||
appropriate places in the
|
||||
|
@ -842,7 +845,7 @@
|
|||
<example>
|
||||
<title>Enable Arch Linux container on boot</title>
|
||||
|
||||
<programlisting># mv ~/arch-tree /var/lib/container/arch
|
||||
<programlisting># mv ~/arch-tree /var/lib/machines/arch
|
||||
# systemctl enable systemd-nspawn@arch.service
|
||||
# systemctl start systemd-nspawn@arch.service</programlisting>
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
#include "import-dkr.h"
|
||||
|
||||
static bool arg_force = false;
|
||||
static const char *arg_image_root = "/var/lib/container";
|
||||
static const char *arg_image_root = "/var/lib/machines";
|
||||
|
||||
static const char* arg_dkr_index_url = DEFAULT_DKR_INDEX_URL;
|
||||
|
||||
|
|
|
@ -110,7 +110,7 @@ static int image_make(
|
|||
assert(filename);
|
||||
|
||||
/* We explicitly *do* follow symlinks here, since we want to
|
||||
* allow symlinking trees into /var/lib/container/, and treat
|
||||
* allow symlinking trees into /var/lib/machines/, and treat
|
||||
* them normally. */
|
||||
|
||||
if (fstatat(dfd, filename, &st, 0) < 0)
|
||||
|
@ -486,13 +486,13 @@ int image_clone(Image *i, const char *new_name, bool read_only) {
|
|||
|
||||
case IMAGE_SUBVOLUME:
|
||||
case IMAGE_DIRECTORY:
|
||||
new_path = strappenda("/var/lib/container/", new_name);
|
||||
new_path = strappenda("/var/lib/machines/", new_name);
|
||||
|
||||
r = btrfs_subvol_snapshot(i->path, new_path, read_only, true);
|
||||
break;
|
||||
|
||||
case IMAGE_RAW:
|
||||
new_path = strappenda("/var/lib/container/", new_name, ".raw");
|
||||
new_path = strappenda("/var/lib/machines/", new_name, ".raw");
|
||||
|
||||
r = copy_file_atomic(i->path, new_path, read_only ? 0444 : 0644, false, FS_NOCOW_FL);
|
||||
break;
|
||||
|
|
|
@ -18,6 +18,6 @@ f /var/log/btmp 0600 root utmp -
|
|||
d /var/cache 0755 - - -
|
||||
|
||||
d /var/lib 0755 - - -
|
||||
v /var/lib/container 0700 - - -
|
||||
v /var/lib/machines 0700 - - -
|
||||
|
||||
d /var/spool 0755 - - -
|
||||
|
|
Loading…
Reference in a new issue