« Combien de types de fichiers y a-t-il dans Linux/Unix et quels sont-ils ? ». C’est une question commune à toute personne qui commence à apprendre Linux. O.K., pourquoi est-il si important de connaître les types de fichiers ?
Réponse : C’est parce que Linux considère chaque chose comme un fichier. Quand jamais vous commencez à travailler sur la boîte Linux/Unix, vous devez traiter avec différents types de fichiers(linux/unix) pour les gérer efficacement
Combien de types de fichiers existent dans Linux/Unix ?
Par défaut Unix n’a que 3 types de fichiers. Ils sont..
Fichiers réguliers
-
Fichiers de répertoire
-
Fichiers spéciaux(Cette catégorie a 5 sous-types en elle.)
Donc en pratique nous avons un total de 7 types(1+1+5) de fichiers dans Linux/Unix. Et dans Solaris nous avons 8 types. Et vous pouvez voir l’indication du type de fichier à la partie la plus à gauche de la commande « ls -l ».
Voici ces types de fichiers.
-
Fichier régulier(-)
-
Fichiers répertoires(d)
Fichiers spéciaux
- Fichier bloc(b)
- Fichier périphérique de caractères(c)
- Fichier pipe nommé ou juste un pipe. file(p)
- Fichier de lien symbolique(l)
- Fichier socket(s)
Pour votre information, il existe un autre type de fichier appelé door file(D) qui est présent dans Sun Solaris comme mentionné précédemment. Une porte est un fichier spécial pour la communication inter-processus entre un client et un serveur (donc 8 types au total dans les machines Unix). Nous allons apprendre les différents types de fichiers comme la séquence ci-dessous pour chaque type de fichier.
Définition et information du type de fichier
Comment créer un type de fichier particulier
Comment lister/voir un type de fichier particulier
Type de fichier régulier expliqué dans Linux
Ce sont les fichiers qui sont indiqués avec « – » dans la sortie de la commande ls -l au début de la ligne. Et ces fichiers sont.
1. Un fichier lisible ou
2. un fichier binaire ou
3. des fichiers images ou
4. des fichiers compressés etc.
Comment créer des fichiers réguliers sous Linux/Unix ?
Ans : Utiliser la commande touch/vi et les opérateurs de redirection etc.
Comment peut-on lister les fichiers réguliers ?
ls -l | grep ^-
Exemple de liste de fichiers réguliers :
-rw-r--r-- 1 krishna krishna 20986522 2010-01-31 13:48 test.wmv
-rw-r--r-- 1 krishna krishna 173448 2010-01-30 21:20 Transformers-Teaser-Wallpaper-310.jpg
-r-xr-xr-x 1 root 135168 2009-12-12 19:14 VIDEO_TS.VOB
-rw-r--r-- 1 krishna krishna 2113536 2009-12-01 13:32 Aditya 365 - Janavule.mp3
-rwxrwxrwx 1 root 168 2010-02-14 14:12 xyz.sh
Le type de fichier répertoire expliqué dans Linux/Unix
Ce type de fichiers contient des fichiers réguliers/dossiers/fichiers spéciaux stockés sur un périphérique physique. Et ce type de fichiers sera en couleur bleue avec un lien supérieur ou égal à 2.
Comment peut-on les lister dans mon répertoire de travail actuel ?
ls -l | grep ^d
Exemple de liste de répertoires.
drwxr-xr-x 2 surendra surendra 4096 2010-01-19 18:37 bin
drwxr-xr-x 5 surendra surendra 4096 2010-02-15 18 :46 Desktop
drwxr-xr-x 2 surendra surendra 4096 2010-01-18 14:36 Documents
drwxr-xr-x 2 surendra surendra 4096 2010-02-13 17:45 Downloads
Comment les créer ?
Ans : Utilisez la commande mkdir
Type de fichier bloc sous Linux
Ces fichiers sont des fichiers matériels la plupart d’entre eux sont présents dans /dev.
Comment les créer ?
Ans : Utiliser la commande fdisk ou créer une partition virtuelle.
Comment les lister dans mon répertoire de travail actuel ?
ls -l | grep ^b
Exemple de listing de fichiers Block (pour que vous puissiez voir ces fichiers, ils sont situés dans /dev).
brw-rw---- 1 root disk 8, 1 2010-02-15 09:35 sda1
brw-rw---- 1 root disk 8, 2 2010-02-15 09:35 sda2
brw-rw---- 1 root disk 8, 5 2010-02-15 09:35 sda5
Fichiers de périphériques à caractères sous Linux
Fournit un flux sériel d’entrée ou de sortie.Vos terminaux sont un exemple classique pour ce type de fichiers.
Comment peut-on lister les fichiers de caractères dans mon répertoire de travail actuel ?
ls -l | grep ^c
Exemple de liste de fichiers de caractères(situés dans /dev)
crw-rw-rw- 1 root tty 5, 0 2010-02-15 16:52 tty
crw--w---- 1 root root 4, 0 2010-02-15 09 :35 tty0
crw------- 1 root root 4, 1 2010-02-15 09:35 tty1
Fichiers pipe sous Linux/Unix
L’autre nom du pipe est un pipe « nommé », qui est parfois appelé FIFO. FIFO signifie « First In, First Out » (premier entré, premier sorti) et fait référence à la propriété selon laquelle l’ordre des octets entrant est le même en sortant. Le « nom » d’un tuyau nommé est en fait un nom de fichier dans le système de fichiers.
Comment les créer ?
Ans : Utilisez la commande mkfifo.
Comment peut-on lister les fichiers de caractères dans mon répertoire de travail actuel ?
ls -l | grep ^p
Exemple de listing de fichiers pipe
prw-r----- 1 root root 0 2010-02-15 09:35 /dev/.initramfs/usplash_outfifo
prw-r----- 1 root root 0 2010-02-15 09:35 /dev/.initramfs/usplash_fifo
prw------- 1 syslog syslog 0 2010-02-15 15:38 /var/run/rsyslog/kmsg
fichiers de liens symboliques sous Linux
Ce sont des fichiers liés à d’autres fichiers. Ils sont soit répertoire/fichier régulier. Le numéro d’inode de ce fichier et de ses fichiers parents est le même. Il y a deux types de fichiers de liens disponibles dans Linux/Unix ie soft et hard link.
Comment les créer ?
Ans : utiliser la commande ln
Comment lister les fichiers liés dans mon répertoire de travail actuel ?
ls -l | grep ^l
Exemple de liste de fichiers liés
lrwxrwxrwx 1 root root 24 2010-02-15 09 :35 sndstat -> /proc/asound/oss/sndstat
lrwxrwxrwx 1 root root 15 2010-02-15 09:35 stderr -> /proc/self/fd/2
lrwxrwxrwx 1 root root 15 2010-02-15 09 :35 stdin -> /proc/self/fd/0
lrwxrwxrwx 1 root root 15 2010-02-15 09:35 stdout -> /proc/self/fd/1
Fichiers socket sous Linux
Un fichier socket est utilisé pour passer des informations entre des applications à des fins de communication
Comment les créer ?
Ans : Vous pouvez créer un fichier socket en utilisant l’appel système socket() disponible sous
Exemple en programmation C
int sockfd = socket(AF_INET, SOCK_STREAM, 0);
Vous pouvez faire référence à ce fichier socket en utilisant le sockfd. C’est la même chose que le descripteur de fichier, et vous pouvez utiliser les appels système read(), write() pour lire et écrire à partir du socket.
Comment peut-on lister les fichiers Socket dans mon répertoire de travail actuel ?
ls -l | grep ^s
Exemple de listing de fichiers socket.
srw-rw-rw- 1 root root 0 2010-02-15 09:35 /dev/log
srwxrwxrwx 1 root 0 2010-02-15 10:07 /var/run/cups/cups.sock
srwxrwxrwx 1 root root 0 2010-02-15 09:35 /var/run/samba/winbindd_privileged/pipe
srwxrwxrwx 1 mysql mysql 0 2010-02-15 09:35 /var/run/mysqld/mysqld.sock
Un conseil pour vous les gars. Comment trouver votre type de fichier désiré ?
Ans : Utilisez la commande find avec l’option -type. Par exemple, si vous voulez trouver un fichier socket, il suffit d’utiliser la commande ci-dessous. find / -type s Si vous voulez trouver un fichier lié, alors comment ? Find / -type l
C’est tout….