質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Active Directory

Active Directoryは、 Windows Serverの機能の一つで、 マイクロソフトによって作られたディレクトリサービスです。 ネットワーク上に存在する様々なハードや利用者情報のアクセス権限などを一元管理が出来ます。

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

samba

Samba(サンバ)とは、UNIX系OSにおいてSMBを用いたサービスを提供するためのソフトウェアです。ネットワークを通じて、ファイル共有及びプリンタ共有などのサービスをWindowsマシンへと提供します。ライセンス体系GPLに基づきフリーソフトウェアとして公開されています。

Q&A

2回答

1898閲覧

Amazon Linux -> Amazon Linux2 への ssh を使用した rsync でのファイル転送時に uid, gid が引き継がれない

taiyounomoyou

総合スコア0

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Active Directory

Active Directoryは、 Windows Serverの機能の一つで、 マイクロソフトによって作られたディレクトリサービスです。 ネットワーク上に存在する様々なハードや利用者情報のアクセス権限などを一元管理が出来ます。

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

samba

Samba(サンバ)とは、UNIX系OSにおいてSMBを用いたサービスを提供するためのソフトウェアです。ネットワークを通じて、ファイル共有及びプリンタ共有などのサービスをWindowsマシンへと提供します。ライセンス体系GPLに基づきフリーソフトウェアとして公開されています。

0グッド

0クリップ

投稿2020/12/17 09:29

編集2020/12/17 11:21

前提

Amazon Linux (ファイルシステム:ext4)から Amazon Linux 2(ファイルシステム:xfs)へ
Samba と AD を連携したシステム構成で rsync にてファイルを転送しようと考えています。

想定では、--numeric-ids によって転送先では、ls -la した際の所有者とグループは, uid, gid が表示されるはずでしたが、
送信先では ユーザとグループが ec2-user になってしまい、元の所有者とグループの id は保持したく困っています。

質問

実行しようとしているコマンドは以下の通りです。

sudo rsync --numeric-ids -ve 'ssh -i ~/.ssh/hoge.pem' ec2-user@XXX.XXX.XXX.XXX:/filesv/* /filesv/

上記は転送先から転送元へログインし、ファイルを転送先へ取得する形ですが、逆パターンでも同様の現象が発生します。
また、-a または -og のオプションも試しましたが同様でした。
ファイルの転送自体はできています。

コマンドの記述が間違っているのでしょうか?ご教授いただけませんでしょうか。

もしくは、Samba のデータ移行で、ファイルシステムが変更される場合の転送方法について
良い情報がありましたら提供いただけますと幸いです。

追記

y_waiwai さん

ご回答ありがとうございます!
失礼しました。足りていない情報を追記します。

今回は、Samba と AD を連携しており、Linux 上で見えるファイルのユーザ、グループは
移行後も移行前と同じ AD の sid に対応する uid, gid を設定する必要があります。

そのため、移行するファイル毎に uid, gid が異なり、転送後にファイル、フォルダ単位で変更を行なうのはあまり現実的ではない状況です。
ssh を利用した、リモートへの転送の場合は --numeric-ids や -g -o を使用しても元の uid, gid を保持する事はできないものなのでしょうか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

local, remote とも root 権限での ssh じゃないと uid, gid は同期できないと思います。
PermitRootLogin yes で許可するか、rsync は諦めて、「root 権限で tar アーカイブ作成 → コピー → root 権限で tar 展開」とするのはどうでしょうか。

投稿2020/12/18 09:37

TaichiYanagiya

総合スコア12146

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ec2-userがファイル転送してるのでそうなります。
転送してから変更するようにしましょう

投稿2020/12/17 09:47

y_waiwai

総合スコア87774

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

taiyounomoyou

2020/12/17 11:22

ご回答ありがとうございます! 情報追記しましたので、ご確認いただけますと幸いです!
y_waiwai

2020/12/17 11:32

そこらへんでぐぐってみると、scpではなくてrsyncを使え、というのがでてきます。 いちどそれでやってみては。 #rsyncでうまくいけるのかってのはちと私も未確認です
yukky1201

2020/12/18 13:02

転送元、転送先それぞれのuser名、uid、gidはどうなっているんでしょうか?完全に同一でしょうか。 転送元:ec2-user:500:500 転送先:ec2-user:1000:1000 だったということはないのか確認したいです
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問