Generated code for the virtio_blk change.
[libguestfs.git] / python / guestfs.py
index 2600ff2..ad44df7 100644 (file)
@@ -197,7 +197,7 @@ class GuestFS:
         to modify the image).
         
         This is equivalent to the qemu parameter "-drive
         to modify the image).
         
         This is equivalent to the qemu parameter "-drive
-        file=filename".
+        file=filename,cache=off,if=virtio".
         
         Note that this call checks for the existence of
         "filename". This stops you from specifying other types
         
         Note that this call checks for the existence of
         "filename". This stops you from specifying other types
@@ -234,7 +234,7 @@ class GuestFS:
         although qemu can support this.
         
         This is equivalent to the qemu parameter "-drive
         although qemu can support this.
         
         This is equivalent to the qemu parameter "-drive
-        file=filename,snapshot=on".
+        file=filename,snapshot=on,if=virtio".
         
         Note that this call checks for the existence of
         "filename". This stops you from specifying other types
         
         Note that this call checks for the existence of
         "filename". This stops you from specifying other types
@@ -415,6 +415,33 @@ class GuestFS:
         """
         return libguestfsmod.end_busy (self._o)
 
         """
         return libguestfsmod.end_busy (self._o)
 
+    def set_memsize (self, memsize):
+        u"""This sets the memory size in megabytes allocated to the
+        qemu subprocess. This only has any effect if called
+        before "g.launch".
+        
+        You can also change this by setting the environment
+        variable "LIBGUESTFS_MEMSIZE" before the handle is
+        created.
+        
+        For more information on the architecture of libguestfs,
+        see guestfs(3).
+        """
+        return libguestfsmod.set_memsize (self._o, memsize)
+
+    def get_memsize (self):
+        u"""This gets the memory size in megabytes allocated to the
+        qemu subprocess.
+        
+        If "g.set_memsize" was not called on this handle, and if
+        "LIBGUESTFS_MEMSIZE" was not set, then this returns the
+        compiled-in default value for memsize.
+        
+        For more information on the architecture of libguestfs,
+        see guestfs(3).
+        """
+        return libguestfsmod.get_memsize (self._o)
+
     def mount (self, device, mountpoint):
         u"""Mount a guest disk at a position in the filesystem.
         Block devices are named "/dev/sda", "/dev/sdb" and so
     def mount (self, device, mountpoint):
         u"""Mount a guest disk at a position in the filesystem.
         Block devices are named "/dev/sda", "/dev/sdb" and so
@@ -947,7 +974,9 @@ class GuestFS:
         The single parameter is an argv-style list of arguments.
         The first element is the name of the program to run.
         Subsequent elements are parameters. The list must be
         The single parameter is an argv-style list of arguments.
         The first element is the name of the program to run.
         Subsequent elements are parameters. The list must be
-        non-empty (ie. must contain a program name).
+        non-empty (ie. must contain a program name). Note that
+        the command runs directly, and is *not* invoked via the
+        shell (see "g.sh").
         
         The return value is anything printed to *stdout* by the
         command.
         
         The return value is anything printed to *stdout* by the
         command.
@@ -977,6 +1006,8 @@ class GuestFS:
         u"""This is the same as "g.command", but splits the result
         into a list of lines.
         
         u"""This is the same as "g.command", but splits the result
         into a list of lines.
         
+        See also: "g.sh_lines"
+        
         This function returns a list of strings.
         
         Because of the message protocol, there is a transfer
         This function returns a list of strings.
         
         Because of the message protocol, there is a transfer
@@ -1338,6 +1369,8 @@ class GuestFS:
         *not* enough to securely wipe the device). It should be
         sufficient to remove any partition tables, filesystem
         superblocks and so on.
         *not* enough to securely wipe the device). It should be
         sufficient to remove any partition tables, filesystem
         superblocks and so on.
