File: guestfsd.pod

package info (click to toggle)
libguestfs 1%3A1.28.1-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 65,676 kB
  • ctags: 42,708
  • sloc: ansic: 374,827; ml: 40,236; sh: 19,721; java: 8,493; perl: 8,244; makefile: 5,740; cs: 5,602; haskell: 5,088; python: 2,591; erlang: 2,197; xml: 1,494; ruby: 271; pascal: 218; yacc: 123; lex: 110; cpp: 10
file content (126 lines) | stat: -rw-r--r-- 3,071 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
=head1 NAME

guestfsd - guestfs daemon

=head1 SYNOPSIS

 guestfsd [-r] [-v|--verbose]

=head1 DESCRIPTION

C<guestfsd> is the libguestfs daemon.  Normal users never need to run
this program explicitly.  This man page discusses what C<guestfsd>
does in both the libguestfs appliance and when using libguestfs live.

=head2 LIBGUESTFS APPLIANCE

For the architecture of the libguestfs appliance, see
L<guestfs(3)/ARCHITECTURE>.

After the appliance boots, the C</init> script in the appliance starts
C<guestfsd> with no arguments.  C<guestfsd> opens the virtio-serial
port on a known path (see L</FILES>).  It initiates the protocol (see
L<guestfs(3)/COMMUNICATION PROTOCOL>) and processes requests one at a
time from the library until the appliance is destroyed.

Filesystems are mounted under C</sysroot> and all filesystem
operations happen relative to this directory.

=head2 LIBGUESTFS LIVE

In the libguestfs live case, C<guestfsd -r> is started from the
rc-scripts, systemd, etc.

The C<-r> option causes the daemon to operate on the root filesystem
instead of C</sysroot>.

Currently (because of limitations in virtio-serial) only one client
can connect at a time, and C<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.

=head1 OPTIONS

=over 4

=item B<-?>

=item B<--help>

Display brief help.

=item B<-r>

Set the root filesystem to be C</> (instead of the default which is
C</sysroot>).  Also do not unmount filesystems when the daemon exits.

This option is used to enable libguestfs live.

=item B<-v>

=item B<--verbose>

Enable verbose messages for debugging.

The verbose flag is also set if the Linux command line contains the
substring C<guestfs_verbose=1>.

=back

=head1 EXIT STATUS

This program returns 0 if successful, or non-zero if there was an
error.

=head1 FILES

=over 4

=item C</dev/virtio-ports/org.libguestfs.channel.0>

The virtio serial port which C<guestfsd> connects to.

=item C</proc/cmdline>

The Linux command line is parsed to discover C<guestfs_*> flags.  The
following flags are understood:

=over 4

=item B<guestfs_verbose=1>

Enable verbose messages.  This flag is passed by the libguestfs
library to the appliance to make the daemon more verbose (it acts like
the I<-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.

=item B<guestfs_channel=PATH>

Set the path to the virtio-serial channel to something other than the
default (which is C</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.

=item B<guestfs_network=1>

This is set if the appliance network is enabled (see
C<guestfs_set_network>).

=back

=back

=head1 SEE ALSO

L<guestfs(3)>,
L<http://libguestfs.org/>.

=head1 AUTHOR

Richard W.M. Jones L<http://people.redhat.com/~rjones/>

=head1 COPYRIGHT

Copyright (C) 2009-2014 Red Hat Inc.