{"id":41043573,"url":"https://github.com/cern-fts/gfal2-util","last_synced_at":"2026-01-22T10:46:01.796Z","repository":{"id":49847656,"uuid":"146445548","full_name":"cern-fts/gfal2-util","owner":"cern-fts","description":"CLI for gfal2","archived":false,"fork":false,"pushed_at":"2025-10-20T14:27:33.000Z","size":331,"stargazers_count":2,"open_issues_count":2,"forks_count":8,"subscribers_count":5,"default_branch":"develop","last_synced_at":"2025-10-20T16:32:43.551Z","etag":null,"topics":["gfal","protocol","python"],"latest_commit_sha":null,"homepage":"https://dmc-docs.web.cern.ch/dmc-docs/gfal2-util.html","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cern-fts.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2018-08-28T12:40:07.000Z","updated_at":"2025-10-20T14:27:37.000Z","dependencies_parsed_at":"2024-02-07T17:29:40.116Z","dependency_job_id":"28cb591e-fd50-44c7-be9b-6a2f12d1f774","html_url":"https://github.com/cern-fts/gfal2-util","commit_stats":null,"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"purl":"pkg:github/cern-fts/gfal2-util","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cern-fts%2Fgfal2-util","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cern-fts%2Fgfal2-util/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cern-fts%2Fgfal2-util/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cern-fts%2Fgfal2-util/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cern-fts","download_url":"https://codeload.github.com/cern-fts/gfal2-util/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cern-fts%2Fgfal2-util/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28661882,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-22T01:17:37.254Z","status":"online","status_checked_at":"2026-01-22T02:00:07.137Z","response_time":144,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gfal","protocol","python"],"created_at":"2026-01-22T10:46:00.703Z","updated_at":"2026-01-22T10:46:01.791Z","avatar_url":"https://github.com/cern-fts.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"gfal2-util\n==========\nGFAL 2 utils are a group of command line tools for file manipulations with any protocol managed by gfal2\n\n## Installation\n```bash\nyum install gfal2-util gfal2-all\n```\n\nMind that the protocol support of gfal2-util depends on the set of plugins installed in your machine.\nInstalling gfal2-all will trigger an installation of the plugins for file, SRM, GridFTP, HTTP/DAV, LFC, RFIO and DCAP.\nIf you need XROOTD support, you will need to install additionally gfal2-plugin-xrootd.\n\n## List of commands\nWe provide here a brief overview of the command line tools we provide as part of this package.\nTo see detailed usage of each one, you can invoke them with --help to show all the possible options.\n\n### Standard commands\n\n#### gfal-bringonline\nPerform a staging operation on the given SURL.\n\n#### gfal-archivepoll\nPerform an archive polling operation on a given SURL.\n\n#### gfal-cat\nEquivalent to cat. Print into the standard output the content of the requested file\n\n#### gfal-chmod\nEquivalent to chmod. Changes the access permissions of the requested file\n\n#### gfal-copy\nEquivalent to cp but more powerful. Copy a file, or set of files, between different\nstorages and/or local. Recursive mode is supported. Try --dry-run to validate what will happen.\n\n#### gfal-evict\nRequests a Tape storage to release the given file's disk replica.   \n- For SRM storage, this is the equivalent of an unpin operation. The file is marked\nas eligible for garbage collection \n- For CTA storage, this is the equivalent of an evict operation. The file's evict\ncounter is decreased. When the counter reaches zero, the file's disk replica \nis deleted immediately\n\n#### gfal-ls\nEquivalent to ls. List the content of a directory. Use -l to generate a detailed list.\n\n#### gfal-mkdir\nEquivalent to mkdir. Create a directory\n\n#### gfal-rename\nEquivalent to rename command. Moves the file from one location to another one\nwithin the same storage\n\n#### gfal-rm\nEquivalent to rm. Remove a file, or a directory if -r is specified.\nTry --dry-run if you want to validate what will happen without doing anything.\n\n#### gfal-save\nReads from stdin and writes into a local or remote file.\n\n#### gfal-stat\nEquivalent to stat. Print information about the file or directory.\n\n#### gfal-sum\nQuery or calculate the checksum of the given file.\nNormally recognised checksums are adler32, md5 and sha1, but it depends on the protocol and/or storage software.\n\n#### gfal-token\nRequests a Storage Endpoint (SE) to issue a token for the given SURL (SE-issued token).\nThe token should be considered opaque, but most often used Grid implementations \nare JWTs or macaroons. These tokens have great applicability in HTTP-TPC as\nthey avoid the need to perform proxy certificate delegation.\n\n#### gfal-xattr\nEquivalent to attr. Query or set an extended attribute from a file or directory.\nWhich extended attributes are supported depend on the protocol. For instance user.replicas or user.comment can be used for SRM or LFC.\n\n### Legacy commands\nThis commands exists purely to provide ways to access functionality previously provided by lcg-util.\nWe recommend avoiding the usage of these tools if possible.\n\n#### gfal-legacy-register\nRegister a new replica in a catalog. We recommend using instead\n```bash\ngfal-xattr [surl] user.replicas=+new_replica\n```\n\n#### gfal-legacy-replicas\nList replicas from a catalog or SRM. We recommend using instead\n```bash\ngfal-xattr [surl] user.replicas\n```\n\n#### gfal-legacy-unregister\nRemove an existing replica from a catalog. We recommend using instead\n```bash\ngfal-xattr [surl] user.replicas=-replica\n```\n\n## License\nThis software is licensed under the [Apache 2 License](http://www.apache.org/licenses/LICENSE-2.0.html)\n\nCopyright (c) 2013-2022 CERN  \nCopyright (c) 2012-2013 Members of the EMI Collaboration  \n    See http://www.eu-emi.eu/partners for details on the copyright holders.\n\n## Contact\nYou can notify bugs or ask for feature requests via dmc-support@cern.ch or dmc-devel@cern.ch\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcern-fts%2Fgfal2-util","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcern-fts%2Fgfal2-util","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcern-fts%2Fgfal2-util/lists"}