Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. inotify — Wikipédia
inotify — Wikipédia 👆 Click Here! Read More..
Un article de Wikipédia, l'encyclopédie libre.

inotify est un mécanisme du noyau Linux qui fournit des notifications concernant le système de fichiers.

Il a été écrit par John McCutchan avec l'aide de Robert M. Love (en) et plus tard par Amy Griffis pour remplacer dnotify. Il a été inclus dans la branche principale du noyau linux à partir de la version 2.6.13 (18 juin 2005), et pouvait déjà être compilé dans 2.6.12 et peut être même plus tôt grâce à l'utilisation de patch. Il est essentiellement une extension du système de fichiers qui rend compte à une application de tout changement dans le système de fichiers.

On le trouve dans des systèmes d'indexation de fichiers comme Beagle, où ses fonctionnalités permettent une ré-indexation des fichiers modifiés, sans qu'il soit besoin de regarder la totalité du système de fichiers à intervalles réguliers pour cela, ce qui serait très inefficace. En étant averti qu'un fichier a été modifié directement par le noyau, plutôt que d'avoir à regarder (attente active), Beagle et autres logiciels du même type peuvent réaliser la ré-indexation très rapidement, en nuisant peu aux performances du système (inotify permet donc l'usage de tels programmes sans que ce soit déraisonnable).

Il peut aussi être utilisé pour actualiser automatiquement des 'vues' d'un répertoire, recharger des fichiers de configuration, etc.

Avantages

[modifier | modifier le code]

Inotify a beaucoup d'avantages par rapport à dnotify, le module qu'il remplace. Avec l'ancien module, un programme devait utiliser un descripteur de fichier pour chaque répertoire qu'il voulait surveiller. Cela pouvait devenir un goulot d'étranglement parce que le nombre de descripteurs de fichiers maximum pour un processus pouvait être atteint.

L'utilisation des descripteurs de fichiers dans dnotify s'est aussi avérée être un problème avec l'usage des périphériques de stockage amovibles. Les périphériques ne pouvaient pas être 'démontés' parce qu'il y avait encore des descripteurs de fichiers pointant sur eux.

Fonctionnement

[modifier | modifier le code]

Inotify est utilisé via une série d'appels système spécifiquement créés pour lui.

 #include <sys/inotify.h>

Incluez cet en-tête de fichier pour utiliser inotify.

 int inotify_init(void)

Cela crée une instance d'inotify. inotify_init retourne un descripteur de fichier par lequel sont lus tous les évènements. Utilisez l'appel read() pour recevoir les évènements. Afin d'éviter une attente active, read() bloque jusqu'à ce qu'un évènement survienne.

 int inotify_add_watch(int fd, const char* chemin, int masque)

Démarre la surveillance de l'inode pointée par le chemin pour les évènements contenus dans le masque. Retourne un descripteur de surveillance (watch descriptor) qui est unique (au sein de cette instance inotify) sur l'inode pointée par le chemin. NOTE: De multiples chemins peuvent pointer vers le même inode/descripteur de surveillance.

 int inotify_rm_watch(int fd, int wd)

Supprime la surveillance de l'objet désigné par le descripteur de surveillance wd.

Les événements générés par inotify contiennent les informations suivantes :

attribut Contenus
wd descripteur de surveillance
mask événement.
cookie exclusivement utilisé lors d'un renommage. Renommer un objet du système de fichiers génère deux évènements, «renommé depuis» IN_MOVED_FROM et «renommé vers» IN_MOVED_TO. Cette valeur arbitraire est la même pour un objet donné et permet à l'application de faire le lien entre les deux évènements concernant un même objet.
len longueur de l'attribut name
name le nom de fichier (optionnel) associé à cet événement (local au répertoire parent)

Voici quelques-uns des événements qui peuvent être surveillés :

  • IN_ACCESS - lecture du fichier
  • IN_MODIFY - dernière modification
  • IN_ATTRIB - changement des attributs du fichier
  • IN_OPEN et IN_CLOSE - ouverture et fermeture du fichier
  • IN_MOVED_FROM et IN_MOVED_TO - déplacement ou renommage du fichier
  • IN_DELETE - suppression d'un fichier/répertoire
  • IN_CREATE - création d'un fichier dans le répertoire surveillé
  • IN_DELETE_SELF - suppression du fichier surveillé

Sources

[modifier | modifier le code]
  • (en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Inotify » (voir la liste des auteurs).
v · m
GNU/Linux
  • GNU
  • Noyau Linux
Histoire
  • Projet GNU
  • Tux
  • Controverse de nommage
  • SCO et Linux
Noyau Linux
  • Pile graphique Linux
    • DRI
    • KMS
    • V4L2
  • Pile audio Linux
    • ALSA
    • JACK
    • OSS
    • PortAudio
    • PipeWire
    • PulseAudio
  • Réseau
    • Netfilter
    • nftables
    • BPfilter
  • autre
    • evdev
    • inotify
    • LVM
Distributions
  • Liste des distributions GNU/Linux
  • Paquets logiciels
  • Gestionnaire de paquets
  • Distribution live
    • Liste de live CD
  • Live USB
  • Mini Linux
Applications
  • ALSA
  • LAMP
  • Bureau
  • Embarqué
  • Jeux
    • liste
  • Matériel
  • Client léger (LTSP)
Personnalités liées
  • Ulrich Drepper
  • Gaël Duval
  • Jon Hall
  • Benjamin Mako Hill
  • Ian Murdock
  • Bruce Perens
  • Lennart Poettering
  • Daniel Robbins
  • Mark Shuttleworth
  • Jane Silber (en)
  • Richard Stallman
  • Linus Torvalds
  • Patrick Volkerding
  • Jeff Waugh
Médias
  • GNU/Linux Magazine France
  • Linuxfr
  • Linux Journal
  • Linux Magazine
  • LWN
  • Phoronix
  • Planète Linux
  • SysOps Pratique
Mobile
  • Access Linux Platform
  • Android
  • Bada
  • Firefox OS
  • KaiOS
  • LiMo
  • Ubuntu Touch
  • UBports
  • Linaro
  • MeeGo
  • Mer
  • Mobilinux
  • OpenMoko
  • Picotux
  • Sailfish OS
  • Tizen
  • Ubuntu Netbook Edition
  • Yun OS
Autres sujets
  • Fondation Linux
  • Groupe d'utilisateurs Linux (GUL)
  • Linux Standard Base (LSB)
  • Compteur Linux
  • icône décorative Portail de Linux
Ce document provient de « https://fr.teknopedia.teknokrat.ac.id/w/index.php?title=Inotify&oldid=199531171 ».
Catégorie :
  • Noyau Linux
Catégories cachées :
  • Article contenant un appel à traduction en anglais
  • Portail:GNU/Linux/Articles liés
  • Portail:Informatique/Articles liés
  • Portail:Logiciels libres/Articles liés

  • indonesia
  • Polski
  • الرية
  • Deutsch
  • English
  • Español
  • Français
  • Italiano
  • مصر
  • Nederlands
  • 本語
  • Português
  • Sinugboanong Binisaya
  • Svenska
  • Українска
  • Tiếng Việt
  • Winaray
  • 中文
  • Русски
Sunting pranala
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022
Email: pmb@teknokrat.ac.id