1.3 – Estructura de archivos en Linux

Cuando empezamos a trabajar con Linux, una de las primeras cosas que debemos aprender es cómo está organizado su sistema de archivos.

En Windows, estamos acostumbrados a trabajar con unidades como C:, D: o carpetas como “Mis documentos”. En Linux, la lógica es diferente: todo parte de una única raíz y desde ahí se organiza el resto del sistema.

Esto hace que Linux tenga una estructura muy ordenada y bastante coherente entre distintas distribuciones.

Aunque esta guía está basada en Ubuntu, gran parte de lo que vamos a ver también se aplica a otras distribuciones como:

  • Debian
  • Linux Mint
  • Fedora
  • Rocky Linux
  • AlmaLinux
  • Arch Linux
  • openSUSE

Idea clave: en Linux todo cuelga de /

En Linux, la carpeta principal de todo el sistema es:

/

A esto se le llama raíz del sistema.

Desde esa carpeta nacen todas las demás.
No existen letras de unidad como en Windows. Aunque haya varios discos o particiones, Linux los integra dentro del mismo árbol de directorios.

Ejemplo visual

/
├── bin
├── boot
├── dev
├── etc
├── home
├── media
├── mnt
├── opt
├── proc
├── root
├── run
├── srv
├── sys
├── tmp
├── usr
└── var

Qué debes recordar
En Linux, todo empieza en /.
Cualquier archivo o carpeta del sistema está dentro de esa jerarquía.


Ubuntu y el resto de distribuciones

Ubuntu comparte gran parte de su estructura con otras distribuciones Linux. Esto ocurre porque muchas siguen una organización tradicional común heredada del mundo Unix.

Esto significa que:

  • si aprendes a moverte por Ubuntu, gran parte de ese conocimiento te servirá en otras distribuciones
  • las carpetas principales suelen tener la misma función
  • lo que más cambia entre distribuciones suele ser:
    • el gestor de paquetes
    • algunas herramientas
    • ciertos archivos o configuraciones concretas

Ejemplo

  • En Ubuntu y Debian se usa mucho apt
  • En Fedora se usa dnf
  • En Arch Linux se usa pacman

Pero carpetas como /home, /etc, /var o /usr seguirán teniendo una función muy similar.

Importante
La estructura general de directorios en Linux es bastante común entre distribuciones.
Lo que cambia más es el ecosistema de herramientas, no la lógica principal del sistema de archivos.


Directorios principales de Linux

A continuación vamos a ver las carpetas más importantes que debe conocer un alumno cuando empieza con Linux.


/ — La raíz del sistema

Es el nivel más alto del sistema de archivos.

No es la carpeta del administrador, ni la carpeta del usuario.
Es simplemente el punto de partida de toda la estructura.

Ejemplos de rutas absolutas

/etc/hosts
/home/alumno
/var/log

Recuerda
Cuando una ruta empieza por /, estamos hablando de una ruta absoluta.


/home — Carpetas personales de los usuarios

Aquí se guardan las carpetas personales de los usuarios normales del sistema.

Ejemplos

/home/antonio
/home/alumno1
/home/alumno2

Dentro de cada carpeta de usuario suelen estar:

  • documentos
  • descargas
  • escritorio
  • configuraciones personales
  • archivos ocultos de programas

Ejemplo práctico

cd /home
ls
cd /home/alumno
pwd

Muy importante
La carpeta personal del usuario suele ser su zona principal de trabajo.


/root — Carpeta personal del administrador

Esta carpeta pertenece al usuario root, es decir, al superusuario del sistema.

Ojo con esto

Muchos alumnos confunden:

  • / → raíz del sistema
  • /root → carpeta personal del administrador

No son lo mismo.

Error muy común
/root no es “la raíz”.
La raíz real del sistema es /.


/etc — Archivos de configuración del sistema

Aquí se encuentran muchos archivos de configuración global del sistema y de los servicios instalados.

Ejemplos típicos

/etc/hostname
/etc/hosts
/etc/passwd
/etc/ssh/sshd_config
/etc/apache2/

Si instalamos servicios como SSH, Apache, MySQL o Nginx, gran parte de su configuración suele estar aquí.

Ejemplo práctico

cd /etc
ls

Qué debes aprender
Si una configuración afecta al sistema o a todos los usuarios, es muy probable que esté en /etc.


/usr — Programas y recursos del sistema

