screen
私はそれで識別されたプロセスを実行すると、実際に大文字で表示されることがわかりました。
Linux Debian Wheezy。
以下は、マシンにSSHで接続して実行し、そこでscreen -S test
実行top
する例です。
me@host:~$ ps x
PID TTY STAT TIME COMMAND
4177 ? S 0:00 sshd: me@pts/0
4178 pts/0 Ss 0:00 -bash
4260 ? Ss 0:00 SCREEN -S test
4261 pts/1 Ss 0:00 /bin/bash
4813 pts/1 S+ 0:00 top
5891 pts/0 R+ 0:00 ps x
me@host:~$
このように大文字で書いた理由がありますか?首都でこんなショーを見たことがないようです。
画面はファイルシステムに小文字のバイナリとして存在します。
me@host:~$ which screen
/usr/bin/screen
me@host:~$ l /usr/bin/screen
-rwxr-sr-x 1 root utmp 402K Sep 4 05:07 /usr/bin/screen
me@host:~$ file /usr/bin/screen
/usr/bin/screen: setgid ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.26, BuildID[sha1]=0x035fa489e79088829da70a87252e4da70fc4a6bf, stripped
me@host:~$
これが受け入れられる行動であれば、それとも私が認識できない新しい傾向でしょうか?
ベストアンサー1
開発者は、screen
失われたプロセスを終了するプロセスを簡素化するためにこのタスクを選択しました。参照ソースコードストア:バージョン2.3(1991年2月25日)と3.1(1991年9月9日)を含む多様性:
when the socket has been removed, send a SIGCHLD to the poor SCREEN
process and it will try to recover. then try a 'screen -r' again.
all the socket stuff lives now in an extra file.
そしてから閲覧ファイル:
screen -list
screen -ls
Show all available sockets. If there are (DEAD???) sockets, you may consider
removing them. If there are sockets missing, you may send a SIGCHLD to its
process 'SCREEN' and the process will re-establish the socket. (think of
someone cleaning /tmp thoroughly).
名前を変えなかったら徹底的に、ユーザーが間違ったプロセスに信号を送信するリスクがあります。