Réponse courte :"Oui, c'est possible".
si vous souhaitez exécuter une application non-X, utilisez simplement la commande suivante :
sudo -u abc commande
Si vous souhaitez exécuter une application X en tant qu'autre utilisateur, mais avec votre propre bureau, vous devez d'abord créer un script d'assistance, cela vous simplifiera la vie
- créez un dossier bin sous votre répertoire personnel :
mkdir -p ~/bin
et en utilisant votre éditeur de texte préféré créez un fichier ~/bin/xsudo
comme suit :
#!/bin/bash
# (C) serge 2012
# The script is licensed to all users of StackExchange family free of charge
# Fixes/Enhancements to the script are greatly appreciated.
#
# SUDO_ASKPASS has to be set to the path of ssh-askpass
# fix the following two lines if your distribution does not match this autodetection
. /etc/profile.d/gnome-ssh-askpass.sh
export SUDO_ASKPASS="${SSH_ASKPASS}"
SUDOUSERNAME="$1"
shift
xauth nlist "${DISPLAY}"|sudo -HA -u $SUDOUSERNAME env --unset=XAUTHORITY \
bash -c "xauth nmerge - ; $*"
puis rendez-le exécutable :
chmod +x ~/bin/xsudo
et utilisez-le de la même manière que sudo
mais sans interrupteur :
xsudo application utilisateur
Profitez-en.
PS À partir de xsession
du root
compte est fortement déconseillé !
Une solution portable serait :
su abc -c google-chrome
Cependant, comme google-chrome nécessite un accès X11, cela échouera probablement à moins que vous ne le sécurisiez, ce qui serait une très mauvaise idée, en particulier lors de l'exécution en tant que root.
Si le réglage/transfert X11 est autorisé, une meilleure solution serait
ssh -X [email protected] google-chrome
ou
ssh -Y [email protected] google-chrome