VIRT-LOGIN-SHELL(1) Virtualization Support VIRT-LOGIN-SHELL(1)
virt-login-shell - tool to execute a shell within a container matching
the users name
The virt-login-shell program is a setuid shell that is used to join an
LXC container that matches the user's name. If the container is not
running, virt-login-shell will attempt to start the container. virt-
login-shell is not allowed to be run by root. Normal users will get
added to a container that matches their username, if it exists, and
they are configured in /etc/libvirt/virt-login-shell.conf.
The basic structure of most virt-login-shell usage is:
Instruct the shell to run CMD instead of presenting an interactive
Display command line help usage then exit.
Display version information then exit.
By default, virt-login-shell will execute the /bin/sh program for the
user. You can modify this behaviour by defining the shell variable in
eg. shell = [ "/bin/bash" ]
If the 'auto_shell' config option is set then it will attempt to
automatically detect the shell from /etc/password inside the container.
This should only be done if the container has a separate /etc directory
from the host, otherwise it will end up recursively invoking virt-
eg. auto_shell = 1
By default no users are allowed to use virt-login-shell, if you want to
allow certain users to use virt-login-shell, you need to modify the
allowed_users variable in /etc/libvirt/virt-login-shell.conf.
eg. allowed_users = [ "tom", "dick", "harry" ]
virt-login-shell normally returns the exit status of the command it
executed. If the command was killed by a signal, but that signal is not
fatal to virt-login-shell, then it returns the signal number plus 128.
Exit status generated by virt-login-shell itself:
0 An option was used to learn more about this binary.
125 Generic error before attempting execution of the configured shell;
for example, if libvirtd is not running.
126 The configured shell exists but could not be executed.
127 The configured shell could not be found.
Report any bugs discovered to the libvirt community via the mailing
list <https://libvirt.org/contact.html> or bug tracker
<https://libvirt.org/bugs.html>. Alternatively report bugs to your
software distributor / vendor.
Please refer to the AUTHORS file distributed with libvirt.
Daniel Walsh <dwalsh at redhat dot com>
Copyright (C) 2013-2014 Red Hat, Inc., and the authors listed in the
libvirt AUTHORS file.
virt-login-shell is distributed under the terms of the GNU LGPL v2+.
This is free software; see the source for copying conditions. There is
NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
libvirt-3.9.0 2017-10-30 VIRT-LOGIN-SHELL(1)