En Linux todo se organiza en un único árbol de directorios que parte de la raíz (
/). No existen unidades separadas comoC:oD:; todos los dispositivos y carpetas cuelgan de esa raíz. Además, una filosofía central es que "todo es un archivo" (incluso dispositivos y procesos se representan como archivos).
Saber navegar el sistema de archivos desde la terminal es la habilidad más básica y más usada: la mayoría de servidores y herramientas de seguridad funcionan sobre Linux.
Directorios importantes:
| Directorio | Contenido |
|---|---|
/ | Raíz del sistema |
/home | Carpetas personales de los usuarios |
/root | Carpeta del administrador (root) |
/etc | Archivos de configuración del sistema |
/var | Datos variables, incluidos los logs (/var/log) |
/tmp | Archivos temporales |
/bin, /usr/bin | Programas y comandos ejecutables |
Comandos esenciales de navegación:
pwd # muestra el directorio actual
ls -la # lista todo, incluidos ocultos, con permisos
cd /etc # entra a un directorio
cd .. # sube un nivel
cd # vuelve al home del usuario
Ver y manipular archivos:
cat archivo.txt # muestra el contenido
less archivo.txt # lo muestra paginado
touch nuevo.txt # crea un archivo vacío
mkdir carpeta # crea un directorio
cp origen destino # copia
mv origen destino # mueve o renombra
rm archivo # elimina (¡sin papelera!)
Detalles clave:
- Los archivos que empiezan con
.están ocultos (.bashrc,.ssh/). Suelen contener configuración y, a veces, credenciales. - Las rutas pueden ser absolutas (desde
/) o relativas (desde donde estás). - Linux distingue mayúsculas (
Archivo≠archivo).
Por qué importa en seguridad: tras comprometer una máquina, la enumeración del sistema de archivos busca configuraciones, claves, historiales y archivos ocultos. Es la base de la post-explotación y de la escalada de privilegios.
Este tema es el cimiento del pilar: sin moverse por Linux no se puede avanzar a permisos, procesos y logs o scripting en Bash.