InglésFrancésespañol

icono de página de OnWorks

systemd-nspawn: en línea en la nube

Ejecute systemd-nspawn en el proveedor de alojamiento gratuito de OnWorks a través de Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS

Este es el comando systemd-nspawn que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.

PROGRAMA:

NOMBRE


systemd-nspawn: genera un contenedor de espacio de nombres para depurar, probar y compilar

SINOPSIS


sistemad-nspawn [OPCIONES ...] [COMANDO [ARGS ...]]

sistemad-nspawn -b [OPCIONES ...] [ARGS ...]

DESCRIPCIÓN


sistemad-nspawn se puede utilizar para ejecutar un comando o sistema operativo en un contenedor de espacio de nombres ligero.
En muchos sentidos es similar a chroot(1), pero más potente ya que virtualiza completamente el
jerarquía del sistema de archivos, así como el árbol de procesos, los diversos subsistemas IPC y el
host y nombre de dominio.

sistemad-nspawn limita el acceso a varias interfaces del kernel en el contenedor a solo lectura,
como / sys, / proc / sys o / sys / fs / selinux. Las interfaces de red y el reloj del sistema pueden
no se puede cambiar desde el interior del contenedor. Es posible que no se creen nodos de dispositivo. El sistema anfitrión
no se puede reiniciar y es posible que los módulos del kernel no se carguen desde el contenedor.

Tenga en cuenta que a pesar de que se toman estas precauciones de seguridad sistemad-nspawn no es adecuado
para configuraciones de contenedores completamente seguras. Muchas de las características de seguridad pueden eludirse y
por lo tanto, son principalmente útiles para evitar cambios accidentales en el sistema host desde el
recipiente.

En contraste con chroot(1) sistemad-nspawn se puede utilizar para arrancar un sistema operativo completo basado en Linux
sistemas en un contenedor.

Use una herramienta como DNF(8) desbloqueo(8) o pacman(8) para configurar un árbol de directorios del sistema operativo
adecuado como jerarquía del sistema de archivos para sistemad-nspawn contenedores

Tenga en cuenta que sistemad-nspawn montará sistemas de archivos privados para el contenedor para / dev, /correr
y similares. Estos no serán visibles fuera del contenedor, y su contenido
perderse cuando salga el contenedor.

Tenga en cuenta que ejecutar dos sistemad-nspawn contenedores del mismo árbol de directorios no harán
los procesos en ellos se ven. La separación del espacio de nombres PID de los dos contenedores es
completar y los contenedores compartirán muy pocos objetos en tiempo de ejecución, excepto el subyacente
sistema de archivos. Usar máquinactl(1) Inicie sesión comando para solicitar una solicitud de inicio de sesión adicional en un
contenedor en ejecución.

sistemad-nspawn implementa el Envase Fácil de usar[1] especificación.

Como control de seguridad sistemad-nspawn Verificará la existencia de / usr / lib / os-release or
/ etc / os-release en el árbol de contenedores antes de iniciar el contenedor (ver lanzamiento del sistema operativo(5)).
Puede ser necesario agregar este archivo al árbol del contenedor manualmente si el sistema operativo del
El contenedor es demasiado antiguo para contener este archivo listo para usar.

OPCIONES


si opción -b se especifica, los argumentos se utilizan como argumentos para el binario init.
De lo contrario, COMANDO especifica el programa que se ejecutará en el contenedor y el resto
Los argumentos se utilizan como argumentos para este programa. Si -b no se utiliza y no hay argumentos
especificado, se lanza un shell en el contenedor.

Se entienden las siguientes opciones:

-D, --directory =
Directorio que se utilizará como raíz del sistema de archivos del contenedor.

Si ninguno --directory =, ni --image = se especifica el directorio está determinado por
buscando un directorio con el mismo nombre que el nombre de la máquina especificado con
--machine =. Vea máquinactl(1) sección "Archivos y directorios" para la búsqueda precisa
camino.

Si ninguno --directory =, --image =, ni --machine = se especifican, el directorio actual
se utilizará. No se puede especificar junto con --image =.

