音声と文法の分析がたくさんあるクラスを受講しています。彼らは私にWindows10ネットワーク上のアカウントを与えてくれました。私はMacとLinuxにずっと慣れているので(そしてWindowsの利用可能時間は限られているので)、Macラップトップで仕事をしています。
NTFSディレクトリを自動マウントしましたが、LANに問題があるため、一部のアプリには読み取り専用アクセスがあるか、まったくアクセスできないことがよくあります。
その結果、私はローカルコピーで作業し、頻繁にrsync変更します。ただし、rsync *は常にすべてのNTFSディレクトリを更新します。ディレクトリのみを更新し、ファイルは更新しません(実際に変更したものを除く)。それらのディレクトリのほとんどは、私がナビゲートしたことはありませんが、rsyncは、サブディレクトリツリーの最後まで更新を報告します。メジャーではなく、数秒で終了しますが、それでもかなり奇妙です。
WindowsとNTFSは、rsyncに変更されたと思わせる、アクセスされないディレクトリに対して何をしますか?
このタイプのセットアップでは、NTFSパーティションにマウントし、--modify-window=5
などの適切なパラメータを使用してデフォルト値を増やし、精度を下げてmod-timeを比較できるようにします。
--modify-window When comparing two timestamps, rsync treats the timestamps as being equal if they differ by no more than the modify-window value. This is normally 0 (for an exact match), but you may find it useful to set this to a larger value in some situations. In particular, when transferring to or from an MS Windows FAT filesystem (which represents times with a 2-second resolution), --modify-window=1 is useful (allowing times to differ by up to 1 second).
-a
_の暗黙的なオプションを_--no-OPTION
_で明示的に除外するコメント:
「rsync-av --bwlimit = 200 --delete --modify-window = 5(HFS +)(NTFS)」にmodify-windowを追加すると、未訪問のディレクトリの更新が停止しました。しかし、1日後にそれは再びそれをしました。すぐに繰り返しても更新されませんでした。 Windowsにログインすると、再び発生しました。しかし、それ以来、Windowsにログインしているかどうかに関係なく、毎回発生します。 rsyncコマンドがわずか1秒離れている場合でも。繰り返しになりますが、不要な更新があっても、1秒しかかからないので、大したことではありません。ただし、ファイルリストの読み取りは不便になります。 WGrolea
解決策としてこれらのオプションを使用したテストを検討してください:
_--size-only skip files that match in size -c, --checksum skip based on checksum, not mod-time & size -O, --omit-dir-times omit directories from --times
_
_-a
_(_--archive
_)には暗黙的なオプションが含まれているため、_-rlptgoD
_オプションと同等です。
_-r, --recursive recurse into directories -l, --links copy symlinks as symlinks -p, --perms preserve permissions -t, --times preserve modification times -g, --group preserve group -o, --owner preserve owner (super-user only) -D same as --devices --specials
_
同期しているこれら2つの異なるファイルシステム間で特定の属性が比較されないようにするには、これらのオプションの一部を_--no-OPTION
_で明示的に省略する必要がある場合があります。
たとえば、次のいずれかを追加します。
--no-o
_は所有者属性を無視します--no-g
_はグループ属性を無視します--no-times
_は時間属性を無視します重要:オプションの順序は重要です:_--no-r -a
_を指定すると、_-r
_オプションがオンになり、_-a --no-r
_。の反対になります。
_--no-OPTION You may turn off one or more implied options by prefixing the option name with lqno-rq. Not all options may be prefixed with a lqno-rq: only options that are implied by other options (e.g. --no-D, --no-perms) or have different defaults in various circumstances (e.g. --no-whole-file, --no- blocking-io, --no-dirs). You may specify either the short or the long option name after the lqno-rq prefix (e.g. --no-R is the same as --no-relative). For example: if you want to use -a (--archive) but don't want -o (--owner), instead of converting -a into -rlptgD, you could specify -a -- no-o (or -a --no-owner). The order of the options is important: if you specify --no-r -a, the -r option would end up being turned on, the opposite of -a --no-r. Note also that the side-effects of the --files-from option are NOT positional, as it ' affects the default state of several options and slightly changes the meaning of -a (see the --files-from option for more details).
_
プログラムの読み取り専用の問題に最初に答えます。ネットワーク共有はWindowsによって制御されるため、Windowsは特定のユーザーにのみ許可を与えます。それはパブリックシェアである可能性があります、IE誰でもファイルをダウンロードするためにそれを見ることができますが、そうすることができるように特別に追加されない限りそれを変更することはできません。あなたはMacを使用しているので、 Linuxへ。使用しているすべてのLinuxアプリケーションが、MacまたはLinuxで現在ログインしているのと同じユーザー名を使用しているわけではありません。したがって、プログラムはログインしたユーザー名を使用していないため、編集する権限が与えられていません。ユーザー名が一致しないため、ウィンドウに従ってファイル。
第二に、Rsyncは再帰的です。つまり、すべてのディレクトリを通過します。特定のディレクトリに制限しない限り、1つのディレクトリに制限しても、開始したディレクトリにあるすべてのディレクトリを通過し続けます。これは、そのように設計されたものです。したがって、それは再帰的同期と呼ばれます。ここで、ファイルではなくディレクトリを更新する理由は、rysncがディレクトリからタイムスタンプを取得する方法である可能性があります。 Windows 10ディレクトリには変更またはアクセスされたタイムスタンプがないため、ディレクトリが作成されたときのタイムスタンプのみが含まれているのに対し、ファイルにはこれらすべてのタイムスタンプがあり、rsyncがディレクトリを更新する必要があるかどうかを判断するために使用するか、ファイル。