A medida que personaliza y configura su sistema Linux, necesitará saber cómo configurar las variables de entorno. Permítanos guiarlo a través de él.

Si está utilizando una PC, el sistema operativo necesita saber dónde ubicar ciertos archivos o cómo presentar la hora y la fecha. Windows normalmente hace esto usando archivos de configuración y el registro.

En sistemas basados ​​en Unix como Linux, esto se configura usando Variables de entorno. Saber cómo configurar variables de entorno en Linux puede ser de gran ayuda y esta guía le ayudará a empezar.

Variables de entorno y shell en Linux

Hay dos tipos de estas variables:ambiente y caparazón. La variable de entorno afecta al sistema en su conjunto, ya sea en la línea de comando o en una interfaz gráfica. Estas variables almacenan cosas como el editor de texto o el navegador web predeterminado, la ruta a los archivos ejecutables o la configuración regional del sistema y la distribución del teclado.

Una variable de shell, por otro lado, tiene un alcance más limitado. No es persistente y se aplica solo a la instancia actual del shell (o línea de comando). Los diferentes entornos de shell, como zsh y bash, tienen su propio conjunto de variables de shell internas.

Lo que ambos tienen en común es el formato. Cada variable de entorno y shell seguirá uno de estos formatos básicos:

CLAVE=valor LLAVE=”Algún valor que incluye espacios” CLAVE=valor1:valor2

Tenga en cuenta los siguientes requisitos cuando trabaje con variables de entorno y shell:

El caso importa. Las variables de entorno siempre deben tener nombres en mayúsculas. Nunca incluya un espacio entre el nombre de la variable, el símbolo = y el valor. Cuando una variable tiene varios valores, deben estar separados por el carácter de dos puntos (:).

Cómo enumerar y configurar variables de entorno en Linux

Hay varios comandos disponibles para enumerar, configurar y desarmar variables de entorno en Linux. Éstas incluyen:

env: este comando le permitirá ejecutar otro programa en un entorno personalizado sin cambiar el actual. Sin ningún argumento, imprime una lista de las variables de entorno actuales.printenv: si desea imprimir todas o una variable de entorno específica, printenv es bastante útil.set: este comando se usa para configurar o desarmar variables de shell. Si lo ejecuta sin un argumento, set imprimirá una lista de todas las variables, incluidas las variables de entorno y de shell, así como las funciones de shell.unset: el comando para eliminar variables de shell y de entorno.export: este es el comando que usará más comúnmente utilizar para establecer variables de entorno.

Trabajar con variables de entorno

Antes de cambiar las variables de entorno, siempre debe verificar sus configuraciones actuales. Usando printenv, puede averiguar qué variables de entorno y de shell ya tiene su sistema Linux.

Para ver todas las variables de entorno actuales, ejecute el comando printenv sin ningún argumento. Advertencia, el resultado será bastante largo.

Por ejemplo, para mostrar el valor de la variable HOME, usaría lo siguiente.

jeff@UbuntuVM:~$ printenv INICIO /home/jeff jeff@UbuntuVM:~$

También puede proporcionar más de un argumento a printenv para verificar varias variables a la vez.

jeff@UbuntuVM:~/documents$ printenv LANG PWD en_US /home/jeff/documents jeff@UbuntuVM:~/documents$

Algunas de las variables de entorno más comunes que encontrará son:

USUARIO: El usuario que ha iniciado sesión actualmente.INICIO: El directorio de inicio del usuario actual.EDITOR: El editor de texto predeterminado que se usa si escribe editar en la línea de comando.SHELL: La ruta del shell del usuario actual, como bash o zsh. RUTA: una lista de directorios en los que se buscará cuando ejecute un comando. Linux busca estos directorios en el orden especificado, utilizando la primera coincidencia que encuentra.

Cambiar o configurar nuevas variables de entorno

Hay dos pasos que deberá seguir para configurar una variable de entorno en Linux. Primero, lo defines como una variable de shell. A continuación, lo exportará como una variable de entorno. Por ejemplo, este comando establece una variable llamada MY_VAR y la define como maravillosa.