--template =
Directorio o subvolumen "btrfs" para usar como plantilla para el directorio raíz del contenedor.
Si esto se especifica y el directorio raíz del contenedor (según lo configurado por
--directory =) aún no existe, se crea como subvolumen "btrfs" y se completa desde
este árbol de plantilla. Idealmente, la ruta de la plantilla especificada se refiere a la raíz de un
subvolumen "btrfs", en cuyo caso se toma una instantánea simple de copia al escribir, y
poblar el directorio raíz es instantáneo. Si la ruta de la plantilla especificada no
referirse a la raíz de un subvolumen "btrfs" (o ni siquiera a un sistema de archivos "btrfs" en
all), se copia el árbol, lo que puede llevar mucho más tiempo. Tenga en cuenta que si
esta opción se utiliza en el directorio raíz del contenedor (a diferencia de la plantilla
directorio!) debe estar ubicado en un sistema de archivos "btrfs", de modo que el subvolumen "btrfs"
puede ser creado. No se puede especificar junto con --image = or --efímero.

Tenga en cuenta que este conmutador deja el nombre de host, la ID de la máquina y todas las demás configuraciones que podrían
identificar la instancia sin modificar.

-x, --efímero
Si se especifica, el contenedor se ejecuta con una instantánea temporal "btrfs" de su raíz.
directorio (como está configurado con --directory =), que se elimina inmediatamente cuando el
contenedor termina. Esta opción solo es compatible si el sistema de archivos raíz está
"btrfs". No se puede especificar junto con --image = or --template =.

Tenga en cuenta que este conmutador deja el nombre de host, la ID de la máquina y todas las demás configuraciones que podrían
identificar la instancia sin modificar.

-i, --image =
Imagen de disco desde la que montar el directorio raíz del contenedor. Toma un camino hacia un
archivo regular o en un nodo de dispositivo de bloque. El archivo o dispositivo de bloque debe contener:

· Una tabla de particiones MBR con una sola partición de tipo 0x83 que está marcada
de arranque

· Una tabla de particiones GUID (GPT) con una única partición de tipo
0fc63daf-8483-4772-8e79-3d69d8477de4.

· Una tabla de particiones GUID (GPT) con una partición raíz marcada que se monta como
directorio raíz del contenedor. Opcionalmente, las imágenes GPT pueden contener un hogar y / o
una partición de datos del servidor que se montan en los lugares apropiados en el
envase. Todas estas particiones deben estar identificadas por los tipos de partición definidos
según el Reconocible Particiones Especificaciones[2].

Cualquier otra partición, como particiones extranjeras, particiones de intercambio o sistema EFI
las particiones no están montadas. No se puede especificar junto con --directory =,
--template = or --efímero.

-a, --como-pid2
Invoque el shell o el programa especificado como ID de proceso (PID) 2 en lugar de PID 1 (init).
Por defecto, si ni esta opción ni --bota se utiliza, el binario seleccionado se ejecuta como
proceso con PID 1, un modo sólo adecuado para programas que son conscientes de la especial
semántica que tiene el proceso con PID 1 en UNIX. Por ejemplo, necesita cosechar todo
procesos reparentes a él, y deben implementar sistemavinit manejo de señal compatible
(específicamente: necesita reiniciar en SIGINT, volver a ejecutar en SIGTERM, recargar
configuración en SIGHUP, etc.). Con --como-pid2 se ejecuta un proceso de inicio de código auxiliar mínimo
como PID 1 y el binario seleccionado se ejecuta como PID 2 (y por lo tanto no es necesario
implementar cualquier semántica especial). El proceso de inicio de stub cosechará procesos como
necesario y reaccionar adecuadamente a las señales. Se recomienda utilizar este modo para
invocar comandos arbitrarios en contenedores, a menos que se hayan modificado para ejecutarse
correctamente como PID 1. O en otras palabras: este interruptor debe usarse para casi todos
comandos, excepto cuando el comando se refiere a una implementación init o shell, ya que estos
generalmente son capaces de funcionar correctamente como PID 1). Esta opción no se puede combinar
con --bota or --sistema compartido.

-b, --bota
Busque automáticamente un binario de inicio e invocalo como PID 1, en lugar de un shell o
un programa proporcionado por el usuario. Si se usa esta opción, los argumentos especificados en el comando
line se utilizan como argumentos para el binario init. Esta opción no se puede combinar con
--como-pid2 or --sistema compartido.

La siguiente tabla explica los diferentes modos de invocación y relación con
--como-pid2 (véase más arriba):

