Re: [BackupPC-devel] FUSE / BackupPC

2008-08-14 Thread Jon Craig
I'm working on a proof-of-concept for this.  I've taken the fuse
loopback.pl example and married it to BackupPC::View.  Right now it
lets me mount the BackupPC store as a filesystem with a directory
structure like:

Mountpoint: /backuppc/

/backuppc/[HOST]/[BackupNum]_[type]_[level]/[share]/ ...

so an example would be:

/backuppc/jcraig-laptop/23_full_0/root/ ...

for backup number 23, a full level 0 backup

When you go to /backuppc and do an 'ls' you see the list of clients
configured in backuppc.  The next level down shows all of the backups
with the [cma]time set to the start of the backup.  Below that you see
the shares configured for the backup and then all of the directory
structure below that.  I'm working on adding the code that will let
you open/read the files and I've configured all of the "change"
functions in Fuse to report a Read-Only filesystem.  So far it's
working fairly well and I think I'll take it to the next level, which
would involve writing a BackupPC::Fuse library to wrap all the code
into and provide some caching functions to speedup the access.

Once the POC version is done I'd be willing to share it out for
comments and suggestions related to functionality/usability.  I only
do rsyncd backups, so testing it with clients using other methods
would be good as I don't know the implementation details for clients
using TAR|SMB or rsync via SSH/RCMD.  Ultimately I'm thinking of
writing a full COW implementation of a filesystem that could offload
the storage functionality for backuppc.



On Wed, Aug 13, 2008 at 8:38 PM, Kenneth Porter <[EMAIL PROTECTED]> wrote:
> On Friday, July 18, 2008 8:04 PM +0200 Stephen Day <[EMAIL PROTECTED]>
> wrote:
>
>> What I would find useful is to be able to access point in time backups as
>> filesystems via fuse, with the original permissions and ownerships
>> intact.  That way users could be able to restore their own files without
>> having to  understand anything about BackupPC.
>
> Another advantage is that the resulting image can be quickly and reliably
> verified against the source machine. I have trouble feeling comfortable
> with a backup solution unless I can check a few random files easily to make
> sure the system is getting completely backed up. I'd love to be able to say:
>
> diff -rq /mnt/Samba/client /mnt/BackupPC/client
>
> and see miscompares on files I know are changing, and otherwise silent.
>
>
>
> -
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> ___
> BackupPC-devel mailing list
> BackupPC-devel@lists.sourceforge.net
> List:https://lists.sourceforge.net/lists/listinfo/backuppc-devel
> Wiki:http://backuppc.wiki.sourceforge.net
> Project: http://backuppc.sourceforge.net/
>



-- 
Jonathan Craig

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
BackupPC-devel mailing list
BackupPC-devel@lists.sourceforge.net
List:https://lists.sourceforge.net/lists/listinfo/backuppc-devel
Wiki:http://backuppc.wiki.sourceforge.net
Project: http://backuppc.sourceforge.net/


Re: [BackupPC-devel] FUSE / BackupPC

2008-08-14 Thread Tino Schwarze
Hi Jon,

On Thu, Aug 14, 2008 at 03:34:13PM -0400, Jon Craig wrote:

> I'm working on a proof-of-concept for this.  I've taken the fuse
> loopback.pl example and married it to BackupPC::View.  Right now it
> lets me mount the BackupPC store as a filesystem with a directory
> structure like:
> 
> Mountpoint: /backuppc/
> 
> /backuppc/[HOST]/[BackupNum]_[type]_[level]/[share]/ ...
> 
> so an example would be:
> 
> /backuppc/jcraig-laptop/23_full_0/root/ ...
> 
> for backup number 23, a full level 0 backup
[...]

Wow, that sounds really cool! :-)

> Once the POC version is done I'd be willing to share it out for
> comments and suggestions related to functionality/usability.  I only
> do rsyncd backups, so testing it with clients using other methods
> would be good as I don't know the implementation details for clients
> using TAR|SMB or rsync via SSH/RCMD.  

