Root以外のユーザーとしてscreenを実行しようとすると、次のようになります。
screen
[screen is terminating]
すぐに、それはルートのためにうまく働きます
ls -alh /usr/bin/screen
-rwxr-sr-x 1 root screen 465K Jun 9 20:30 /usr/bin/screen
グーグルで/ etc/fstabの記述に気づいたとき、これが私のものです。
# <file system> <mount point> <type> <options> <dump> <pass>
/dev/md1 / ext4 errors=remount-ro 0 1
/dev/md2 /home ext4 defaults 1 2
/dev/sda3 swap swap defaults 0 0
/dev/sdb3 swap swap defaults 0 0
proc /proc proc defaults 0 0
sysfs /sys sysfs defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts defaults 0 0
これは、sshを介してアクセスされる専用サーバーに新しくインストールされたcentos 7で(TTYはptsです)
任意の助けいただければ幸いです。
screen -ls
No Sockets found in /var/run/screen/S-user.
ls -la /var/run/screen/S-user
total 0
drwx------ 2 user user 40 Jul 10 18:23 .
drwxrwxr-t 4 root screen 80 Jul 10 17:59 ..
専用CentOS 7サーバーでこの問題が発生し、このバグレポートで説明されている修正に遭遇しました: bugs.centos.org/view.php?id=7395
これは、Dedicatedでgid=5
からfstabのdevptsに。 screen
がすべてのユーザーに対して期待どおりに機能するようになりました。
ただし、CentOS 7のOpenVZコンテナーで問題を解決しようとしていたため、このスレッドに遭遇しました。サーバーのfstabを編集する方法がないため(私が知る限り)、次のことがわかりました。回避策により修正されました。
私はこの方法で後退し、それが他の誰かを助けることができるかどうかを確認すると考えました。 (それを行うのは非常にきれいな方法ではありませんが)
ターミナル:
chmod u+s /usr/bin/screen
chmod 755 /var/run/screen
他のscreen
がそのデバイスを使用していないことを確認してください
これは Linuxでファイルが開いているプロセスを特定するにはどうすればよいですか? で達成できます。
Sudo lsof /dev/ttyS0
その場合は、そのプロセスを強制終了します。
なんらかの理由で、この状態ではSudo screen
は引き続きデバイスにアクセスできますが、その接続では他のscreen
によって消費される文字が失われます。
ユーザーがファイルの読み取りおよび書き込み権限を持っていることを確認してください
例えば。 Ubuntuでは、ユーザーをdialout
グループに追加します: https://askubuntu.com/a/133244/52975