Mesa 1. Invocación Moda
┌────────────────────────────┬─────────────────── ───────────────┐
SwitchExplicación
├────────────────────────────┼─────────────────── ───────────────┤
│Ninguno --como-pid2 ni --bota │ Los parámetros pasados ​​son │
│especificado │ interpretado como línea de comando, │
│ │ que se ejecuta como PID 1 en │
│ │ el contenedor. │
├────────────────────────────┼─────────────────── ───────────────┤
--como-pid2 especificado │ Los parámetros pasados ​​son │
│ │ interpretado como línea de comando, │
│ │ que se ejecutan como PID 2 en │
│ │ el contenedor. Un stub init │
│ │ el proceso se ejecuta como PID 1. │
├────────────────────────────┼─────────────────── ───────────────┤
--bota especificado │ Un binario de inicio como automáticamente │
│ │ buscado y ejecutado como PID 1 en el │
│ │ contenedor. Los parámetros pasados ​​│
│ │ se utilizan como invocación │
│ │ parámetros para este proceso. │
└────────────────────────────┴─────────────────── ───────────────┘

--chdir =
Cambie al directorio de trabajo especificado antes de invocar el proceso en el
envase. Espera una ruta absoluta en el espacio de nombres del sistema de archivos del contenedor.

-u, --user =
Después de realizar la transición al contenedor, cambie al definido por el usuario especificado en el
la base de datos de usuarios del contenedor. Como todas las demás funciones de systemd-nspawn, esta no es una
característica de seguridad y proporciona protección contra operaciones destructivas accidentales
solamente.

-M, --machine =
Establece el nombre de la máquina para este contenedor. Este nombre puede usarse para identificar este
contenedor durante su tiempo de ejecución (por ejemplo, en herramientas como máquinactl(1) y similares),
y se utiliza para inicializar el nombre de host del contenedor (que el contenedor puede elegir
anular, sin embargo). Si no se especifica, el último componente de la ruta del directorio raíz de
se utiliza el contenedor, posiblemente con el sufijo de un identificador aleatorio en caso de --efímero
está seleccionado el modo. Si el directorio raíz seleccionado es el directorio raíz del host,
En su lugar, se utiliza el nombre de host del host de forma predeterminada.

--uuid =
Establezca el UUID especificado para el contenedor. El sistema init se inicializará
/ etc / machine-id a partir de esto si este archivo aún no está configurado.

- rebanada =
Haga que el contenedor forme parte de la porción especificada, en lugar de la máquina predeterminada.
Esto solo se aplica si la máquina se ejecuta en su propia unidad de alcance, es decir, si --mantener-unidad
No se utiliza.

--property =
Establezca una propiedad de unidad en la unidad del osciloscopio para registrarla en la máquina. Esto solo aplica
si la máquina se ejecuta en su propia unidad de alcance, es decir, si --mantener-unidad no se utiliza. Acepta
asignaciones de propiedad de la unidad en el mismo formato que systemctl propiedad de conjunto. Esto es útil
para establecer límites de memoria y similares para máquinas.

--private-users =
Habilita el espacio de nombres de usuario. Si está habilitado, el contenedor se ejecutará con su propio conjunto privado.
de ID de usuario y grupo de Unix (UID y GID). Toma ninguno, uno o dos separados por dos puntos
parámetros: el primer parámetro especifica el primer UID de host para asignar al
contenedor, el segundo parámetro especifica el número de UID de host para asignar al
envase. Si se omite el segundo parámetro, se asignan 65536 UID. Si el primero
El parámetro también se omite (y, por lo tanto, no se pasa ningún parámetro), el primer UID
asignado al contenedor se lee del propietario del directorio raíz del
árbol de directorios del contenedor. De forma predeterminada, no se aplica ningún espacio de nombres de usuario.

Tenga en cuenta que el espacio de nombres de usuario actualmente requiere árboles de SO preparados para el UID
cambio que se está aplicando: UID y GID utilizados para la propiedad del archivo o en la ACL del archivo
Las entradas deben cambiarse a la base de UID del contenedor que se utiliza durante el contenedor.
tiempo de ejecución.

Se recomienda asignar al menos 65536 UID a cada contenedor, de modo que el
El rango de UID en el contenedor cubre 16 bits. Para mayor seguridad, no asigne superposiciones
Intervalos de UID para varios contenedores. Por tanto, es una buena idea utilizar los 16 bits superiores de
el UID de 32 bits del host como identificador de contenedor, mientras que el inferior de 16 bits codifica el
contenedor UID utilizado.

Cuando se utilizan espacios de nombres de usuario, el rango de GID asignado a cada contenedor es siempre
elegido idéntico al rango de UID.

