viernes, 17 de octubre de 2008

Cómo comunicarse entre terminales Linux


Imaginemos que estamos conectados a un servidor por ssh y necesitamos hacer algo sin interrupciones por parte de otro usuario que esté conectado desde otra Terminal como por ejemplo editar un archivo o simplemente compilar algún programa sin que el otro usuario nos modifique nada cuando nosotros estemos operando. Para esto podemos hacer dos cosas, llamar por teléfono a los que creamos que pueden conectarse o mirar nosotros mismos quien hay conectado a el servidor y enviarle un mensaje. Esta técnica también podríamos aplicarla para saber si hay algún intruso conectado a nuestro servidor y tomar medidas.

En mi caso he usado Fedora aunque esta técnica funciona en la mayoría de distribuciones Linux actuales. Para ello usaremos el comando ” Who ” que es capaz de mostrarnos información sobre los usuarios que hay conectados y desde queTerminal.

Para comenzar vamos a abrir una Terminal desde el menú Aplicaciones -> Accesorios -> Terminal y vamos a teclear el comando …

who

entreterminales1

Como podemos ver se muestra el usuario, el numero de Terminal, la fecha y la hora en la que fue conectado. En estos momentos representa que nosotros estámos conectados a la Terminal ” pts/0 “. Ahora para hacer la prueba vamos a abrir otraTerminal y tecleamos de nuevo el comando …

Como veis ha aparecido otro usuario nuevo llamado ” forat ” y con el nombre de Terminalpts/1 “. Dentro del directorio /dev/ptses donde nuestras terminales se van creado y es hay donde tenemos que mandar el mensaje.

Para enviar un mensaje a la nueva Terminal llamada ” pts/1 ” vamos a usar el comando ” echo ” que como muchos de vosotros ya sabéis es para enviar un texto a una salida estándar como puede ser una Terminal.

La forma que usaremos para enviar un texto a la otra Terminal es tan sencilla como la siguiente …

echo ” hola que tal, necesito reiniciar ¿ Estas haciendo algo ? ” >> /dev/pts/1

De este modo la Terminalpts/1 ” vera el siguiente mensaje …

entreterminales4

No hay comentarios.: