タグ付けされた質問 「rsync」

rsyncは、ローカルまたはリモートでディレクトリ階層を効率的にコピーするツールであり、強力なフィルターを使用して、何をコピーするかを決定します。

3
すべてのファイルとフォルダーにユーザー権限を付与する
システム上のすべてのファイルとフォルダーにアクセスできるユーザーが必要です。これは、ローカルマシンでRSYNCを使用してリモートマシンをバックアップするためのものです。 現時点ではユーザーbackupsを使用していますが、このユーザーをグループに追加してもsudo、adminrsyncは次のようなメッセージを返します。 rsync:opendir "/ location / to / folder" failed:Permission denied(13) rsync:send_files failed to open "/ location / to / file":Permission denied(13) すべてbackupsにアクセスするためのアクセス許可をユーザーにどのように与えるかを考えます(ユーザーをすべてのグループに追加する以外は-バックアップしようとしているリモートサーバーは、すべてのアカウントがシステム上に独自のユーザーを持つ専用のホスティングサーバーです)。 助けてくれてありがとう。

1
rsyncの--fuzzyオプションはどのように機能しますか?
どのように機能しrsync --fuzzyますか?期待した結果が得られません。 マニュアルから: このオプションは、欠落している宛先ファイルの基本ファイルを探す必要があることをrsyncに指示します。現在のアルゴリズムは、宛先ファイルと同じディレクトリで、サイズと変更時刻が同じであるファイル、または同様の名前のファイルを探します。見つかった場合、rsyncはファジーベースファイルを使用して、転送の高速化を試みます。 オプションが繰り返される場合、ファジースキャンは、-compare-dest、-copy-dest、または--link-destを介して指定された、一致する代替宛先ディレクトリでも実行されます。 --deleteオプションを使用すると、可能性のあるあいまい一致ファイルが削除される可能性があるため、-delete-afterを使用するか、これを防ぐ必要がある場合は、ファイル名の除外を指定してください。 したがって、次のシェルスクリプトは、2回目のrsync実行でファイルdestination / a1をdestination / a2に名前変更することを期待しています。ただし、出力を解釈すると、これは何が起こっているのかではありません(Matched data: 0 bytes)。 #! /usr/bin/env bash set -e cd $(mktemp -d) mkdir source destination cat /dev/urandom | head --bytes=1M > source/a1 rsync --recursive --times $(pwd)/source/ $(pwd)/destination/ tree mv source/a1 source/a2 rsync \ --verbose \ --recursive \ --times \ --delete …
9 rsync 

3
rsyncテキストファイルの絶対パスを持つディレクトリのリスト
絶対パスを含むディレクトリのリストを含むテキストファイルがあります $ cat DirectoriesToCopy.txt /data/Dir1 /data/Dir2 rsyncを使用して、これらのすべてのディレクトリを絶対パスを保持しながら別の場所にコピーしたいと考えています。 次のrsyncコマンドを試しましたが、機能しません rsync -avr --include-from=DirectoriesToCopy.txt --exclude='*/' --exclude='/*' / /media/MyDestination/ ここで何が問題になっていますか?

1
Rsync --backup-dirは無視されているようです
を使用rsyncして、ローカルの場所からリモートの場所にディレクトリをバックアップし、変更されたファイルを別のリモートの場所に保存します。私は使用しました: rsync -rcvhL --progress --backup \ --backup-dir=user@url.com:/home/user/Changes/`date +%Y.%m.%d` . \ user@url.com:/home/user/Files/ --backup-dirは満たされているはずですが、空のままです。私が達成しようとしていることが不可能であるか、何か間違っているのですか?
9 rsync 

2
SSH経由でrsyncを使用してリモートから複数のファイルをコピーする
を使用してリモートマシンから複数のファイルをコピーしたいrsync。そこで、次のコマンドを使用します。 rsync -Pav -e 'ssh -i sshkey' user@remotemachine:/home/user/file1.zip file2.zip file3.zip . 次のエラーが表示されます 予期しないローカルarg:file2.zip argがリモートファイル/ディレクトリの場合は、その前にコロン(:)を付けます。rsyncエラー:main.c(1362)での構文または使用法のエラー(コード1)[Receiver = 3.1.0]