--red privada
Desconecte la red del contenedor del host. Esto hace que toda la red
interfaces no disponibles en el contenedor, con la excepción del dispositivo loopback y
los especificados con --network-interface = y configurado con --red-veth. Si esto
se especifica la opción, la capacidad CAP_NET_ADMIN se agregará al conjunto de
capacidades que retiene el contenedor. Este último puede desactivarse utilizando
--drop-capacity =.

--network-interface =
Asigne la interfaz de red especificada al contenedor. Esto eliminará el
interfaz especificada desde el espacio de nombres de la llamada y colóquela en el contenedor. Cuando el
contenedor termina, se vuelve a mover al espacio de nombres de host. Tenga en cuenta que
--network-interface = implica --red privada. Esta opción se puede utilizar más de una vez.
para agregar múltiples interfaces de red al contenedor.

--network-macvlan =
Cree una interfaz "macvlan" de la interfaz de red Ethernet especificada y agréguela a
El contenedor. Una interfaz "macvlan" es una interfaz virtual que agrega una segunda MAC
dirección a un enlace Ethernet físico existente. La interfaz en el contenedor será
el nombre de la interfaz en el host, con el prefijo "mv-". Tenga en cuenta que
--network-macvlan = implica --red privada. Esta opción se puede utilizar más de una vez.
para agregar múltiples interfaces de red al contenedor.

--network-ipvlan =
Cree una interfaz "ipvlan" de la interfaz de red Ethernet especificada y agréguela a
El contenedor. Una interfaz "ipvlan" es una interfaz virtual, similar a una "macvlan"
interfaz, que utiliza la misma dirección MAC que la interfaz subyacente. La interfaz
en el contenedor llevará el nombre de la interfaz en el host, con el prefijo "iv-".
Tenga en cuenta que --network-ipvlan = implica --red privada. Esta opción se puede utilizar más
de una vez para agregar múltiples interfaces de red al contenedor.

-n, --red-veth
Cree un enlace Ethernet virtual ("veth") entre el host y el contenedor. El lado anfitrión de
el enlace Ethernet estará disponible como una interfaz de red con el nombre del contenedor
nombre (como se especifica con --machine =), con el prefijo "ve-". El lado del contenedor del
El enlace Ethernet se llamará "host0". Tenga en cuenta que --red-veth implica
--red privada.

--network-veth-extra =
Agrega un enlace Ethernet virtual adicional entre el host y el contenedor. Toma una
par de nombre de interfaz de host y nombre de interfaz de contenedor separados por dos puntos. El último
puede omitirse, en cuyo caso se asignará el mismo lado al contenedor y al host.
nombre. Este interruptor es independiente de --red-vethy, por el contrario, se puede utilizar
varias veces y permite la configuración de los nombres de la interfaz de red. Tenga en cuenta que
--network-bridge = no tiene ningún efecto en las interfaces creadas con --network-veth-extra =.

--network-bridge =
Agrega el lado del host del enlace Ethernet creado con --red-veth a la especificada
puente. Tenga en cuenta que --network-bridge = implica --red-veth. Si se utiliza esta opción,
el lado del host del enlace Ethernet utilizará el prefijo "vb-" en lugar de "ve-".

-p, --port =
Si la red privada está habilitada, asigna un puerto IP en el host a un puerto IP en el
envase. Toma un especificador de protocolo (ya sea "tcp" o "udp"), separado por dos puntos
desde un número de puerto de host en el rango de 1 a 65535, separados por dos puntos de un contenedor
número de puerto en el rango de 1 a 65535. El especificador de protocolo y su separación
Se pueden omitir dos puntos, en cuyo caso se asume "tcp". El número de puerto del contenedor y
sus dos puntos pueden omitirse, en cuyo caso se implica el mismo puerto que el puerto del host.
Esta opción solo es compatible si se utiliza una red privada, como con
--red-veth or --network-bridge =.

-Z, --selinux-context =
Establece el contexto de seguridad de SELinux que se utilizará para etiquetar procesos en el contenedor.

-L, --selinux-apifs-context =
Establece el contexto de seguridad de SELinux que se utilizará para etiquetar archivos en el archivo de API virtual
sistemas en el contenedor.

--capacidad =
Enumere una o más capacidades adicionales para otorgar el contenedor. Toma una
lista separada por comas de nombres de capacidades, consulte capacidades(7) para obtener más información.
Tenga en cuenta que las siguientes capacidades se otorgarán de cualquier manera: 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, CAP_AUDIT_WRITE, CAP_AUDIT_CONTROL. También se retiene CAP_NET_ADMIN si
--red privada está especificado. Si se pasa el valor especial "todos", todas las capacidades
son retenidos.

