Skip to content

Latest commit

 

History

History
55 lines (36 loc) · 1.52 KB

README.md

File metadata and controls

55 lines (36 loc) · 1.52 KB

nfs_sunrpc

Description

This project is a simple NFS (Network file system) server&client, that allows for basic operations of sharing files and directories. It is based upon SunRPC for remote method calls, although writtin C++ instead of pure C.

Usage

Server

Server is run with one parameter that is the path to a directory that should be served. If no parameter is given, a default of current working directory is applied.

Client

Client is run with 1 parameter, i.e. the address of the running NFS server. After starting client, a command prompt appears (>), that allows for execution of sharing operations. Allowed operations are:

//list files of remote directory
> ls

//list files of current local working directory
> lls

// create an empty file on the server
> create <filename>

// create an empty directory on the server
> mkdir <dirname>

// delete a file or directory on the server
> delete <filename/dirname>

//send a file or directory to the server
> send <filename/dirname>

// get a file or directory from the server
> get <filename/dirname>

// exit client program
> exit
> quit

Project file structure

All source code is located under src/ directories. *.x file contains interface definition as used by rpcgen. Thus, files inside src/ directory represent the same structure as the one generated by rpcgen.

Build

To build the project simply run:

$ make

License

This project is released under MIT License.