rsync -a
rsync -a
は-rlptgoD
オプションの省略形で、短く指定できる。-a
は以下を保存して同期する。
- owner(所有者)
- group(グループ)
- パーミッション
- タイムスタンプ
短く指定できて便利だが、-a
を指定しつつ、owner(所有者)とgroup(グループ)は実行ユーザーにしたい場合がある。
–no-o –no-g オプション
-a
オプションを指定している場合でもowner(所有者)とgroup(グループ)の同期を無効にするには、--no-o
と--no-g
オプションを使用する。
rsync -avz --no-o --no-g source/ dest/
--no-o
--no-g
オプションを使うと、ファイルのownerとgroupが実行ユーザーになる。
具体例
通常の rsync -a の場合
以下のコマンドをuser
ユーザーで実行する場合:
$ ls -la source/
-rw-r--r-- 1 other admin 100 Jun 15 23:20 file.txt
$ rsync -avz source/ dest/
$ ls -la dest/
-rw-r--r-- 1 other admin 100 Jun 15 23:20 file.txt
ファイルのownerとgroupは元のファイルを引き継いでいる。
–no-o –no-g を使用した場合
$ rsync -avz --no-o --no-g source/ dest/
$ ls -la dest/
-rw-r--r-- 1 user staff 100 Jun 15 23:20 file.txt
ファイルのownerとgroupが実行ユーザー(user
)とそのプライマリグループ(staff
)に変更されている。
\第一線のプログラマーの行動原理を学べる!/