Latest revision |
Your text |
Line 9: |
Line 9: |
| Kernel-space NFS server is supported by latest RHEL5 and RHEL6 based kernels and since vzctl-3.0.24. | | Kernel-space NFS server is supported by latest RHEL5 and RHEL6 based kernels and since vzctl-3.0.24. |
| | | |
− | NB! Currently only NFSv3 is supported - no NFSv4 support yet.
| |
− |
| |
− | === Prerequisites ===
| |
| In order to run an NFS server inside a container, make sure: | | In order to run an NFS server inside a container, make sure: |
− | * '''nfsd kernel module is loaded on host system before starting a container''' | + | * nfsd kernel module is loaded on host system before starting a container |
− | * '''nfsd feature for a container is turned on''' (<code>vzctl set $CTID --feature nfsd:on --save</code>) | + | * nfsd feature for a container is turned on (<code>vzctl set $CTID --feature nfsd:on --save</code>) |
− | | |
− | === Setup ===
| |
− | * Make sure that rpcbind service is started before nfs service:
| |
− | : <code>chkconfig rpcbind on && service rpcbind start</code>
| |
− | * Disable NFSv4 and nfsd module loading warnings in /etc/sysconfig/nfs by uncommenting the following lines:
| |
− | MOUNTD_NFS_V3="yes"
| |
− | RPCNFSDARGS="-N 4"
| |
− | NFSD_MODULE="noload"
| |
− | * Start NFS service:
| |
− | : <code>chkconfig nfs on && service nfs start</code>
| |
− | | |
− | === Troubleshooting ===
| |
− | | |
− | Make sure that:
| |
− | # you have enabled nfsd feature for your container
| |
− | # nfsd kernel module is loaded before you started the container
| |
− | | |
− | ==== rpcbind ====
| |
− | | |
− | If you see this:
| |
− | <pre>
| |
− | # service nfs start
| |
− | ...
| |
− | Starting NFS services: [ OK ]
| |
− | Starting NFS quotas: Cannot register service: RPC: Unable to receive; errno = Connection refused
| |
− | rpc.rquotad: unable to register (RQUOTAPROG, RQUOTAVERS, udp).
| |
− | </pre>
| |
− | | |
− | It means you haven't started rpcbind service. Solution:
| |
− | <pre>chkconfig rpcbind on && service rpcbind start</pre>
| |
− | | |
− | ==== nfsd module ====
| |
− | If you see this:
| |
− | <pre>
| |
− | # service nfs start
| |
− | ....
| |
− | Starting NFS daemon: rpc.nfsd: Unable to access /proc/fs/nfsd errno 2 (No such file or directory).
| |
− | Please try, as root, 'mount -t nfsd nfsd /proc/fs/nfsd' and then restart rpc.nfsd to correct the problem
| |
− | [FAILED]
| |
− | # mount -t nfsd nfsd /proc/fs/nfsd
| |
− | mount: unknown filesystem type 'nfsd'
| |
− | </pre>
| |
− | | |
− | It means you haven't loaded nfsd kernel module on host before starting container.
| |
− | | |
− | ==== warnings ====
| |
− | | |
− | If you see this:
| |
− | <pre>
| |
− | # /etc/init.d/nfs start
| |
− | FATAL: Module nfsd not found.
| |
− | FATAL: Error running install command for nfsd
| |
− | ...
| |
− | </pre>
| |
− | | |
− | It is actually harmless, you don't need to do anything. In case you want this to go away, uncomment (or add) the line
| |
− | | |
− | NFSD_MODULE="noload"
| |
− | | |
− | in <code>/etc/sysconfig/nfs</code> file.
| |
| | | |
| == User-space NFS server == | | == User-space NFS server == |