Root以外のユーザーとして画面セッションを開始しようとすると、「PTYはもうありません」というメッセージが表示されます。応答として。 rootと同じディレクトリにある同じコマンドは正しく機能します。
this postから解決策を試しましたが、何も変わりません:
$ ls /dev/pts
$ cat /proc/sys/kernel/pty/nr
0
$ cat /proc/sys/kernel/pty/max
4096
アンマウントと再マウントでさえ役に立ちません:
$ grep /dev/pts /proc/mounts
devpts /dev/pts devpts rw,nosuid,noexec,relatime 0 0
$ umount devpts
$ mount devpts /dev/pts -t devpts -o mode=620
私の関連する質問: 画面を使用してMinecraftサーバーを起動すると正しく機能しません
BSD疑似端末は特定のスタイルの疑似端末を使用するようにコンパイルされているため(両方ではない)、screen
にBSD疑似端末を使用させることができない可能性があります。バリエーションのある2つの主なフレーバーがあります。
openpty
など)は、マスターデバイスとスレーブデバイスの名前を提供します後者の場合、あなたはすることができます
strings /usr/bin/screen
そして、次のようなものを見つけます:0123456789abcdef(おそらくもっと長い)。それが見つからない場合は、Unix98疑似端末用にコンパイルされています。
文字列をdo見つけた場合、screen
はsetuid'dを実行する必要がある可能性があります(例:root
(マスター/スレーブペアの権限と所有権を変更できるようにするため)。
この質問は、root
として実行されていることを示しているため、通常のユーザーは次のように動作する可能性があります。
Sudo chmod u+s /usr/bin/screen