「pty」は本質的に、ある種のアプリケーションまたはデーモン間の「パイプ」です (たとえば、私は仮想化に取り組んでおり、仮想マシンに仮想端末を提供するために pty を使用しています)。pty には「マスター」側と「スレーブ」側があります。スレーブ側は、通常の「端末」プログラムが使用するものです-xtermまたはsshなど。マスターは、端末にデータを提供する「もの」によって使用されます[そして、入力または貼り付けなどでptyに書き込む場合xterm へのテキスト] マスターを制御するプロセスによって読み取られます - マスターはそのようなデータに対して行うべきことを何でも行います - たとえば、ssh の場合にネットワークを介してデータを送信します。
それは完全に「あなたの最後」に起こることです。ssh 経由で「対話型」のコマンドを実行している場合 - 「ssh somemachine make menuconfig」と言います [ホーム ディレクトリが Linux ソース ディレクトリであると仮定します - おそらくそうではないという事実を無視します]、デフォルトはpty を作成しないため、menuconfig は [少なくとも正しく動作するために] 失敗する可能性があります。これは、キーを押して動き回ることができる「対話型」テキスト プログラムであるためです。したがって、「ssh -t somemachine make menuconfig」を使用すると、あなたのssh a pty。または、「ssh somemachine」を使用すると、デフォルトで pty が提供されます。これは、相手側に何かを入力する必要があるためです。
pty は「ローカル」端末ですが、sshd プロセスは相手側からのデータを提供し、ローカル sshd プロセスはそれを pty の「マスター」側に送ります。
このページは、私が言おうとしたことを説明しています
http://lugatgt.org/2009/10/28/ssh-tips-and-tricks-2/