Make an alternative to an FTP server, over IPFS

I never use IPFS before.

I have an FTP server where I place my files and people download them.
When I add, delete, change, move files in my FTP directory hierarchy, people use their sync programs to synchronize their target content with FTP server source content.

It will be nice if all clients share their content with new users, so my FTP server has no big load for new users.

Can I use this case on IPFS? Or it is not applicable to my situation?

If yes, what I must read?

It sounds like you’re look for a tool like brig it’s a file synchronization tool built on top of IPFS. Hopefully this is what you’re looking for.

1 Like

Just making sure you know about RSYNC. That’s the best tool for copying around directories imo. But insofar as IPFS stuff, make sure you look into the MFS stuff. Mutable File System.

1 Like

It sounds like what you’re asking for is somewhat like the IPFS http gateway but for ftp. If it were me I’d look into getting fuse to support MFS. It wouldn’t tie you into a particular ftp implementation, should be trivial to use with ftp, and would be broadly useful for other uses as well. You could do a read only version with fuse right now. The problem is making it writable which is where MFS comes in.

1 Like

I hadn’t thought of that before but definitely if a MFS folder could be mounted right into Linux that would be like a revolutionary step forward for IPFS! The idea is so obvious the IPFS team must have it on their todo list already!

I think just by forcing all files/folders on the mount to be ‘read-only’ this should be something that can be coded, fairly easily. Then writeability would be more tricky of course. Even if true writability over a mount is just not ever practical (I don’t know), still the ability to publish read-only files is very powerful.

1 Like

I had found someone who had started work on that but I don’t know how far they got and i think it’s stale at the moment. I’ll see if I can find a link.

1 Like

It looks like there were two attempts, both using node

which is the newest one as a somewhat older

1 Like

“Systems Level” Linux operating system code being written in Javascript? Wow. I wouldn’t have even thought that was even possible.


I may have found some equivalent work for MFS and FUSE on the go side. I have no idea of what the status is and the last commit was about a year ago.