Aprende
PrincipianteTu primer Linux
Una ruta de ocho pasos para quien nunca ha usado Linux. Eliges una distro, la instalas en una máquina virtual, aprendes la terminal, los archivos, los paquetes y los usuarios, y terminas con un respaldo hecho por ti. En total son unos 106 minutos (1 h 46 min), y puedes hacerlos en varias sesiones.
No necesitas cuenta: tu avance se guarda solo en tu navegador. Los pasos 3, 4 y 7 incluyen una terminal simulada para practicar; los demás se hacen en tu máquina virtual.
¿Seguro que quieres borrar tu progreso en este navegador?
Paso 1: Elige tu distro y tu máquina virtual
Tiempo estimado: 12 minutos
Linux no es un programa que descargas y ya: es el núcleo del sistema, y alrededor de él se arman las distribuciones (o «distros»). Una distro junta ese núcleo con el instalador, el escritorio y miles de programas. Por eso Ubuntu, Linux Mint, Fedora o Debian se ven distintos aunque por dentro compartan lo esencial.
Para este curso te recomendamos Ubuntu en una versión LTS, que está pensada para durar años con actualizaciones de seguridad, o Linux Mint, que parte de Ubuntu y se siente muy parecido a Windows. Los comandos de los pasos 5 y 6 (apt y sudo) funcionan igual en las dos. Si ya usas Fedora también te sirve; te avisaremos dónde algo cambia.
Antes de tocar el disco de tu equipo real, practica en una máquina virtual: un programa que simula otra computadora dentro de la tuya (VirtualBox es gratuito). Si algo sale mal, borras la máquina virtual y empiezas de cero, sin riesgo para tus archivos. Según su página de descarga (octubre de 2026), Ubuntu Desktop pide 6 GB de memoria y 25 GB de disco libre; en la máquina virtual no le des más de la mitad de la RAM de tu equipo, así que con 8 GB irá justo.
Si tu laptop tiene poca memoria (4 GB o menos), elige una edición ligera como Xubuntu, Lubuntu o Linux Mint XFCE. Y si VirtualBox te avisa que no puede usar la virtualización, casi seguro está desactivada en la BIOS o UEFI de tu equipo: busca una opción llamada VT-x, AMD-V o «virtualización».
Ejemplo de ajustes para la máquina virtual:
Nombre: Linux-practica
Tipo y versión: Linux, Ubuntu (64-bit)
Memoria: 6144 MB si tu equipo tiene 16 GB o más (con 8 GB, 4096 MB y irá justo)
Procesadores: 2
Disco virtual: 25 GB, de tamaño dinámico
Desde RD: si tu internet es limitado, descarga la ISO (el archivo del instalador, de varios gigabytes) una sola vez y donde la conexión sea buena: la universidad, el trabajo o la casa de un familiar. Guárdala en un USB o en un disco externo y reúsala cada vez que reinstales; hasta puedes prestársela a un compañero.
Reto práctico
Descarga la ISO de la distro que elegiste, instala VirtualBox y crea una máquina virtual vacía llamada Linux-practica, sin iniciarla todavía. En el paso 2 la vas a llenar.
Cómo sé que lo logré
- Tengo en mi equipo el archivo ISO de la distro que elegí y sé en qué carpeta lo guardé.
- VirtualBox está instalado y abre sin mostrar errores.
- Revisé cuánta RAM y cuánto disco libre tiene mi equipo, y decidí cuánto le daré a la máquina virtual.
- Puedo explicar con mis palabras la diferencia entre una distro y una máquina virtual.
Paso 2: Instala Linux
Tiempo estimado: 13 minutos
Ya tienes la ISO. Antes de usarla, verifica que se descargó completa y sin alteraciones: calcula su suma SHA-256 y compárala con la que publica la distro (Ubuntu la publica en un archivo llamado SHA256SUMS, junto a la descarga). Con una conexión inestable, un archivo dañado es más común de lo que parece, y es mejor enterarte ahora que a mitad de la instalación.
# En Windows (PowerShell), desde la carpeta donde está la ISO:
Get-FileHash .\tu-archivo.iso -Algorithm SHA256
# En Linux, desde la carpeta donde está la ISO:
sha256sum tu-archivo.iso
En VirtualBox pulsa Nueva, ponle nombre a la máquina, elige la ISO, asigna la memoria y crea un disco virtual de unos 25 GB de tamaño dinámico (solo ocupa espacio real a medida que lo usas). Algunas versiones ofrecen una instalación desatendida; sirve, pero hacer la primera instalación a mano te enseña qué pregunta el instalador.
Ya en el instalador, elige el idioma y la distribución del teclado, la opción de instalar (no la de solo probar) y, cuando llegue al disco, la de borrar el disco e instalar. Dentro de la máquina virtual eso es seguro, porque solo toca el disco virtual. En una computadora real esa misma opción borra todo el disco, así que no la elijas allí sin haber respaldado tus archivos y entendido lo que haces.
Luego define tu zona horaria, tu nombre de usuario y una contraseña que recuerdes: la vas a necesitar para sudo en el paso 6. Si el instalador ofrece descargar actualizaciones o software adicional y tu conexión es lenta, puedes dejarlo para después. Cuando termine, reinicia la máquina virtual.
Al ver el escritorio, toma una instantánea desde el menú de VirtualBox (Máquina, Tomar instantánea). Es un punto de restauración: si más adelante rompes algo mientras practicas, vuelves a ese momento en segundos. Para instalar en un equipo real necesitarás además un USB booteable; la sección de tutoriales de Ubuntu explica cómo crearlo.
Desde RD: los apagones no avisan. Si algún día instalas Linux en una laptop real, hazlo con la batería cargada y el cargador conectado, respalda tus archivos antes y, si puedes, conéctala a un inversor o UPS. Un corte de luz en plena instalación puede dejar el equipo sin arrancar.
Reto práctico
Verifica la ISO, instala Linux en tu máquina virtual y, ya dentro del escritorio, abre una terminal desde el menú de aplicaciones (en Ubuntu también con Ctrl+Alt+T).
Cómo sé que lo logré
- La suma SHA-256 de mi ISO coincide con la que publica la distro.
- La máquina virtual arranca hasta el escritorio de Linux sin necesitar la ISO.
- Pude iniciar sesión con el usuario y la contraseña que creé.
- Abrí una ventana de terminal y veo el prompt esperando un comando.
Paso 3: Muévete en la terminal
Tiempo estimado: 15 minutos
La terminal es una ventana donde le das órdenes a la computadora escribiendo. Dentro corre una shell (en Ubuntu, bash) que lee lo que escribes y lo ejecuta. Lo primero que ves es el prompt, algo como usuario@maquina:~$: te dice quién eres, en qué máquina estás y en qué carpeta. El ~ es tu carpeta personal (/home/usuario) y el $ indica que la shell espera tu comando.
Linux organiza todo como un árbol de carpetas que empieza en /. Una ruta absoluta parte de ahí (/home/usuario/docs); una ruta relativa parte de donde estás (docs). Dos atajos: . es la carpeta actual y .. es la carpeta de arriba. Y ojo: Linux distingue mayúsculas de minúsculas, así que Docs y docs son nombres distintos.
Estos son los comandos de este paso:
pwd: muestra la ruta de la carpeta donde estás.ls: lista lo que hay en la carpeta. Conls -aincluye los archivos ocultos (los que empiezan con punto) y conls -lmuestra más detalles.cd carpeta: entra en una carpeta.cd ..sube un nivel ycdsolo te devuelve a tu carpeta personal.mkdir nombre: crea una carpeta.touch nombre: crea un archivo vacío.cat nombre: muestra el contenido de un archivo.
usuario@linux:~$ pwd
/home/usuario
usuario@linux:~$ mkdir proyecto
usuario@linux:~$ cd proyecto
usuario@linux:~/proyecto$ touch idea.txt
usuario@linux:~/proyecto$ ls
idea.txt
usuario@linux:~/proyecto$ cd ..
usuario@linux:~$
La terminal real tiene dos ayudas que la simulada no trae: la tecla Tab completa los nombres por ti y la flecha hacia arriba repite comandos anteriores. Úsalas desde el principio: ahorran escritura y errores. Para practicar sin miedo, resuelve los retos de abajo en la terminal simulada; cuando los tengas, repite lo mismo en la terminal de tu máquina virtual.
Reto práctico
Practica en la terminal simulada. Cada reto se verifica solo: escribe el comando, pulsa Ejecutar y mira el resultado. Si te trancas, pide una pista.
- Averigua en qué carpeta estás: escribe el comando que muestra la ruta actual.
- Mira qué hay dentro de la carpeta docs sin entrar en ella.
- Muestra también los archivos ocultos de tu carpeta personal (los que empiezan con punto).
- Lee el contenido del archivo bienvenido.txt.
- Crea una carpeta llamada proyecto y entra en ella.
- Crea la carpeta proyecto y, dentro de ella, el archivo vacío idea.txt.
Simulación: no sustituye a un Linux real
Qué no se parece
- No existen
sudoniapt: esos comandos se practican en tu máquina virtual (pasos 5 y 6). - No hay comodines:
*y?no se expanden, así quels *.txtno funciona; escribe los nombres completos. - No hay variables:
$HOMEse muestra tal cual, sin reemplazarla por tu carpeta personal. grepbusca texto literal (sin expresiones regulares) y solo admite las opciones-iy-n.- Los permisos son informativos:
chmodcambia lo que muestrals -l, pero la simulación no impide leer, escribir ni ejecutar nada. lsimprime un nombre por línea, yls -lmuestra solo permisos, tamaño y nombre (sin dueño, grupo ni fecha como en un Linux real).- Solo existen 14 comandos (pwd, ls, cd, cat, mkdir, touch, rm, cp, mv, echo, grep, head, wc y chmod). No hay
;,&&, historial con flechas, autocompletado con Tab ni ejecución de scripts. - Cada comando admite pocas opciones:
rmno acepta-fychmodsolo entiende números de tres cifras como755o+xy-x, nou+x. Si usas otra, la simulación te lo dice; en un Linux real casi todas existen. - La barra invertida no escapa nada:
echo a\bmuestraa\b, mientras que Bash real mostraríaab. - Las tuberías admiten hasta 4 etapas, la redirección solo va al final de la línea y hay topes de tamaño (por ejemplo, 200 archivos y carpetas en total).
Paso 4: Archivos y permisos
Tiempo estimado: 14 minutos
En Linux casi todo es un archivo, y casi todo lo que haces con ellos se resume en cuatro verbos: crear, copiar, mover y borrar. Ya conoces touch y mkdir. Para copiar usas cp origen destino; si el origen es una carpeta necesitas cp -r (la r es de «recursivo»: copia también lo que hay adentro). Para mover usas mv origen destino, y el mismo comando sirve para renombrar: es mover un archivo a un nombre nuevo.
Borrar se hace con rm archivo, o con rm -r carpeta si la carpeta tiene contenido. Aquí va una advertencia seria: la terminal no tiene papelera. Lo que borras con rm no se recupera fácilmente. Antes de borrar, mira con ls qué vas a eliminar, y no ejecutes comandos con rm -r que hayas copiado de internet sin entenderlos.
cp notas.txt copia.txt
cp -r docs docs-respaldo
mv copia.txt apuntes.txt
rm apuntes.txt
Cada archivo tiene permisos que dicen quién puede leerlo, escribirlo o ejecutarlo. Los ves con ls -l:
usuario@maquina:~$ ls -l script.sh
-rw-r--r-- 1 usuario usuario 10 … script.sh
En una terminal real, entre el tamaño y el nombre aparece la fecha de modificación (arriba la reemplazamos por «…»); el 1 es el número de enlaces y las dos palabras siguientes son el dueño y el grupo. Lo que importa ahora es el primer bloque: la primera letra es el tipo (- archivo, d carpeta) y siguen tres grupos de tres letras, para el dueño, el grupo y todos los demás. En cada grupo, r es leer, w es escribir y x es ejecutar. Así, rw-r--r-- significa: el dueño lee y escribe; el grupo y los demás solo leen.
Con chmod cambias esos permisos. En números, r vale 4, w vale 2 y x vale 1, y cada grupo suma lo suyo. chmod 755 script.sh da rwx al dueño (7) y r-x al grupo y a los demás (5); 644 es un valor habitual para un archivo de texto (según tu distro, los archivos nuevos pueden salir con 664). También existe chmod +x script.sh, que añade el permiso de ejecución. Un script solo se lanza con ./script.sh si tiene ese permiso.
Reto práctico
Practica en la terminal simulada: crear, copiar, renombrar, borrar y cambiar permisos. Cada reto empieza con los archivos como están en la lista; si te equivocas, usa Reiniciar.
- Crea un archivo vacío llamado tareas.txt.
- Haz una copia de notas.txt con el nombre respaldo.txt.
- Copia la carpeta docs completa con el nombre docs-respaldo.
- Cambia el nombre de script.sh a instalar.sh.
- Borra el archivo borrador.txt.
- Cambia los permisos de script.sh a 755: el dueño lee, escribe y ejecuta; los demás leen y ejecutan.
Simulación: no sustituye a un Linux real
Qué no se parece
- No existen
sudoniapt: esos comandos se practican en tu máquina virtual (pasos 5 y 6). - No hay comodines:
*y?no se expanden, así quels *.txtno funciona; escribe los nombres completos. - No hay variables:
$HOMEse muestra tal cual, sin reemplazarla por tu carpeta personal. grepbusca texto literal (sin expresiones regulares) y solo admite las opciones-iy-n.- Los permisos son informativos:
chmodcambia lo que muestrals -l, pero la simulación no impide leer, escribir ni ejecutar nada. lsimprime un nombre por línea, yls -lmuestra solo permisos, tamaño y nombre (sin dueño, grupo ni fecha como en un Linux real).- Solo existen 14 comandos (pwd, ls, cd, cat, mkdir, touch, rm, cp, mv, echo, grep, head, wc y chmod). No hay
;,&&, historial con flechas, autocompletado con Tab ni ejecución de scripts. - Cada comando admite pocas opciones:
rmno acepta-fychmodsolo entiende números de tres cifras como755o+xy-x, nou+x. Si usas otra, la simulación te lo dice; en un Linux real casi todas existen. - La barra invertida no escapa nada:
echo a\bmuestraa\b, mientras que Bash real mostraríaab. - Las tuberías admiten hasta 4 etapas, la redirección solo va al final de la línea y hay topes de tamaño (por ejemplo, 200 archivos y carpetas en total).
Paso 5: Instala programas con paquetes
Tiempo estimado: 12 minutos
Casi todo el software de Linux se instala con un gestor de paquetes: un programa que descarga el software desde los repositorios oficiales de tu distro, instala también lo que ese software necesita para funcionar (sus dependencias) y luego te permite actualizarlo o quitarlo. Es parecido a una tienda de aplicaciones, pero desde la terminal, y los repositorios oficiales verifican con firmas lo que descargas.
En Ubuntu, Debian y Linux Mint el gestor se llama apt. Instalar o quitar software cambia el sistema, así que esos comandos piden permisos de administrador: por eso empiezan con sudo, que explicamos en el paso 6. Por ahora escríbelo tal cual y, cuando te pida la contraseña, teclea la de tu usuario (según la distro no verás nada o solo asteriscos mientras escribes; es normal).
sudo apt update
sudo apt install tree
tree --version
sudo apt remove tree
apt update no instala nada: solo refresca la lista de paquetes disponibles. apt install descarga e instala el paquete (aquí tree, que dibuja el árbol de una carpeta) y apt remove lo quita. Antes de confirmar, apt te muestra cuántos datos va a descargar y espera tu respuesta: lee ese número. Con apt show tree ves la descripción de un paquete antes de instalarlo, y con sudo apt upgrade actualizas los programas que ya tienes.
Si usas Fedora, el equivalente es dnf: sudo dnf install tree y sudo dnf remove tree. No hace falta un paso aparte para refrescar la lista, porque dnf lo hace cuando es necesario. Sea cual sea tu distro, instala desde los repositorios oficiales y desconfía de los comandos copiados de internet que descargan y ejecutan scripts con sudo sin que sepas qué hacen.
Desde RD: si se va la luz mientras apt instala algo, no entres en pánico: al volver, ejecuta sudo dpkg --configure -a y después sudo apt install -f para que apt termine lo que quedó a medias. Y antes de un sudo apt upgrade grande, revisa cuántos megas va a bajar; si usas datos del celular, déjalo para cuando tengas wifi.
Reto práctico
En la terminal de tu máquina virtual: actualiza la lista de paquetes, instala tree, comprueba que quedó instalado con tree --version y luego quítalo con apt remove.
Cómo sé que lo logré
sudo apt updateterminó sin mostrar errores en rojo.tree --versionmostró un número de versión después de instalar el paquete.- Después de quitar el paquete, el sistema ya no encuentra el comando
tree. - Puedo explicar la diferencia entre
apt updateyapt upgrade.
Paso 6: Usuarios y sudo
Tiempo estimado: 12 minutos
Linux es un sistema multiusuario: cada persona tiene su cuenta y su carpeta personal, y un usuario normal solo puede cambiar sus propios archivos. Existe un usuario especial, root (el superusuario), que puede hacer cualquier cosa en el sistema, incluso dañarlo. Por seguridad no se trabaja todo el día como root: se trabaja como usuario normal y, cuando una tarea lo exige, se pide un permiso puntual con sudo.
sudo comando ejecuta solo ese comando con privilegios de administrador y te pide tu contraseña, no la de root. Funciona únicamente si tu usuario pertenece al grupo de administradores: en Ubuntu, Debian y Mint ese grupo se llama sudo; en Fedora, wheel. El primer usuario que creas al instalar normalmente ya es administrador.
whoami
sudo whoami
ls /root
sudo ls /root
whoami dice quién eres; con sudo la respuesta cambia a root, porque ese comando corrió como superusuario. ls /root sin sudo falla con un mensaje de «permiso denegado», y con sudo funciona (la carpeta puede estar vacía y no mostrar nada, pero sin error).
Para crear otro usuario en Ubuntu o Debian usa sudo adduser invitado: te pedirá una contraseña (usa una de prueba que recuerdes) y unos datos opcionales que puedes dejar en blanco con Enter, confirmando al final con Y. id invitado muestra su número de usuario y sus grupos. Para borrarlo junto con su carpeta personal: sudo deluser --remove-home invitado (antes de pulsar Enter, comprueba que el nombre sea invitado y no el de tu propio usuario, porque esto borra su carpeta personal). Si en Debian el comando se queja de que falta el paquete perl, instálalo con sudo apt install perl y repítelo. En Fedora esos pasos son sudo useradd -m invitado, sudo passwd invitado y sudo userdel -r invitado.
Usa sudo con respeto: te deja borrar o romper lo que sea sin preguntar. No lo pongas delante de un comando solo porque «así funciona»; si un mensaje dice «permiso denegado», primero entiende por qué. Y no lo uses para tus propios archivos: los dejaría a nombre de root y después no podrías editarlos.
Desde RD: en muchas casas una sola laptop la usa toda la familia. Crea un usuario para cada persona: así cada quien tiene su carpeta, su escritorio y su contraseña, y nadie borra por accidente la tarea o el trabajo de otro. Y no compartas tu contraseña de administrador con nadie.
Reto práctico
En la terminal de tu máquina virtual: compara whoami con y sin sudo, crea el usuario invitado, comprueba que existe con id invitado y bórralo junto con su carpeta personal.
Cómo sé que lo logré
whoamimuestra mi usuario ysudo whoamimuestraroot.ls /rootsin sudo da «permiso denegado» y con sudo no da error.- Creé el usuario
invitadoyid invitadomostró su número de usuario. - Borré
invitadocon su carpeta personal yid invitadoya dice que no existe.
Paso 7: Pipes y redirección
Tiempo estimado: 13 minutos
Los comandos de Linux hacen cosas pequeñas y las hacen bien. El truco está en combinarlos: cada comando recibe una entrada y produce una salida, y con dos herramientas de la shell controlas adónde va esa salida.
La tubería | (pipe) toma la salida de un comando y la entrega como entrada del siguiente. Por ejemplo, cat notas.txt | grep linux | wc -l lee el archivo, se queda solo con las líneas que contienen «linux» y cuenta cuántas son. grep texto filtra líneas (con -i ignora mayúsculas y con -n muestra el número de línea), wc -l cuenta líneas y head -n 3 muestra solo las 3 primeras.
La redirección > manda la salida a un archivo en lugar de la pantalla. Cuidado: si el archivo ya existe, > lo sobrescribe sin preguntar. Con >> la salida se agrega al final del archivo. echo texto imprime un texto y, junto con la redirección, es la forma más rápida de crear un archivo con contenido.
usuario@linux:~$ echo hola > saludo.txt
usuario@linux:~$ echo mundo >> saludo.txt
usuario@linux:~$ cat saludo.txt
hola
mundo
usuario@linux:~$ ls | wc -l
Una diferencia que debes conocer: en la terminal real grep entiende expresiones regulares (patrones con símbolos especiales), mientras que en la simulada busca texto literal. Si usas palabras simples, funcionará igual en las dos. Resuelve los retos de abajo y, después, prueba las mismas tuberías en tu máquina virtual con archivos tuyos.
Reto práctico
Practica en la terminal simulada. Aquí los retos combinan comandos con tuberías y redirecciones; en los que piden crear un archivo, se comprueba su contenido exacto.
- Cuenta cuántas líneas tiene registro.txt usando una tubería entre cat y wc.
- Guarda en errores.txt solo las líneas de registro.txt que contengan la palabra error.
- Cuenta cuántas líneas de registro.txt contienen la palabra error, con dos tuberías.
- Guarda en inicio.txt solo las 2 primeras líneas de registro.txt.
- Crea saludo.txt con la palabra hola y agrega en una segunda línea la palabra mundo.
- Guarda en linux.txt las líneas de docs/frase.txt que tengan la palabra linux, sin importar mayúsculas o minúsculas.
Simulación: no sustituye a un Linux real
Qué no se parece
- No existen
sudoniapt: esos comandos se practican en tu máquina virtual (pasos 5 y 6). - No hay comodines:
*y?no se expanden, así quels *.txtno funciona; escribe los nombres completos. - No hay variables:
$HOMEse muestra tal cual, sin reemplazarla por tu carpeta personal. grepbusca texto literal (sin expresiones regulares) y solo admite las opciones-iy-n.- Los permisos son informativos:
chmodcambia lo que muestrals -l, pero la simulación no impide leer, escribir ni ejecutar nada. lsimprime un nombre por línea, yls -lmuestra solo permisos, tamaño y nombre (sin dueño, grupo ni fecha como en un Linux real).- Solo existen 14 comandos (pwd, ls, cd, cat, mkdir, touch, rm, cp, mv, echo, grep, head, wc y chmod). No hay
;,&&, historial con flechas, autocompletado con Tab ni ejecución de scripts. - Cada comando admite pocas opciones:
rmno acepta-fychmodsolo entiende números de tres cifras como755o+xy-x, nou+x. Si usas otra, la simulación te lo dice; en un Linux real casi todas existen. - La barra invertida no escapa nada:
echo a\bmuestraa\b, mientras que Bash real mostraríaab. - Las tuberías admiten hasta 4 etapas, la redirección solo va al final de la línea y hay topes de tamaño (por ejemplo, 200 archivos y carpetas en total).
Paso 8: Mini-proyecto: tu primer respaldo
Tiempo estimado: 15 minutos
Vamos a juntar todo en un script sencillo y seguro: copia una carpeta tuya, comprimida, a otra carpeta, con la fecha y la hora en el nombre. Como cada respaldo tiene un nombre distinto, nunca se pisa uno con otro, y el script no borra nada. Un script es solo un archivo de texto con comandos que la shell ejecuta de arriba abajo.
Primero crea una carpeta de prueba para no arriesgar tus archivos reales, con un par de archivos adentro. Después abre un editor (en la terminal, nano respaldo.sh; uno gráfico también sirve) y escribe el script. Con nano, guardas con Ctrl+O y Enter, y sales con Ctrl+X.
mkdir ~/mis-notas
echo "primera nota" > ~/mis-notas/nota1.txt
echo "segunda nota" > ~/mis-notas/nota2.txt
nano respaldo.sh
#!/bin/bash
# respaldo.sh: guarda una copia comprimida de una carpeta, con fecha y hora.
ORIGEN="$HOME/mis-notas"
DESTINO="$HOME/respaldos"
FECHA=$(date +%Y-%m-%d_%H-%M)
ARCHIVO="$DESTINO/mis-notas-$FECHA.tar.gz"
if [ ! -d "$ORIGEN" ]; then
echo "No existe la carpeta $ORIGEN. Revisa el nombre."
exit 1
fi
mkdir -p "$DESTINO"
if tar -czf "$ARCHIVO" -C "$HOME" mis-notas; then
echo "Respaldo listo: $ARCHIVO"
else
echo "Algo falló al crear el respaldo."
exit 1
fi
Las primeras líneas guardan valores en variables ($HOME es tu carpeta personal, y $(date ...) inserta la fecha y la hora actuales). Las comillas dobles protegen los nombres con espacios. El if comprueba que la carpeta exista antes de seguir, y tar -czf crea el archivo: c es crear, z comprimir con gzip y f indica el nombre del archivo; -C "$HOME" le dice a tar que trabaje desde tu carpeta personal para que el respaldo no guarde rutas largas. Si algo falla, el script avisa y se detiene con exit 1.
Ejecútalo con bash respaldo.sh. Para lanzarlo como ./respaldo.sh, dale permiso con chmod +x respaldo.sh, como aprendiste en el paso 4. Después comprueba el resultado: ls -lh muestra los respaldos con su tamaño, y tar -tzf lista lo que hay dentro de uno sin extraerlo. En los comandos de abajo, cambia el nombre del archivo por el que se creó en tu carpeta respaldos.
bash respaldo.sh
ls -lh ~/respaldos
tar -tzf ~/respaldos/mis-notas-AAAA-MM-DD_HH-MM.tar.gz
mkdir ~/prueba-restauracion
tar -xzf ~/respaldos/mis-notas-AAAA-MM-DD_HH-MM.tar.gz -C ~/prueba-restauracion
Esos dos últimos comandos prueban lo más importante: un respaldo que nunca has intentado restaurar no es un respaldo seguro. Si en ~/prueba-restauracion/mis-notas aparecen tus archivos, el script funciona.
Desde RD: un respaldo en el mismo disco no te salva si el disco falla o si la laptop se moja, se cae o se la llevan. Cuando tengas el .tar.gz, cópialo a un USB o a un disco externo, y si puedes guárdalo también en otro lugar. Con los apagones, el disco es lo primero que sufre: respaldar es una costumbre barata.
Reto práctico
En la terminal de tu máquina virtual: crea la carpeta mis-notas con algún archivo, escribe respaldo.sh, ejecútalo, comprueba el contenido del respaldo y restáuralo en una carpeta de prueba.
Cómo sé que lo logré
- Al ejecutar
bash respaldo.shaparece «Respaldo listo» con la ruta del archivo. ls -lh ~/respaldosmuestra un archivo.tar.gzcon tamaño mayor que cero.tar -tzfsobre el respaldo lista los archivos demis-notas.- Extraje el respaldo en
~/prueba-restauraciony encontré mis archivos con el mismo contenido.