分からんこと多すぎ

何故か就職できたので技術磨く。一人前の多重線形代数使いを目指しつつ、機械学習、データマイニングをやる

/command/unison/memo02

概要


unisonとは、ディレクトリ同期コマンドである。
要するにコマンド版Dropboxだ。
FreeBSDサーバにunisonをインストールし、ローカルとディレクトリを同期する。

参考はこちら。
unisonでファイル、ディレクトリの同期 - ひゃまだのブログ


インストール


ローカル

brew search unison
brew install unison

サーバ

cd /usr/port
make search name=unison
portinstall unison

インストール終了後に、
(unidirはわかりにくいけどディレクトリ名です)

ローカル

unison ~/unidir ssh://ユーザー名@サーバのID//Users/ユーザー名/unidir

サーバ

unison ~/unidir ssh://ユーザー名@ローカルのIP//Users/ユーザー名/unidir

どっちからやっても、パスワードを求められた後に、同期される。
おそらくだが、接続先のPCの/binにunisonコマンドがないと、認識されない模様。

~/.unison/remote-host.prfに、設定として書き込む。

# Unison preferencele
# option
# times ファイルの時刻をコピー元のままに保存する
times = true
# prefer newer 新しい方を優先する
prefer = newer

# ローカルとリモートの指定
# 実際に同期したいディレクトリはpathで指定するため、全体を指定
root = /Users/ユーザ名/unidir
root = ssh://ユーザ名@サーバ名//Users/ユーザ名/unidir

#無視して欲しいファイルを指定
ignore = Name *~
ignore = Name .*~
ignore = Name .bak

これで新しいファイルが常に優先されるようになった。

次回はこれをバックグラウンド実行する。
CRONとssh-keygenとかで対応できると良いなぁ。