X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Fsystemd-nspawn.xml;h=1f7d74e27322137db1079bb3f146fb0c403e4dbd;hp=03c39fc3def88631ff30b51abe06ac1d4293e554;hb=d87be9b0af81a6e07d4fb3028e45c4409100dc26;hpb=687d0825a4636b1841dc0c01fbcbf3160dddab74 diff --git a/man/systemd-nspawn.xml b/man/systemd-nspawn.xml index 03c39fc3d..1f7d74e27 100644 --- a/man/systemd-nspawn.xml +++ b/man/systemd-nspawn.xml @@ -8,16 +8,16 @@ Copyright 2010 Lennart Poettering systemd is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or + under the terms of the GNU Lesser General Public License as published by + the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. systemd is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. + Lesser General Public License for more details. - You should have received a copy of the GNU General Public License + You should have received a copy of the GNU Lesser General Public License along with systemd; If not, see . --> @@ -69,11 +69,12 @@ to various kernel interfaces in the container to read-only, such as /sys, /proc/sys or - /selinux. Network interfaces and - the system clock may not be changed from within the - container. Device nodes may not be created. The host - system cannot be rebooted and kernel modules may not - be loaded from within the container. + /sys/fs/selinux. Network + interfaces and the system clock may not be changed + from within the container. Device nodes may not be + created. The host system cannot be rebooted and kernel + modules may not be loaded from within the + container. Note that even though these security precautions are taken systemd-nspawn is not @@ -92,9 +93,12 @@ container. Use a tool like - debootstrap8 or mock1 + yum8 + or + debootstrap8 to set up an OS directory tree suitable as file system - hierarchy for systemd-nspawn containers. + hierarchy for systemd-nspawn + containers. Note that systemd-nspawn will mount file systems private to the container to @@ -110,6 +114,11 @@ two containers is complete and the containers will share very few runtime objects except for the underlying file system. + + systemd-nspawn implements the + Container + Interface specification. @@ -123,6 +132,7 @@ + Prints a short help text and exits. @@ -130,7 +140,7 @@ - + Directory to use as file system root for the namespace @@ -139,9 +149,19 @@ used. + + + + + Automatically search + for an init binary and invoke it + instead of a shell or a user supplied + program. + + - + Run the command under specified user, create home @@ -152,6 +172,117 @@ + + + + Set the specified uuid + for the container. The init system + will initialize + /etc/machine-id + from this if this file is not set yet. + + + + + + + + Makes the container appear in + other hierarchies that the name=systemd:/ one. + Takes a comma-separated list of controllers. + + + + + + + Turn off networking in + the container. This makes all network + interfaces unavailable in the + container, with the exception of the + loopback device. + + + + + + Mount the root file + system read only for the + container. + + + + + + List one or more + additional capabilities to grant the + container. Takes a comma separated + list of capability names, see + capabilities7 + for more information. Note that the + the following capabilities will be + granted in any way: CAP_CHOWN, + CAP_DAC_OVERRIDE, CAP_DAC_READ_SEARCH, + CAP_FOWNER, CAP_FSETID, CAP_IPC_OWNER, + CAP_KILL, CAP_LEASE, + CAP_LINUX_IMMUTABLE, + CAP_NET_BIND_SERVICE, + CAP_NET_BROADCAST, CAP_NET_RAW, + CAP_SETGID, CAP_SETFCAP, CAP_SETPCAP, + CAP_SETUID, CAP_SYS_ADMIN, + CAP_SYS_CHROOT, CAP_SYS_NICE, + CAP_SYS_PTRACE, CAP_SYS_TTY_CONFIG, + CAP_SYS_RESOURCE, CAP_SYS_BOOT. + + + + + + Control whether the + container's journal shall be made + visible to the host system. If enabled + allows viewing the container's journal + files from the host (but not vice + versa). Takes one of + no, + host, + guest, + auto. If + no the journal is + not linked. If host + the journal files are stored on the + host file system (beneath the host's + /var/log/journal) + and a per-machine subdirectory of this + directory is created and bind mounted + into the container at the same + location. If guest + the journal files are stored on the + guest file system (beneath the guest's + /var/log/journal) + and a per-machine subdirectory of this + directory is symlinked into the host + at the same location. If + auto (the default) + and the subdirectory of + /var/log/journal + exists as directory it is bind mounted + into the container, but nothing is + done otherwise. Effectively, booting a + container once with + guest or + host will link the + journal persistantly if further one + the default of auto + is used. + + + + + + Equivalent to + . + @@ -159,27 +290,25 @@ Example 1 - # debootstrap --arch=amd64 unstable debian-tree/ -# systemd-nspawn -D debian-tree/ - - This installs a minimal Debian unstable - distribution into the directory - debian-tree/ and then spawns a - shell in a namespace container in it. + # yum --releasever=17 --nogpgcheck --installroot ~/fedora-tree/ install yum passwd vim-minimal rootfiles systemd +# systemd-nspawn -D ~/fedora-tree /usr/lib/systemd/systemd + This installs a minimal Fedora distribution into + the directory ~/fedora-tree/ + and then boots an OS in a namespace container in it, + with systemd as init system. Example 2 - # mock --init -# systemd-nspawn -D /var/lib/mock/fedora-rawhide-x86_64/root/ /bin/systemd systemd.log_level=debug + # debootstrap --arch=amd64 unstable ~/debian-tree/ +# systemd-nspawn -D ~/debian-tree/ - This installs a minimal Fedora distribution into - a subdirectory of /var/lib/mock/ - and then boots an OS in a namespace container in it, - with systemd as init system, configured for debug - logging. + This installs a minimal Debian unstable + distribution into the directory + ~/debian-tree/ and then spawns a + shell in a namespace container in it. @@ -195,8 +324,8 @@ systemd1, chroot1, + yum8, debootstrap8 - mock1