Introduction to Pug

This is a discussion area for Pug, the the incremental, secure, efficient cloud file archiver that runs on Linux and stores files in cloud storage services like Amazon S3.
User avatar
Posts: 566
Joined: Sun Aug 23, 2009 7:32 pm
Location: Research Triangle Park, NC, USA

Introduction to Pug

Post by paulej »

Pug is automated backup software designed for use on Linux that allows one to copy files on a server to cloud storage, compressing and encrypting each file individually before uploading.

In creating Pug, I had several goals:
  • I wanted a fully automated solution where I didn't have to be bothered with physical storage devices, storing physical drives in a bank vault, etc.
  • Once put in place, I wanted a solution that "just worked" and was fault tolerant
  • I wanted a solution that was secure
  • I wanted a solution that would work incrementally, storing only new or changed files each day (or even each minute)
  • I wanted a means of storing multiple versions of files, any one of which I can retrieve
  • I wanted a solution that would not waste space by storing the same file multiple times
  • I wanted a solution that would preserve locally deleted files for whatever period of time I specify
  • I wanted a solution that would allow me to recover any version of a file for some period of time
  • I wanted a solution that I could rely on even in the face of a natural disaster
It was pretty clear that a cloud-based solution was needed, but I could not find any software that would do exactly what I wanted. There were tools that would do synchronization of directories. There were other automated tools that ran on on Windows. There were "cloud backup" programs that were more-or-less like using "tar" and then using s3cmd to shove data into Amazon S3. But, I needed a solution for Linux, since that's where all of my data is located, and I wanted something different than what I could find on the Internet.

So, the idea for Pug was born. The software is so named, because there seems to be general consensus among dog owners that pugs are some of the laziest dogs in the world. Whether that is true or not, I don't know. However, while it was not laziness that brought about the birth of Pug, I'll have to admit that there is an element of laziness or boredom dealing with weekly backups. I wanted something were I could just turn it on and forget about it. Also, Pug is designed to be a little "lazy" about deleting files. (That's configurable, of course, but I prefer that Pug not delete a file for a few months, just in case I change my mind. You can even tell Pug to never delete a file.)

I also needed a very good cloud storage service. For that, the clear winner for me was Amazon S3. Their prices are excellent, as is the service. It's very fast and reliable.

I now have Pug running and everything is fully automated. The software is still "beta", though, as there might still be some bugs that I haven't uncovered. I welcome you to give it a try, though. Start small to see how well it works for you. If it works well, perhaps you can design your backup strategy around it.

The software is open source and free, of course. And by "free", I mean it is free without any restrictions whatsoever. I would even welcome software vendors to utilize the Pug software, database schema, or design ideas and create variants of the software for other platforms, add a GUI front-end, etc. I do work on Linux and my career has been spent on "behind the scenes" stuff, but I'm sure somebody could benefit from similar tools on Windows or a nice user interface.

If you have any questions or comments, please post them to this forum.