Discussion:
[BackupPC-devel] IPv6 support?
Richard Shaw
2017-03-13 13:49:15 UTC
Permalink
I just took over maintenance of the BackupPC package for Fedora and EPEL
and I'm working on updating the package to version 4.

There are several patches which I should probably share here to see if they
are necessary or if some form of them can be included upstream but for now
I need some feedback if this patch is still needed for IPv6 support.

https://src.fedoraproject.org/cgit/rpms/BackupPC.git/tree/BackupPC-3.3.1-IPv6-support.patch

Thanks,
Richard
Alexander Moisseev
2017-03-13 14:28:24 UTC
Permalink
I just took over maintenance of the BackupPC package for Fedora and EPEL and I'm working on updating the package to version 4.
There are several patches which I should probably share here to see if they are necessary or if some form of them can be included upstream but for now I need some feedback if this patch is still needed for IPv6 support.
https://src.fedoraproject.org/cgit/rpms/BackupPC.git/tree/BackupPC-3.3.1-IPv6-support.patch
They are already included in v4:

https://github.com/backuppc/backuppc/commit/6df4c4e8126d9c1df2e6b4843133a6661b64d5c4


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
BackupPC-devel mailing list
BackupPC-***@lists.sourceforge.net
List: https://lists.sourceforge.net/lists/listinfo/backuppc-devel
Wiki: http://backuppc.wiki.sourceforge.net
Project: http://backuppc.sourceforge.net/
Fritz Elfert
2017-03-13 16:23:17 UTC
Permalink
Please don't!!!

Reason:

AFAIK, backup data v3 is incompatible with backup data v4 and there's
now way to properly upgrade existing backup data. So a dnf update would
make all existing backup data inacessible all of a sudden which would
probably piss of many existing users. At least it would piss of me.

Instead, make a second package "backuppc4". This way, user can have
both versions installed and then gracefully migrate.

Thanks
-Fritz
Post by Richard Shaw
I just took over maintenance of the BackupPC package for Fedora and EPEL
and I'm working on updating the package to version 4.
There are several patches which I should probably share here to see if
they are necessary or if some form of them can be included upstream but
for now I need some feedback if this patch is still needed for IPv6 support.
https://src.fedoraproject.org/cgit/rpms/BackupPC.git/tree/BackupPC-3.3.1-IPv6-support.patch
Thanks,
Richard
------------------------------------------------------------------------------
Announcing the Oxford Dictionaries API! The API offers world-renowned
dictionary content that is easy and intuitive to access. Sign up for an
account today to start using our lexical data to power your apps and
projects. Get started today and enter our developer competition.
http://sdm.link/oxford
_______________________________________________
BackupPC-devel mailing list
List: https://lists.sourceforge.net/lists/listinfo/backuppc-devel
Wiki: http://backuppc.wiki.sourceforge.net
Project: http://backuppc.sourceforge.net/
Alexander Moisseev
2017-03-13 17:45:49 UTC
Permalink
Post by Fritz Elfert
AFAIK, backup data v3 is incompatible with backup data v4 and there's
now way to properly upgrade existing backup data. So a dnf update would
make all existing backup data inacessible all of a sudden which would
probably piss of many existing users. At least it would piss of me.
That is not correct. v3 pool backups are accessible from BackupPC v4.
Post by Fritz Elfert
Instead, make a second package "backuppc4". This way, user can have
both versions installed and then gracefully migrate.
You can't use both v3 and v4 on the same host as they install files in the same place.

However, keeping v3 package "backuppc" and making "backuppc4" package for v4 is a quite good point as a lot of people use v3 in production and changes between v3 and v4 are substantial.

BTW v3 support is not dropped by upstream yet.






------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
BackupPC-devel mailing list
BackupPC-***@lists.sourceforge.net
List: https://lists.sourceforge.net/lists/listinfo/backuppc-devel
Wiki: http://backuppc.wiki.sourceforge.net
Project: http://backuppc.sourceforge.net/
Craig Barratt
2017-03-13 17:52:35 UTC
Permalink
BackupPC 4.0 is backward compatible with 3.x backup storage - they can be
viewed/restored etc. I just pushed an optional migration
tool, BackupPC_migrateV3toV4, that replaces the hardlinked 3.x storage in
each backup with 4.x-style attrib files and reference counting. So you can
use that to get rid of all the 3.x hardlinks if you want, but it's not
necessary.

That said, the 4.0 client configuration has changed for rsync hosts due to
the use of rsync_bpc, so a package upgrade from 3.x to 4.x will potentially
require some admin effort to update the client configs. So I agree it
won't be a completely seamless upgrade.

What do other people recommend in terms of having a new package name for
BackupPC 4.x?

