1virt-cat(1)                 Virtualization Support                 virt-cat(1)
2
3
4

NAME

6       virt-cat - Display files in a virtual machine
7

SYNOPSIS

9        virt-cat [--options] -d domname file [file ...]
10
11        virt-cat [--options] -a disk.img [-a disk.img ...] file [file ...]
12
13       Old-style:
14
15        virt-cat domname file
16
17        virt-cat disk.img file
18

DESCRIPTION

20       "virt-cat" is a command line tool to display the contents of "file"
21       where "file" exists in the named virtual machine (or disk image).
22
23       Multiple filenames can be given, in which case they are concatenated
24       together.  Each filename must be a full path, starting at the root
25       directory (starting with '/').
26
27       "virt-cat" can be used to quickly view a file.  To edit a file, use
28       "virt-edit".  For more complex cases you should look at the
29       guestfish(1) tool (see "USING GUESTFISH" below).
30

EXAMPLES

32       Display /etc/fstab file from inside the libvirt VM called "mydomain":
33
34        virt-cat -d mydomain /etc/fstab
35
36       Find out what packages were recently installed:
37
38        virt-cat -d mydomain /var/log/yum.log | tail
39
40       Find out who is logged on inside a virtual machine:
41
42        virt-cat -d mydomain /var/run/utmp > /tmp/utmp
43        who /tmp/utmp
44
45       or who was logged on:
46
47        virt-cat -d mydomain /var/log/wtmp > /tmp/wtmp
48        last -f /tmp/wtmp
49

OPTIONS

