PeerDrive is a open source file system to securely store, organize, share and sync your files from everywhere. It is built on a purely distributed peer-to-peer data model and will be a perfect solution when you need your data on different devices in different locations without relying on a permanent network connection or central infrastructure.
For an introduction into PeerDrive's features see peerdrive.org, the Wiki on the project home and the doc/ directory.
Resources:
- Website
- Project home
- Twitter: @PeerDrive
- Mailing list: [email protected] (the projects former name) http://www.freelists.org/list/hotchpotch
Currently PeerDrive is in the early alpha stage and hence (unless you're really brave) not ready for production. The basic design is settled and there is a prototype implementation of the file system in Erlang. Mounting via FUSE/Dokan, network transparency and automatic synchronization/replication are roughly working. Additionally some small GUI applications exist to demonstrate the full feature set.
- Python 2.6
- PyQt >=4.6.x
- protobuf (http://code.google.com/p/protobuf/)
- magic (optional)
- Erlang >= R14A (Windows: >= R14B03)
- rebar (http://github.com/rebar/rebar)
Currently there is no installation needed. Do the following steps to try it out. It is assumed that Erlang, Rebar and Python are all in your path.
- Clone the git repository:
git clone git://github.com/peerdrive/peerdrive.git
- Open two terminals
- Type in the 1st terminal:
make
cd server
./peerdrive.sh
or on Windows:peerdrive.bat
- This will start the PeerDrive server in the foreground. To gracefully
shut down the server type
q().
. - The stores will be mounted to ./vfs by default (assuming fuserl resp. erldokan are installed)
- In the 2nd terminal type:
cd client
export PEERDRIVE=tcp://127.0.0.1:4567/
./peerdrive-applet.py
Initially no stores are mounted. Use ./mount.py <dir> <name>
to mount a store
as label in directory