+        
+        See also: "g.scrub_device".
         """
         return libguestfsmod.zero (self._o, device)
 
         """
         return libguestfsmod.zero (self._o, device)
 
@@ -1472,7 +1505,7 @@ class GuestFS:
         """
         return libguestfsmod.pvresize (self._o, device)
 
         """
         return libguestfsmod.pvresize (self._o, device)
 
-    def sfdisk_N (self, device, n, cyls, heads, sectors, line):
+    def sfdisk_N (self, device, partnum, cyls, heads, sectors, line):
         u"""This runs sfdisk(8) option to modify just the single
         partition "n" (note: "n" counts from 1).
         
         u"""This runs sfdisk(8) option to modify just the single
         partition "n" (note: "n" counts from 1).
         
@@ -1482,7 +1515,7 @@ class GuestFS:
         This command is dangerous. Without careful use you can
         easily destroy all your data.
         """
         This command is dangerous. Without careful use you can
         easily destroy all your data.
         """
-        return libguestfsmod.sfdisk_N (self._o, device, n, cyls, heads, sectors, line)
+        return libguestfsmod.sfdisk_N (self._o, device, partnum, cyls, heads, sectors, line)
 
     def sfdisk_l (self, device):
         u"""This displays the partition table on "device", in the
 
     def sfdisk_l (self, device):
         u"""This displays the partition table on "device", in the
@@ -1621,3 +1654,307 @@ class GuestFS:
         """
         return libguestfsmod.ntfs_3g_probe (self._o, rw, device)
 
         """
         return libguestfsmod.ntfs_3g_probe (self._o, rw, device)
 
