WindowsでsecureCRTを使用すると、Linuxサーバーとクライアントシステム間でファイルを頻繁に使用しsz
て転送します。rz
ただし、MacOS Xのiterm2ではこの方法は使用できません。lrzsz
パッケージは私のLinuxサーバー(ubuntu 13.04)にインストールされていますが
、
benjamin@my-ubuntu-13-04:~$ rz
�z 待機中です。 **B0100000023be50
端末クライアントがハングします。問題は何ですか?
答え1
このコマンドrz
の後、実際に接続は中断されません。rz
コマンドはZMODEMプロトコル開始メッセージを送信し、iterm2
有効なZMODEM応答を提供するのを待っています。残念ながらiterm2
、ZMODEMプロトコルはサポートされていないため、rz
リモート側のコマンドはタイムアウトするのを待ちます。
rz
コマンドは標準sz
入力/出力ストリームでZMODEMプロトコルを使用します。これはリモート側では便利ですが、ローカル側ではデフォルトでZMODEMをサポートしたり、着信データを別のプログラムに送信したり、そのプログラムの出力をリモートサーバーに返すことができるターミナルエミュレータプログラムが必要です。 Macではデフォルトでsz
ZMODEMサポートを提供しています。rz
原則として、ZMODEMプロトコルは、すべての端末タイプの接続に使用できます。しかし、ZMODEMプロトコルはSSH接続を介してより良いものを使用できるため、ほとんど完全に役に立ちません。 MacOSコマンドラインには、scp
SSHプロトコルを介してファイルを転送するために使用できるOpenSSHコマンドが含まれています。
リモートサーバーにファイルを「プッシュ」できます。
scp local-filename username@remote-hostname:remote-directory-or-filename
...またはリモートファイル名がわかっている場合は、リモートサーバーからファイルを「インポートします」。
scp username@remote-hostname:remote-directory/remote-file local-directory-or-filename
ローカルとリモートのユーザー名が同じ場合、このusername@
部分は省略できます。リモートディレクトリ名は絶対(で始まる/
)またはリモートホストのホームディレクトリに相対的にすることができます。このオプションを追加すると、-r
ディレクトリ全体をコピーできます。
ZMODEMとは異なり、ファイルを転送するためにリモートホストへのアクティブな端末接続は必要ありません。scp
ファイル転送のために独自のSSH接続が確立されます。パスワードを手動で入力する必要がないようにSSHキー認証も使用している場合、これはファイル転送を自動化する良い方法です。
答え2
あなたの質問に対する答えは、SZとRZプロトコルを理解するクライアントを使用することです。
SecureCRTはMac上でうまく動作するクライアントです。私は毎日それを使用しています。組み込みOSXシェルよりはるかに優れています(たとえば、デフォルトのシェルです)。リモートMac(ssh経由で通常のシェル)とLinuxで送受信することに問題はありません。 rz / szを実行する他のsshエミュレータもあるかもしれませんが、私は満足して他のものを見つけませんでした。少なくとも私の答えは実際の実用的な答えであり、あなたはすでにソフトウェアを知っています。