SSH経由でリモートtxtファイルをコピーしたいのですが、rootアクセス権はありません。

SSH経由でリモートtxtファイルをコピーしたいのですが、rootアクセス権はありません。

私のホストをリモートでコピーしたいのですが、うまく/etc/hostsいきません。ルートSSHアクセスが作業をより簡単にすることはわかっていますが、IMHOルートSSHアクセスは少し危険です。

 cat /etc/hosts|ssh samba2 "sudo su -c "sh -c cat > /etc/hosts""

私のユーザーはアクセス権を拒否され、コマンドは失敗しますsudo

解決策はありますか?

ベストアンサー1

cat /etc/hosts | ssh samba2 'sudo tee /etc/hosts > /dev/null'

プログラムはteerootとして実行されるため、/etc/hosts標準入力を使用して上書きできます。tee's私たちがそれを見る必要がないか見たくないので、stdoutを捨ててください。

そして、珍しい参照のために難題を超える必要はありません。

>>これは、上書きするのではなく追加(で示すように)する必要がある場合に機能しますtee -a

おすすめ記事