ports/96245: pdumpfs-rsync doesn't work.

Yoshisato YANAGISAWA yanagisawa at csg.is.titech.ac.jp
Mon Apr 24 04:00:41 UTC 2006


>Number:         96245
>Category:       ports
>Synopsis:       pdumpfs-rsync doesn't work.
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Apr 24 04:00:38 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Yoshisato YANAGISAWA
>Release:        FreeBSD 6.1-RC i386
>Organization:
Tokyo Institute of Technology.
>Environment:
System: FreeBSD frodo.csg.is.titech.ac.jp 6.1-RC FreeBSD 6.1-RC #85: Wed Apr 19 11:41:59 JST 2006 yanagisawa at frodo.csg.is.titech.ac.jp:/usr/obj/usr/src/sys/FRODO i386


	
>Description:
	Pdumpfs-rsync is a remote back up program based on pdumpfs.
	Pdumpfs is a differential back up program for local files written
	in ruby.

	Pdumpfs-rsync in a port has two problems:
	- it supports old pdumpfs, which is not in a port any more,
	- a position of rsync is wrong.

	
>How-To-Repeat:
	Just install pdumpfs-rsync from a port and execute it.
	
>Fix:

	
	Use a following patch to change the position of rsync and
	support latest pdumpfs.

diff -Nruip /usr/ports/sysutils/pdumpfs-rsync/files/patch-pdumpfs-rsync pdumpfs-rsync/files/patch-pdumpfs-rsync
--- /usr/ports/sysutils/pdumpfs-rsync/files/patch-pdumpfs-rsync	Mon Dec 26 10:37:29 2005
+++ pdumpfs-rsync/files/patch-pdumpfs-rsync	Mon Apr 24 12:25:48 2006
@@ -1,5 +1,11 @@
---- pdumpfs-rsync.orig	Mon Dec 26 12:31:35 2005
-+++ pdumpfs-rsync	Mon Dec 26 12:33:21 2005
+--- pdumpfs-rsync.orig	Mon Apr 24 11:58:50 2006
++++ pdumpfs-rsync	Mon Apr 24 11:59:49 2006
+@@ -1,4 +1,4 @@
+-#!/usr/bin/ruby
++#!/usr/local/bin/ruby18
+ #
+ # pdumpfs-rsync: remote pdumpfs using rsync
+ #
 @@ -15,7 +15,7 @@
  # the GNU General Public License version 2.
  #
@@ -9,7 +15,16 @@
  require 'ftools'
  require 'getoptlong'
  
-@@ -128,8 +128,10 @@
+@@ -110,7 +110,7 @@ end
+ 
+ def main
+   src, dest, base, matcher, rsync_opts, opts = parse_options
+-  rsync_array = ['/usr/bin/rsync',
++  rsync_array = ['/usr/local/bin/rsync',
+ 		 '-avH',
+ 		 '--delete',
+ 		 '--delete-excluded',
+@@ -128,8 +128,10 @@ def main
      end
    end
  
@@ -22,12 +37,16 @@
    rsync_array = rsync_array + rsync_opts
    rsync_array.push(ARGV[0].sub(%r!/+$!, '') + '/')
    rsync_array.push(src + '/')
-@@ -141,7 +143,7 @@
+@@ -141,7 +143,11 @@ def main
      if ( $? >> 8 != 0 )
        STDERR.print "WARNING: rsync failed: #{ARGV[0]}; exit value: #{$? >> 8}\n"
      end
 -    update_snapshot(src, src, today, matcher)
-+    pdumpfs.update_snapshot(src, src, today, matcher)
++    if latest
++      pdumpfs.update_snapshot(src, latest, today)
++    else
++      pdumpfs.recursive_copy(src, today)
++    end
    else
      STDERR.print "rsync failed: #{ARGV[0]}; exit value: #{$? >> 8}\n"
      exit $? >> 8

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list