Cuando se navega por el sistema de archivos de Linux seguro que se encuentran diferentes tipos de archivos. Los tipos de archivo más usados y obvios son los archivos y directorios regulares. Sin embargo, el sistema operativo Linux tiene más que ofrecer en términos de tipos de archivo ya que también incluye otros 5 tipos de archivo. Este breve artículo le ayudará a reconocer todos los 7 tipos de archivos diferentes dentro del sistema operativo Linux.
Identificar los tipos de archivos de Linux
Sólo hay 1 comando que necesita saber, que le ayudará a identificar y categorizar todos los siete tipos de archivos diferentes que se encuentran en el sistema Linux.
$ ls -ld <nombre de archivo>
Aquí hay un ejemplo de salida del comando anterior.
$ ls -ld /etc/services
-rw-r--r-- 1 root 19281 Feb 14 2012 /etc/services
El comando ls mostrará el tipo de archivo como un símbolo codificado que se encuentra como el primer carácter de la parte del permiso del archivo. En este caso es «-«, que significa «archivo regular». Es importante señalar que los tipos de archivo de Linux no deben confundirse con las extensiones de archivo. Veamos un breve resumen de los siete tipos diferentes de archivos de Linux y los identificadores del comando ls:
- – : archivo regular
- d : directorio
- c : archivo de dispositivo de caracteres
- b : archivo de dispositivo de bloque
- s : archivo de socket local
- p : tubería con nombre
- l : enlace simbólico
El Instituto Geofísico de la UAF, está buscando un analista de sistemas Linux con experiencia para unirse a su equipo de analistas e ingenieros de infraestructura cibernética de investigación. UBICACIÓN: Fairbanks, Alaska, USA
APPLY NOW
Archivo regular
El archivo regular es un tipo de archivo más común encontrado en el sistema Linux. Gobierna todos los diferentes archivos, tales como archivos de texto, imágenes, archivos binarios, bibliotecas compartidas, etc. Puede crear un archivo regular con el comando touch:
$ touch linuxcareer.com
$ ls -ld linuxcareer.com
-rw-rw-r-- 1 lubos lubos 0 Ene 10 12:52 linuxcareer.com
El primer carácter del comando ls, en este caso «-«, denota el código de identificación del archivo regular. Para eliminar un archivo regular se puede utilizar el comando rm:
$ rm linuxcareer.com
$
Directorio
El directorio es el segundo tipo de archivo más común que se encuentra en Linux. El directorio se puede crear con el comando mkdir:
$ mkdir FileTypes
$ ls -ld FileTypes/
drwxrwxr-x 2 lubos lubos 4096 Jan 10 13:14 FileTypes/
Como se ha explicado anteriormente, el directorio se puede identificar por el símbolo «d» de la salida del comando ls. Para eliminar un directorio vacío utilice el comando rmdir.
$ rmdir FileTypes
Cuando intente eliminar un directorio con el comando rmdir, que contenga archivos adicionales obtendrá un mensaje de error:
rmdir: failed to remove `FileTypes/': Directory not empty
En este caso debe utilizar un comando:
$ rm -r FileTypes/
Dispositivo de caracteres
Los archivos de dispositivos de caracteres y de bloques permiten a los usuarios y a los programas comunicarse con los dispositivos periféricos de hardware. Por ejemplo:
$ ls -ld /dev/vmmon
crw------- 1 root root 10, 165 Jan 4 10:13 /dev/vmmon
En este caso el dispositivo de caracteres es el dispositivo de módulos de vmware.
Dispositivo de bloque
Los dispositivos de bloque son similares a los dispositivos de caracteres. Principalmente gobiernan hardware como discos duros, memoria, etc.
$ ls -ld /dev/sda
brw-rw---- 1 root disk 8, 0 Jan 4 10:12 /dev/sda
Sockets de dominio local
Los sockets de dominio local se utilizan para la comunicación entre procesos. Generalmente, son utilizados por servicios como X windows, syslog y etc.
$ ls -ld /dev/log
srw-rw-rw- 1 root root 0 Jan 4 10:13 /dev/log
Los sockets pueden ser creados por la llamada al sistema socket y eliminados por los comandos unlink o rm.
Tuberías con nombre
De forma similar a los sockets locales, las tuberías con nombre permiten la comunicación entre dos procesos locales. Pueden crearse con el comando mknod y eliminarse con el comando rm.
Enlaces Simbólicos
Con los enlaces simbólicos un administrador puede asignar a un archivo o directorio múltiples identidades. El enlace simbólico puede ser pensado como un puntero a un archivo original. Hay dos tipos de enlaces simbólicos:
- enlaces duros
- enlaces blandos
La diferencia entre los enlaces duros y los blandos es que los blandos utilizan el nombre del archivo como referencia y los duros utilizan la referencia directa al archivo original. Además, los enlaces duros no pueden cruzar sistemas de archivos y particiones. Para crear un enlace blando simbólico podemos utilizar el comando ln -s:
$ echo file1 > file1
$ ln -s file1 file2
$ cat file2
file1
$ ls -ld file2
lrwxrwxrwx 1 lubos lubos 5 Jan 10 14:42 file2 -> file1
Para eliminar el enlace simbólico podemos utilizar el comando unlink o rm.
Conclusión
Como administrador de sistemas trabajarás principalmente con archivos normales, directorios, bloques y dispositivos de caracteres. Como desarrollador de software también trabajará con sockets locales y tuberías con nombre.