sudoユーザーとしてscpまたはrsyncを介してroot所有のファイルをダウンロードするにはどうすればよいですか?

sudoユーザーとしてscpまたはrsyncを介してroot所有のファイルをダウンロードするにはどうすればよいですか?

sudoユーザー(非対話式)でrootリモートサーバーから(または経由で)scp権限を必要とするファイルをどのようにダウンロードできますか?rsync

ノートsudoユーザーはコマンドパスワードを要求するように設定されていませんsudosshpassローカルおよびリモートシステムにインストールされます。

ダウンロードコマンドは次のとおりです。

sshpass -p {sudo-user-pass} scp {sudo-user}@{host}:/path/to/some/root/owned/file.tar.gz ./

file.tar.gzこのコマンドは、エラーがルートの所有であるため、「許可拒否」エラーを発生させます。

このファイルをダウンロードするには、sudoユーザーがrootに切り替える必要があります。sudo -su

scpもしそうなら、sudorsyncユーザーがrootに切り替えてrootが所有するファイルを(非対話的に)ダウンロードする方法はありますか?

ベストアンサー1

この回答を参照してください。 SCP自体はこれを許可しませんが、「ssh sudo cat」をすばやく実行して同じ効果を得ることができます。ファイル数が多いと拡張性は良くありませんが、ファイル1つで十分です。

ユーザーが読むことはできませんが、sudoは可能なファイルをscpするにはどうすればよいですか?

おすすめ記事