Craig
Post by Fritz Elfert
Please don't!!!
AFAIK, backup data v3 is incompatible with backup data v4 and there's
now way to properly upgrade existing backup data. So a dnf update would
make all existing backup data inacessible all of a sudden which would
probably piss of many existing users. At least it would piss of me.
Instead, make a second package "backuppc4". This way, user can have
both versions installed and then gracefully migrate.
Thanks
-Fritz
Post by Richard Shaw
I just took over maintenance of the BackupPC package for Fedora and EPEL
and I'm working on updating the package to version 4.
There are several patches which I should probably share here to see if
they are necessary or if some form of them can be included upstream but
for now I need some feedback if this patch is still needed for IPv6
support.
Post by Richard Shaw
https://src.fedoraproject.org/cgit/rpms/BackupPC.git/tree/
BackupPC-3.3.1-IPv6-support.patch
Post by Richard Shaw
Thanks,
Richard
------------------------------------------------------------
------------------
Post by Richard Shaw
Announcing the Oxford Dictionaries API! The API offers world-renowned
dictionary content that is easy and intuitive to access. Sign up for an
account today to start using our lexical data to power your apps and
projects. Get started today and enter our developer competition.
http://sdm.link/oxford
_______________________________________________
BackupPC-devel mailing list
List: https://lists.sourceforge.net/lists/listinfo/backuppc-devel
Wiki: http://backuppc.wiki.sourceforge.net
Project: http://backuppc.sourceforge.net/
------------------------------------------------------------
------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
BackupPC-devel mailing list
List: https://lists.sourceforge.net/lists/listinfo/backuppc-devel
Wiki: http://backuppc.wiki.sourceforge.net
Project: http://backuppc.sourceforge.net/
Kenneth Porter
2017-03-13 18:09:14 UTC
Permalink
--On Monday, March 13, 2017 11:52 AM -0700 Craig Barratt
Post by Craig Barratt
That said, the 4.0 client configuration has changed for rsync hosts due to
the use of rsync_bpc, so a package upgrade from 3.x to 4.x will
potentially require some admin effort to update the client configs. So I
agree it won't be a completely seamless upgrade.
Can you say more about what needs to change? I don't think I'm doing
anything incredibly exotic. Mainly a few hosts use include instead of
exclude to allow me to split up backups into smaller units without changing
the rsyncd config on the PC being backed up.

---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
BackupPC-devel mailing list
BackupPC-***@lists.sourceforge.net
List: https://lists.sourceforge.net/lists/listinfo/backuppc-devel
Wiki: http://backuppc.wiki.sourceforge.net
Project: http://backuppc.sourceforge.net/
Les Mikesell
2017-03-13 18:14:21 UTC
Permalink
On Mon, Mar 13, 2017 at 12:52 PM, Craig Barratt
Post by Craig Barratt
BackupPC 4.0 is backward compatible with 3.x backup storage - they can be
viewed/restored etc. I just pushed an optional migration tool,
BackupPC_migrateV3toV4, that replaces the hardlinked 3.x storage in each
backup with 4.x-style attrib files and reference counting. So you can use
that to get rid of all the 3.x hardlinks if you want, but it's not
necessary.
That said, the 4.0 client configuration has changed for rsync hosts due to
the use of rsync_bpc, so a package upgrade from 3.x to 4.x will potentially
require some admin effort to update the client configs. So I agree it won't
be a completely seamless upgrade.
What do other people recommend in terms of having a new package name for
BackupPC 4.x?
My opinion is that nothing should ever break in a 'yum update' from
CentOS/EPEL repositories if it can possibly be avoided. And even
with v4 in release status there may be reasons to install v3 or
rebuild a machine without changing anything. Using different package
names will let them co-exist for at least as long as v3 will be
maintained and let the sysadmin decide when to switch. I might think
differently if the upgrade could be completely transparent, though.
--
Les Mikesell
***@gmail.com

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
BackupPC-devel mailing list
BackupPC-***@lists.sourceforge.net
List: https://lists.sourceforge.net/lists/listinfo/backuppc-devel
Wiki: http://backuppc.wiki.sourceforge.net
Project: http://backuppc.sourceforge.net/
Craig Barratt
2017-03-13 23:46:14 UTC
Permalink
The configure.pl script updates the relevant rsync settings in the main
config.pl file. In particular, it updates $Conf{RsyncArgs}
and $Conf{RsyncRestoreArgs} with the 4.0 settings.

$Conf{RsyncSshArgs} is a new 4.0 setting, and $Conf{RsyncClientCmd}
and $Conf{RsyncClientRestoreCmd} are no longer used. configure.pl tries to
extract a sensible default setting for $Conf{RsyncSshArgs} from
$Conf{RsyncClientCmd}.

The potential problems are that there are per-client overrides for these
settings (which is not checked by configure.pl), and the computed value for
$Conf{RsyncSshArgs} isn't correct.

All the major per-client settings (schedule, what to backup etc) are
compatible from 3.x to 4.x.

