This client-server network file system is built on top of a provided virtual disk featuring an indexed block allocation approach. The disk includes a Superblock, Free block bitmap, Inodes (for files and directories), and Datablocks. The client and server communicate over a persistent TCP connection.
ls
: List the contents of the current directorycd <directory>
: Change to a specified directoryhome
: Switch to the home (root) directory (similar tocd /
in Unix)rmdir <directory>
: Remove a directory. The directory must be emptycreate <filename>
: Create an empty fileappend <filename> <data>
: Append data to an existing filestat <name>
: Display information for a given file or directorycat <filename>
: Display the contents of a filehead <filename> <n>
: Display the firstn
bytes of the filerm <filename>
: Remove a file
More information can be found here.
Gary Tou (@garyhtou)
- Creating and connecting TCP socket (Shell)
- Executing commands (Shell)
- home, append, rm (FileSys)
- Receiving messages for Client (Helper)
- Object Orientated wrapped classes for the BasicFileSys (WrappedFileSys)
Harry Rudolph (@hankrud)
- Parsing the command line (Shell)
- Formatting and outputting command messages (Shell)
- mkdir, cd, stat, rmdir in (FileSys)
- Receiving messages for Server (Helper)
- Message formatting
Castel Villalobos (@impropernoun)
- Remote procedure call commands (Shell)
- ls, create, head, cat (FileSys)
- Parsing and executing (server)
- Sending messages (Helper)
- Error Handling