一般ユーザーを介して Amazon Gnu/Linux サーバーにファイルをアップロードしようとしましたが、ファイル所有者がアップロードの成功後に気に入らないようにしました。
ファイルの所有権は、ファイルの移動に使用したユーザーではなく、ディレクトリから取得されます。
例:
scp -i xxx.pem filename surya@publicipaddress:/home/surya
ls -lh filename
-rwxrwxr-x 1 ec2-user ec2-user 1.7K Dec 24 11:30 filename
ここで、ファイルをアップロードした後は、ファイルをアップロードしたユーザーを通じてsurya
所有権が私のものになるはずです。surya
答え1
このscp
コマンドは、コピーされたファイルの所有者とグループを保持しません。
これを行うには、次のコマンドを使用できます。
rsync
コマンドと--owner (or -o)
オプション--group(or -g)
。
からman
:
-o, --owner preserve owner (super-user only) -g, --group preserve group
- または
tar
コマンド:
tar --owner=user --group=user -cpf - ./* | ssh -l user dest_server \ 'tar xpf - -C /path/to/folder'