rsync
zsync
Linux で利用できる、これより優れた同期/バックアップ ツールは他にありますか。私は自分のサイト、wiki をローカルにインストールしています。ローカル サイトに変更を加えたいので、ボタンを押すだけです。または、フォルダーに対してコマンドを実行すると、ローカル ファイルとライブ サイトのファイルの diff がチェックされ、必要な処理が実行されます。
そのため、filezilla/cuteFTP は機能しません。これらは diff を実行せず、非常に非効率的にフォルダー全体を置き換えるだけです。rsync/zsync にフロントエンドが利用できると素晴らしいと思います。できれば、サイトとしては zsync です。これは http 転送用に調整されています。
答え1
サイトコピー解決策になるかもしれません。同様の状況で私の場合はうまくいきました。残念ながら GUI はありませんが、実行するためのショートカットを作成するのは簡単です。
答え2
svn
rsync ではなく、/Subversionなどのバージョン管理ツールを使用したいようですねgit
。これはニーズに完全に適合し、編集によって何かが台無しになった場合にロールバックできるという利点もあります。
見てみましょうサブバージョンホームページおよび/またはgit の使い方。
答え3
wiki にはリビジョン管理が組み込まれていることが多く、多くはファイルベース (データベースに保存されるのではなく) なので、rsync は問題なく動作するはずです。インストールを複数のサーバーに複製するために 'TWiki' でこれを実行している人を知っています。
おそらく、Wiki ファイルへのアクセス権は 'ftp' のみでしょうか? 再帰 (-r) およびタイムスタンプ (-N) フラグを設定して 'wget' で ftp (http インターフェイスではなく) からプルし、'新しい' (正確には差分ではない) ファイルのみを転送することを検討してください。
FTP サーバー上にあるものの「コピー」を入手したら、何らかの方法で更新時間をマークします (多くの場合、特定のマーカー ファイルを「タッチ」するだけです)。次に、同じ wiki のローカル インストールを介して通常どおり編集し、次に「find $dir --newer touchmarkerfile」を使用して FTP の更新を識別し、FTP 配信ツールのスクリプトを介してそれらを転送します。
私は以前にもこのようなソリューションを使用したことがあります (ただし、'wget' 経由で変更をメイン サーバーに吸い戻すという利点があったため、再帰的なタイムスタンプ アプローチを再度使用しました)。
後から考えると、もし私が「ssh」アクセスを持っていたら(持っていませんでしたが)、「rsync -globtru[n]cv」を使用して、各方向にファイルをプル(またはプッシュ)するだけでよかったと思います。
答え4
私には、Wiki がどのようなデータ形式になっているのかわかりません。データベース バックエンドを使用している場合は、何らかのレプリケーションで対処できる可能性があります。MySQL と PostgreSQL はどちらも、他のものと同様に、これをすぐにサポートします。