Estoy intentando enviar mensajes ya sea con muro o con escritura. Para probar esto, abrí dos ventanas de gnome-terminal. Luego ingresó lo siguiente en una ventana:
me@host>>wall
message to everyone
<ctrl> + d
Cuando terminé el mensaje envié un carácter EOF de señal de interrupción con (ctrl-d). En lugar de enviar el mensaje, el terminal me pitó como si hubiera ingresado una entrada no válida. Obtengo un comportamiento similar con la escritura. ¿Alguien puede ayudarme con lo que está mal?
Editar: aquí está la información de permisos:
me@host>>ls -l $(type -p wall)
-rwxr-sr-x 1 root tty 27368 May 26 18:31 /usr/bin/wall
Respuesta1
Ambos wall
y write
en Debian (y Ubuntu) usan setgid (establecer-ID-de-grupo) privilegio a latty
grupo para permitir que esos programas escriban en las terminales de otros usuarios.
Sin embargo, es común que los administradores de sistemas informáticos compartidos desactiven esta función. Puedes ver los permisos haciendo
ls -lL /usr/bin/write /usr/bin/wall
y en un sistema normal vería esto (las fechas no importan):
$ ls -lL /usr/bin/write /usr/bin/wall
-rwxr-sr-x 1 root tty 23056 Dec 11 2012 /usr/bin/wall
-rwxr-sr-x 1 root tty 14624 Jun 11 2012 /usr/bin/write
Els
en el primer campo-rwxr-sr-x
es el bit setgid, y el cuarto campo es el grupotty
. Necesita ambos (o un grupo equivalente) para que la función funcione.
Además de los permisos, hay otro aspecto con el que te encontrarás al usar gnome-terminal: wall
y write
enviar sus mensajes aUsuarios Conectados. Obtienen esa información del archivo de datos utmp, que gnome-terminal no admite.
Otras lecturas:
- Los mensajes de difusión no aparecen en gnome-terminal, pero aparecen en xterm
- ¿El terminal gnome es un tipo de shell sin inicio de sesión?
- código fuente para
write
- código fuente para
wall
- Error 71368: la opción "actualizar utmp/wtmp" de gnome-terminal no funciona cuando no se usa gdm
- Error 747046: limpieza pty.c