Aunque por el nombre pueda parecer que significa “carpeta de usuario”, en realidad no es la carpeta personal del usuario.

/usr contiene una gran parte de los programas, bibliotecas y recursos compartidos del sistema.

Subdirectorios habituales

  • /usr/bin
  • /usr/sbin
  • /usr/lib
  • /usr/share

Ejemplos

ls /usr/bin
ls /usr/share

Aquí se almacenan, por ejemplo:

  • ejecutables
  • bibliotecas
  • documentación
  • iconos
  • archivos compartidos por programas

No confundas
/usr no sustituye a /home.
/home es para usuarios.
/usr es para software y recursos del sistema.


/var — Datos variables del sistema

La carpeta /var contiene archivos que cambian con frecuencia.

Aquí suelen guardarse:

  • logs
  • cachés
  • colas
  • datos temporales persistentes
  • información que cambia durante el funcionamiento del sistema

Subdirectorios frecuentes

  • /var/log
  • /var/cache
  • /var/spool
  • /var/tmp

Ejemplo práctico

cd /var/log
ls

Muy útil en administración
Cuando algo falla, muchas veces hay que mirar en /var/log.
Es uno de los primeros sitios donde buscar pistas.


/tmp — Archivos temporales

Esta carpeta se utiliza para guardar archivos temporales.

Se usa para:

  • datos provisionales
  • archivos de trabajo
  • información temporal de programas o usuarios

Ejemplo

cd /tmp
touch prueba.txt
ls -l

Aviso
No conviene guardar trabajos importantes en /tmp, porque su contenido puede borrarse automáticamente.


/boot — Archivos de arranque

Esta carpeta contiene archivos necesarios para iniciar el sistema.

Aquí pueden encontrarse:

  • el kernel
  • imágenes de arranque
  • archivos del gestor de arranque

Zona delicada
No se debe modificar esta carpeta sin saber exactamente lo que se está haciendo.


/dev — Dispositivos

En Linux, muchos dispositivos se representan como archivos.

Ejemplos típicos

/dev/sda
/dev/sdb
/dev/null
/dev/tty

Esto permite que Linux trate distintos recursos del sistema siguiendo una misma filosofía: muchas cosas se manejan como archivos.

Idea importante
En Linux, los dispositivos también forman parte del sistema de archivos.


/media y /mnt — Montaje de dispositivos

Estas rutas están relacionadas con el montaje de discos, particiones, pendrives y otros medios de almacenamiento.

Diferencia general

  • /media suele usarse para dispositivos montados automáticamente
  • /mnt suele usarse para montajes manuales o temporales

Ejemplo posible en Ubuntu

/media/alumno/USB_DATOS

Recuerda
Cuando conectas un USB en Ubuntu, lo normal es que se monte dentro de /media.


/proc — Información sobre procesos y sistema

/proc no es una carpeta normal guardada en disco.
Es un sistema de archivos virtual que muestra información del kernel y de los procesos en ejecución.

Ejemplos

/proc/cpuinfo
/proc/meminfo
/proc/1

Comandos útiles

cat /proc/cpuinfo
cat /proc/meminfo

Curiosidad interesante
Linux permite consultar información del sistema como si fueran archivos normales.


/sys — Información del hardware y del kernel

Es otra ruta especial del sistema.
También es virtual y sirve para mostrar información sobre dispositivos, hardware y estructura interna del sistema.

No suele ser la primera carpeta que necesita dominar un principiante, pero conviene saber que existe.


/run — Datos temporales del sistema en ejecución

Aquí se almacenan datos generados desde el arranque del sistema.

Por ejemplo:

  • identificadores de procesos
  • sockets
  • estados de servicios
  • información temporal de ejecución

Es una carpeta importante en sistemas Linux modernos.


/opt — Software adicional

Se utiliza a menudo para instalar aplicaciones de terceros o software adicional que no forma parte del conjunto básico del sistema.

Ejemplos

/opt/google
/opt/miaplicacion

No todos los programas se instalan aquí, pero es una ruta bastante habitual en algunos casos.


/srv — Datos de servicios

Esta carpeta está pensada para guardar datos servidos por servicios del sistema.

Por ejemplo:

  • contenido de un servidor web
  • archivos compartidos por un servicio FTP
  • recursos ofrecidos por un servidor

No siempre se utiliza mucho en entornos domésticos, pero conviene conocerla.