51       --help
52           Display brief help.
53
54       -a file
55       --add file
56           Add file which should be a disk image from a virtual machine.  If
57           the virtual machine has multiple block devices, you must supply all
58           of them with separate -a options.
59
60           The format of the disk image is auto-detected.  To override this
61           and force a particular format use the --format=.. option.
62
63       -a URI
64       --add URI
65           Add a remote disk.  See "ADDING REMOTE STORAGE" in guestfish(1).
66
67       -c URI
68       --connect URI
69           If using libvirt, connect to the given URI.  If omitted, then we
70           connect to the default libvirt hypervisor.
71
72           If you specify guest block devices directly (-a), then libvirt is
73           not used at all.
74
75       -d guest
76       --domain guest
77           Add all the disks from the named libvirt guest.  Domain UUIDs can
78           be used instead of names.
79
80       --echo-keys
81           When prompting for keys and passphrases, virt-cat normally turns
82           echoing off so you cannot see what you are typing.  If you are not
83           worried about Tempest attacks and there is no one else in the room
84           you can specify this flag to see what you are typing.
85
86       --format=raw|qcow2|..
87       --format
88           The default for the -a option is to auto-detect the format of the
89           disk image.  Using this forces the disk format for -a options which
90           follow on the command line.  Using --format with no argument
91           switches back to auto-detection for subsequent -a options.
92
93           For example:
94
95            virt-cat --format=raw -a disk.img file
96
97           forces raw format (no auto-detection) for disk.img.
98
99            virt-cat --format=raw -a disk.img --format -a another.img file
100
101           forces raw format (no auto-detection) for disk.img and reverts to
102           auto-detection for another.img.
103
104           If you have untrusted raw-format guest disk images, you should use
105           this option to specify the disk format.  This avoids a possible
106           security problem with malicious guests (CVE-2010-3851).
107
108       --keys-from-stdin
109           Read key or passphrase parameters from stdin.  The default is to
110           try to read passphrases from the user by opening /dev/tty.
111
112       -m dev[:mountpoint[:options[:fstype]]]
113       --mount dev[:mountpoint[:options[:fstype]]]
114           Mount the named partition or logical volume on the given
115           mountpoint.
116
117           If the mountpoint is omitted, it defaults to /.
118
119           Specifying any mountpoint disables the inspection of the guest and
120           the mount of its root and all of its mountpoints, so make sure to
121           mount all the mountpoints needed to work with the filenames given
122           as arguments.
123
124           If you don’t know what filesystems a disk image contains, you can
125           either run guestfish without this option, then list the partitions,
126           filesystems and LVs available (see "list-partitions", "list-
127           filesystems" and "lvs" commands), or you can use the
128           virt-filesystems(1) program.
129
130           The third (and rarely used) part of the mount parameter is the list
131           of mount options used to mount the underlying filesystem.  If this
132           is not given, then the mount options are either the empty string or
133           "ro" (the latter if the --ro flag is used).  By specifying the
134           mount options, you override this default choice.  Probably the only
135           time you would use this is to enable ACLs and/or extended
136           attributes if the filesystem can support them:
137
138            -m /dev/sda1:/:acl,user_xattr
139
140           Using this flag is equivalent to using the "mount-options" command.
141
142           The fourth part of the parameter is the filesystem driver to use,
143           such as "ext3" or "ntfs". This is rarely needed, but can be useful
144           if multiple drivers are valid for a filesystem (eg: "ext2" and
145           "ext3"), or if libguestfs misidentifies a filesystem.
146
147       -v
148       --verbose
149           Enable verbose messages for debugging.
150
151       -V
152       --version
153           Display version number and exit.
154
155       -x  Enable tracing of libguestfs API calls.
156

OLD-STYLE COMMAND LINE ARGUMENTS

158       Previous versions of virt-cat allowed you to write either:
159
160        virt-cat disk.img [disk.img ...] file
161
162       or
163
164        virt-cat guestname file
165
166       whereas in this version you should use -a or -d respectively to avoid
167       the confusing case where a disk image might have the same name as a
168       guest.
169
170       For compatibility the old style is still supported.
171

LOG FILES

173       To list out the log files from guests, see the related tool
174       virt-log(1).  It understands binary log formats such as the systemd
175       journal.
176
177       To follow (tail) text log files, use virt-tail(1).
178

WINDOWS PATHS

180       "virt-cat" has a limited ability to understand Windows drive letters
181       and paths (eg. E:\foo\bar.txt).
182
183       If and only if the guest is running Windows then:
184
185       ·   Drive letter prefixes like "C:" are resolved against the Windows
186           Registry to the correct filesystem.
187
188       ·   Any backslash ("\") characters in the path are replaced with
189           forward slashes so that libguestfs can process it.
190
191       ·   The path is resolved case insensitively to locate the file that
192           should be displayed.
193
194       There are some known shortcomings:
195
196       ·   Some NTFS symbolic links may not be followed correctly.
197
198       ·   NTFS junction points that cross filesystems are not followed.
199

USING GUESTFISH

201       guestfish(1) is a more powerful, lower level tool which you can use
202       when "virt-cat" doesn't work.
203
204       Using "virt-cat" is approximately equivalent to doing:
205
206        guestfish --ro -i -d domname download file -
207
208       where "domname" is the name of the libvirt guest, and "file" is the
209       full path to the file.  Note the final "-" (meaning "output to
210       stdout").
211
212       The command above uses libguestfs’s guest inspection feature and so
213       does not work on guests that libguestfs cannot inspect, or on things
214       like arbitrary disk images that don't contain guests.  To display a
215       file from a disk image directly, use:
216
217        guestfish --ro -a disk.img -m /dev/sda1 download file -
218
219       where disk.img is the disk image, /dev/sda1 is the filesystem within
220       the disk image, and "file" is the full path to the file.
221

EXIT STATUS

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

SEE ALSO

227       guestfs(3), guestfish(1), virt-copy-out(1), virt-edit(1), virt-log(1),
228       virt-tail(1), virt-tar-out(1), http://libguestfs.org/.
229

AUTHOR

231       Richard W.M. Jones http://people.redhat.com/~rjones/
232
234       Copyright (C) 2010-2012 Red Hat Inc.
235

LICENSE

237       This program is free software; you can redistribute it and/or modify it
238       under the terms of the GNU General Public License as published by the
239       Free Software Foundation; either version 2 of the License, or (at your
240       option) any later version.
241
242       This program is distributed in the hope that it will be useful, but
243       WITHOUT ANY WARRANTY; without even the implied warranty of
244       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
245       General Public License for more details.
246
247       You should have received a copy of the GNU General Public License along
248       with this program; if not, write to the Free Software Foundation, Inc.,
249       51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
250

BUGS

252       To get a list of bugs against libguestfs, use this link:
253       https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools
254
255       To report a new bug against libguestfs, use this link:
256       https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools
257
258       When reporting a bug, please supply:
259
260       ·   The version of libguestfs.
261
262       ·   Where you got libguestfs (eg. which Linux distro, compiled from
263           source, etc)
264
265       ·   Describe the bug accurately and give a way to reproduce it.
266
267       ·   Run libguestfs-test-tool(1) and paste the complete, unedited output
268           into the bug report.
269
270
271
272libguestfs-1.38.2                 2018-05-15                       virt-cat(1)
Impressum