{"id":20358149,"url":"https://github.com/irods/mungefs","last_synced_at":"2025-09-12T02:39:05.538Z","repository":{"id":28866904,"uuid":"119567661","full_name":"irods/mungefs","owner":"irods","description":"A fuse file system which is commanded by avro \u0026 zeromq to misbehave in exciting and interesting ways, hopefully useful for testing file system access.","archived":false,"fork":false,"pushed_at":"2023-10-27T17:21:49.000Z","size":37,"stargazers_count":6,"open_issues_count":9,"forks_count":4,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-04-12T03:15:26.269Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/irods.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}},"created_at":"2018-01-30T17:08:27.000Z","updated_at":"2023-09-13T21:16:24.000Z","dependencies_parsed_at":"2022-08-07T14:00:53.534Z","dependency_job_id":"953eacdb-beac-4f79-8250-796432061cb6","html_url":"https://github.com/irods/mungefs","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/irods/mungefs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/irods%2Fmungefs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/irods%2Fmungefs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/irods%2Fmungefs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/irods%2Fmungefs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/irods","download_url":"https://codeload.github.com/irods/mungefs/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/irods%2Fmungefs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274744062,"owners_count":25341136,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-12T02:00:09.324Z","response_time":60,"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":[],"created_at":"2024-11-14T23:25:34.962Z","updated_at":"2025-09-12T02:39:05.513Z","avatar_url":"https://github.com/irods.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# mungefs\nA FUSE file system overlay inspired by [Charybdefs](https://github.com/scylladb/charybdefs), which is commanded by Avro and Zeromq. The file system may be instructed to misbehave in order to better test software which relies on file system access.\n\n## Starting the file system overlay:\n./mungefs /mount/dir/ -omodules=subdir,subdir=/target/directory\n\n## mungefsctl\n\nA command line utility used to modify the behavior of the filesystem.\n```\nUsage:\n--help : show command usage\n--operations : list of operations to apply a fault\n--random : randomize error injection\n--err_no : error number to force\n--probability : 0-100 probability of random error to inject\n--regexp : regexp matching operations\n--kill_caller : kill the calling process\n--delay_us : delay a method by a given number of microseconds\n--auto_delay : set delay to simulate ssd\n--corrupt_data : corrupt read or write data\n--corrupt_size : report an invalid file size\n```\n## Valid Operations:\n    getattr\n    readlink\n    mknod\n    mkdir\n    unlink\n    rmdir\n    symlink\n    rename\n    link\n    chmod\n    chown\n    truncate\n    open\n    read\n    write\n    statfs\n    flush\n    release\n    fsync\n    setxattr\n    getxattr\n    listxattr\n    removexattr\n    opendir\n    readdir\n    releasedir\n    fsyncdir\n    access\n    create\n    ftruncate\n    fgetattr\n    lock\n    bmap\n    ioctl\n    poll\n    flock\n    fallocate\n\n# Examples:\n\n## Corrupting write operations:\n```mungefsctl --operations \"write\" --corrupt_data```\n\n## Corrupting read operations:\n```mungefsctl --operations \"read\" --corrupt_data```\n\n## Corrupting the reporting of filesize:\n```mungefsctl --operations \"getattr\" --corrupt_size```\n\n## Resetting the operations:\n```\nmungefsctl --operations \"write\"\nmungefsctl --operations \"read\"\nmungefsctl --operations \"getattr\"\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Firods%2Fmungefs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Firods%2Fmungefs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Firods%2Fmungefs/lists"}