Kiedy próbuję uruchomić ekran jako użytkownik inny niż root, otrzymuję:
screen
[screen is terminating]
natychmiast, choć działa dobrze dla roota
ls -alh /usr/bin/screen
-rwxr-sr-x 1 root screen 465K Jun 9 20:30 /usr/bin/screen
Kiedy googlowałam, zauważyłam wzmiankę o / etc / fstab, oto moja:
# <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
To na świeżo zainstalowanym centos 7 na dedykowanym serwerze dostępnym przez ssh (TTY to pts)
Każda pomoc będzie mile widziana.
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 ..
linux
centos
gnu-screen
centos-7
Obrabować
źródło
źródło
screen -ls
; powinien podać nazwę katalogu w pierwszym wierszu. Następnie uruchomls -la <above directory name>
i umieść wynik w swoim pytaniu.Odpowiedzi:
Miałem ten problem na dedykowanym serwerze CentOS 7 i natrafiłem na poprawkę opisaną w tym raporcie o błędzie: bugs.centos.org/view.php?id=7395
To było dobre rozwiązanie dla Dedicated do dodawania
gid=5
do poświęceń w fstab.screen
teraz działa zgodnie z oczekiwaniami dla wszystkich użytkowników.Jednak natknąłem się na ten wątek, próbując rozwiązać problem na kontenerze OpenVZ CentOS 7. Ponieważ nie ma sposobu na edycję fstab dla serwera (o ile mogłem znaleźć), znalazłem następujące obejście to naprawiło.
Pomyślałem, że wrócę w ten sposób i sprawdzę, czy może to pomóc komuś innemu. (Chociaż nie jest to bardzo ładny sposób.)
W terminalu:
źródło
Upewnij się, że nikt inny nie
screen
korzysta z tego urządzeniaMożna to osiągnąć za pomocą: Jak ustalić, który proces ma otwarty plik w systemie Linux? :
A potem zabij ten proces, jeśli tak jest.
Z jakiegoś powodu, pod tym warunkiem,
sudo screen
może nadal uzyskiwać dostęp do urządzenia, ale wtedy to połączenie będzie brakowało znaków, które są konsumowane przez drugiscreen
.Upewnij się, że użytkownik ma uprawnienia do odczytu i zapisu do pliku
Np. W Ubuntu chcesz dodać użytkownika do
dialout
grupy: /ubuntu//a/133244/52975źródło
lsof
, nie wiedziałem, że mam już dwascreens
działające w tleMoże to być błąd w pliku konfiguracyjnym
~ / .screenrc
Spróbuj to sprawdzić lub utwórz dimmy.
źródło