/bin, /sbin, /lib y /lib64

Estas carpetas están relacionadas con:

  • comandos esenciales
  • herramientas de administración
  • bibliotecas necesarias para ejecutar programas

En muchos sistemas modernos algunas de estas rutas están integradas o enlazadas con otras dentro de /usr, pero siguen apareciendo y es importante conocerlas.

Idea sencilla para el alumno

  • /bin y /sbin → comandos y herramientas
  • /lib y /lib64 → bibliotecas del sistema

Nota
Aunque hoy existan cambios internos en muchos sistemas modernos, estas rutas siguen formando parte del mapa clásico de Linux.




Comparación rápida con Windows

En Windows

  • hay unidades como C: o D:
  • el usuario suele estar en C:\Users\Nombre
  • parte de la configuración está repartida entre carpetas y registro

En Linux

  • todo cuelga de /
  • el usuario suele estar en /home/usuario
  • la configuración global suele estar en /etc
  • los logs suelen estar en /var/log

Equivalencias mentales aproximadas

  • C:\Users\Antonio/home/antonio
  • C:\Program Files → parecido a partes de /usr o /opt
  • archivos temporales → /tmp
  • configuración del sistema → /etc

Ojo
No son equivalencias exactas, pero sirven para orientarse al principio.


Diferencias entre distribuciones

Aunque la estructura general es parecida, hay diferencias entre distribuciones.

Ubuntu, Debian y Linux Mint

  • muy similares
  • comparten muchas rutas y herramientas
  • usan paquetes .deb y apt

Fedora, Rocky y AlmaLinux

  • estructura también parecida
  • cambian herramientas y paquetes
  • usan dnf

Arch Linux

  • estructura general reconocible
  • más configuración manual
  • enfoque más minimalista

openSUSE

  • estructura general también similar
  • cambia sobre todo en herramientas de administración

Conclusión importante
Si aprendes bien carpetas como /home, /etc, /var, /usr y /tmp, ese conocimiento te servirá en casi cualquier distribución Linux.


Qué carpetas debes conocer primero

Si estás empezando, estas son las más importantes:

  • /
  • /home
  • /root
  • /etc
  • /usr
  • /var
  • /tmp
  • /dev
  • /boot
  • /media
  • /mnt

Consejo para estudiar
No hace falta memorizar todo el sistema de golpe.
Lo importante es entender la función general de cada carpeta.


Ejercicios

1. Mostrar la carpeta actual

pwd

2. Entrar en la carpeta personal

cd /home
ls
cd $USER
pwd

3. Mostrar archivos ocultos

ls -la

4. Explorar la configuración del sistema

cd /etc
ls

5. Ver logs del sistema

cd /var/log
ls

6. Consultar información del sistema

cat /proc/cpuinfo
cat /proc/meminfo

7. Crear un archivo temporal

cd /tmp
touch practica_linux.txt
ls -l

8. Probar el acceso a /root

cd /root

Aquí el alumno verá que normalmente no tiene permisos si no es administrador.


Errores comunes

Confundir / con /root

Es uno de los errores más frecuentes.

Pensar que /usr es la carpeta del usuario

No lo es. La carpeta del usuario normal es /home/usuario.

Pensar que todas las carpetas son “normales”

No. Algunas como /proc o /sys son virtuales.

Guardar archivos importantes en /tmp

No es buena idea.

Creer que Ubuntu y el resto de distribuciones son totalmente diferentes

No. Cambian cosas, pero comparten mucha base.


Resumen

La estructura de archivos en Linux se organiza como una jerarquía que parte de /, la raíz del sistema.
Ubuntu sigue esta lógica igual que muchas otras distribuciones, por lo que aprender esta estructura ayuda a trabajar con soltura en casi cualquier sistema Linux.

Las carpetas más importantes para empezar son:



/
├── /home -> archivos de usuarios
├── /root -> carpeta del administrador
├── /etc -> configuración del sistema
├── /usr -> programas y recursos
├── /var -> logs y datos variables
├── /tmp -> archivos temporales
├── /boot -> arranque
├── /dev -> dispositivos
├── /proc -> información de procesos y kernel
├── /sys -> información del hardware
├── /media -> medios extraíbles
└── /mnt -> montajes manuales

Idea final
Cuando entiendes la función de las carpetas, Linux deja de parecer un laberinto y empieza a parecer un sistema con sentido.