人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Unix/Linuxの端末?についての質問です。

TeraTermなどのアプリケーションからログインした後、
明示的にexit(logout)をせずにTeraTermを終了しても
ログインした端末(tty)のプロセスはちゃんと終了しています。
どのような仕組みなのでしょうか?

もっというと、あるUnix/LinuxサーバがTeraTermのような
外側のアプリケーションから接続されたときに
どのような手順で接続が確立し、終了するときに接続が消えるか、
というようなことについて、詳しく教えていただきたいです。

詳しくのっている書籍・ウェブサイトでもよいのでよろしくお願いします。

●質問者: kenk
●カテゴリ:コンピュータ
✍キーワード:EXIT Linux TeraTerm TTY UNIX
○ 状態 :終了
└ 回答数 : 5/5件

▽最新の回答へ

1 ● b-wind
●80ポイント ベストアンサー

TeraTerm などで接続した場合、サーバーデーモンである telnetd や sshd が受け付ける。

各種デーモンは fork して自身をコピーした後ログイン認証などの処理を行い、認証が終わればログインシェルを起動する。

通常ログイン後の状態はこの状態。


UNIX/Linux においてプロセスは最初のひとつを除いてすべて親から生成される。

だからログインシェルが起動している間は同時に親となる通信デーモン( telnetd/sshd )も起動したままの状態。

これは pstree コマンドを使用すれば視覚的に確認できる。

逆に親プロセスが終了した場合、その子プロセスには HUP シグナルが送信される。

TeraTerm を終了した場合やログアウトした場合などにこれはよく起こる状況で、通信が切断されたことで通信デーモン( telnetd/sshd )が

終了し、その子プロセスであるログインシェルに HUP シグナルが送信されることになる。

これは通常そのプロセスの終了を意味するので結果的にログインシェル以下ツリー上に連なる子プロセスはほぼすべて終了することになる。


厳密には HUP シグナルを無視することは可能なので、終了しないプロセスも存在する。

nohup コマンドなどは逆にログアウト後、終了させたくない場合に意図的にシグナルを無視させるために存在する。


このあたりは fork, exec, kill あたりをキーワードに調べれば出てくると思う。

◎質問者からの返答

ありがとうございます。


2 ● felix33jp
●5ポイント

logoutするようになっていたと思います。

◎質問者からの返答

ありがとうございます。


3 ● dev_zer0
●5ポイント

> 外側のアプリケーションから接続されたときに

> どのような手順で接続が確立し、終了するときに接続が消えるか

TCP/IPの話かtelnetの話をしたいのか不明ですが、

TCPの場合はRFC793, telnetの場合はRFC854を参照してみてください。

下記のURLに日本語版と原文のRFCの一覧があります

http://www5d.biglobe.ne.jp/~stssk/rfcjlist.html


なお、telnetに限らず、インターネット上のほとんどの通信プロトコルは

TCP/IPを前提としています。

例えば、ftp, http, pop, smtpなどはTCP/IP上で動作しています。

◎質問者からの返答

ありがとうございます。


4 ● AZUY
●5ポイント

こんにちは。

実際には、TCP/IPモニターを用いて、どういう処理を行ってるかを

見れば、確実にわかります。

http://jp.brothersoft.com/downloads-tcp-ip-monitor-software.html

最悪、タイムアウトしますので、その時点でプロセスは終了するとは思います。

◎質問者からの返答

ありがとうございます。


5 ● masshie
●5ポイント

TeraTermプロセスが終了するときに、WindowsのソケットライブラリがFINを送っていると思います。

「TCPの状態遷移図」に関しては、たとえば、以下

http://www.atmarkit.co.jp/fwin2k/network/baswinlan016/baswinlan0...

で。

◎質問者からの返答

ありがとうございます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