Pregunta

Quiero usar la pantalla GNU de tal manera que el usuario no sepa que está ahí. Es para ayudar a garantizar que una aplicación de administración basada en texto que estoy escribiendo solo pueda ser utilizada por un solo usuario a la vez. Para evitar que los usuarios bloqueen a todos los demás ejecutando la aplicación y funcionando, dejándola funcionando cuando se va de vacaciones, quiero poder separar su sesión y permitir que otro usuario se conecte a ella.

Entonces mi pregunta es:

  • ¿Puedo configurar la clave de escape en .screenrc como nula, para que el usuario no pueda acceder a ninguna de las funciones de la pantalla?
¿Fue útil?

Solución

Parece que lo siguiente en .screenrc hace el truco:

escape ''

Esto no establece el carácter de escape en ', pero desactiva el mecanismo de escape por completo.

Otros consejos

Tal vez solo establezca el carácter de escape en .screenrc en un carácter oscuro de la tabla ASCII que no puede escribirse en un teclado. Creo que el personaje 176 sería un ejemplo (o intente con cualquier otro fuera del rango normal):

escape ^°°

Simplemente colóquelo en su archivo .screenrc, y sus usuarios no podrán acceder a ninguna funcionalidad screen:

perl -e 'print "escape ^", chr(176), chr(176), "\n"' >> .screenrc

Evitar que el usuario use la funcionalidad de Screen es una forma incorrecta (a menos que tenga un inicio de sesión compartido que ejecute su aplicación).

En su lugar, haga que su aplicación se ocupe del caso de uso que ha mostrado al cerrar sesión automáticamente, advirtiendo a los nuevos usuarios que se conectan y dándoles la opción de iniciar al otro usuario, manejando múltiples usuarios, etc.

en lugar de usar la pantalla, considere usar detachtty / attachtty

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top