web-dev-qa-db-fra.com

Comment définir des variables d'environnement?

J'essaie de configurer Apache Tomcat sur mon ordinateur. Il souhaite que je configure une variable d'environnement pour CATALINA_HOME. Est-ce que tout le monde sait comment faire cela?

84
jumpnett

En bash, vous pouvez définir des variables comme ceci:

export CATALINA_HOME=/opt/catalina

la plupart des autres coquilles suivent cette convention, mais pas toutes. Vous pouvez le définir de manière permanente dans ~/.profile pour bash (et comme auparavant, d'autres shells ont d'autres emplacements)

93
Ressu

Les variables d'environnement devraient déjà fonctionner

Si vous utilisez le package Tomcat6 à partir des référentiels Ubuntu, CATALINA_HOME et d'autres variables d'environnement sont déjà définis dans le script de démarrage /etc/init.d/Tomcat6.

Si vous installez Tomcat en dehors du gestionnaire de paquets (dans/opt, sinon, ailleurs que dans le système de fichiers géré), l'exécution de Tomcat/bin/startup.sh devrait utiliser l'emplacement relatif pour définir CATALINA_HOME.

Définition de la variable d'environnement

Si, pour une raison quelconque, vous devez toujours définir une variable d’environnement, vous pouvez ouvrir une fenêtre de terminal et saisir la commande suivante:

export CATALINA_HOME=/path/to/the/root/folder/of/Tomcat

Cette variable d’environnement fonctionnera désormais dans cette fenêtre de terminal, mais si vous ouvrez une autre fenêtre ou si vous vous déconnectez/ouvrez une session, vous perdez ce paramètre.

Rendre la variable d'environnement permanente

Pour rendre le paramètre de variable d’environnement permanent, vous pouvez définir le paramètre à plusieurs endroits.

Pour être vraiment sûr que le paramètre est bien défini, ajoutez le paramètre ci-dessus à l'un des scripts de démarrage de Tomcat:

yourtomcatfolder/bin/startup.sh

yourtomcatfolder/bin/catalina.sh

Remarque: startup.sh appelle catalina.sh. Vous devez ajouter le paramètre au début de l’un de ces fichiers (après les premiers commentaires)

La méthode standard pour les variables d'environnement globales consiste à ajouter une entrée dans /etc/environment (vous n'utilisez pas la commande export dans ce fichier car ce n'est pas un script bash normal).

CATALINA_HOME=/path/to/the/root/folder/of/Tomcat

Non recommandé

Vous pouvez définir les variables d’environnement dans les fichiers de configuration bash (ligne de commande shell), mais elles ne sont pas recommandées car elles ne sont pas toujours récupérées (par exemple, si vous utilisez un serveur auquel vous ne vous connectez pas pour exécuter Tomcat): ~/.bashrc | ~/.profile | /etc.bash.bashrc |/etc/profile

24
jr0cket

Pour définir des variables d'environnement permanentes dans les dernières versions d'Ubuntu (à partir de 14.04), ajoutez les variables à /etc/environment. Pour cela suivez les instructions ci-dessous,

Ouvrez le terminal et lancez

Sudo -H gedit /etc/environment

le fournir votre mot de passe, puis dans le fichier texte demandé

puis ajoutez les variables comme

ANT_HOME="/opt/ANT/"

Un exemple du /etc/environment est donné ci-dessous

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
Java_HOME="/usr/lib/jvm/Java-8-Oracle/"
AXIS2_HOME="/opt/axis2-1.7.4/"
ANT_HOME="/opt/Apache-ant-1.9.7/"

n'oubliez pas de vous déconnecter et de vous reconnecter pour activer les variables d'environnement.

15

Le meilleur endroit pour cela dépend de comment et où vous avez installé Tomcat, des applications que vous souhaitez utiliser pour ce paramètre et de la portée globale que vous souhaitez donner à l'étendue.

Le documentation Ubuntu sur les variables d'environnement discute des avantages et des inconvénients des différentes options.

6
McDowell
nano ~/.bashrc

Cela contiendra probablement déjà pas mal de données. La plupart des définitions ici concernent la définition d'options bash, qui ne sont pas liées aux variables d'environnement. Vous pouvez définir des variables d'environnement comme vous le feriez depuis la ligne de commande:

export VARNAME=value

LINK

Je l'ai testé sur Ubuntu 16.04. Fonctionne très bien.

3
Sunny127

Après avoir parcouru la documentation Ubuntu sur les variables d'environnement, j'ai proposé la solution suivante:

##Save & run the following in a Shell script,

export ENVIRON_VAR_NAME = Value
# any other initializations like
export PATH=$PWD:$PATH
bash

La dernière ligne crée un shell enfant, qui hérite des valeurs de variable d’environnement du shell parent (qui viennent d’être définies).

1
Ashish Sadhwani