4
Dropboxの代わりにrsync + sshベースの方法を探す
いくつかのディレクトリをいくつかのUnixホストで同期させるために、rsyncを使用して個人(つまり1人のユーザー)のDropboxの代替を設定したいと思います。 一度に1人のユーザー(つまり、私)のみが1つのホストのコンテンツを変更するため、これらの変更が時間的に重複しないと想定しても安全です。この意味は 変更と同期の間に10〜15分の遅れが許容されます。 修正時間は、「現在のバージョン」の妥当なプロキシでなければなりません。 複数のサーバーの同期を維持するために出会ったすべてのrsyncスキームは、バックアップなど、1日1回の同期スケジュールで機能します。また、これらのスキームでは通常、1つのホストがマスターで、残りのホストがそれをミラーリングしますが、私が想定している状況では、ホストのいずれかで変更が発生する可能性があります。 誰かがこのようなことをするためにrsync + sshを設定するためのツールまたはハウツーを私に指摘できますか?
8 ssh  rsync 

1
異なる深さで.gitignoreファイルを--exclude-fromしている間のRsyncフォルダー
だから私は次のような構造を持つソースフォルダーをrsyncするコマンドに取り組んでいます: - app.js - .gitignore - src/ - src/logs/ - src/logs/.gitignore 最初の.gitignoreは一連のファイルを無視します。典型的なもの。2番目は次のようになります。 * !.gitignore この手法は、ファイルが含まれていないディレクトリをチェックインする場合に使用されます。ディレクトリ全体に.gitignoreがさらに存在する場合もあります-これは1つのシナリオにすぎません。だから私の質問はこれです:rsyncがすべての.gitignoresをそれらが置かれているディレクトリに相対的に解釈させることは可能ですか? 私の最初の試みは次のとおりでした: ディレクトリ内のすべての.gitignoresを取得します。 次のようなビルドコマンド: rsync --exclude-from=.gitignore --exclude-from=src/logs/.gitignore --exclude-from=some/other/folder/.gitignore [source] [destination] ただし、これは期待どおりに機能しませんでした。すべての.gitignoreファイルがルートにあるかのように読み込まれるため、すべてが無視されます。すべての.gitignoresに対してgrepを実行せずに、ルートディレクトリからの相対パスをすべて再書き込みしたマスターファイルを1つ作成することなく、これを行う方法はありますか? ありがとう!
8 rsync  git 

3
rsync最新のx GB
最近変更されたファイル(最大10 GB)を別のコンピューターにコピーできるようにするコマンド/スクリプトを探しています。 したがって、4 GBのファイルがそれぞれ4 GBある場合、スクリプトによって転送されるのは2つだけです。1GBのファイルが12個ある場合は、最新の10個だけが転送されます。

2
特殊文字を含むファイルをUSB FAT32に再同期する
FAT32でフォーマットされたUSBドライブに多数のファイルをコピーしたい(残念ながらそれ以外はフォーマットできない)。 これらのファイルの多くには、などの文字を含む名前が:あり?、FAT32では許可されていません。cpまたはを使用しようとするとrsync、これらのファイルはコピーされず、その旨を示すエラーが報告されます。 コピー元でファイルの名前を変更したくないのですが、コピー先のUSBドライブでファイルの名前を変更する必要もありません。 目的の明確化(他のコメントにも適用されます):これは車のmp3プレーヤー向けであり、ソフトウェアはFAT32のみを許可します。したがって、バックアップの目的ではありません。そして、ファイル名に奇妙な文字が含まれている理由は、それらが、たとえばmp3のタイトルやアーティストの名前であるためです。 私はいくつかのことを試しました: rsyncの--iconvオプション。これは機能していないようですが、おそらく正しく使用していません。 rdiff-backup私が読んだは、デフォルトでこの変換を行います。ただし、ソースファイルは私がたどりたいシンボリックリンク(つまりrsyncの-Lオプション)であり、マンページからrdiff-backupはこのオプションが付いていないようです。 他に何か提案はありますか?
8 backup  rsync  fat 

3
ターゲットでのrsyncおよび書き込み権限
なぜrsyncファイルをリモートディレクトリに転送しようとするのか、そのファイルがターゲットディレクトリに対する読み取り/実行権限を持っているのに、実際の宛先ファイルを作成するための書き込み権限がないのかと、いつも疑問に思いました。通常のユーザーとしてにファイルをコピーしようとするとき、これはでも、ローカルにシミュレートすることができます/、rsyncファイル全体を転送する(また、大きなファイルのためにかなり時間がかかる)、最後で失敗します rsync: mkstemp "/.myTargetFile" failed: Permission denied (13) そのため、転送中に一時ファイル(ドットファイル)を作成しようとすると、起動時にすでに失敗しているようです。書き込み権限がないのにファイル全体をコピーしようとせずに、これに気づかずに早期に中止しないのはなぜですか? 一時ファイルを作成できない場合、ファイルはどこにコピーされますか?rsyncプロセスのメモリの増加が見られず、/ tmpに対応するファイルもありません。それは宛先でデータを直接破棄するようですが、それでも転送を続けます。