+    def sh (self, command):
+        u"""This call runs a command from the guest filesystem via
+        the guest's "/bin/sh".
+        
+        This is like "g.command", but passes the command to:
+        
+        /bin/sh -c "command"
+        
+        Depending on the guest's shell, this usually results in
+        wildcards being expanded, shell expressions being
+        interpolated and so on.
+        
+        All the provisos about "g.command" apply to this call.
+        """
+        return libguestfsmod.sh (self._o, command)
+
+    def sh_lines (self, command):
+        u"""This is the same as "g.sh", but splits the result into a
+        list of lines.
+        
+        See also: "g.command_lines"
+        
+        This function returns a list of strings.
+        """
+        return libguestfsmod.sh_lines (self._o, command)
+
+    def glob_expand (self, pattern):
+        u"""This command searches for all the pathnames matching
+        "pattern" according to the wildcard expansion rules used
+        by the shell.
+        
+        If no paths match, then this returns an empty list
+        (note: not an error).
+        
+        It is just a wrapper around the C glob(3) function with
+        flags "GLOB_MARK|GLOB_BRACE". See that manual page for
+        more details.
+        
+        This function returns a list of strings.
+        """
+        return libguestfsmod.glob_expand (self._o, pattern)
+
+    def scrub_device (self, device):
+        u"""This command writes patterns over "device" to make data
+        retrieval more difficult.
+        
+        It is an interface to the scrub(1) program. See that
+        manual page for more details.
+        
+        This command is dangerous. Without careful use you can
+        easily destroy all your data.
+        """
+        return libguestfsmod.scrub_device (self._o, device)
+
+    def scrub_file (self, file):
+        u"""This command writes patterns over a file to make data
+        retrieval more difficult.
+        
+        The file is *removed* after scrubbing.
+        
+        It is an interface to the scrub(1) program. See that
+        manual page for more details.
+        """
+        return libguestfsmod.scrub_file (self._o, file)
+
+    def scrub_freespace (self, dir):
+        u"""This command creates the directory "dir" and then fills
+        it with files until the filesystem is full, and scrubs
+        the files as for "g.scrub_file", and deletes them. The
+        intention is to scrub any free space on the partition
+        containing "dir".
+        
+        It is an interface to the scrub(1) program. See that
+        manual page for more details.
+        """
+        return libguestfsmod.scrub_freespace (self._o, dir)
+
+    def mkdtemp (self, template):
+        u"""This command creates a temporary directory. The
+        "template" parameter should be a full pathname for the
+        temporary directory name with the final six characters
+        being "XXXXXX".
+        
+        For example: "/tmp/myprogXXXXXX" or
+        "/Temp/myprogXXXXXX", the second one being suitable for
+        Windows filesystems.
+        
+        The name of the temporary directory that was created is
+        returned.
+        
+        The temporary directory is created with mode 0700 and is
+        owned by root.
+        
+        The caller is responsible for deleting the temporary
+        directory and its contents after use.
+        
+        See also: mkdtemp(3)
+        """
+        return libguestfsmod.mkdtemp (self._o, template)
+
+    def wc_l (self, path):
+        u"""This command counts the lines in a file, using the "wc
+        -l" external command.
+        """
+        return libguestfsmod.wc_l (self._o, path)
+
+    def wc_w (self, path):
+        u"""This command counts the words in a file, using the "wc
+        -w" external command.
+        """
+        return libguestfsmod.wc_w (self._o, path)
+
+    def wc_c (self, path):
+        u"""This command counts the characters in a file, using the
+        "wc -c" external command.
+        """
+        return libguestfsmod.wc_c (self._o, path)
+
+    def head (self, path):
+        u"""This command returns up to the first 10 lines of a file
+        as a list of strings.
+        
+        This function returns a list of strings.
+        
+        Because of the message protocol, there is a transfer
+        limit of somewhere between 2MB and 4MB. To transfer
+        large files you should use FTP.
+        """
+        return libguestfsmod.head (self._o, path)
+
+    def head_n (self, nrlines, path):
+        u"""If the parameter "nrlines" is a positive number, this
+        returns the first "nrlines" lines of the file "path".
+        
+        If the parameter "nrlines" is a negative number, this
+        returns lines from the file "path", excluding the last
+        "nrlines" lines.
+        
+        If the parameter "nrlines" is zero, this returns an
+        empty list.
+        
+        This function returns a list of strings.
+        
+        Because of the message protocol, there is a transfer
+        limit of somewhere between 2MB and 4MB. To transfer
+        large files you should use FTP.
+        """
+        return libguestfsmod.head_n (self._o, nrlines, path)
+
+    def tail (self, path):
+        u"""This command returns up to the last 10 lines of a file
+        as a list of strings.
+        
+        This function returns a list of strings.
+        
+        Because of the message protocol, there is a transfer
+        limit of somewhere between 2MB and 4MB. To transfer
+        large files you should use FTP.
+        """
+        return libguestfsmod.tail (self._o, path)
+
+    def tail_n (self, nrlines, path):
+        u"""If the parameter "nrlines" is a positive number, this
+        returns the last "nrlines" lines of the file "path".
+        
+        If the parameter "nrlines" is a negative number, this
+        returns lines from the file "path", starting with the
+        "-nrlines"th line.
+        
+        If the parameter "nrlines" is zero, this returns an
+        empty list.
+        
+        This function returns a list of strings.
+        
+        Because of the message protocol, there is a transfer
+        limit of somewhere between 2MB and 4MB. To transfer
+        large files you should use FTP.
+        """
+        return libguestfsmod.tail_n (self._o, nrlines, path)
+
+    def df (self):
+        u"""This command runs the "df" command to report disk space
+        used.
+        
+        This command is mostly useful for interactive sessions.
+        It is *not* intended that you try to parse the output
+        string. Use "statvfs" from programs.
+        """
+        return libguestfsmod.df (self._o)
+
+    def df_h (self):
+        u"""This command runs the "df -h" command to report disk
+        space used in human-readable format.
+        
+        This command is mostly useful for interactive sessions.
+        It is *not* intended that you try to parse the output
+        string. Use "statvfs" from programs.
+        """
+        return libguestfsmod.df_h (self._o)
+
+    def du (self, path):
+        u"""This command runs the "du -s" command to estimate file
+        space usage for "path".
+        
+        "path" can be a file or a directory. If "path" is a
+        directory then the estimate includes the contents of the
+        directory and all subdirectories (recursively).
+        
+        The result is the estimated size in *kilobytes* (ie.
+        units of 1024 bytes).
+        """
+        return libguestfsmod.du (self._o, path)
+
+    def initrd_list (self, path):
+        u"""This command lists out files contained in an initrd.
+        
+        The files are listed without any initial "/" character.
+        The files are listed in the order they appear (not
+        necessarily alphabetical). Directory names are listed as
+        separate items.
+        
+        Old Linux kernels (2.4 and earlier) used a compressed
+        ext2 filesystem as initrd. We *only* support the newer
+        initramfs format (compressed cpio files).
+        
+        This function returns a list of strings.
+        """
+        return libguestfsmod.initrd_list (self._o, path)
+
+    def mount_loop (self, file, mountpoint):
+        u"""This command lets you mount "file" (a filesystem image
+        in a file) on a mount point. It is entirely equivalent
+        to the command "mount -o loop file mountpoint".
+        """
+        return libguestfsmod.mount_loop (self._o, file, mountpoint)
+
+    def mkswap (self, device):
+        u"""Create a swap partition on "device".
+        """
+        return libguestfsmod.mkswap (self._o, device)
+
+    def mkswap_L (self, label, device):
+        u"""Create a swap partition on "device" with label "label".
+        """
+        return libguestfsmod.mkswap_L (self._o, label, device)
+
+    def mkswap_U (self, uuid, device):
+        u"""Create a swap partition on "device" with UUID "uuid".
+        """
+        return libguestfsmod.mkswap_U (self._o, uuid, device)
+
+    def mknod (self, mode, devmajor, devminor, path):
+        u"""This call creates block or character special devices, or
+        named pipes (FIFOs).
+        
+        The "mode" parameter should be the mode, using the
+        standard constants. "devmajor" and "devminor" are the
+        device major and minor numbers, only used when creating
+        block and character special devices.
+        """
+        return libguestfsmod.mknod (self._o, mode, devmajor, devminor, path)
+
+    def mkfifo (self, mode, path):
+        u"""This call creates a FIFO (named pipe) called "path" with
+        mode "mode". It is just a convenient wrapper around
+        "g.mknod".
+        """
+        return libguestfsmod.mkfifo (self._o, mode, path)
+
+    def mknod_b (self, mode, devmajor, devminor, path):
+        u"""This call creates a block device node called "path" with
+        mode "mode" and device major/minor "devmajor" and
+        "devminor". It is just a convenient wrapper around
+        "g.mknod".
+        """
+        return libguestfsmod.mknod_b (self._o, mode, devmajor, devminor, path)
+
+    def mknod_c (self, mode, devmajor, devminor, path):
+        u"""This call creates a char device node called "path" with
+        mode "mode" and device major/minor "devmajor" and
+        "devminor". It is just a convenient wrapper around
+        "g.mknod".
+        """
+        return libguestfsmod.mknod_c (self._o, mode, devmajor, devminor, path)
+
+    def umask (self, mask):
+        u"""This function sets the mask used for creating new files
+        and device nodes to "mask & 0777".
+        
+        Typical umask values would be 022 which creates new
+        files with permissions like "-rw-r--r--" or
+        "-rwxr-xr-x", and 002 which creates new files with
+        permissions like "-rw-rw-r--" or "-rwxrwxr-x".
+        
+        The default umask is 022. This is important because it
+        means that directories and device nodes will be created
+        with 0644 or 0755 mode even if you specify 0777.
+        
+        See also umask(2), "g.mknod", "g.mkdir".
+        
+        This call returns the previous umask.
+        """
+        return libguestfsmod.umask (self._o, mask)
+