Craig
Post by Kenneth Porter
--On Monday, March 13, 2017 11:52 AM -0700 Craig Barratt
Post by Craig Barratt
That said, the 4.0 client configuration has changed for rsync hosts due
to
Post by Craig Barratt
the use of rsync_bpc, so a package upgrade from 3.x to 4.x will
potentially require some admin effort to update the client configs. So I
agree it won't be a completely seamless upgrade.
Can you say more about what needs to change? I don't think I'm doing
anything incredibly exotic. Mainly a few hosts use include instead of
exclude to allow me to split up backups into smaller units without changing
the rsyncd config on the PC being backed up.
---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus
------------------------------------------------------------
------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
BackupPC-devel mailing list
List: https://lists.sourceforge.net/lists/listinfo/backuppc-devel
Wiki: http://backuppc.wiki.sourceforge.net
Project: http://backuppc.sourceforge.net/
Craig Barratt
2017-03-13 17:48:10 UTC
Permalink
Thanks for the patch. I applied the same patch to 4.0 a couple of months
ago, but made some edits (in particular, PingPath6 should be Ping6Path, and
"resolve()" is too generic - I changed that to getHostAddrInfo().

I'd apply the patch to 3.x if you mirrored the 4.0 changes, and ideally
submitted a pull request against github 3.x.

Craig
Post by Richard Shaw
I just took over maintenance of the BackupPC package for Fedora and EPEL
and I'm working on updating the package to version 4.
There are several patches which I should probably share here to see if
they are necessary or if some form of them can be included upstream but for
now I need some feedback if this patch is still needed for IPv6 support.
https://src.fedoraproject.org/cgit/rpms/BackupPC.git/tree/
BackupPC-3.3.1-IPv6-support.patch
Thanks,
Richard
------------------------------------------------------------
------------------
Announcing the Oxford Dictionaries API! The API offers world-renowned
dictionary content that is easy and intuitive to access. Sign up for an
account today to start using our lexical data to power your apps and
projects. Get started today and enter our developer competition.
http://sdm.link/oxford
_______________________________________________
BackupPC-devel mailing list
List: https://lists.sourceforge.net/lists/listinfo/backuppc-devel
Wiki: http://backuppc.wiki.sourceforge.net
Project: http://backuppc.sourceforge.net/
Holger Parplies
2017-03-14 15:28:23 UTC
Permalink
Hi,
Post by Alexander Moisseev
Post by Fritz Elfert
[...]
Instead, make a second package "backuppc4". This way, user can have
both versions installed and then gracefully migrate.
You can't use both v3 and v4 on the same host as they install files in the
same place.
that wouldn't need to be true, since distribution packages can choose where to
install which file (and which files possibly to share). However, I can't really
see much point in running both versions on one host aside from brief testing
for migration, and distinct paths for both versions would considerably
complicate migration, somewhat negating the whole point. The distribution would
be left "forever" with somewhat unnatural paths (e.g. /etc/backuppc4,
/var/lib/backuppc4, /usr/share/backuppc4 ...).

I would rephrase your comment as "it shouldn't be possible to install
distribution packages for both v3 and v4 on the same host" ;-).
Post by Alexander Moisseev
However, keeping v3 package "backuppc" and making "backuppc4" package for v4
is a quite good point as a lot of people use v3 in production and changes
between v3 and v4 are substantial.
I fully agree with that. Version 4 is a whole new philosophy, with which you
may or may not agree. It's a bit like "upgrading" from init to systemd. No
offence intended ;-).
Post by Alexander Moisseev
BTW v3 support is not dropped by upstream yet.
Another good point. It's a bit awkward to release packages for new v3 releases
that supercede older v3 packages but not older v4 packages if the package name
is identical :-).
Post by Alexander Moisseev
My opinion is that nothing should ever break in a 'yum update' from
CentOS/EPEL repositories if it can possibly be avoided. And even
with v4 in release status there may be reasons to install v3 or
rebuild a machine without changing anything.
I also agree with that (and would extend it to other distros).
Post by Alexander Moisseev
Using different package names will let them co-exist for at least as long
as v3 will be maintained and let the sysadmin decide when to switch.
I might think differently if the upgrade could be completely transparent,
though.
I don't see how a transparent upgrade would make the reasons go away, for
which you might want to install v3 or decide when to switch. (*)

While running v3 and v4 on the same host does not sound like a good idea,
running them on *different* hosts definitely does!

Regards,
Holger

(*) Aside from that, it is not *possible* to guarantee a transparent upgrade.
My RsyncClientCmd might invoke a remote end that is dependent on the exact
sequence of arguments passed by File::RsyncP, so upgrading might even
involve changing and recompiling code on a remote machine. The normal cases
(ssh, sudo, ssh + sudo) might work, but the flexibility the configuration
mechanism gives you comes at the cost of not being able to predict what
people will actually do.

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
BackupPC-devel mailing list
BackupPC-***@lists.sourceforge.net
List: https://lists.sourceforge.net/lists/listinfo/backuppc-devel
Wiki: http://backuppc.wiki.sourceforge.net
Project: http://backuppc.sourceforge.net/

Continue reading on narkive:
Loading...