agrover / froyo

A flexible and redundant long-term storage system for Linux, using DM and XFS

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Build Status

Froyo

Semi-automated bulk storage management

You give Froyo block devices (hard drives) and it gives you a single redundant filesystem. You may add any size drive to expand it. When a drive goes bad, your data is automatically reshaped in the background across the remaining drives (if space allows). You can replace older, smaller drives with bigger new ones while the filesystem remains online.

Drobo + Free + You = Froyo!

Dev Resources

Use GitHub for issue reporting and Pull Requests.

IRC: #froyo on irc.freenode.org

Mailing list: froyo@lists.fedorahosted.org

Trying it out (Caution highly recommended, may eat data!)

  1. Compile Froyo
  2. In one terminal, run froyo -d dev dbus_server.
  3. In another terminal, use other commands, such as froyo create, froyo list, froyo status <froyodevname>, froyo add <newblockdev> and froyo remove <existingblockdev>. To mount and use froyodevs, mount block devices in /dev/froyo.

Things that work

  1. Create a froyodev
  2. Destroy a froyodev
  3. Deactivate a froyodev
  4. Rename a froyodev
  5. Add another drive to an existing froyodev
  6. Remove a drive from an existing froyodev
  7. Extending thin device when threshold is hit
  8. List froyodevs and get status on a froyodev

Things that are implemented but don't work

  1. Reshape smaller to re-establish redundancy after a disk is removed

Things that don't yet work

  1. Reshape bigger to use new disks
  2. Extending filesystem when it nears capacity
  3. Slowing writes to avoid running out of thin data blocks
  4. Automatically starting Froyo service
  5. Automatically checking layers for errors when setting up

About

A flexible and redundant long-term storage system for Linux, using DM and XFS

License:Mozilla Public License 2.0


Languages

Language:Rust 100.0%