C'est une fonctionnalité de sécurité - LIBPATH
de votre environnement utilisateur n'est pas utilisé lors de l'exécution de quelque chose avec le jeu de bits collant. Si cela vous permettait d'utiliser un LIBPATH
défini par l'utilisateur sur un exécutable avec le réglage suid, quelqu'un pourrait charger une bibliothèque malveillante pour compromettre le système. Notez également que cette fonctionnalité de sécurité existe également dans les systèmes Linux - LD_LIBRARY_PATH
de l'environnement d'un utilisateur sera ignorée lors de l'exécution d'un exécutable stick-bit.
Solutions possibles
1 - Une solution consiste à accorder à un utilisateur sudo
droit d'exécuter cette commande, dans ce cas, vous pourriez faire quelque chose comme ...
sudo LIBPATH="..." executable
2 - Une autre solution consiste à créer un script shell qui définit LIBPATH
puis exécute l'exécutable et définit le bit collant sur votre script shell, comme ceci ...
#/bin/sh
LIBPATH="/whatever/path" /path/to/executable
Y a-t-il une solution de rechange ou une option qui peut me permettre d'obtenir ce travail. – Avinash
@Avinash - vérifier ma nouvelle édition. – birryree