Introducción
Las variables de entorno de Linux son pares clave-valor que pueden afectar cómo se ejecutan los procesos en su sistema. Comprender cómo administrar estas variables es crucial para los usuarios de Linux, desde principiantes hasta administradores avanzados.
En este laboratorio (LabEx), aprenderá cómo ver las variables de entorno existentes, crear sus propias variables temporales, modificar variables importantes del sistema como PATH y hacer que sus cambios persistan en todas las sesiones de inicio de sesión. Estas habilidades son la base de la gestión del entorno de Linux y le ayudarán a personalizar su experiencia en Linux y solucionar problemas relacionados con el entorno.
Al final de este laboratorio (LabEx), tendrá experiencia práctica con los comandos y técnicas necesarios para administrar eficazmente las variables de entorno en Linux.
Visualización de variables de entorno
Las variables de entorno almacenan información que puede ser utilizada por el sistema y las aplicaciones. En este paso, aprenderá cómo ver las variables de entorno existentes en su sistema Linux.
Primero, creemos un directorio dedicado para nuestros ejercicios de laboratorio (LabEx):
mkdir -p ~/project/env_lab
Naveguemos hasta este directorio:
cd ~/project/env_lab
Ahora, para ver todas las variables de entorno actualmente configuradas, utilice el comando env:
env
Este comando muestra una lista de todas las variables de entorno en su sesión actual. La salida se verá similar a esto:
PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
HOME=/home/labex
USER=labex
SHELL=/bin/zsh
...
Cada línea muestra el nombre de una variable, seguido de un signo igual (=), seguido de su valor. Estas variables definen diversos aspectos de su entorno.
Para ver una variable de entorno específica, puede utilizar el comando echo con el nombre de la variable precedido por un signo de dólar ($). Por ejemplo, para ver el valor de la variable de su directorio de inicio:
echo $HOME
Esto debería mostrar algo como:
/home/labex
Del mismo modo, para ver su usuario actual:
echo $USER
Salida esperada:
labex
Configuración de variables de entorno temporales
Las variables de entorno se pueden configurar temporalmente para la sesión actual de la shell. Esto es útil cuando necesitas una variable para una tarea específica sin realizar cambios permanentes en tu sistema.
Para configurar una variable de entorno temporal, utiliza el comando export seguido del nombre y el valor de la variable:
export TEST_VAR="Hello, Linux"
Esto crea una variable llamada TEST_VAR con el valor "Hello, Linux". Para verificar que la variable se haya configurado correctamente, utiliza echo:
echo $TEST_VAR
Deberías ver:
Hello, Linux
También puedes configurar múltiples variables a la vez:
export VAR1="First" VAR2="Second"
Verifica ambas variables:
echo $VAR1
echo $VAR2
Salida esperada:
First
Second
Para ver tus nuevas variables entre todas las variables de entorno, ejecuta:
env | grep VAR
Esto filtrará la salida para mostrar solo las líneas que contengan "VAR", como:
TEST_VAR=Hello, Linux
VAR1=First
VAR2=Second
Recuerda que las variables creadas de esta manera solo existen en la sesión actual de la shell. Si abres una nueva ventana o pestaña del terminal, estas variables no estarán disponibles allí.
Comprender y modificar la variable PATH
La variable de entorno PATH es una de las variables más importantes en Linux. Le indica al sistema dónde buscar archivos ejecutables cuando se escribe un comando.
Primero, examine su PATH actual:
echo $PATH
Verá una lista de directorios separados por dos puntos, similar a:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Cuando se escribe un comando, el sistema busca en estos directorios en orden hasta encontrar un ejecutable coincidente.
Ahora, creemos un nuevo directorio para nuestros scripts personalizados y agréguémoslo al PATH:
mkdir -p ~/project/env_lab/bin
Para agregar este directorio al principio de su PATH, utilice:
export PATH=~/project/env_lab/bin:$PATH
Esto agrega nuestro nuevo directorio al principio del PATH existente. Verifique el cambio:
echo $PATH
Ahora, su salida debería comenzar con su nuevo directorio:
/home/labex/project/env_lab/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Creemos un script simple para probar nuestro PATH modificado:
cd ~/project/env_lab/bin
Cree un archivo llamado hello utilizando el editor nano:
nano hello
Agregue el siguiente contenido al archivo:
#!/bin/bash
echo "Hello from my custom script!"
Guarde el archivo presionando Ctrl+O, luego Enter, y salga con Ctrl+X.
Haga el script ejecutable:
chmod +x hello
Ahora, desde cualquier directorio, debería poder ejecutar su script simplemente escribiendo su nombre:
cd ~/project/env_lab
hello
Debería ver:
Hello from my custom script!
Esto demuestra cómo la variable PATH ayuda al sistema a encontrar ejecutables y cómo se puede personalizar para incluir sus propios directorios de scripts.
Uso de variables de entorno en comandos y scripts
Las variables de entorno se pueden utilizar de diversas maneras dentro de comandos y scripts. En este paso, aprenderás cómo utilizar las variables de entorno de manera efectiva.
Primero, creemos una nueva variable de entorno con tu nombre:
export MY_NAME="Linux User"
Puedes usar esta variable en comandos anteponiendo $:
echo "Hello, $MY_NAME"
Esto debería mostrar la siguiente salida:
Hello, Linux User
Las variables de entorno también se pueden usar con otros comandos. Por ejemplo, creemos un directorio con el nombre de nuestra variable:
mkdir -p ~/project/env_lab/$MY_NAME
Verifica que el directorio se haya creado:
ls -la ~/project/env_lab/
En la salida deberías ver un directorio llamado "Linux User".
Ahora, creemos un script simple que utilice variables de entorno:
cd ~/project/env_lab
nano greet.sh
Agrega el siguiente contenido:
#!/bin/bash
## Use existing environment variables
echo "Hello, $MY_NAME"
echo "Your home directory is $HOME"
## Use a variable passed to the script
echo "The current time and date is $(date)"
## Create a local variable
local_var="This is a local variable"
echo $local_var
## Export a new variable from the script
export GREETING="Have a nice day!"
echo $GREETING
Guarda y sal del editor con Ctrl+O, Enter y Ctrl+X.
Haz el script ejecutable:
chmod +x greet.sh
Ejecuta el script:
./greet.sh
Verás una salida similar a la siguiente:
Hello, Linux User
Your home directory is /home/labex
The current time and date is Fri Aug 18 12:34:56 UTC 2023
This is a local variable
Have a nice day!
Después de ejecutar el script, verifica si la variable GREETING existe en tu entorno:
echo $GREETING
Deberías ver:
Have a nice day!
Esto confirma que las variables exportadas desde los scripts se convierten en parte de tu entorno de shell, mientras que las variables locales del script no persisten después de que el script termina.
Hacer que las variables de entorno sean persistentes
Hasta ahora, todas las variables de entorno que hemos configurado se perderán cuando cierres tu sesión de terminal. En este paso, aprenderás cómo hacer que las variables de entorno persistan a través de sesiones.
En Linux, se utilizan archivos de inicio de shell como .bashrc, .zshrc o .profile para configurar variables de entorno persistentes. Dado que nuestro entorno utiliza zsh, usaremos el archivo .zshrc.
Primero, abramos el archivo .zshrc:
nano ~/.zshrc
Navega hasta el final del archivo (usa Ctrl+End o las flechas) y agrega las siguientes líneas:
## Custom environment variables
export PERSIST_VAR="This variable will persist"
export PATH=$HOME/project/env_lab/bin:$PATH
Guarda y sal con Ctrl+O, Enter y Ctrl+X.
Para aplicar estos cambios sin cerrar y volver a abrir tu terminal, ejecuta el archivo:
source ~/.zshrc
Ahora verifica que tu nueva variable esté configurada:
echo $PERSIST_VAR
Deberías ver:
This variable will persist
Ahora, incluso si cierras y vuelves a abrir tu terminal, esta variable seguirá estando disponible.
Para demostrarlo, simulemos cerrar y volver a abrir la terminal iniciando una nueva sesión de shell:
zsh
Verifica si tu variable sigue estando disponible:
echo $PERSIST_VAR
Todavía deberías ver:
This variable will persist
Sal de esta shell para volver a tu sesión anterior:
exit
Este método de agregar variables de entorno al archivo de configuración de tu shell asegura que estén disponibles cada vez que inicies sesión en tu sistema.
Para variables de entorno de todo el sistema que deben estar disponibles para todos los usuarios, los administradores pueden agregarlas a archivos en /etc/profile.d/ o editar /etc/environment.
Resumen
En este laboratorio, has aprendido los conceptos fundamentales de la gestión de variables de entorno en Linux, que son esenciales para personalizar tu experiencia en Linux y controlar el comportamiento de las aplicaciones.
Los conceptos clave cubiertos incluyen:
- Ver variables de entorno con el comando
envy mostrar variables específicas conecho $VARIABLE_NAME - Configurar variables de entorno temporales utilizando el comando
export - Comprender y modificar la variable PATH para controlar dónde Linux busca programas ejecutables
- Utilizar variables de entorno en comandos y scripts para hacer tu código más flexible
- Hacer que las variables de entorno persistan agregándolas a los archivos de configuración del shell
Estas habilidades forman la base de la gestión del entorno en Linux y son aplicables en diversas distribuciones de Linux. Comprender las variables de entorno es crucial para usuarios de Linux de todos los niveles, desde principiantes hasta administradores avanzados y desarrolladores.
Las variables de entorno te ayudan a personalizar tu experiencia en el shell, controlar el comportamiento de las aplicaciones y construir scripts más flexibles. A medida que continúes tu viaje en Linux, descubrirás que la gestión adecuada del entorno se vuelve cada vez más importante para tareas más complejas, como el desarrollo de software, la administración de sistemas y la resolución de problemas.



