"Schermo sta terminando" per non root


14

Quando provo a eseguire screen come utente non root ottengo:

screen

[screen is terminating]

immediatamente, anche se funziona bene per root

ls -alh /usr/bin/screen
-rwxr-sr-x 1 root screen 465K Jun  9 20:30 /usr/bin/screen

Quando ho cercato su Google ho notato una menzione di / etc / fstab, ecco la mia:

# <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

Questo su un centos 7 appena installato su un server dedicato a cui si accede tramite ssh (TTY è pts)

Qualsiasi aiuto sarebbe apprezzato.

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 ..

Corri screen -ls; dovrebbe dare un nome di directory nella prima riga. Quindi, esegui ls -la <above directory name>e metti l'output nella tua domanda.
BenjiWiebe,

Ok, l'ho aggiunto alla domanda.
Rob,

Hmmmm ... Mi aspettavo di vedere un problema di autorizzazioni lì, ma sembra a posto.
BenjiWiebe,

Sto cercando di ottenere una VM di CentOS 7 per vedere se ha anche questo problema, ma potrei non farlo fino a domani ...
BenjiWiebe,

C'è un motivo per cui hai bisogno di CentOS 7? Sembra che forse sia legato al fatto che CentOS 7 è stato appena rilasciato. Forse potresti usare CentOS 6 per qualche settimana in più?
BenjiWiebe,

Risposte:


13

Ho riscontrato questo problema sul server CentOS 7 dedicato e ho riscontrato la correzione descritta in questa segnalazione di bug: bugs.centos.org/view.php?id=7395

Questa è stata un'ottima soluzione per i Dedicati da aggiungere gid=5ai devetti in fstab. screenora funziona come previsto per tutti gli utenti.

Tuttavia, mi sono imbattuto in questo thread mentre stavo cercando di risolvere il problema su un contenitore OpenVZ di CentOS 7. Poiché non esiste un modo per modificare fstab per il server (per quanto ho potuto trovare), ho trovato quanto segue la soluzione è stata risolta.

Ho pensato di tornare indietro in questo modo e vedere se potesse aiutare qualcun altro. (Anche se non è un modo molto carino di farlo.)

Nel terminal:

chmod u+s /usr/bin/screen
chmod 755 /var/run/screen

Questa risposta ha risolto il problema per me, Ubuntu 18.04 in esecuzione su un contenitore
openvz

3

Assicurarsi che nessun altro screenstia utilizzando quel dispositivo

Ciò può essere ottenuto con Come posso determinare quale processo ha un file aperto in Linux? :

sudo lsof /dev/ttyS0

E poi uccidi quel processo se è così.

Per qualche motivo, in questa condizione, sudo screen è comunque possibile accedere al dispositivo, ma a quella connessione mancheranno i caratteri, che vengono consumati dall'altro screen.

Assicurarsi che l'utente abbia letto e scritto l'autorizzazione per il file

Ad esempio su Ubuntu si desidera aggiungere l'utente al dialoutgruppo: /ubuntu//a/133244/52975


1
grazie lsof, non sapevo di averne già screensin esecuzione due in background
Marecky,

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.