{"id":19687180,"url":"https://github.com/trinitronx/lyraphase-nfs","last_synced_at":"2026-05-14T17:05:05.733Z","repository":{"id":136205855,"uuid":"46162579","full_name":"trinitronx/lyraphase-nfs","owner":"trinitronx","description":"A cookbook for managing NFSv4 bind mounts and exports.","archived":false,"fork":false,"pushed_at":"2015-11-14T08:03:33.000Z","size":0,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-10T07:47:15.436Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/trinitronx.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-11-14T05:19:01.000Z","updated_at":"2020-02-02T21:56:07.000Z","dependencies_parsed_at":"2023-03-13T18:01:15.788Z","dependency_job_id":null,"html_url":"https://github.com/trinitronx/lyraphase-nfs","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trinitronx%2Flyraphase-nfs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trinitronx%2Flyraphase-nfs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trinitronx%2Flyraphase-nfs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trinitronx%2Flyraphase-nfs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/trinitronx","download_url":"https://codeload.github.com/trinitronx/lyraphase-nfs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240993952,"owners_count":19890419,"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","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-11T18:33:20.045Z","updated_at":"2026-05-14T17:05:00.702Z","avatar_url":"https://github.com/trinitronx.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"lyraphase-nfs cookbook\n======================\n[![Build Status](http://img.shields.io/travis/trinitronx/lyraphase-nfs.svg)](https://travis-ci.org/trinitronx/lyraphase-nfs)\n[![Gittip](http://img.shields.io/gittip/trinitronx.svg)](https://www.gittip.com/trinitronx)\n\nA cookbook for managing NFSv4 bind mounts and exports.\n\n# Requirements\n\n - [nfs][1] cookbook\n\n# Usage\n\nCreate a role for your `nfs_server` host that includes a list of NFS exports file entries.\nNote: for NFSv4, you must have a \"root\" `/export` path with `fsid=0` first, then bind mount other dirs under here for export.\n\nFrom the [Ubuntu NFSv4 Howto][3]:\n\nNFSv4 exports exist in a single pseudo filesystem, where the real directories are mounted with the `--bind` option.\n\n```ruby\nname \"nfs_server\"\ndescription \"Role applied to the system that should be an NFS server.\"\noverride_attributes(\n  \"lyraphase-nfs\" =\u003e {\n    \"nfs_exports\" =\u003e [\n        {'path' =\u003e '/export', 'network' =\u003e '192.168.1.1/24', 'writeable' =\u003e true, 'sync' =\u003e true, 'options' =\u003e ['fsid=0','insecure','no_subtree_check'] },\n        {'path' =\u003e '/export/src-test-nfsv4', 'src_path' =\u003e '/home/trinitronx/src', 'network' =\u003e '192.168.1.1/24', 'writeable' =\u003e true, 'sync' =\u003e true, 'options' =\u003e ['nohide','insecure','no_subtree_check'] }\n    ]\n  }\n)\nrun_list [ \"lyraphase-nfs::exports\" ]\n```\n\n# Attributes\n\n  - `node['lyraphase-nfs']['nfs_exports']`: An Array of hashes containing NFS exports file entries.  See Usage above for expected format.\n\n# Recipes\n\n## lyraphase-nfs::default\n\nIncludes the `nfs::client4` recipe to install the `idmap` service for an effective protocol level of NFSv4\n\n## lyraphase-nfs::exports\n\nIncludes the `nfs::server4` recipe to install the NFS server platform-specific services for an effective protocol level of NFSv4.\n\nCreates a top-level NFS root dir: `/export`, then creates bind mounts for any `src_path` entries found in the `nfs_exports` Array of Hashes.\nFinally, `nfs_exports` entries are added to `/etc/exports`.\n\n# Author\n\nAuthor:: James Cuzella (@trinitronx)\n\n[1]: https://supermarket.chef.io/cookbooks/nfs\n[2]: https://supermarket.chef.io/cookbooks/nfs#readme\n[3]: https://help.ubuntu.com/community/NFSv4Howto\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrinitronx%2Flyraphase-nfs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftrinitronx%2Flyraphase-nfs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrinitronx%2Flyraphase-nfs/lists"}