--drop-capacity =
Especifique una o más capacidades adicionales para colocar en el contenedor. Esto permite
ejecutar el contenedor con menos capacidades que las predeterminadas (ver arriba).

- señal de muerte =
Especifique la señal de proceso para enviar al PID 1 del contenedor cuando nspawn.
recibe SIGTERM, con el fin de desencadenar un cierre ordenado del contenedor. Defaults
a SIGRTMIN + 3 si --bota se utiliza (en sistemas init compatibles con systemd SIGRTMIN + 3
desencadena un apagado ordenado). Toma un nombre de señal como "SIGHUP", "SIGTERM" o similar
como argumento.

--link-journal =
Controlar si el diario del contenedor se hará visible para el sistema anfitrión. Si
habilitado, permite ver los archivos de diario del contenedor desde el host (pero no viceversa
al revés). Toma uno de "no", "host", "try-host", "guest", "try-guest", "auto". Si no",
la revista no está vinculada. Si es "host", los archivos de diario se almacenan en el archivo host.
sistema (debajo de / var / log / journal /Identificador de máquina) y el subdirectorio está enlazado en
el contenedor en el mismo lugar. Si es "invitado", los archivos de diario se almacenan en el
sistema de archivos invitado (debajo de / var / log / journal /Identificador de máquina) y el subdirectorio es
enlazado simbólicamente al host en la misma ubicación. "try-host" y "try-guest" hacen lo mismo
pero no falle si el host no tiene habilitado el registro de diario persistente. Si es "automático"
(el predeterminado), y el subdirectorio derecho de / var / log / journal existe, se vinculará
montado en el contenedor. Si el subdirectorio no existe, no se puede vincular
realizado. Efectivamente, al iniciar un contenedor una vez con "invitado" o "host" se vinculará el
journal de forma persistente si se utiliza más allá del valor predeterminado de "auto".

-j
Equivalente a --link-journal = try-guest.

--solo lectura
Monte el sistema de archivos raíz como de solo lectura para el contenedor.

--bind =, --bind-ro =
Vincular el montaje de un archivo o directorio desde el host al contenedor. Toma uno de: un camino
argumento - en cuyo caso la ruta especificada se montará desde el host al mismo
ruta en el contenedor -, o un par de rutas separadas por dos puntos - en cuyo caso la primera
la ruta especificada es la fuente en el host, y la segunda ruta es el destino en
el contenedor -, o un triple separado por dos puntos de ruta de origen, ruta de destino y
opciones de montaje. Las opciones de montaje están separadas por comas y, actualmente, solo "rbind" y
"norbind" están permitidos. El valor predeterminado es "rbind". Los escapes de barra invertida se interpretan, por lo que "\:"
se puede utilizar para incrustar dos puntos en cualquier ruta. Esta opción se puede especificar varias
veces para crear múltiples puntos de montaje de enlace independientes. los --bind-ro = opción
crea montajes de enlace de solo lectura.

--tmpfs =
Monte un sistema de archivos tmpfs en el contenedor. Toma un único argumento de ruta absoluta
que especifica dónde montar la instancia tmpfs (en cuyo caso el directorio
el modo de acceso se elegirá como 0755, propiedad de root / root), u opcionalmente un
par de ruta separada por dos puntos y cadena de opciones de montaje que se utiliza para el montaje (en
en cuyo caso se elegirá el kernel predeterminado para el modo de acceso y el propietario, a menos que
especificado de otra manera). Esta opción es particularmente útil para montar directorios como
as / var como tmpfs, para permitir sistemas sin estado, en particular cuando se combinan con
--solo lectura. Los escapes de barra invertida se interpretan en la ruta, por lo que "\:" se puede usar para
incrustar dos puntos en el camino.

--overlay =, --overlay-ro =
Combine varios árboles de directorios en un sistema de archivos de superposición y móntelo en el
envase. Toma una lista de rutas separadas por dos puntos a los árboles de directorios para combinar y
el punto de montaje de destino.

Los escapes de barra invertida se interpretan en las rutas, por lo que "\:" se puede usar para insertar dos puntos en
los caminos.

