画面を開始しようとすると「これ以上PTYがありません」


11

「screen」または「byobu」を起動しようとすると、次のエラーメッセージが表示されます。

$ screen
No more PTYs.
Sorry, could not find a PTY.
[screen is terminating]

私はしかし十分にあるようです:

$ ls /dev/pts  
$ cat /proc/sys/kernel/pty/nr
0
$ cat /proc/sys/kernel/pty/max
4096

詳細情報:

$ uname -a
Linux cube.mydedi.net 2.6.18-194.8.1.el5.028stab070.5 #1 SMP Fri Sep 17 19:10:36 MSD 2010 x86_64 x86_64 x86_64 GNU/Linux

さらに情報が必要な場合はコメントしてください。これはローエンドのVPS上にありますが、動作しなくなるまでは正常に動作していました。それ以外はすべて問題ないようです。

回答:


9

使用しているSSH接続にptyが割り当てられているため、ptyがゼロになることはまれです。

devptsマウントされていることを確認してください:

$ grep /dev/pts /proc/mounts
devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620 0 0

そうでない場合:

# mount devpts /dev/pts -t devpts -o mode=620

君は正しかった。単純な「sudo mount devpts / dev / pts -t devpts」で問題が解決しました。必ず、なぜdevptsはない...けれども、自動マウントされていない
アッティラO.

2

私も同様の問題を抱えていましたが、システム内でLXCコンテナーを起動したときに問題が発生しました(停止しても解決しませんでした)。スクリーン(私のベースシステム)が新しいPTYを開こうとしたときに、既に存在していて所有権を変更できないものを開いていたことが判明しました。

それは非常に奇妙でしたが、最も明らかな場所は/ dev / ptsマウントポイントだったので、単純に再マウントしました。

# mount -o remount /dev/pts

そして問題はなくなりました。再マウント後に/ dev / ptsからPTYデバイスを「失う」ことはなかったので、かなり安全な操作のようです。


0

私は同様の問題を抱えていましたが、問題は/ dev / pt *デバイスの間違った許可でした。

なぜ600に設定されたのか定かではないので、rootだけがスクリーンを使用できました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.