Soluzione 1:
Sì, è possibile.
In /etc/sudoers l'elemento immediatamente successivo a equals è l'utente con il quale il comando potrà essere eseguito.
tom ALL=(oracle) /bin/chown tom *
L'utente (tom) può digitare sudo -u oracle /bin/chown tom /home/oracle/oraclefile
Soluzione 2:
Aggiungi al tuo /etc/sudoers qualcosa come
tom ALL=(oracle) ALL
Quindi l'utente tom dovrebbe essere in grado di usare sudo per eseguire cose come utente oracle con l'opzione -u, senza consentire a tom
Cioè. ottenere una shell come utente oracolo (beh, dato che il tuo sudo è abbastanza nuovo da avere l'opzione -i).
sudo -u oracle -i
Soluzione 3:
Per fornire SOLO le funzionalità nella domanda, aggiungi quanto segue a /etc/sudoers:
tom ALL=(oracle) /bin/bash
Quindi Tom può:
sudo -u oracle bash -i