Si se especifican tres o más rutas, la última ruta especificada es el destino.
punto de montaje en el contenedor, todas las rutas especificadas antes se refieren a árboles de directorio en
el host y se combinan en el orden especificado en un sistema de archivos de superposición. los
La ruta más a la izquierda es, por lo tanto, el árbol de directorios más bajo, la penúltima ruta es la más alta.
árbol de directorios en el orden de apilamiento. Si --overlay-ro = se utiliza en lugar de --overlay =,
Se crea un sistema de archivos de superposición de solo lectura. Si un sistema de archivos de superposición de escritura
creado, todos los cambios realizados se escriben en el árbol de directorios más alto del
orden de apilamiento, es decir, el penúltimo especificado.

Si solo se especifican dos rutas, la segunda ruta especificada se utiliza tanto como
árbol de directorio de nivel superior en el orden de apilamiento como se ve desde el host, así como el
punto de montaje para el sistema de archivos de superposición en el contenedor. Al menos dos caminos deben
se especifico.

Para obtener detalles sobre los sistemas de archivos de superposición, consulte superposiciónfs.txt[3]. Tenga en cuenta que la semántica
de los sistemas de archivos de superposición son sustancialmente diferentes de los sistemas de archivos normales, en
en particular con respecto a la información de inodo y dispositivo reportada. Dispositivo e inodo
la información puede cambiar para un archivo mientras se está escribiendo, y los procesos pueden cambiar
vea versiones desactualizadas de archivos a veces. Tenga en cuenta que este interruptor automáticamente
deriva la opción de montaje "workdir =" para el sistema de archivos de superposición del nivel superior
árbol de directorios, lo que lo convierte en un hermano de él. Por tanto, es esencial que el nivel superior
El árbol de directorios no es un punto de montaje en sí mismo (ya que el directorio de trabajo debe estar en el
mismo sistema de archivos que el árbol de directorios superior). También tenga en cuenta que el montaje "lowerdir ="
La opción recibe las rutas para apilar en el orden opuesto a este conmutador.

--setenv =
Especifica una asignación de variable de entorno para pasar al proceso de inicio en el
contenedor, en el formato "NOMBRE = VALOR". Esto puede usarse para anular el valor predeterminado
variables o para establecer variables adicionales. Este parámetro se puede utilizar más de una vez.

--sistema compartido
Permite que el contenedor comparta ciertas instalaciones del sistema con el host. Más
específicamente, esto desactiva el espacio de nombres PID, el espacio de nombres UTS y el espacio de nombres IPC, y
por lo tanto, permite al huésped ver e interactuar más fácilmente con procesos fuera del
envase. Tenga en cuenta que el uso de esta opción hace que sea imposible iniciar un
Sistema operativo en el contenedor, ya que un sistema de inicio no puede funcionar en este modo. Eso
sólo es útil para ejecutar programas o aplicaciones específicas de esta manera, sin involucrar a un
init system en el contenedor. Esta opción implica --register = no. Esta opción puede no
ser combinado con --bota.

--register =
Controla si el contenedor está registrado con mecanizado en sistema(8). Toma un booleano
argumento, que por defecto es "sí". Esta opción debe estar habilitada cuando el contenedor
ejecuta un sistema operativo completo (más específicamente: un sistema de inicio), y es útil para
asegúrese de que el contenedor sea accesible a través de máquinactl(1) y se muestra con herramientas como
ps(1). Si el contenedor no ejecuta un sistema de inicio, se recomienda configurar este
opción a "no". Tenga en cuenta que --sistema compartido implica --register = no.

--mantener-unidad
En lugar de crear una unidad de alcance transitorio para ejecutar el contenedor, simplemente regístrese
la unidad de servicio o alcance sistemad-nspawn ha sido invocado con mecanizado en sistema(8).
Esto no tiene ningún efecto si --register = no se utiliza. Este interruptor debe usarse si
sistemad-nspawn se invoca desde dentro de una unidad de servicio, y el único
El propósito es ejecutar un solo sistemad-nspawn envase. Esta opción no está disponible si
ejecutar desde una sesión de usuario.

--personality =
Controlar la arquitectura ("personalidad") informada por uname(2) en el contenedor.
Actualmente, solo se admiten "x86" y "x86-64". Esto es útil cuando se ejecuta una
contenedor en un host de 64 bits. Si no se utiliza este ajuste, la personalidad informada en
el contenedor es el mismo que el informado en el host.

-q, --tranquilo
Desactiva cualquier salida de estado de la propia herramienta. Cuando se usa este interruptor, el único
La salida de nspawn será la salida de la consola del propio sistema operativo del contenedor.

