/dev/virtio-ports/org.libguestfs.channel.0
The virtio serial port which "guestfsd" connects to.
Guestfs daemon
guestfsd [-r]
[{-v | --verbose}]
"guestfsd" is the libguestfs daemon. Normal users never need to run this program explicitly. This man page discusses what "guestfsd" does in both the libguestfs appliance and when using libguestfs live.
For the architecture of the libguestfs appliance, see "ARCHITECTURE" in guestfs(3).
After the appliance boots, the /init script in the appliance starts "guestfsd" with no arguments. "guestfsd" opens the virtio-serial port on a known path (see "FILES"). It initiates the protocol (see "COMMUNICATION PROTOCOL" in guestfs(3)) and processes requests one at a time from the library until the appliance is destroyed.
Filesystems are mounted under /sysroot and all filesystem operations happen relative to this directory.
In the libguestfs live case, "guestfsd -r" is started from the rc-scripts, systemd, etc.
The "-r" option causes the daemon to operate on the root filesystem instead of /sysroot.
Currently (because of limitations in virtio-serial) only one client can connect at a time, and "guestfsd" must be restarted after each client disconnects. If libguestfs live were changed to use a different transport such as TCP/IP then this limitation could be removed.
-?
--help
Display brief help.
-c CHANNEL
--channel CHANNEL
--channel fd:N
Pass the name of the virtio-serial channel, serial port, etc. over which guestfsd will communicate with the library. If this parameter is not given, then an internal default port is used.
The "fd:N" form causes guestfsd to use the file descriptor "N" directly.
-l
--listen
Instead of opening the "guestfs_channel" and thus expecting that it already exists, create the channel as a Unix domain socket, listen on it, and accept a single connection. This is mainly used for testing the daemon.
-n
--network
Enable network features in the daemon.
-r
Set the root filesystem to be / (instead of the default which is /sysroot). Also do not unmount filesystems when the daemon exits.
This option is used to enable libguestfs live.
-v
--verbose
Enable verbose messages for debugging.
The verbose flag is also set if the Linux command line contains the substring "guestfs_verbose=1".
This program returns 0 if successful, or non-zero if there was an error.
/dev/virtio-ports/org.libguestfs.channel.0
The virtio serial port which "guestfsd" connects to.
/proc/cmdline
The Linux command line is parsed to discover "guestfs_*" flags. The following flags are understood:
guestfs_verbose=1Enable verbose messages. This flag is passed by the libguestfs library to the appliance to make the daemon more verbose (it acts like the -v flag on the command line). Unrelated to the daemon, it also causes the appliance init script to print out a lot more debugging information.
guestfs_channel=PATHSet the path to the virtio-serial channel to something other than the default (which is /dev/virtio-ports/org.libguestfs.channel.0). This is used by the User-Mode Linux backend to use a regular emulated serial port instead of virtio-serial.
guestfs_network=1This is set if the appliance network is enabled (see "guestfs_set_network").
6 releases since Debian 8 (Jessie); the text changed 5 times.
--channel since Debian 9 (Stretch);
--listen since Debian 9 (Stretch);
--network since Debian 9 (Stretch);
-c since Debian 9 (Stretch);
-l since Debian 9 (Stretch);
-n since Debian 9 (Stretch).