Se puede decir que en un sistema Linux cualquier cosa es un fichero y lo que no, es un proceso.
Los directorios son ficheros que contienen nombres e información sobre otros ficheros.
El sistema de ficheros en Linux tiene una estructura en forma de árbol invertido que parte del directorio raiz, representado por el símbolo / . De él cuelgan otros directorios y de éstos, pueden colgar más directorios o bien ficheros.
Existen diferentes tipos de ficheros:
- Regulares: ficheros normales.
- Directorios: ficheros que contienen listas de otros ficheros.
- Especiales: ficheros que representan dispositivos de entrada y/o salida. Muchos de ellos se encuentran en el directorio /dev.
- Links: enlaces a otros ficheros que permiten compartir éstos.
- Sockets: un tipo especial de fichero que permite la comunicación entre procesos en una red de ordenadores. Similares a los sockets de TCP/IP.
- Pipes con nombre: similar a los sockets para la comunicación entre procesos de un mismo sistema.
En el sistema cada fichero está representado por su i-nodo, una estructura de datos que contiene la información correspondiente al mismo: propietario, en qué bloques del disco están sus datos, etc.
Para localizar un fichero determinado el sistema necesita conocer la forma de llegar a él a través del árbol de directorios, es decir los directorio por los que debe pasar, a partir del raiz, para llegar a él. Esto se conoce como el pathname (nombre de camino) del fichero.
El pathname /bin/usr/programa le indica al sistema que para llegar al fichero programa debe ir al raiz, buscar el directorio bin e ir a él para buscar el directorio usr, e ir a este último para localizar el fichero programa buscado.
Los pathname que empiezan por el carácter /, el raiz, se denominan absolutos.
Si empiezan por otro carácter son relativos.
Una vez conectado al sistema, el usuario siempre estará apuntando a un directorio específico que será su directorio de trabajo o directorio actual. Cada vez que le indique al sistema un pathname relativo, que no comienza por /, la búsqueda la realizará a partir de dicho directorio actual.