Archivos y carpetas:

En la mayoría de sistemas operativos (Linux incluido) existe el concepto de archivo o fichero que, esencialmente, es un conjunto de información a la que se le ha asignado un nombre.
Los archivos se identifican por su nombre (obviamente), en Linux no hay ningún formato estándar para los nombres de los archivos, en general, pueden tener cualquier carácter menos "/" y están limitados a 256 caracteres de longitud.

Una carpeta o directorio es simplemente una colección de archivos, los directorios, como las carpetas, tienen un nombre para poder identificarlas que siguen las mismas reglas para los nombre que los archivos.
Además están estructurados en forma de árbol, es decir, pueden contener otros directorios.

Para acceder a un archivo se puede usar una ruta relativa o una absoluta:

Si dentro de /home/pedvi hay una carpeta llamada trabajos y esta contiene el archivo "mates" para acceder desde /home/pedvi escribiríamos /trabajos/mates, esto es una ruta relativa, relativa a donde estamos ahora, por que si hacemos lo mismo en /bin, nos pondría algo así: "No such file or directory".

Para poder acceder desde cualquier lugar del sistema tenemos que usar la ruta absoluta:

En el MS-DOS y en el Windows el directorio raíz (donde no se puede ir mas arriba) es el disco duro o disquete (C: o A:), el UNIX y Linux el directorio raíz es "/" y los directorios se separan también mediante "/" (por eso no se puede poner "/" como parte de un nombre de un archivo).
La ruta absoluta accesible desde cualquier lugar del sistema seria /home/pedvi/trabajos/mates, esto nos llevaría al archivo "mates" de la carpeta "trabajos" contenida en la carpeta de un usuario llamado "pedvi" que esta en la carpeta "home" que a su vez esta en "/".
Aquí podemos ver un esquema de los directorios mas importantes en Linux:

Arbol de directorios de Linux

Pulsa en cada carpeta para ver información mas detallada.

Linux no se basa en la extensión para saber que tipo de archivo es cada uno, si no que utiliza lo que se llama "magic numbers", este sistema determina el tipo de archivo mediante unos test que comprueban que tipo de archivo es. El comando para mostrar el tipo de archivo es file.

$ file hola
hola: ASCII text
$ file banner
banner: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.2.0, dynamically linked (uses shared libs), stripped
$ file foto
foto: PNG image data, 480 x 119, 4-bit colormap, non-interlaced

Este sistema es mucho mas eficaz que el de las extensiones.
Hay que tener en cuenta que el sistema puede saber que tipo de archivo es pero no tener ninguna aplicación con que visualizarlo.



/var /usr /tmp /root /proc /opt /lib /home /etc /dev /bin /boot / Directorios