4
cpまたはrsync、cpは本当に価値がありますか?
私は私が使用するための良い理由を見つけるように見えることはできません、これは、本当の答えずに質問としてカウントされません願うcp(1)以上rsync(1)、事実上すべての状況では。1は、一般的に賛成すべきであるrsyncオーバーcp?それらを使用するための良いガイドラインはありますか? rsync:差分を転送します。圧縮を使用できます。リモートで(安全に)使用できます。単一の大きなファイルの転送中でも、中断されても再開できます。」 cp:多分それは単に使用する方が簡単ですか?rsyncより高速ですか?
8 bash  shell  rsync  utilities  cp 

2
変更したファイルを保存するにはどうすればよいですか?
2つのフォルダーがあります。 元の/ ORIGINAL_AND_MY_CHANGES / 私の友人はORIGINAL /のコピーを持っています。MY_CHANGES.tgzを生成したい-ORIGINAL /と比較して、ORIGINAL_AND_MY_CHANGES /からの新しいファイルまたは変更されたファイルのみを含める必要がある。したがって、私の友人は、それをORIGINAL /のコピーに解凍して、ORIGINAL_AND_MY_CHANGES /を取得できます。これどうやってするの? PS私は試しましたdiffが、バイナリデータを保存できませんrsync --link-dest--アーカイブでは役に立たないハードリンクを生成します。 PPS私の場合、変更時刻はどのファイルが変更されたかを判断するために使用できません。
8 rsync  diff  file-copy 

1
外付けドライブへの自動増分バックアップ
バックグラウンド クライアントは、外付けドライブへの自動バックアップソリューションを必要とします(毎週オフサイトで使用するため)。通常、rsnapshot(またはカスタムrsyncスクリプトのロールアウト)をお勧めしますが、この質問は少し複雑です。 Arch Linuxベースのシステムはヘッドレスであるため、ソリューションは完全に自動化されている必要があり、ユーザーの介入は必要ありません。 理想的なシナリオは次のとおりです。 ユーザーがUSBハードドライブを接続する 完全な増分バックアップが作成されます ハードドライブがマウントされていません ハードドライブを取り外すことができることがユーザーに通知されます 提案 私が提案する解決策は、次のもので構成されています。 udevルールは自動的にドライブをマウント バックアップは以下から開始されます: 同じudevルールでrsnapshotスクリプトもトリガーされます inotifyを 作成する新しいマウントポイントとトリガを検出したイベントをrsnapshot 終了後、ドライブで実行されrsnapshotますumount ハードドライブに通知する可能な方法は削除することができます: CDドライブが開きます PCスピーカーから音が再生される エラーが発生した場合は、ユーザーにメールを送信し、ドライブをアンマウントしてください。 ご質問 私の提案は実現可能のようですが、明らかな欠陥はありますか?どうすれば堅牢にすることができますか? セキュリティ上の理由から、接続されているハードドライブがユーザーのものであることをどのように確認できますか?sshキー?ドライブラベル? これを含む既存の(Linux)ソリューションはありますか?

1
rsync-特定のファイルが存在しない場合にのみディレクトリの内容をコピーします
古いサーバーのコンテンツを新しいサーバーに移行したいのですが、すべてに対処するのではなく、.swfファイルが含まれるディレクトリを除外します。--excludeフラグは認識していますが、.swfファイルがある場合は、親ディレクトリ(およびそのコンテンツ)ではなく、ファイルのみを除外します これをrsyncで実行できない場合、この条件でサーバー間でファイルをコピーするために使用できるbashスクリプトはありますか?

1
情報をファイルにrsync
rsyncを使用して、あるサーバーから別のサーバーにデータをバックアップします。これはうまく機能します。 rsync -aktvu -e 'ssh -p 22' --modify-window=1 --progress $SOURCE $USER@$SERVER:$DESTINATION 出力には、コピーされた内容が表示されます。 building file list ... 11 files to consider ./ server/ server/myfile.txt 3152 100% 0.00kB/s 0:00:00 (xfer#1, to-check=8/11) server/test/ server/test/logfile01 8266 100% 7.88MB/s 0:00:00 (xfer#2, to-check=6/11) server/test/logfile07 41004 100% 39.10MB/s 0:00:00 (xfer#3, to-check=5/11) server/test/logfile08 318 100% 310.55kB/s 0:00:00 (xfer#4, …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.