XAUTH 4 dummies

Supponiamo di aver lanciato X come utente pippo.
Supponiamo di voler lanciare un certo programma come un altro utente
(nel nostro caso root) e allo stesso tempo vogliamo che tale
applicazione appaia sulla sessione X dell'utente pippo.
Per farlo occorre procedere nel seguente modo:

1) l'utente pippo entra in X
2) l'utente pippo apre un xterm
3) l'utente pippo esegue:
$ su root
4) l'utente pippo dopo essere diventato root esegue:
su $LOGNAME -c  "xauth extract - $DISPLAY" | xauth merge -

Si puo' automatizzare la cosa, in modo che ogni volta che facciamo "su
root" da dentro X, automaticamente root ottenga le credenziali per poter
accedere alla sessione X dell'utente che ha eseguito su.

Per farlo e' sufficiente aggiungere a /root/.bashrc le seguenti righe:

if [ ! "$LOGNAME" = "root" ] && [ -n "$DISPLAY" ]; then
        echo "Aggiungo credenziali per accedere alla sessione di $LOGNAME..."
        su $LOGNAME -c  "xauth extract - $DISPLAY" | xauth merge -
fi
Share
 
  1. No comments posted yet

Leave a comment

You must be logged in to post a comment.