Richard W.M. Jones
2018-Aug-28 15:59 UTC
[Libguestfs] ANNOUNCE: nbdkit 1.6 - an NBD server toolkit with stable plugin API and permissive license
NBD — Network Block Device — is a protocol for accessing Block Devices (hard disks and disk-like things) over a Network. nbdkit is a toolkit for creating NBD servers. The key features are: * Multithreaded NBD server written in C with good performance. * Minimal dependencies for the basic server. * Liberal license (BSD) allows nbdkit to be linked to proprietary libraries or included in proprietary code. * Well-documented, simple plugin API with a stable ABI guarantee. Lets you export “unconventional” block devices easily. * You can write plugins in C, [new!] Lua, Perl, Python, OCaml, Ruby or Tcl. * Filters can be stacked in front of plugins to transform the output. https://github.com/libguestfs/nbdkit http://download.libguestfs.org/nbdkit/1.6-stable/ (other downloads: http://download.libguestfs.org/nbdkit/ ) New in the 1.6 release: * You can now write plugins in the Lua scripting language. * nbdkit and common plugins are now "63 bit clean": the maximum disk size supported is 2^63-1 bytes, and the core server and plugins now have additional tests to check this works, even on 32 bit machines. * Multiple improvements to the ‘file’ plugin to make zeroing and trimming perform better, work correctly with block devices, and work on older Linux kernels [Nir Soffer, Eric Blake]. * New ‘pattern’ plugin generates a simple, fixed test pattern for testing nbdkit filters and NBD clients. * New ‘truncate’ filter can: truncate or extend the size of plugins, or round up or down the size to next multiple of a power of 2. Useful for NBD clients like qemu which can only handle NBD sizes which are a multiple of 512 bytes. * New ‘error’ filter which can be used to inject errors into the protocol for testing how clients can handle and recover from errors. * New ‘data’ plugin allows you to specify (small) disk images directly on the command line. * Enhanced error reporting in the Python plugin so full tracebacks from errors are now displayed instead of being lost as before. * NBD_OPT_GO now supported, so we can return errors when negotiating the export name. * Support for logging error messages to syslog. * nbdkit can now be compiled with Clang (as well as GCC). * nbdkit can now be compiled on FreeBSD. * The VDDK plugin is compiled unconditionally. You no longer need to install the proprietary VDDK to compile it. * Debug messages now include the name of the filter when invoked from a filter context. * Debug flags (-D option) provides lightweight debugging for plugin authors. Thanks to all who contributed, especially Nir Soffer and Eric Blake. Rich. -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming and virtualization blog: http://rwmj.wordpress.com libguestfs lets you edit virtual machines. Supports shell scripting, bindings from many languages. http://libguestfs.org
Reasonably Related Threads
- ANNOUNCE: nbdkit 1.8 - an NBD server toolkit with stable plugin API and permissive license
- ANNOUNCE: nbdkit 1.12 - an NBD server toolkit with stable plugin API and permissive license
- ANNOUNCE: nbdkit 1.1.13 - NBD server toolkit with stable API and permissive license
- ANNOUNCE: nbdkit 1.4.0 - an NBD server toolkit with stable plugin ABI and permissive license
- ANNOUNCE: nbdkit 1.10 - an NBD server toolkit with stable plugin API and permissive license