Je souhaite exporter LD_LIBRARY_PATH
vers les services système et tous les utilisateurs. Les services système sont exécutés avant la connexion, donc .bashrc
ne s'applique pas.
Comment y parvenir?
Je souhaite exporter LD_LIBRARY_PATH
vers les services système et tous les utilisateurs. Les services système sont exécutés avant la connexion, donc .bashrc
ne s'applique pas.
Comment y parvenir?
Réponses:
Vous n'en avez pas besoin. Ajoutez le répertoire
/etc/ld.so.conf
ou un nouveau fichier dans/etc/ld.so.conf.d/
, selon la distribution.Après cela, vous devez exécuter (au moins sur Redhat) en
ldconfig
tant que root.Par prudence, vous devez faire attention aux bibliothèques que vous ajoutez au chemin d'accès à la bibliothèque partagée du système (via l'environnement, ld.so.conf, ou en insérant / usr / local / lib). En particulier, méfiez-vous de deux versions différentes de la même bibliothèque avec le même soname. Par exemple, si vous avez un libfoo.0.1 (soname libfoo.0) installé via dpkg / rpm / etc., Vous ne voulez pas un libfoo.0.2 (également soname libfoo.0) dans votre répertoire de bibliothèque personnalisé.
(En fait, il n'est pas si facile d'extraire une variable d'environnement à l'échelle du système. Vous pouvez obtenir la plupart des connexions utilisateur avec
/etc/environment
. Les scripts dépendront de votre système init, mais (par exemple) avec sysv init sur Debian, vous pouvez l'intégrer/etc/default/rcS
. Tout courir directement hors de inittab, eh bien, je ne pense pas que vous puissiez.)la source
Vous pouvez ajouter chaque chemin dans le fichier
/etc/ld.so.conf.d
puis exécuter:Chargez-les ensuite.
la source