usa la pantalla de gnu cuando se usa como usuario, pero su como otro


8

A continuación se muestra lo que sucede al intentar usar la pantalla gnu. Esencialmente, todo funciona bien hasta que su como otro usuario. entonces me sale un Cannot open your terminal '/dev/pts/7' - please check.error

l413:~$ ssh sbird@example.com
sbird@example.com password: 
sbird@example:~$ screen
[screen is terminating]
sbird@example:~$ su - gradplan
Password: 
gradplan@example:~$ screen 
Cannot open your terminal '/dev/pts/7' - please check.
gradplan@example:~$ 

¿Cómo puedo iniciar sesión como sbird, su a gradplan y aún usar la pantalla?

Respuestas:


4

Para responder directamente a su pregunta:

ssh sbird@example.com su grandplan -c “script /dev/null -qc \"screen\""

No cambie los permisos en su / dev / pts / X, solo introduce un agujero de seguridad innecesario.


11

Escriba script /dev/nullantes de comenzar screen.

$ su - gradplan
$ screen
Cannot open your terminal '/dev/pts/15' - please check.
$ script /dev/null
Script started, file is /dev/null
$ screen
# do whatever inside the screen
[detached]
$

ref: ServerFault: ¿Por qué funciona la redirección de 'script' a / dev / null / allow 'screen' mientras funciona como otro usuario?


Para futuros lectores, he descubierto que demandar dentro de la pantalla es una mejor práctica, pero dado que esto responde mejor a lo que realmente pregunté, acepté esto como la respuesta correcta.
Alexander Bird

1

Si tu:

ls -l /dev/pts/7

Verá que es propiedad de sbird, cuando cambia a gradplan, no tiene permisos para tocar ese dispositivo.

Puedes intentar hacer

chmod a+rw /dev/pts/X

(X es el número de pts al que está conectado actualmente, porque cambiará) antes de la pantalla.

O puede seleccionar como sbird, luego en cada ventana de pantalla su allí.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.