おそらく私のgoogle-fooはここで私を失敗させている…ssh 設定ファイルを使用して、SFTP または SCP を使用してターミナルからリモートサーバに接続して mysql ダンプファイルをアップロードしたいと思います。私が見つけたドキュメントによると、私はこれを行うことができるはずです
sftp -F db.sql.gz webost@staging2.example.com /tmp
設定のエイリアスも疲れてしまいました
sftp -F db.sql.gz myalias /tmp
上の二つを実行すると、-F
がそのうちの一つである可能性のあるコマンドのプリントアウトが得られます
ローカル設定のショートカットを使って ssh で接続することができるので、それがうまくいくことはわかっています
ssh myalias
**注意: 秘密鍵と公開鍵のペアを使って接続しているので、パスワードを入力する必要はありません。鍵ペアにはパスフレーズが関連付けられていますが、OS X Keychainは最初に接続したときにそのパスフレーズを記憶していました
…なので、何を間違っているのかよくわかりません
45 Danny Englander 2012-05-07
ヘルプのテキストから”
... [-F ssh_config] ...
“上記によると、
-F
はひとつの引数として OpenSSH 設定ファイルへのパス、~/.ssh/config
あるいはそれに似たものを指定します。しかし、あなたは代わりに圧縮された SQL ダンプを渡していますプレーンな
ssh myalias
は既に動作しているので、ここでは-F
オプションは必要ありません。ただsftp myalias
がサーバに接続するだけですしかし、OpenSSH
sftp
クライアントはあなたがしようとしているようなファイルのアップロードには対応していません。アップロードするには、対話モードのどちらかを使う必要があります$ sftp myalias sftp> cd /tmp sftp> put db.sql.gz
…または
scp
ツールscp db.sql.gz myalias:/tmp
or
scp db.sql.gz webost@staging2.example.com:/tmp
(sftp にはバッチモードがあり、ファイルからコマンドを読み取るには -b
を使用しますが、単一のアップロードには scp
を使用する方が簡単です)
他の SFTP クライアントもあります – lftp は対話的な使用に適していますが、curl は自動化が容易です。バックアップなどのためには、rsync (独自のプロトコルを実行しますが、SSH の中で動作します) を使うこともできます
52 user1686 2012-05-07
以下のようなForwardAgentの設定で問題が発生しています
Host dockervm
HostName x.x.x.x
User root
Preferredauthentications publickey
ForwardAgent yes
私の場合は、ssh 設定の ‘ForwardAgent’ が原因で scp がハングアップしていました。これをコメントアウトすると、私の場合はうまくいきました
また、ForwardAgentの行がコメントされているファイルのコピーを持っていて、scp -Fを使って動作させることもできます
0 MohanBabu 2019-09-17