DaviX is an open-source client for WebDAV and Amazon S3 available for Microsoft Windows, Apple MacOSX and Linux. DaviX is written in C++ and provide several command-line tools and a C++ shared library.[2][3]

Developer(s)CERN
Stable release
0.7.4 / July 4, 2019; 5 years ago (2019-07-04)
Operating systemLinux, Mac OS X, Windows
TypeWebDAV client
LicenseGNU Lesser General Public License[1]
Websitedavix.web.cern.ch/davix/docs/devel/

DaviX is a tool for remote I/O, file transfer and file management based on the HTTP protocol.

daviX is used at CERN by several projects, including the ROOT data analysis framework,[4][5] the File Transfer Services (FTS),[6] the European Middleware Initiative gfal2 library [7][8] or the dynamic storage federation project.[9]

Feature support

edit

DaviX supports:

  • SSL/TLS
  • User/Password Authentication
  • X.509 Client certificates authentication
  • redirection caching
  • Multi-Range requests (Vector I/O)
  • checksum calculation
  • session recycling
  • VOMS credential
  • Multi-sources via Metalink.
  • SOCKS4/5
  • S3 and WebDAV Operations

Examples of daviX command line use

edit

to Upload a file to a WebDav repository

$ davix-put local_file davs://example.com/folder1/remote_file

to Download a file from a S3 bucket with AWS authentication

$ davix-get --s3secretkey A --s3accesskey B s3://bucket1.s3-instance.com/long/path/remote_file local_file

To list a WebDav repository over https

$ davix-ls davs://example.com/folder1/folder2/

To list an S3 bucket with AWS authentication

$ davix-ls --s3secretkey A --s3accesskey B s3://bucket1.s3-instance.com/

To create a subdirectory over WebDAV

$ davix-mkdir davs://example.com/folder1/folder2/folder4

Execute an HTTP PUT request to a RESTful webservice with the content "hello"

$ davix-http -X PUT—data "hello" http://example.com/rest/api/service

Platforms

edit

Linux

edit

Davix is available on several linux distributions via the Fedora, RedHat EPEL,[10] Debian [11] and Ubuntu [12] software repositories.

The European Middleware Initiative[13] and the European Grid Infrastructure[14] distribute it through their project repositories.

macOS

edit

The Homebrew distribution channel distributes sources and binaries for Davix.[15]

Windows

edit

Cygwin compatible binaries are available for Windows.

See also

edit

References

edit
  1. ^ https://raw.githubusercontent.com/cern-it-sdc-id/davix/master/LICENSE [bare URL plain text file]
  2. ^ Devresse, A.; Furano, F. (2014). "Efficient HTTP Based I/O on Very Large Datasets for High Performance Computing with the Libdavix Library". Big Data Benchmarks, Performance Optimization, and Emerging Hardware. Lecture Notes in Computer Science. Vol. 8807. p. 194. arXiv:1410.4168. doi:10.1007/978-3-319-13021-7_15. ISBN 978-3-319-13020-0. S2CID 7644795. "libdavix/Davix"
  3. ^ Furano, F.; Devresse, A.; Keeble, O.; Hellmich, M.; Ayllón, A. Á. (2014). "Towards an HTTP Ecosystem for HEP Data Access". Journal of Physics: Conference Series. 513 (3): 032034. Bibcode:2014JPhCS.513c2034F. doi:10.1088/1742-6596/513/3/032034. "Http Ecosystem for HEP: Davix"
  4. ^ ROOT and Davix https://dmc.web.cern.ch/projects/davix/root-and-davix-tutorial Archived 2015-01-31 at the Wayback Machine
  5. ^ ROOT Davix integration https://root.cern.ch/drupal/content/root-version-v5-34-00-patch-release-notes
  6. ^ Ayllon, A. A.; Salichos, M.; Simon, M. K.; Keeble, O. (2014). "FTS3: New Data Movement Service for WLCG". Journal of Physics: Conference Series. 513 (3): 032081. Bibcode:2014JPhCS.513c2081A. doi:10.1088/1742-6596/513/3/032081. "File Transfer Service"
  7. ^ GridPP usage recommendations https://www.gridpp.ac.uk/wiki/DPM_Fuse
  8. ^ Nilsen, J. K.; Cameron, D.; Devresse, A.; Molnar, Z.; Nagy, Z.; Salichos, M. (2012). "EMI datalib - joining the best of ARC and g Lite data libraries". Journal of Physics: Conference Series. 396 (5): 052057. Bibcode:2012JPhCS.396e2057N. doi:10.1088/1742-6596/396/5/052057. EMI datalib
  9. ^ Furano, F.; Brito Da Rocha, R.; Devresse, A.; Keeble, O.; Álvarez Ayllón, A.; Fuhrmann, P. (2012). "Dynamic federations: Storage aggregation using open tools and protocols". Journal of Physics: Conference Series. 396 (3): 032042. Bibcode:2012JPhCS.396c2042F. doi:10.1088/1742-6596/396/3/032042. DynaFed
  10. ^ Fedora EPEL pkgdb https://admin.fedoraproject.org/pkgdb/package/davix/ Archived 2015-02-02 at the Wayback Machine
  11. ^ Debian pkg davix https://packages.debian.org/search?keywords=davix
  12. ^ Ubuntu pkg repo davix https://launchpad.net/ubuntu/+source/davix
  13. ^ EMI release http://www.eu-emi.eu/releases/emi-3-monte-bianco/updates/-/asset_publisher/5Na8/content/update-16-12-05-2014-v-3-7-4-1 Archived 2015-02-02 at the Wayback Machine
  14. ^ UMD repositories http://repository.egi.eu/2014/11/10/davix-0-3-6/
  15. ^ Davix homebrew http://brewformulas.org/Davix
edit