--volátil, --volátil =MODO
Arranca el contenedor en modo volátil. Cuando no se pasa ningún parámetro de modo o cuando se
especificado como si, el modo volátil completo está habilitado. Esto significa que el directorio raíz es
montado como una instancia "tmpfs" en su mayoría despoblada, y / usr del árbol del sistema operativo está montado
en él en modo de solo lectura (el sistema, por lo tanto, se inicia con recursos del sistema operativo de solo lectura, pero
estado y configuración prístinos, cualquier cambio en cualquiera de ellos se pierde al apagar).
Cuando el parámetro de modo se especifica como estado, el árbol del sistema operativo está montado como de solo lectura, pero
/ var se monta como una instancia "tmpfs" en él (el sistema se inicia con
recursos y configuración del sistema operativo de solo lectura, pero estado impecable y cualquier cambio en el
los últimos se pierden al apagar). Cuando el parámetro de modo se especifica como no (la
predeterminado), se puede escribir en todo el árbol del sistema operativo.

Tenga en cuenta que establecer esto en si or estado solo funcionará correctamente con sistemas operativos
en el contenedor que puede arrancar con solo / usr montados y pueden poblar
/ var automáticamente, según sea necesario.

--settings =MODO
Controla si sistemad-nspawn buscará y utilizará adicionales por contenedor
configuración de archivos .nspawn. Toma un valor booleano o especial anular or
de confianza.

Si está habilitado (el valor predeterminado), un archivo de configuración con el nombre de la máquina (como se especifica con
los --machine = o derivado del directorio o del nombre del archivo de imagen) con la
El sufijo .nspawn se busca en / etc / systemd / nspawn / y / run / systemd / nspawn /. Si esto es
que se encuentra allí, su configuración se lee y se utiliza. Si no se encuentra allí, es
posteriormente buscado en el mismo directorio que el archivo de imagen o en el
padre del directorio raíz del contenedor. En este caso, si se encuentra el archivo, su
Las configuraciones también se leerán y usarán, pero las configuraciones potencialmente inseguras se ignoran. Nota
que en ambos casos, la configuración en la línea de comando tiene prioridad sobre la
la configuración correspondiente de los archivos .nspawn cargados, si se especifican ambos. Inseguro
Las configuraciones se consideran todas las configuraciones que elevan los privilegios del contenedor o otorgan
acceso a recursos adicionales como archivos o directorios del host. Para detalles
sobre el formato y contenido de los archivos .nspawn, consulte systemd.nspawn(5).

Si esta opción se establece en anular, el archivo se busca, lee y utiliza de la misma manera,
sin embargo, el orden de precedencia se invierte: la configuración leída del archivo .nspawn
tienen prioridad sobre las opciones de línea de comando correspondientes, si se especifican ambas.

Si esta opción se establece en de confianza, el archivo se busca, lee y utiliza de la misma manera,
pero independientemente de que se encuentre en / etc / systemd / nspawn /, / run / systemd / nspawn / o al lado de
el archivo de imagen o el directorio raíz del contenedor, todas las configuraciones entrarán en vigencia, sin embargo,
Los argumentos de la línea de comandos siguen teniendo prioridad sobre la configuración correspondiente.

Si está deshabilitado, no se lee ningún archivo .nspawn ni configuraciones excepto las del comando
la línea está en efecto.

-h, --ayuda
Imprima un breve texto de ayuda y salga.

--versión
Imprima una cadena de versión corta y salga.

EJEMPLOS


Ejemplo 1. Descargar a Fedora imagen y comienzo a shell in it

# machinectl pull-raw --verify = no http://ftp.halifax.rwth-aachen.de/fedora/linux/releases/21/Cloud/Images/x86_64/Fedora-Cloud-Base-20141203-21.x86_64.raw.xz
# systemd-nspawn -M Fedora-Cloud-Base-20141203-21

Esto descarga una imagen usando máquinactl(1) y abre un caparazón en él.

Ejemplo 2. CONSTRUIR y bota a mínimo Fedora in a envase

# dnf -y --releasever = 23 --installroot = / srv / mycontainer --disablerepo = '*' --enablerepo = fedora --enablerepo = updates install systemd passwd dnf fedora-release vim-minimal
# systemd-nspawn -bD / srv / mycontainer

Esto instala una distribución mínima de Fedora en el directorio / srv / mycontainer / y luego
arranca un sistema operativo en un contenedor de espacio de nombres.

Ejemplo 3. Desovar a shell in a envase of a mínimo Debian red

