Come posso avviare una sessione 'schermo' come utente non root


11

Esiste un modo per aprire una nuova sessione "schermo" sulla mia casella RHEL come utente non root? Quando provo ad aprire una nuova schermata usando il comando 'screen' come utente non root, fallisce e ricevo il seguente messaggio:

Cannot open your terminal '/dev/pts/2' - please check.

Ho studiato un po 'e ho trovato persone che suggerivano di cambiare i permessi su / dev / pts per garantire all'utente non root (che sta cercando di aprire lo schermo) un accesso in lettura / scrittura. Sebbene possa funzionare, non sembra una soluzione ordinata. Esiste un modo "legale" che consente a un utente non root di aprire una sessione schermo?

Modificato: ho questo problema sulle mie macchine RHEL 5.5, 6.2 e 6.5. La versione dello schermo su tutte queste caselle è "Versione dello schermo 4.00.03 (FAU) 23-ott-06".

PS: - So che posso aprire una sessione dello schermo come root e 'su' per avviare il mio comando / processo, ma non è quello che sto cercando.

Risposte:


7

Questo è un problema noto, se ssh come root da qualche parte e poi super diventare un normale utente:

$ ssh root@server
# su -l anthon
$ screen 
Cannot open your terminal '/dev/pts/3' - please check.

È ad esempio descritto in questi post dal 2005

La soluzione è accedere direttamente come l'utente con cui si desidera screeneseguire la sessione.


Accedo come utente normale. Non è ancora possibile eseguire screen.
codezombie,

Forse screennon è installato sul tuo sistema, o qualche altra ragione sconosciuta che lo causa. Impossibile dirlo. Dovresti pubblicare una nuova domanda (con molte più informazioni) ed eliminare il tuo commento.
Anthon,

Il VPS è gestito e il supporto dice che non è supportato sui sistemi gestiti. Potrei usare un binario pronto dello schermo o qualcosa del genere?
codezombie,

1
Quale parte di te dovrebbe pubblicare una nuova domanda che non capisci? I commenti non sono per la pubblicazione di domande e risposte. Sigh .... screenfunziona come root (usando setuid), quindi se puoi sistemarlo sul tuo sistema gestito, installa semplicemente il binario dal .deb o .rpm. Nel tuo caso, guarderei tmuxinvece usando (che non richiede di essere eseguito come root.
Anthon,

Grazie capisco perfettamente quello che hai detto, ma sono abbastanza sicuro che sarà impostato come duplicato se invio
codezombie

1

Devi usare script /dev/nullprima dell'uso screen. Dopo aver lasciato screendevi exit.


O hai tutto in un solo comando in modo da non dover uscire dalla sessione di script:sudo -su user script -c bash /dev/null
basic6
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.