Je souhaite exporter LD_LIBRARY_PATHvers les services système et tous les utilisateurs. Les services système sont exécutés avant la connexion, donc .bashrcne s'applique pas.
Comment y parvenir?
Je souhaite exporter LD_LIBRARY_PATHvers les services système et tous les utilisateurs. Les services système sont exécutés avant la connexion, donc .bashrcne s'applique pas.
Comment y parvenir?
Réponses:
Vous n'en avez pas besoin. Ajoutez le répertoire /etc/ld.so.confou un nouveau fichier dans /etc/ld.so.conf.d/, selon la distribution.
Après cela, vous devez exécuter (au moins sur Redhat) en ldconfigtant 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.)
Vous pouvez ajouter chaque chemin dans le fichier /etc/ld.so.conf.dpuis exécuter:
ldconfig -v
Chargez-les ensuite.