# debootstrap --arch = amd64 inestable ~ / árbol-debian /
# sistemad-nspawn -D ~ / árbol-debian /

Esto instala una distribución mínima inestable de Debian en el directorio ~ / árbol-debian / y
luego genera un shell en un contenedor de espacio de nombres en él.

Ejemplo 4. Bota a mínimo Arco Linux in a envase

# paccorrea -c -d ~ / arco-árbol / bases
# sistemad-nspawn -bD ~ / arco-árbol /

Esto instala una distribución mínima de Arch Linux en el directorio ~ / arco-árbol / y luego
arranca un sistema operativo en un contenedor de espacio de nombres.

Ejemplo 5. Bota into an efímero "btrfs" instantánea of los fortaleza te

# sistemad-nspawn -D / -xb

Esto ejecuta una copia del sistema host en una instantánea "btrfs" que se elimina de inmediato.
cuando sale el contenedor. Todos los cambios en el sistema de archivos realizados durante el tiempo de ejecución se perderán en
apagado, por lo tanto.

Ejemplo 6. Ejecutar a envase con SELinux arenero EN LINEA contextos

# chcon system_u: object_r: svirt_sandbox_file_t: s0: c0, c1 -R / srv / container
# systemd-nspawn -L system_u: object_r: svirt_sandbox_file_t: s0: c0, c1 -Z system_u: system_r: svirt_lxc_net_t: s0: c0, c1 -D / srv / container / Bin / sh

SALIR ESTADO


Se devuelve el código de salida del programa ejecutado en el contenedor.

Use systemd-nspawn en línea usando los servicios de onworks.net


Servidores y estaciones de trabajo gratuitos

Descargar aplicaciones de Windows y Linux

  • 1
    OficinaPiso
    OficinaPiso
    OfficeFloor proporciona inversión de
    control de acoplamiento, con su: - dependencia
    inyección - inyección de continuación -
    inyección de hilo Para más información
    visita el...
    Descargar Office Floor
  • 2
    DivKit
    DivKit
    DivKit es un servidor de código abierto
    Marco de interfaz de usuario (SDUI). Te permite
    implementar actualizaciones provenientes del servidor para
    diferentes versiones de la aplicación. Además, puede ser
    usado para ...
    Descargar DivKit
  • 3
    subconvertidor
    subconvertidor
    Utilidad para convertir entre varios
    formato de suscripción. Usuarios de cohetes sombríos
    debe usar ss, ssr o v2ray como destino.
    Puede agregar &remark= a
    HT similar a Telegram...
    Descargar subconvertidor
  • 4
    CHAPOTEO
    CHAPOTEO
    SWASH es un numérico de propósito general
    herramienta para simular inestabilidad,
    no hidrostático, de superficie libre,
    fenómenos de transporte y flujo rotacional
    en aguas costeras como ...
    Descargar SWASH
  • 5
    VBA-M (Archivado - Ahora en Github)
    VBA-M (Archivado - Ahora en Github)
    El proyecto se ha trasladado a
    https://github.com/visualboyadvance-m/visualboyadvance-m
    caracteristicas:Creación de trucosguardar estadosmulti
    sistema, compatible con gba, gbc, gb, sgb,
    sgb2tu...
    Descargar VBA-M (Archivado - Ahora en Github)
  • 6
    Stacer
    Stacer
    Optimizador y monitorización del sistema Linux
    Repositorio de Github:
    https://github.com/oguzhaninan/Stacer.
    Público: Usuarios finales / Escritorio. Usuario
    interfaz: Qt. Programando La...
    Descargar Stacer
  • Más "

Comandos de Linux

  • 1
    7za
    7za
    7za - Un archivador de archivos con la más alta
    índice de compresión ...
    Ejecutar 7za
  • 2
    7zr
    7zr
    7zr: un archivador de archivos con la máxima
    índice de compresión ...
    Ejecute 7zr
  • 3
    cpan
    cpan
    cpan: interactúa fácilmente con CPAN desde
    la linea de comando...
    Ejecutar cpan
  • 4
    cpan2debp
    cpan2debp
    dh-make-perl - Crear código fuente de Debian
    paquetes de módulos Perl...
    Ejecutar cpan2debp
  • 5
    joder
    joder
    freewheeling - musical en vivo en bucle
    instrumento...
    Corre rápido
  • 6
    fwexec
    fwexec
    fwexec - programa para cargar y volver a ejecutar
    archivo de imagen a un dispositivo NXT conectado...
    Ejecutar fwexec
  • Más "

Ad