私は CwRsync を使用して、Windows 開発マシンから Linux Web サーバーに接続しています。
rsync -avuz -e ./ssh --exclude=".svn" /cygdrive/c/xampp/htdocs/project123/ [email protected]:/home/user123/public_html
これにより、開発プロジェクト ディレクトリがサーバーに適切かつ高速に同期されます。
しかし、これを実行すると、すべてのディレクトリ プロパティがローカル ユーザーuser123
のみにリセットされるため、Web サイトは利用できなくなります。これらのプロパティを手動でリセットする必要があります。
なぜこのようなことが起こるのでしょうか、また、どうすれば防ぐことができるのでしょうか?
PS. Windows 環境から来たので、rsync を理解するのに本当に苦労しています。上記のコマンドをいくつかの例からコピーしました... この小さな 1 つも動作させる必要があります...
答え1
「プロパティ」が何を意味するかによって異なります。
権限は?
-p
( )オプション--perms
はそれらを保持するはずです。ただし、 を使用すると自動的に有効になる-a
ため、権限が失われた場合は CwRsync 自体が原因である可能性があります。Cygwin
ls
のとを使用してchmod
、地元権限は正しいです。または、--no-perms
オプションを試してください。所有?Unixシステムでは、ユーザーはファイルの所有権を変更できません。 としてログインして
user123
ファイルを作成すると、そのファイルの所有者は になりますuser123
。同様の制限がグループにも存在します。できるファイルのグループを変更しますが、自分自身がそのグループに属している場合のみです。他に何かありますか?