From owner-FreeBSD-users-jp@jp.FreeBSD.org Thu Aug 25 23:52:30 2005
Received: (from daemon@localhost)
	by castle.jp.FreeBSD.org (8.11.6p2+3.4W/8.11.3) id j7PEqUk39864;
	Thu, 25 Aug 2005 23:52:30 +0900 (JST)
	(envelope-from owner-FreeBSD-users-jp@jp.FreeBSD.org)
Received: from mx.crc.co.jp (mxb.crc.co.jp [157.113.18.32])
	by castle.jp.FreeBSD.org (8.11.6p2+3.4W/8.11.3) with ESMTP/inet id j7PEqTI39859
	for <FreeBSD-users-jp@jp.FreeBSD.org>; Thu, 25 Aug 2005 23:52:30 +0900 (JST)
	(envelope-from ta.nakamura@crs.co.jp)
Received: from mail4.crc.co.jp by crc.co.jp  with ESMTP id j7PEpuf27817; Thu, 25 Aug 2005 23:51:56 +0900 (JST) env-from (ta.nakamura@crs.co.jp)
Received: from [127.0.0.1]
        by mail4.crc.co.jp  with ESMTP id j7PEqPI01181;
        Thu, 25 Aug 2005 23:52:25 +0900 (JST)
        env-from (ta.nakamura@crs.co.jp)
From: NAKAMURA Takeshi <1yen@sh.rim.or.jp>
To: FreeBSD-users-jp@jp.FreeBSD.org
In-Reply-To: <42E6E4AC.6060905@guzzi.jp>
References: <20050726234337.14C2.1YEN@sh.rim.or.jp> <42E6E4AC.6060905@guzzi.jp>
X-Mailer-Plugin: BkASPil for Becky!2 Ver.2.050
Message-Id: <20050825154315.B95C.1YEN@sh.rim.or.jp>
MIME-Version: 1.0
Content-Type: text/plain; charset="ISO-2022-JP"
Content-Transfer-Encoding: 7bit
X-Mailer: Becky! ver. 2.21.04 [ja]
Reply-To: FreeBSD-users-jp@jp.FreeBSD.org
Precedence: list
Date: Thu, 25 Aug 2005 23:52:21 +0900
X-Sequence: FreeBSD-users-jp 86759
Subject: [FreeBSD-users-jp 86759] Re: file sync
Sender: owner-FreeBSD-users-jp@jp.FreeBSD.org
X-Originator: 1yen@sh.rim.or.jp
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+050320

