Mes variables sont
LD_LIBRARY_PATH=/usr/lib/Oracle/11.2/client64/lib
Oracle_HOME=/usr/lib/Oracle/11.2/client64
Comment sauvegarder définitivement ces variables?
Vous pouvez l'ajouter au fichier .profile
ou votre fichier de profil Shell de connexion (situé dans votre répertoire personnel).
Pour modifier la variable d'environnement de façon "permanente", vous devez considérer au moins ces situations:
/etc/profile
, ~/.bash_profile
, ~/.bash_login
, ~/.profile
dans l'ordre~/.bashrc
$BASH_ENV
$EDITOR ~/.profile
#add lines at the bottom of the file:
export LD_LIBRARY_PATH=/usr/lib/Oracle/11.2/client64/lib
export Oracle_HOME=/usr/lib/Oracle/11.2/client64
$EDITOR ~/.zprofile
#add lines at the bottom of the file:
export LD_LIBRARY_PATH=/usr/lib/Oracle/11.2/client64/lib
export Oracle_HOME=/usr/lib/Oracle/11.2/client64
$EDITOR ~/.profile
#add lines at the bottom of the file:
export LD_LIBRARY_PATH=/usr/lib/Oracle/11.2/client64/lib
export Oracle_HOME=/usr/lib/Oracle/11.2/client64
$EDITOR ~/.profile
#add lines at the bottom of the file:
LD_LIBRARY_PATH=/usr/lib/Oracle/11.2/client64/lib
Oracle_HOME=/usr/lib/Oracle/11.2/client64
export LD_LIBRARY_PATH Oracle_HOME
$EDITOR ~/.login
#add lines at the bottom of the file:
setenv LD_LIBRARY_PATH /usr/lib/Oracle/11.2/client64/lib
setenv Oracle_HOME /usr/lib/Oracle/11.2/client64
Si vous souhaitez le rendre permanent pour tous les utilisateurs, vous pouvez modifier les fichiers correspondants sous /etc/
, c'est à dire. /etc/profile
pour les obus de type Bourne, /etc/csh.login
pour (t) csh et /etc/zsh/zprofile
et /etc/zsh/zshrc
pour zsh.
Une autre option consiste à utiliser /etc/environment
, qui sur les systèmes Linux est lu par le module PAM pam_env
et ne prend en charge que les affectations simples, pas les extensions de style Shell. (Voir Guide de Debian à ce sujet.)
Ces fichiers sont susceptibles de contenir déjà certaines affectations, alors suivez la syntaxe que vous voyez déjà présente dans votre fichier.
Assurez-vous de redémarrer le shell et de vous reconnecter à l'utilisateur pour appliquer les modifications.
Si vous devez ajouter une variable d'environnement à l'échelle du système, il y a maintenant /etc/profile.d
dossier contenant le script sh pour initialiser la variable.
Vous pouvez placer votre script sh avec toutes les variables que vous avez exportées ici.
Attention, ceci ne doit pas être utilisé comme un moyen standard d'ajouter une variable à env sur Debian.
Pour faire si pour tous les utilisateurs/shells, selon la distribution, vous pouvez utiliser /etc/environment
ou /etc/profile
. Création d'un nouveau fichier dans /etc/profile.d
peut être préférable s'il existe, car il sera moins susceptible d'entrer en conflit avec les mises à jour effectuées par le système d'emballage.
Dans /etc/environment
, les variables sont généralement définies avec name=value
, par exemple:
Oracle_HOME=/usr/lib/Oracle/11.2/client64
Dans /etc/profile
, vous devez utiliser export
car il s'agit d'un script, par exemple:
export Oracle_HOME=/usr/lib/Oracle/11.2/client64
Il en va de même pour un fichier sous /etc/profile.d
, il peut également y avoir des restrictions de dénomination qui doivent être respectées pour que le fichier fonctionne. Sur Debian, le fichier doit avoir l'extension .sh
(bien qu'il n'ait pas besoin d'une ligne de bang ou d'autorisations exécutables car il provient). consultez votre documentation de distribution ou consultez le /etc/profile
script pour voir comment ces fichiers sont chargés.
Notez également que le paramètre LD_LIBRARY_PATH
est en permanence potentiellement problématique , y compris un risque pour la sécurité. Comme alternative, je suggérerais de trouver un moyen d'ajouter le LD_LIBRARY_PATH
au début de la ligne de commande pour chaque programme qui en a besoin avant de s'exécuter. Par exemple:
LD_LIBRARY_PATH=/usr/lib/Oracle/11.2/client64/lib myprog
Une façon de procéder consiste à utiliser un script wrapper pour exécuter le programme. Vous pouvez lui donner le même nom que votre programme et le mettre dans /usr/local/bin
ou n'importe où qui apparaît avant l'emplacement de votre programme dans PATH
. Voici un exemple de script (n'oubliez pas de chmod +x
le scénario):
#!/bin/sh
LD_LIBRARY_PATH=/usr/lib/Oracle/11.2/client64/lib /real/location/of/myprog "$@"
lorsque vous installez Oracle, Oracle vous a demandé d'exécuter certains scripts avant de cliquer sur ok. Ce script a mis un paramètre factice dans le .bash_profile
dans le répertoire de base de l'utilisateur Oracle. Pour voir le fichier, ls -al
affichera tous les fichiers cachés.
tapez nano bash_profile
pour ouvrir le fichier. Apportez des modifications au fichier pour refléter votre nom d'hôte et le nom sid approprié. vérifiez tout autre paramètre devant être modifié. appuyez sur contrôle x pour enregistrer et tapez y lorsqu'on vous demande si vous souhaitez enregistrer. Appuyez sur la touche Retour pour enregistrer. Redémarrer le PC. Connexion en tant qu'utilisateur Oracle. démarrer la base de données en tapant
sqlplus / as sysdba
startup