There shouldn't be any difference from your point of view - things end
up at the same location (host/backup#/share/...).

Looking forward to the POC!

Tino.

-- 
"What we nourish flourishes." - "Was wir nähren erblüht."

www.craniosacralzentrum.de
www.forteego.de

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
BackupPC-devel mailing list
BackupPC-devel@lists.sourceforge.net
List:https://lists.sourceforge.net/lists/listinfo/backuppc-devel
Wiki:http://backuppc.wiki.sourceforge.net
Project: http://backuppc.sourceforge.net/


Re: [BackupPC-devel] FUSE / BackupPC

2008-08-14 Thread Jon Craig
The only thing I'm concerned about is what people have used for share
names.  If the share name doesn't contain filesystem friendly
characters then I'll need to use some sort of munging routine to clean
it up.  I think its a fairly standard practice to have this be the
same as the include dir (ie /, /home, etc.) and I'll need to take out
all '/'s and any other meta-character.  Not a big deal, but its stuff
like this that can make creating a wide distribution app difficult.



On 8/14/08, Tino Schwarze <[EMAIL PROTECTED]> wrote:
> Hi Jon,
>
> On Thu, Aug 14, 2008 at 03:34:13PM -0400, Jon Craig wrote:
>
>> I'm working on a proof-of-concept for this.  I've taken the fuse
>> loopback.pl example and married it to BackupPC::View.  Right now it
>> lets me mount the BackupPC store as a filesystem with a directory
>> structure like:
>>
>> Mountpoint: /backuppc/
>>
>> /backuppc/[HOST]/[BackupNum]_[type]_[level]/[share]/ ...
>>
>> so an example would be:
>>
>> /backuppc/jcraig-laptop/23_full_0/root/ ...
>>
>> for backup number 23, a full level 0 backup
> [...]
>
> Wow, that sounds really cool! :-)
>
>> Once the POC version is done I'd be willing to share it out for
>> comments and suggestions related to functionality/usability.  I only
>> do rsyncd backups, so testing it with clients using other methods
>> would be good as I don't know the implementation details for clients
>> using TAR|SMB or rsync via SSH/RCMD.
>
> There shouldn't be any difference from your point of view - things end
> up at the same location (host/backup#/share/...).
>
> Looking forward to the POC!
>
> Tino.
>
> --
> "What we nourish flourishes." - "Was wir nähren erblüht."
>
> www.craniosacralzentrum.de
> www.forteego.de
>
> -
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great
> prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> ___
> BackupPC-devel mailing list
> BackupPC-devel@lists.sourceforge.net
> List:https://lists.sourceforge.net/lists/listinfo/backuppc-devel
> Wiki:http://backuppc.wiki.sourceforge.net
> Project: http://backuppc.sourceforge.net/
>

-- 
Sent from Gmail for mobile | mobile.google.com

Jonathan Craig

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
BackupPC-devel mailing list
BackupPC-devel@lists.sourceforge.net
List:https://lists.sourceforge.net/lists/listinfo/backuppc-devel
Wiki:http://backuppc.wiki.sourceforge.net
Project: http://backuppc.sourceforge.net/


Re: [BackupPC-devel] FUSE / BackupPC

2008-08-14 Thread Tino Schwarze
On Thu, Aug 14, 2008 at 04:56:50PM -0400, Jon Craig wrote:

> The only thing I'm concerned about is what people have used for share
> names.  If the share name doesn't contain filesystem friendly
> characters then I'll need to use some sort of munging routine to clean
> it up.  I think its a fairly standard practice to have this be the
> same as the include dir (ie /, /home, etc.) and I'll need to take out
> all '/'s and any other meta-character.  Not a big deal, but its stuff
> like this that can make creating a wide distribution app difficult.

Well, BackupPC already does the mangling for filesystem storage. As far,
as I see, most of my shares are called '/', so I get a directory 'f%2f'
at the root of each backup.

Tino.

-- 
"What we nourish flourishes." - "Was wir nähren erblüht."

www.craniosacralzentrum.de
www.forteego.de

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
BackupPC-devel mailing list
BackupPC-devel@lists.sourceforge.net
List:https://lists.sourceforge.net/lists/listinfo/backuppc-devel
Wiki:http://backuppc.wiki.sourceforge.net
Project: http://backuppc.sourceforge.net/


Re: [BackupPC-devel] FUSE / BackupPC

2008-08-14 Thread Jon Craig
Yes, that's true for the actual backup data but the host and share
settings come from the backup config files.  The BackupPC::View takes
care of navigating the backup data and mangle/demangle work.



On 8/14/08, Tino Schwarze <[EMAIL PROTECTED]> wrote:
> On Thu, Aug 14, 2008 at 04:56:50PM -0400, Jon Craig wrote:
>
>> The only thing I'm concerned about is what people have used for share
>> names.  If the share name doesn't contain filesystem friendly
>> characters then I'll need to use some sort of munging routine to clean
>> it up.  I think its a fairly standard practice to have this be the
>> same as the include dir (ie /, /home, etc.) and I'll need to take out
>> all '/'s and any other meta-character.  Not a big deal, but its stuff
>> like this that can make creating a wide distribution app difficult.
>
> Well, BackupPC already does the mangling for filesystem storage. As far,
> as I see, most of my shares are called '/', so I get a directory 'f%2f'
> at the root of each backup.
>
> Tino.
>
> --
> "What we nourish flourishes." - "Was wir nähren erblüht."
>
> www.craniosacralzentrum.de
> www.forteego.de
>
> -
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great
> prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> ___
> BackupPC-devel mailing list
> BackupPC-devel@lists.sourceforge.net
> List:https://lists.sourceforge.net/lists/listinfo/backuppc-devel
> Wiki:http://backuppc.wiki.sourceforge.net
> Project: http://backuppc.sourceforge.net/
>

-- 
Sent from Gmail for mobile | mobile.google.com

Jonathan Craig

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
BackupPC-devel mailing list
BackupPC-devel@lists.sourceforge.net
List:https://lists.sourceforge.net/lists/listinfo/backuppc-devel
Wiki:http://backuppc.wiki.sourceforge.net
Project: http://backuppc.sourceforge.net/