$BCgB<$G$9(B


# $B%[%9%HL>ItJ,$K<j$rF~$l$F$$$k$?$a!"JQ$JItJ,$,$"$j$^$7$?$i$4MF<O2<$5$$!#(B

On Wed, 27 Jul 2005 10:34:36 +0900,
 Yasuichiro YAMAGUCHI <yama@guzzi.jp> wrote:

> unison $B$"$?$j$O$I$&$G$9$+(B?
> ports/package $B$K$bF~$C$F$^$9!#(B
> rsync $B$H;w$F$$$k$1$l$I!"4IM}%U%!%$%k$rJL$K:n$C$F$$$F(B
> $B8e$+$i$d$C$?F0:n$N$[$&$,M%@h$5$l$^$9!#(B
> http://www.cis.upenn.edu/~bcpierce/unison/

 rsync $B$+$iCV$-49$($F$_$^$7$?!#$+$J$jJXMx$K$J$j$^$7$?!#(B

$B%9%/%j%W%H$J$I$O$3$s$J46$8!#(B
======== unison.sh =================
#!/bin/sh

LOG=/var/log/unison_mirror
exec >> $LOG 2>&1

sleep 30
PATH=/bin:/usr/bin:/usr/local/bin
export PATH
REMOTEHOST=ten
LockFile=/root/.unison/$REMOTEHOST.lock

UNISON=`which unison`
if [ ! -x "$UNISON" ]; then
  echo "unison command not found" >&2
  exit 2
fi

LockFileIsTooOld(){
# 2$B=E5/F0KI;_(B
# (1$B;~4V0J>eA0$N%m%C%/%U%!%$%k$N>l9g$O:o=|$7$F<B9T(B)
  if [ -f $LockFile ]; then
    Create=`stat -f %Dc $LockFile`
    OneHour=`date -v-1H +%s`
    if [ $Create -lt $OneHour ]; then
      ls -lT $LockFile
      rm $LockFile
      echo lockfile removed
    fi
  fi
}

LockFileIsTooOld
lockf -t 0 $LockFile true || \
  sh -c 'exec imput --subj="unison already running? ($HOST)" 1yen &'
lockf -t 0 $LockFile \
  $UNISON -batch mirror || \
  sh -c 'exec imput --subj="unison need maintenance ($HOST)" 1yen &'

exit 0

======= .unison/mirror.prf =========
root = /home
# ssh:/ $B$@$H!"%[!<%`%G%#%l%/%H%j$+$i$NAjBP%Q%9$K$J$k(B
root = ssh://ten//export/home
servercmd = /usr/local/bin/unison

path = samba
path = ossan

ui = text
dumbtty = true
sshargs = -C -i /root/.ssh/ten.unison

owner = true
group = true
times = true
log = true

== ten:/home/.ssh/authorized_keys ==
from="192.168.100.31",command="/usr/local/bin/unison -server",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-dss...($BN,(B)
====================================

 $B$3$l$GN>J}$N%[%9%H$GJQ99$799?7$G$-$J$$>l9g$d!"(B2$B=E5/F0$N;~$K$O(B
$B%a!<%k$,Mh$F!"$I$A$i$+0lJ}$N$_99?7$7$?>l9g$O$b$&0lJ}$X99?7$,EA$o$j$^$9!#(B
$BL^O@!"%?%$%`%9%?%s%W$,8E$/$J$C$?>l9g$G$bBg>fIW!#(B
$B!V(Btouch -ma 200501010101.33 abcdefg$B!W$N$"$H!"(Bunison $B$K$FF14|!#$5$i$K(B
$B!V(Btouch -ma 200301010101.33 abcdefg$B!W$r<B9T8e!"(Bunison $B$N<B9T%m%0(B($BH4?h(B)
========================
local          ten....
         <---- props      samba/abcdefg
local        : unchanged file     modified on 2005-01-01 at  1:01:33  size 0         rw-r--r-- user=0 group=samba
ten....      : changed props      modified on 2003-01-01 at  1:01:33  size 0         rw-r--r-- user=0 group=samba
Propagating updates


UNISON started propagating changes at 21:51:56 on 25 Aug 2005
[BGN] Copying properties for samba/abcdefg
  from //ten//export/home
  to /home
[END] Copying properties for samba/abcdefg
========================

$B$?$@!"!V(Bexec >> $LOG 2>&1$B!W(B $B$H$7$F=PNO$5$l$k%a%C%;!<%8A4$F$N%m%0$r(B
$B<h$C$F$$$k$?$a!"$+$J$j%U%!%$%k$,Bg$-$/$J$C$F$7$^$$$^$9!#(B
(newsyslog $B$G%m!<%F!<%7%g%s$5$;!"%9%/%j%W%H$N@hF,$K(B sleep $B$r(B
 $BF~$l$k$3$H$G40A4$G$O$"$j$^$;$s$,!"(Blog $B$,<:$o$l$k$3$H$rHr$1$F$$$^$9(B)
`Looking for changes' $B$N8e$KBgNL$K%U%!%$%kL>$,=P$F$/$k$N$H(B
progress meter $B$r;_$a$k$3$H$,=PMh$l$PJ86gL5$7$J$N$G$9$,(B...
(unison $B$N=PNO$9$k(B log $B$G$O!"JQ99$NL5$$>l9g2?$b=PNO$5$l$J$$$?$a(B
 $B!VK\Ev$K5/F0$5$l$F$$$k$+$I$&$+$r8e$G3NG'$7$?$$!W$H$$$&$4$/8D?ME*$J(B
 $BMW7o$,K~$?$5$l$^$;$s(B)


>> 3. Excel$B%U%!%$%k$J$I$r3+$/$H:n6H%U%!%$%k$^$G%_%i!<$5$l!"N>J}$N(B
>>    $B%^%7%s$+$i:o=|$7$J$$$H$$$1$J$$!#(B($B$^$!!"$3$l$O;EJ}$J$$$H;W$&$N$G$9$,(B)
>
> $B$3$l$O(B rsync $B$N(B exclude $B$K;XDj$7$F$*$1$PNI$$$s$8$c(B?
> $B%U%!%$%kL>$N%Q%?!<%s$O$o$+$C$F$k$o$1$G$9$7!#(B
> unison $B$G$bF1MM$K(B excluce $B;XDj$G2sHr!#(B

 $B%P!<%8%g%s$K$h$C$F%U%!%$%kL>$,B?>/0c$&$h$&$G$9$N$G!"$^$!$$$$$d$H(B(^^;
$B:G6aNI$/CN$i$J$$?M$b;H$&$h$&$K$J$C$?$N$G!"JQ$J%U%!%$%kL>$r;H$$(B
$B%_%i!<$5$l$J$$>l9g$N1F6A$NJ}$,Bg$-$$$@$m$&$7!#(B
# unison $B$J$i:n6H%U%!%$%k$,>C$($k$H!"$A$c$s$H%_%i!<@h$b>C$($F$/$l$^$9$7!#(B


> $B$?$@$A$g$C$H=E$$5$$,$9$k!#(B
> $B5pBg$J%U%!%$%k$,$"$k$H$D$i$$$+$b!#(B

 $B%_%i!<$9$k%U%!%$%k$O!">.$5$J%U%!%$%k$P$C$+$j$G(B
Excel $B$,@i$0$i$$$H!"%F%-%9%H$,(B 5$B@i8D(B $B7W(B600Mbytes $B$0$i$$!#(B
$B0lEY$KJQ99$5$l$k$N$OB?$/$F(B $B?t(BM$B!#(B

 1. rsync $B$r(B 4 $B2s5/F0(B (amd / NFSv3 / udp)
     1. /home/samba --- rsync --> /net/TEN/export/home/samba
     2. /home/samba <-- rsync --- /net/TEN/export/home/samba
     3. /home/ossan --- rsync --> /net/TEN/export/home/ossan
     4. /home/ossan <-- rsync --- /net/TEN/export/home/ossan
 2. unison $B$N(B path $B$r;XDj$7(B 1$BEY$G40N;(B (ssh)
     1. BUN:/home/{samba,ossan} <-- unison --> ssh://TEN//export/home/{samba,ossan}

$B2?$b99?7$,$J$$$H$-$O(B
 1. 30$B!A(B40$BIC(B
 2. 10$B!A(B20$BIC(B
$B$0$i$$$G!"99?7$,$"$C$F$b(B unison $B$NJ}$,B.$+$C$?$G$9!#(B
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+
 $B4X@>2-Fl@DG/$N=8$$(B $B$,$8$^$k$N2q(B $B<jEA$$(B $B0l?M$@$1$N>!<j$K?@F`@n;YIt(B
 $BCgB<(B $BIp(B <1yen@sh.rim.or.jp>
# $B$"$H$O(B ClusterIT $B$G$9$M!#Mh7n$NKv$0$i$$$KIt20$N0\F0$,$"$j!"(B
# $B%j!<%9@Z$lD>A0$NITMW(BPC$B$,2?Bf$+=P$=$&$J$N$G!"$=$l$G%F%9%H(B
# $B=PMh$k$+$bCN$l$^$;$s!#(B

 unison $B$KOC$7$OLa$C$F(B
 $B%$%s%9%H!<%k$7$?8e$K%P!<%8%g%s$,>e$,$k$H0\9T$,LLE]$J$N$G!"(B
$B%$%s%9%H!<%kA0$K(B ports $B$N%P!<%8%g%s$r@h$K>e$2$F$*$3$&$H(B 2.13.6 $B$r(B
net/unison-devel $B$H$7$F(B send-pr $B$7$^$7$?$,!":#$N$H$3$mL$99?7!#(B
http://www.freebsd.org/cgi/query-pr.cgi?pr=84603
$B8=:_!"(B2.13.16 $B$,(B stable $B$K$J$C$?MM$G$9!#(B
http://www.cis.upenn.edu/~bcpierce/unison/download/releases/stable/

8/12 $B$K(B maintener $B$N(B Dan Pelleg $B$5$s$+$i$3$s$J%a!<%k$,Mh$?$N$G(B
$B:n$C$F$/$l$k$@$m$&$H;W$C$F$$$k$s$G$9$,(B...
> Unison 2.13 has been declared stable. I'll make a port and submit it in
> a few days.

How many days? $B$HJV?.$7$F$_$h$&$+$J(B($B>P(B)
# $B:G6a(B ports $B$N(B commit $B$,8:$C$F$$$k5$$,$7$^$9$,!"$=$l$,860x$J$N$G$7$g$&$+!)(B

