X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=python%2Fguestfs.py;h=237e62d4024fb548cbe7bde1cd40ae556948dc73;hp=37dc80f763534e66554801cfc88b69339198e33a;hb=1fc41b39dac877ccec1284da8bb14baa4df368b8;hpb=45d78361d791f4a752fca9472b81bdc75f9f92a4 diff --git a/python/guestfs.py b/python/guestfs.py index 37dc80f..237e62d 100644 --- a/python/guestfs.py +++ b/python/guestfs.py @@ -152,10 +152,6 @@ class GuestFS: You can also override this by setting the "LIBGUESTFS_QEMU" environment variable. - The string "qemu" is stashed in the libguestfs handle, - so the caller must make sure it remains valid for the - lifetime of the handle. - Setting "qemu" to "NULL" restores the default qemu binary. """ @@ -176,10 +172,6 @@ class GuestFS: The default is "$libdir/guestfs" unless overridden by setting "LIBGUESTFS_PATH" environment variable. - The string "path" is stashed in the libguestfs handle, - so the caller must make sure it remains valid for the - lifetime of the handle. - Setting "path" to "NULL" restores the default path. """ return libguestfsmod.set_path (self._o, path) @@ -192,6 +184,26 @@ class GuestFS: """ return libguestfsmod.get_path (self._o) + def set_append (self, append): + u"""This function is used to add additional options to the + guest kernel command line. + + The default is "NULL" unless overridden by setting + "LIBGUESTFS_APPEND" environment variable. + + Setting "append" to "NULL" means *no* additional options + are passed (libguestfs always adds a few of its own). + """ + return libguestfsmod.set_append (self._o, append) + + def get_append (self): + u"""Return the additional kernel options which are added to + the guest kernel command line. + + If "NULL" then no options are added. + """ + return libguestfsmod.get_append (self._o) + def set_autosync (self, autosync): u"""If "autosync" is true, this enables autosync. Libguestfs will make a best effort attempt to run "g.umount_all" @@ -738,6 +750,8 @@ class GuestFS: you would pass "lines" as a single element list, when the single element being the string "," (comma). + See also: "g.sfdisk_l", "g.sfdisk_N" + This command is dangerous. Without careful use you can easily destroy all your data. """ @@ -1322,3 +1336,134 @@ class GuestFS: """ return libguestfsmod.hexdump (self._o, path) + def zerofree (self, device): + u"""This runs the *zerofree* program on "device". This + program claims to zero unused inodes and disk blocks on + an ext2/3 filesystem, thus making it possible to + compress the filesystem more effectively. + + You should not run this program if the filesystem is + mounted. + + It is possible that using this program can damage the + filesystem or data on the filesystem. + """ + return libguestfsmod.zerofree (self._o, device) + + def pvresize (self, device): + u"""This resizes (expands or shrinks) an existing LVM + physical volume to match the new size of the underlying + device. + """ + return libguestfsmod.pvresize (self._o, device) + + def sfdisk_N (self, device, n, cyls, heads, sectors, line): + u"""This runs sfdisk(8) option to modify just the single + partition "n" (note: "n" counts from 1). + + For other parameters, see "g.sfdisk". You should usually + pass 0 for the cyls/heads/sectors parameters. + + 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) + + def sfdisk_l (self, device): + u"""This displays the partition table on "device", in the + human-readable output of the sfdisk(8) command. It is + not intended to be parsed. + """ + return libguestfsmod.sfdisk_l (self._o, device) + + def sfdisk_kernel_geometry (self, device): + u"""This displays the kernel's idea of the geometry of + "device". + + The result is in human-readable format, and not designed + to be parsed. + """ + return libguestfsmod.sfdisk_kernel_geometry (self._o, device) + + def sfdisk_disk_geometry (self, device): + u"""This displays the disk geometry of "device" read from + the partition table. Especially in the case where the + underlying block device has been resized, this can be + different from the kernel's idea of the geometry (see + "g.sfdisk_kernel_geometry"). + + The result is in human-readable format, and not designed + to be parsed. + """ + return libguestfsmod.sfdisk_disk_geometry (self._o, device) + + def vg_activate_all (self, activate): + u"""This command activates or (if "activate" is false) + deactivates all logical volumes in all volume groups. If + activated, then they are made known to the kernel, ie. + they appear as "/dev/mapper" devices. If deactivated, + then those devices disappear. + + This command is the same as running "vgchange -a y|n" + """ + return libguestfsmod.vg_activate_all (self._o, activate) + + def vg_activate (self, activate, volgroups): + u"""This command activates or (if "activate" is false) + deactivates all logical volumes in the listed volume + groups "volgroups". If activated, then they are made + known to the kernel, ie. they appear as "/dev/mapper" + devices. If deactivated, then those devices disappear. + + This command is the same as running "vgchange -a y|n + volgroups..." + + Note that if "volgroups" is an empty list then all + volume groups are activated or deactivated. + """ + return libguestfsmod.vg_activate (self._o, activate, volgroups) + + def lvresize (self, device, mbytes): + u"""This resizes (expands or shrinks) an existing LVM + logical volume to "mbytes". When reducing, data in the + reduced part is lost. + """ + return libguestfsmod.lvresize (self._o, device, mbytes) + + def resize2fs (self, device): + u"""This resizes an ext2 or ext3 filesystem to match the + size of the underlying device. + """ + return libguestfsmod.resize2fs (self._o, device) + + def find (self, directory): + u"""This command lists out all files and directories, + recursively, starting at "directory". It is essentially + equivalent to running the shell command "find directory + -print" but some post-processing happens on the output, + described below. + + This returns a list of strings *without any prefix*. + Thus if the directory structure was: + + /tmp/a + /tmp/b + /tmp/c/d + + then the returned list from "g.find" "/tmp" would be 4 + elements: + + a + b + c + c/d + + If "directory" is not a directory, then this command + returns an error. + + The returned list is sorted. + + This function returns a list of strings. + """ + return libguestfsmod.find (self._o, directory) +