jeff@UbuntuVM:~$ MY_VAR='maravilloso' jeff@UbuntuVM:~$

No verá ninguna confirmación de esto, pero puede verificar si realmente se configuró.

jeff@UbuntuVM:~$ eco $MY_VAR maravilloso jeff@UbuntuVM:~$

Emitir el comando printenv MY_VAR en este punto no debería devolver ningún resultado, lo que muestra que no hay una variable de entorno llamada MY_VAR. Para cambiar eso, usarías el comando exportar.

jeff@UbuntuVM:~$ exportar MY_VAR jeff@UbuntuVM:~$

Ahora, printenv MY_VAR debería tener una salida diferente.

jeff@UbuntuVM:~$ printenv MY_VAR maravilloso jeff@UbuntuVM:~$

Por supuesto, hay otra manera de lograr esto. Puede configurar variables de entorno en una sola línea usando un comando como este:

jeff@UbuntuVM:~$ export MY_NEW_VAR=”Otra variable maravillosa” jeff@UbuntuVM:~$

Una cosa a tener en cuenta es que las variables de entorno configuradas de esta manera solo se aplican a la sesión actual. Una vez que cierra sesión o abre un nuevo shell, las variables de entorno se pierden.

Configurar variables de entorno para que sean persistentes en Linux

Si sabe que necesitará utilizar variables de entorno persistentes en todos los inicios de sesión, deberá definirlas dentro de sus archivos de configuración de bash. Estos se encuentran en algunos lugares.

/etc/environment: este archivo configura variables de entorno globales para todo el sistema que se aplican a todos los shells y al entorno GUI. Estos se configuran en el siguiente formato: FOO=bar VAR_TEST=“Variable de prueba” /etc/profile: se cargan cada vez que se ingresa un shell de inicio de sesión de bash. Utilice el comando de exportación para declarar estos.export JAVA_HOME=“/path/to/java/home” Archivos de configuración de shell definidos por el usuario: cada usuario puede tener sus propios archivos de configuración para el shell. Para bash, el archivo se encuentra en ~/.bashrc. Declare variables aquí de la misma manera que lo haría en /etc/profile.export PATH=“$HOME/bin:$PATH”

Si ha configurado nuevas variables de entorno y desea cargarlas rápidamente en su sesión de shell actual, no es necesario que cierre la sesión. Simplemente use el comando fuente.

jeff@UbuntuVM:~$ fuente ~/.bashrc jeff@UbuntuVM:~$

Configurar variables de shell

Es posible que no necesite declararlas con tanta frecuencia como las variables de entorno, pero el comando set se usa para configurar y enumerar todas las variables del shell. Si desea enumerarlos todos, simplemente emita el comando sin ningún argumento.

jeff@UbuntuVM:~$ conjunto

El resultado probablemente tendrá muchas páginas. Para hacerlo más legible, canalícelo a través del comando less:

jeff@UbuntuVM:~$ conjunto | menos

Si desea imprimir una variable de shell específica, también puede usar el comando echo.

jeff@UbuntuVM:~$ echo $BASH_VERSION 5.0.17(1)-lanzamiento jeff@UbuntuVM:~$

Configurar una variable de shell es tan simple como escribir el nombre de la variable, el símbolo = y el valor.

jeff@UbuntuVM:~$ MY_VAR=”maravilloso” jeff@UbuntuVM:~$

Administre sabiamente su escritorio o servidor Linux

Configurar variables de entorno y shell puede ser una capacidad poderosa en una PC o servidor con Linux, pero tenga cuidado al hacerlo. Siempre revisa dos veces lo que estás escribiendo antes de comprometerte con ello. Al cambiar archivos como /etc/profile, es posible que desee crear primero un archivo de copia de seguridad.

Para cambios a nivel de usuario, es útil saber qué archivos de configuración están en uso, así como dónde encontrarlos. Si tiene dificultades para localizar un archivo en particular, Linux incluye algunas herramientas poderosas para buscar en sus discos duros.