Lorsque vous voulez vous connecter à un logiciel qui a besoin des droits root dans un environnement graphique depuis ssh, si les MAGIC-COOKIE
ne sont pas définis dans le fichier .Xauthority
de root il ne sera alors pas possible pour un utilisateur de se conecter (et de lancer ledit logiciel).
Récupérer les MAGIC-COOKIE
Le but ici est de récupérer le contenu du .Xauthority
(qui contient les MAGIC-COOKIE
) d’un utilisateur pour l’ajouter à celui de root.
Problème de fichier avec Firefox
Par exemple avec Firefox :
# firefox [@IP] & |
Si lorsque qu’un utilisateur le lance, cette erreur est remontée :
# mkdir: cannot create directory '/home/users/mon_user/.mozilla/extensions/{fd9141f7-c31b-464f-0d1e-24b4b9e97495}': Permission denied |
Il est fort propable que le problème soit en lien avec le fichier .Xauthority
.
Commande xauth
La commande xauth
est l’utilitaire permettant de gérer le fichier .Xauthority
.
Forcer l’utilisation du fichier :
# xauth -f $HOME/.Xauthority |
Contenu du .Xauthority
# xauth -f $HOME/.Xauthority list |
On le met dans une variable pour l’ajouter par la suite au fichier de root pour plus de facilité :
# COOKIE=#(xauth -f $HOME/.Xauthority list) |
Vérification :
# echo #COOKIE |
On ajoute la variable, comportant le contu du Xauthority dans celui du root, avec la commande add
de xauth
:
# sudo xauth -f /root/.Xauthority add #COOKIE |
L’utilisateur relance Firefox :
# sudo firefox & |
Ca devrait être bon.
Autres problèmes
Si le problème persiste lors d’une nouvelle conexion, il se peut que cette fois ci ce soit un problème de droits, donc :
# chown -R mon_user .mozilla/ |
Documentation
https://linux.die.net/man/1/xauth
Remerciements

midorino3142
Merci à midorino3142