1) Crei un utente (chiamiamolo "shared") e configuri il gdm per fare il logon automatico di quello.
2) Modifichi /etc/X11/Xsession in modo che se a loggarsi è l'utente "shared", allora invece di eseguire tutte le solite cose esegue uno script che
a) sceglie un nome utente dal pool di utenti disponibili. Chiamiamolo $NEW_USER
Sul come sceglierlo vedi tu: tieni presente che probabilmente
hai in mano il solo valore di $DISPLAY.
b) preleva il token di autorizzazione impostato da gdm tramite qualcosa del tipo
auth_token="$(xauth nextract - $DISPLAY)"
c) Passa il token all'utente scelto con qualcosa del tipo
echo $auth_token | sudo $NEW_USER xauth nmerge -
d) diventa l'utente scelto in (a) (con una combinazione di sudo e su ce la dovresti fare)
e) avvia gnome-session o quel che vuoi.
non ce l'avrei mai fatta:) ci provo!
il tutto condito con un paio di lock per evitare race condition se sono in due a loggarsi contemporaneamente.
Detto questo, nota che se il tutto non è per una soluzione kiosk, è una
fesseria, visto che praticamente tutti i dati sono facilmente
falsificabili (indirizzi, mac address, etc.).
chiaramente! è x quel progetto biblioteca di qualche mail fa
grazie mille Mauro -- Per iscriversi (o disiscriversi), basta spedire un messaggio con OGGETTO "subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxx