Posted 30 July 2012 - 02:39 PM
What is ForNAS?
ForNAS is a NAS protocol in ComputerCraft. If anybody is familiar with the term "NAS", you'd know that it means "network attached storage".
There's already file transfer programs out there, so why are you making this?
I know there's plenty of ComputerCraft file transfer programs already, but I truly want to change the way we store files. Instead of uploading and downloading files from a central server, a central server runs ForNAS Server and can share its files with all connected computers, all while saving space on the Minecraft server by avoiding copying files to the client computers.
Take this scenario for example - I want to be able to access some important files that are frequently updated, and I have 5 computers. What should I do? I could use one computer as a file transfer server and set the other four up as file transfer clients, but that'd take time to manually update the clients! Instead, I install ForNAS Server on the central computer, and install the ForNAS Client on my four other computers. Now, whenever I update the files from any of my connected computers, I can access the updated files from any of my other connected computers - no syncing required!
So how does ForNAS work?
ForNAS works by hooking into functions in the FS and IO APIs, essentially tricking programs into believing that a NAS-shared folder is actually on the local computer. Each client has its own mount point, and the central server has a share point. If the ForNAS Client detects that a path passed to a FS/IO API function starts with the mount point, it will contact the NAS server over Rednet to perform the filesystem task and return the results. Otherwise, the native API call will be performed.
In layman's terms, if the NAS is mounted at "nas", the share directory on the server is "share", and you're attempting to open a file on "nas/test.txt", the ForNAS Client will make a call to the server to get the contents of "share/test.txt".
Sounds amazing! Where can I download it?
I'm not anywhere near release with ForNAS, so there's no download yet. Though I do have most functions in the FS API hooked to work with ForNAS, I still need to implement file handling, and being able to read/write files is (obviously) a big part of a NAS system. There's also plenty of bugs with how the system works right now that I need to fix before releasing anything.
ForNAS is a NAS protocol in ComputerCraft. If anybody is familiar with the term "NAS", you'd know that it means "network attached storage".
There's already file transfer programs out there, so why are you making this?
I know there's plenty of ComputerCraft file transfer programs already, but I truly want to change the way we store files. Instead of uploading and downloading files from a central server, a central server runs ForNAS Server and can share its files with all connected computers, all while saving space on the Minecraft server by avoiding copying files to the client computers.
Take this scenario for example - I want to be able to access some important files that are frequently updated, and I have 5 computers. What should I do? I could use one computer as a file transfer server and set the other four up as file transfer clients, but that'd take time to manually update the clients! Instead, I install ForNAS Server on the central computer, and install the ForNAS Client on my four other computers. Now, whenever I update the files from any of my connected computers, I can access the updated files from any of my other connected computers - no syncing required!
So how does ForNAS work?
ForNAS works by hooking into functions in the FS and IO APIs, essentially tricking programs into believing that a NAS-shared folder is actually on the local computer. Each client has its own mount point, and the central server has a share point. If the ForNAS Client detects that a path passed to a FS/IO API function starts with the mount point, it will contact the NAS server over Rednet to perform the filesystem task and return the results. Otherwise, the native API call will be performed.
In layman's terms, if the NAS is mounted at "nas", the share directory on the server is "share", and you're attempting to open a file on "nas/test.txt", the ForNAS Client will make a call to the server to get the contents of "share/test.txt".
Sounds amazing! Where can I download it?
I'm not anywhere near release with ForNAS, so there's no download yet. Though I do have most functions in the FS API hooked to work with ForNAS, I still need to implement file handling, and being able to read/write files is (obviously) a big part of a NAS system. There's also plenty of bugs with how the system works right now that I need to fix before releasing anything.