No description
Find a file
Andriy Utkin d3cbb05beb
Some checks failed
ci_ubuntu.yaml / cvmfs-posix-tools: test: make it compatible with fstab entry format starting with "cvmfs2#" (push) Failing after 0s
CI / Cloudtests (dockerized, alma9) (push) Has been cancelled
CI_MacOS / macos_build_and_test (push) Has been cancelled
unittest_ubuntu / unittest_ubuntu (push) Has been cancelled
cvmfs-posix-tools: test: make it compatible with fstab entry format starting with "cvmfs2#"
Test was developed against upstream with this change merged:
https://github.com/cvmfs/cvmfs/pull/3903 (cvmfs_server: fstab: change
type from fuse to cvmfs, abandon cvmfs2# prefix in name)
2026-01-11 13:16:05 +00:00
.github ci: fixes for macos (#3989) 2025-09-17 08:37:20 +00:00
add-ons Update python shebangs to python3 (#3904) 2025-08-25 17:34:31 +00:00
ci Replace AUTHORS with CITATION.cff (#3965) 2025-09-15 15:31:00 +02:00
cmake Add cvmfs-posix-tools 2025-09-19 16:08:42 +01:00
cvmfs catalog_mgr_rw: Handle download error gracefully in CatalogDownloadCallback() 2025-12-10 15:02:28 +00:00
cvmfs-posix-tools cvmfs-posix-tools: refine documentation 2025-11-13 10:13:55 +00:00
doc Make googletest dependency optional (#3949) 2025-07-31 23:08:56 +00:00
ducc ducc: fix subfolder management in webhook (#3898) 2025-07-02 22:13:41 +02:00
externals Workarounds for macOS CI (#3968) 2025-08-25 16:19:31 +00:00
gateway Run clang-format again on codebase, fix linter errors (#3880) 2025-06-22 12:31:33 +00:00
mount Run clang-format again on codebase, fix linter errors (#3880) 2025-06-22 12:31:33 +00:00
packaging Replace AUTHORS with CITATION.cff (#3965) 2025-09-15 15:31:00 +02:00
snapshotter Run clang-format again on codebase, fix linter errors (#3880) 2025-06-22 12:31:33 +00:00
test cvmfs-posix-tools: test: make it compatible with fstab entry format starting with "cvmfs2#" 2026-01-11 13:16:05 +00:00
.clang-format Format C++ sources based on .clang-format (#3841) 2025-05-30 16:03:13 +02:00
.clang-tidy [tidy] applies automatic clang-tidy misc-const-correctness fixes to codebase (#3853) 2025-06-02 15:17:01 +02:00
.codespellrc ignore one packaging file since has false positives 2023-02-23 18:47:44 -05:00
.git-blame-ignore-revs Improve git blame history with .git-blame-ignore-revs (#3706) 2024-12-02 10:58:22 +01:00
.gitattributes properly mark ducc/vendor as externals 2019-02-15 08:37:49 +01:00
.gitignore CMake improvements (#3951) 2025-08-01 08:40:24 +00:00
ChangeLog update changelog 2025-07-28 18:16:22 +02:00
CITATION.cff Replace AUTHORS with CITATION.cff (#3965) 2025-09-15 15:31:00 +02:00
CMakeLists.txt Add cvmfs-posix-tools 2025-09-19 16:08:42 +01:00
CONTRIBUTING.md docs: fix typo 2022-10-10 18:46:11 +02:00
COPYING added a code style guide compliance tester 2011-12-09 15:43:39 +00:00
INSTALL point to the already present packaging directory for the dependencies 2018-02-05 10:46:39 +01:00
README.md Cleanup unused files in the top level directory (#3686) 2024-11-22 23:29:51 +01:00

Build Status Documentation Status DOI

CernVM-File System (CernVM-FS)

The CernVM-File System provides a scalable, reliable and low-maintenance software distribution service. It was developed to assist High Energy Physics (HEP) collaborations to deploy software on the worldwide-distributed computing infrastructure used to run data processing applications. CernVM-FS is implemented as a POSIX read-only file system in user space (a FUSE module). Files and directories are hosted on standard web servers and mounted in the universal namespace /cvmfs. Internally, CernVM-FS uses content-addressable storage and Merkle trees in order to maintain file data and meta-data. CernVM-FS uses outgoing HTTP connections only, thereby it avoids most of the firewall issues of other network file systems. It transfers data and meta-data on demand and verifies data integrity by cryptographic hashes.

By means of aggressive caching and reduction of latency, CernVM-FS focuses specifically on the software use case. Software usually comprises many small files that are frequently opened and read as a whole. Furthermore, the software use case includes frequent look-ups for files in multiple directories when search paths are examined.

Content is published into /cvmfs by means of dedicated "release manager machines". The release manager machines provide a writable CernVM-FS instance by means of a union file system (e.g., overlayfs) on top of the read-only client. When publishing, the CernVM-FS server tools process new and modified data from the union file system's writable branch and transform the data into the CernVM-FS storage format.

CernVM-FS is actively used by small and large scientific collaborations. In many cases, it replaces package managers and shared software areas on cluster file systems as means to distribute the software used to process experiment data.

  • Official Documentation
    • Aimed at maintainers of CernVM-FS instances, users and developers. Contains many in-depth explanations and a complete list of all (client) configuration parameters in the appendix.
  • Quickstart Guide for Developers
    • Aimed at developers. Includes how to contribute, code style, many short coding examples how to set up a working CernVM-File System, and how to test and debug.
  • cvmfs-contrib
    • Community-contributed packages related to CernVM-FS but not maintained by the CernVM-FS developer team.

How to Get in Touch With Us

  • CernVM Forum For support questions, or problems you encounter.
  • GitHub Issues For bug reporting or feature requests. This issue tracker is used for all CernVM-FS-related repositories.