.\" -*- coding: UTF-8 -*- .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH fanotify_mark 2 "6 octobre 2025" "Pages du manuel de Linux 6.18" .SH NOM fanotify_mark \- Ajouter, supprimer ou modifier une marque fanotify sur un objet de système de fichiers .SH BIBLIOTHÈQUE Bibliothèque C standard (\fIlibc\fP,\ \fI\-lc\fP) .SH SYNOPSIS .nf \fB#include \fP .P \fBint fanotify_mark(int \fP\fIfanotify_fd\fP\fB, unsigned int \fP\fIflags\fP\fB,\fP \fB uint64_t \fP\fImask\fP\fB, int \fP\fIdirfd\fP\fB,\fP \fB const char *_Nullable \fP\fIpath\fP\fB);\fP .fi .SH DESCRIPTION Pour un aperçu de l’interface de programmation fanotify, consultez \fBfanotify\fP(7). .P \fBfanotify_mark\fP() ajoute, supprime ou modifie une marque fanotify sur un objet de système de fichiers. L’appelant doit avoir le droit de lecture sur l’objet de système de fichiers à marquer. .P L’argument \fIfanotify_fd\fP est un descripteur de fichier renvoyé par \fBfanotify_init\fP(2). .P \fIflags\fP est un masque de bits décrivant la modification à réaliser. Il doit contenir exactement une des valeurs suivantes. .TP \fBFAN_MARK_ADD\fP Les événements dans \fImask\fP seront ajoutés au masque de marque (ou au masque ignore). \fImask\fP doit être non vide sinon l’erreur \fBEINVAL\fP surviendra. .TP \fBFAN_MARK_REMOVE\fP Les événements dans l’argument \fImask\fP seront supprimés du masque de marque (ou du masque ignore). \fImask\fP doit être non vide sinon l’erreur \fBEINVAL\fP surviendra. .TP \fBFAN_MARK_FLUSH\fP Remove either all marks for filesystems, all marks for mounts, or all marks for directories and files from the fanotify group. If \fIflags\fP contains \fBFAN_MARK_MOUNT\fP, all marks for mounts are removed from the group. If \fIflags\fP contains \fBFAN_MARK_FILESYSTEM\fP, all marks for filesystems are removed from the group. Otherwise, all marks for directories and files are removed. No flag other than, and at most one of, the flags \fBFAN_MARK_MNTNS\fP, \fBFAN_MARK_MOUNT\fP, or \fBFAN_MARK_FILESYSTEM\fP can be used in conjunction with \fBFAN_MARK_FLUSH\fP. \fImask\fP is ignored. .P Si aucune des valeurs précédentes n’est indiquée, ou si plus d’une est indiquée, l’appel échoue avec l'erreur \fBEINVAL\fP. .P De plus, zéro ou plus des valeurs suivantes peuvent être incluses dans \fIflags\fP (avec une opération OU bit à bit). .TP \fBFAN_MARK_DONT_FOLLOW\fP If \fIpath\fP is a symbolic link, mark the link itself, rather than the file to which it refers. (By default, \fBfanotify_mark\fP() dereferences \fIpath\fP if it is a symbolic link.) .TP \fBFAN_MARK_ONLYDIR\fP Si l’objet de système de fichiers à marquer n’est pas un répertoire, l’erreur \fBENOTDIR\fP surviendra. .TP \fBFAN_MARK_IGNORE\fP (depuis Linux 6.14) .\" commit 0f46d81f2bce970b1c562aa3c944a271bbec2729 Mark the mount namespace specified by \fIpath\fP. If \fIpath\fP does not represent a mount namespace (e.g. \fI/proc/\fPpid\fI/ns/mnt\fP), the call fails with the error \fBEINVAL\fP. An fanotify group that was initialized with flag \fBFAN_REPORT_MNT\fP is required. .TP \fBFAN_MARK_MOUNT\fP Mark the mount specified by \fIpath\fP. If \fIpath\fP is not itself a mount point, the mount containing \fIpath\fP will be marked. All directories, subdirectories, and the contained files of the mount will be monitored. The events which require that filesystem objects are identified by file handles, such as \fBFAN_CREATE\fP, \fBFAN_ATTRIB\fP, \fBFAN_MOVE\fP, and \fBFAN_DELETE_SELF\fP, cannot be provided as a \fImask\fP when \fIflags\fP contains \fBFAN_MARK_MOUNT\fP. Attempting to do so will result in the error \fBEINVAL\fP being returned. Use of this flag requires the \fBCAP_SYS_ADMIN\fP capability. .TP \fBFAN_MARK_FILESYSTEM\fP (depuis Linux 4.20) .\" commit d54f4fba889b205e9cd8239182ca5d27d0ac3bc2 Mark the filesystem specified by \fIpath\fP. The filesystem containing \fIpath\fP will be marked. All the contained files and directories of the filesystem from any mount point will be monitored. Use of this flag requires the \fBCAP_SYS_ADMIN\fP capability. .TP \fBFAN_MARK_IGNORED_MASK\fP .\" commit 497b0c5a7c0688c1b100a9c2e267337f677c198e Les événements de \fImask\fP ne seront pas ajoutés ou supprimés du masque ignore. Remarquez que les attributs \fBFAN_ONDIR\fP et \fBFAN_EVENT_ON_CHILD\fP n'ont aucun effet quand ils sont fournis avec cet attribut. L’effet du positionnement des attributs \fBFAN_ONDIR\fP et \fBFAN_EVENT_ON_CHILD\fP dans le masque de marquage des événements positionnés dans le masque ignore n'est pas défini et dépend de la version du noyau Linux. En particulier, avant Linux 5.9, positionner un masque de marquage sur un fichier et une marque avec un masque ignore sur son répertoire parent ne ferait pas ignorer les événements sur le fichier, même avec l'attribut \fBFAN_EVENT_ON_CHILD\fP dans le masque de marquage du répertoire parent. Quand le masque ignore est mis à jour avec l'attribut \fBFAN_MARK_IGNORED_MASK\fP sur une marque précédemment mise à jour avec l'attribut \fBFAN_MARK_IGNORE\fP, la mise à jour échoue avec l'erreur \fBEEXIST\fP. .TP \fBFAN_MARK_IGNORE\fP (depuis Linux 6.0, 5.15.154 et 5.10.220) .\" commit e252f2ed1c8c6c3884ab5dd34e003ed21f1fe6e0 Cet attribut a le même effet que de positionner l'attribut \fBFAN_MARK_IGNORED_MASK\fP. Les événements du \fImask\fP seront ajoutés ou supprimés du masque ignore. Contrairement à l'attribut \fBFAN_MARK_IGNORED_MASK\fP, cet attribut a également pour effet que les attributs \fBFAN_ONDIR\fP et \fBFAN_EVENT_ON_CHILD\fP agissent sur le masque ignore. En particulier, sauf si l'attribut \fBFAN_ONDIR\fP est positionné avec \fBFAN_MARK_IGNORE\fP, les événements sur les répertoires ne seront pas ignorés. Si l'attribut \fBFAN_EVENT_ON_CHILD\fP est positionné avec \fBFAN_MARK_IGNORE\fP, les événements sur les enfants seront ignorés. Par exemple, une marque sur un répertoire associé à un masque avec l'événement \fBFAN_CREATE\fP et l'attribut \fBFAN_ONDIR\fP et un masque ignore avec un événement \fBFAN_CREATE\fP et sans l'attribut \fBFAN_ONDIR\fP ne gardera que les événements de création de sous\-répertoires. Lors de l'utilisation de l'attribut \fBFAN_MARK_IGNORE\fP pour ajouter à un masque ignore une marque de montage, de système de fichiers ou d'inœud de répertoire, l'attribut \fBFAN_MARK_IGNORED_SURV_MODIFY\fP doit être indiqué. Un oubli de faire cela donne une erreur \fBEINVAL\fP ou \fBEISDIR\fP. .TP \fBFAN_MARK_IGNORED_SURV_MODIFY\fP Le masque ignore survivra aux événements de modification. Si cet attribut n'est pas positionné, le masque ignore est effacé quand un événement de modification se produit sur l'objet marqué. Ne pas utiliser cet attribut se fait généralement pour supprimer des événements (comme \fBFAN_OPEN\fP) sur un fichier spécifique, jusqu'à ce que le contenu de ce dernier ne soit modifié. Il est beaucoup moins utile de supprimer des événements sur tout un système de fichiers ou un montage, ou bien sur tous les fichiers d'un répertoire, jusqu'à ce qu'un contenu de fichier ne soit modifié. C'est pourquoi l'attribut \fBFAN_MARK_IGNORE\fP exige l'attribut \fBFAN_MARK_IGNORED_SURV_MODIFY\fP sur une marque d'inœud de montage, de système de fichiers ou de répertoire. Cet attribut ne peut pas être supprimé d'une marque une fois qu'il a été positionné. Quand le masque ignore est mis à jour sans cet attribut sur une marque précédemment mise à jour avec les attributs \fBFAN_MARK_IGNORE\fP et \fBFAN_MARK_IGNORED_SURV_MODIFY\fP, la mise à jour échoue avec l'erreur \fBEEXIST\fP. .TP \fBFAN_MARK_IGNORE_SURV\fP C'est un synonyme de (\fBFAN_MARK_IGNORE\fP|\fBFAN_MARK_IGNORED_SURV_MODIFY\fP). .TP \fBFAN_MARK_EVICTABLE\fP (since Linux 5.19, 5.15.154, and 5.10.220) .\" commit 5f9d3bd520261fd7a850818c71809fd580e0f30c Lorsqu'une marque d'inœud est créée avec cet attribut, l'objet inœud ne sera pas associé au cache de l'inœud, permettant ainsi à l'objet inœud d'être supprimé du cache d'inœud quand la pression sur la mémoire du système est élevée. La suppression de l'objet inœud provoque aussi la perte de la marque suppressible. Quand le masque d'un inœud suppressible est mis à jour sans utiliser l'attribut \fBFAN_MARK_EVICATBLE\fP, l'inœud marqué est épinglé dans le cache d'inœuds et la marque n'est plus suppressible. Quand le masque d'une marque d'inœud non suppressible est mis à jour avec l'attribut \fBFAN_MARK_EVICTABLE\fP, la marque d'inœud reste non suppressible et la mise à jour échoue avec l'erreur \fBEEXIST\fP. Les montages et les systèmes de fichiers ne sont pas des objets suppressibles, donc si on essaie de créer une marque de montage ou de système de fichiers avec l'attribut \fBFAN_MARK_EVICTABLE\fP, une erreur \fBEINVAL\fP se produira. Par exemple, les marques d'inœud peuvent être utilisées en combinaison avec les marques de montage pour réduire la quantité d'événements issus d'endroits sans intérêt. L'écouteur d'événements lit les événements, vérifie si le chemin indiqué dans l'événement est digne d'intérêt et si ce n’est pas le cas, il positionne une marque avec un masque ignore sur le répertoire. Les marques d'inœud suppressibles permettent d'utiliser cette méthode pour un grand nombre de répertoires sans l'inconvénient de l’épinglage de tous les inœuds et d’épuiser la mémoire du système. .P \fImask\fP définit les événements à écouter (ou à ignorer). C’est un masque de bits constitué par les valeurs suivantes : .TP \fBFAN_ACCESS\fP Créer un événement quand un fichier ou un répertoire (mais consultez \fBBOGUES\fP) est accédé (en lecture). .TP \fBFAN_MODIFY\fP Créer un événement quand un fichier est modifié (en écriture). .TP \fBFAN_CLOSE_WRITE\fP Créer un événement quand un fichier modifiable en écriture est fermé. .TP \fBFAN_CLOSE_NOWRITE\fP Créer un événement quand soit un fichier, soit un répertoire, en lecture seule, est fermé. .TP \fBFAN_OPEN\fP Créer un événement quand soit un fichier, soit un répertoire est ouvert. .TP \fBFAN_OPEN_EXEC\fP (depuis Linux 5.0) .\" commit 9b076f1c0f4869b838a1b7aa0edb5664d47ec8aa Créer un événement quand un fichier est ouvert pour être exécuté. Voir les NOTES pour plus de détails. .TP \fBFAN_ATTRIB\fP (depuis Linux 5.1) .\" commit 235328d1fa4251c6dcb32351219bb553a58838d2 Créer un événement quand les métadonnées d'un fichier ou d'un répertoire ont changé. Un groupe fanotify qui identifie les objets de système de fichiers par des identificateurs de fichier est nécessaire. .TP \fBFAN_CREATE\fP (depuis Linux 5.1) .\" commit 235328d1fa4251c6dcb32351219bb553a58838d2 Créer un événement quand un fichier ou un répertoire a été créé dans un répertoire parent marqué. Un groupe fanotify qui identifie les objets de système de fichiers par des identificateurs de fichier est nécessaire. .TP \fBFAN_DELETE\fP (depuis Linux 5.1) .\" commit 235328d1fa4251c6dcb32351219bb553a58838d2 Créer un événement quand un fichier ou un répertoire a été effacé d'un répertoire parent marqué. Un groupe fanotify qui identifie les objets de système de fichiers par des identificateurs de fichier est nécessaire. .TP \fBFAN_DELETE_SELF\fP (depuis Linux 5.1) .\" commit 235328d1fa4251c6dcb32351219bb553a58838d2 Créer un événement quand un fichier, ou même un répertoire, marqué est effacé. Un groupe fanotify qui identifie les objets de système de fichiers par des identificateurs de fichier est nécessaire. .TP \fBFAN_MOVED_FROM\fP (depuis Linux 5.1) .\" commit 235328d1fa4251c6dcb32351219bb553a58838d2 Créer un événement quand un fichier ou un répertoire a été déplacé depuis un répertoire parent marqué. Un groupe fanotify qui identifie les objets de système de fichiers par des identificateurs de fichier est nécessaire. .TP \fBFAN_MOVED_TO\fP (depuis Linux 5.1) .\" commit 235328d1fa4251c6dcb32351219bb553a58838d2 Créer un événement quand un fichier ou un répertoire est déplacé vers un répertoire parent marqué. Un groupe fanotify qui identifie les objets de système de fichiers par des identificateurs de fichier est nécessaire. .TP \fBFAN_RENAME\fP (since Linux 5.17, 5.15.154, and 5.10.220) .\" commit 8cc3b1ccd930fe6971e1527f0c4f1bdc8cb56026 Cet événement contient les mêmes informations que celles fournies par les événements \fBFAN_MOVED_FROM\fP et \fBFAN_MOVED_TO\fP mais il est représenté par un seul événement ayant jusqu'à deux enregistrements. Un groupe fanotify qui identifie les objets de système de fichiers par des identificateurs de fichiers est nécessaire. Si l'objet de système de fichiers à marquer n'est pas un répertoire, l'erreur \fBENOTDIR\fP sera générée. .TP \fBFAN_MOVE_SELF\fP (depuis Linux 5.1) .\" commit 235328d1fa4251c6dcb32351219bb553a58838d2 Créer un événement quand un fichier, ou même un répertoire, marqué a été déplacé. Un groupe fanotify qui identifie les objets de système de fichiers par des identificateurs de fichier est nécessaire. .TP \fBFAN_MNT_ATTACH\fP .TQ \fBFAN_MNT_DETACH\fP (both since Linux 6.14) .\" commit 0f46d81f2bce970b1c562aa3c944a271bbec2729 Create an event when a mount was attached to or detached from a marked mount namespace, respectively. An attempt to set this flag on an inode, mount, or filesystem mark will result in the error \fBEINVAL\fP. An fanotify group that was initialized with flag \fBFAN_REPORT_MNT\fP and the mark flag \fBFAN_MARK_MNTNS\fP are required. An additional information record of type \fBFAN_EVENT_INFO_TYPE_MNT\fP is returned with the event. See \fBfanotify\fP(7) for additional details. .TP \fBFAN_FS_ERROR\fP (since Linux 5.16, 5.15.154, and 5.10.220) .\" commit 9709bd548f11a092d124698118013f66e1740f9b Create an event when a filesystem error leading to inconsistent filesystem metadata is detected. An additional information record of type \fBFAN_EVENT_INFO_TYPE_ERROR\fP is returned for each event in the read buffer. An fanotify group that identifies filesystem objects by file handles is required. Events of such type are dependent on support from the underlying filesystem. At the time of writing, only the \fBext4\fP filesystem reports \fBFAN_FS_ERROR\fP events. See \fBfanotify\fP(7) for additional details. .TP \fBFAN_OPEN_PERM\fP Créer un événement quand une permission d’ouvrir un fichier ou un répertoire est demandée. Un descripteur de fichier fanotify créé avec \fBFAN_CLASS_PRE_CONTENT\fP ou \fBFAN_CLASS_CONTENT\fP est nécessaire. .TP \fBFAN_OPEN_EXEC_PERM\fP (depuis Linux 5.0) .\" commit 66917a3130f218dcef9eeab4fd11a71cd00cd7c9 Créer un événement quand une permission d’ouvrir un fichier en exécution est demandée. Un descripteur de fichier fanotify créé avec \fBFAN_CLASS_PRE_CONTENT\fP ou \fBFAN_CLASS_CONTENT\fP est nécessaire. Voir les NOTES pour des détails supplémentaires. .TP \fBFAN_ACCESS_PERM\fP Créer un événement quand une permission de lire un fichier ou un répertoire est demandée. Un descripteur de fichier fanotify créé avec \fBFAN_CLASS_PRE_CONTENT\fP ou \fBFAN_CLASS_CONTENT\fP est nécessaire. .TP \fBFAN_PRE_ACCESS\fP (since Linux 6.14) .\" commit 4f8afa33817a6420398d1c177c6e220a05081f51 Create an event before read or write access to a file range, that provides an opportunity for the event listener to modify the content of the file before access to the content in the specified range. An additional information record of type \fBFAN_EVENT_INFO_TYPE_RANGE\fP is returned for each event in the read buffer. An fanotify file descriptor created with \fBFAN_CLASS_PRE_CONTENT\fP is required. .TP \fBFAN_ONDIR\fP Créer des événements pour les répertoires — par exemple quand \fBopendir\fP(3), \fBreaddir\fP(3) (mais voir BOGUES) et \fBclosedir\fP(3) sont appelés. Sans cet attribut, les événements ne sont créés que pour les fichiers. Dans le contexte des événements d’entrée de répertoire tels que \fBFAN_CREATE\fP, \fBFAN_DELETE\fP, \fBFAN_MOVED_FROM\fP et \fBFAN_MOVED_TO\fP, il est nécessaire d'indiquer le drapeau \fBFAN_ONDIR\fP afin de créer des événements quand des entrées de sous\-répertoire sont modifiées (à savoir \fBmkdir\fP(2) ou \fBrmdir\fP(2)). .TP \fBFAN_EVENT_ON_CHILD\fP Des événements pour les enfants directs des répertoires marqués seront créés. L’attribut n’a pas d’effet lors du marquage de montages ou de systèmes de fichiers. Remarquez qu’aucun événement n’est créé pour les enfants des sous\-répertoires des répertoires marqués. De manière plus spécifique, les événements de modification d’entrée d'un répertoire \fBFAN_CREATE\fP, \fBFAN_DELETE\fP, \fBFAN_MOVED_FROM\fP et \fBFAN_MOVED_TO\fP ne sont pas générés pour des modifications effectuées dans les sous\-répertoires de répertoires marqués. Remarquez que les événements \fBFAN_DELETE_SELF\fP et \fBFAN_MOVE_SELF\fP ne sont pas générés pour les enfants de répertoires marqués. Pour surveiller des arborescences complètes de répertoires, le montage ou le système de fichiers adéquat doit être marqué. .P Les valeurs composées suivantes sont définies : .TP \fBFAN_CLOSE\fP Un fichier est fermé (\fBFAN_CLOSE_WRITE\fP|\fBFAN_CLOSE_NOWRITE\fP). .TP \fBFAN_MOVE\fP Un fichier ou un répertoire a été déplacé (\fBFAN_MOVED_FROM\fP|\fBFAN_MOVED_TO\fP). .P The filesystem object to be marked is determined by the file descriptor \fIdirfd\fP and the pathname specified in \fIpath\fP: .IP \- 3 If \fIpath\fP is NULL, \fIdirfd\fP defines the filesystem object to be marked. .IP \- If \fIpath\fP is NULL, and \fIdirfd\fP takes the special value \fBAT_FDCWD\fP, the current working directory is to be marked. .IP \- si \fIpath\fP est absolu, il définit l’objet de système de fichiers à marquer et \fIdirfd\fP est ignoré ; .IP \- If \fIpath\fP is relative, and \fIdirfd\fP does not have the value \fBAT_FDCWD\fP, then the filesystem object to be marked is determined by interpreting \fIpath\fP relative the directory referred to by \fIdirfd\fP. .IP \- If \fIpath\fP is relative, and \fIdirfd\fP has the value \fBAT_FDCWD\fP, then the filesystem object to be marked is determined by interpreting \fIpath\fP relative to the current working directory. (See \fBopenat\fP(2) for an explanation of why the \fIdirfd\fP argument is useful.) .SH "VALEUR RENVOYÉE" S'il réussit, \fBfanotify_mark\fP() renvoie \fB0\fP. En cas d'erreur, il renvoie \fB\-1\fP et remplit \fIerrno\fP avec la valeur d'erreur. .SH ERREURS .TP \fBEBADF\fP Un descripteur de fichier incorrect a été passé dans \fIfanotify_fd\fP. .TP \fBEBADF\fP \fIpath\fP est relatif mais \fIdirfd\fP n'est ni \fBAT_FDWCD\fP ni un descripteur de fichier valable. .TP \fBEEXIST\fP The filesystem object indicated by \fIdirfd\fP and \fIpath\fP has a mark that was updated without the \fBFAN_MARK_EVICTABLE\fP flag, and the user attempted to update the mark with \fBFAN_MARK_EVICTABLE\fP flag. .TP \fBEEXIST\fP The filesystem object indicated by \fIdirfd\fP and \fIpath\fP has a mark that was updated with the \fBFAN_MARK_IGNORE\fP flag, and the user attempted to update the mark with \fBFAN_MARK_IGNORED_MASK\fP flag. .TP \fBEEXIST\fP The filesystem object indicated by \fIdirfd\fP and \fIpath\fP has a mark that was updated with the \fBFAN_MARK_IGNORE\fP and \fBFAN_MARK_IGNORED_SURV_MODIFY\fP flags, and the user attempted to update the mark only with \fBFAN_MARK_IGNORE\fP flag. .TP \fBEINVAL\fP Une valeur incorrecte a été passée dans \fIflags\fP ou \fImask\fP, ou \fIfanotify_fd\fP n'était pas un descripteur de fichier fanotify. .TP \fBEINVAL\fP Le descripteur de fichier fanotify a été ouvert avec \fBFAN_CLASS_NOTIF\fP ou le groupe fanotify identifie des systèmes de fichiers par des identificateurs de fichier et le masque contient un attribut pour des événements de permission (\fBFAN_OPEN_PERM\fP ou \fBFAN_ACCESS_PERM\fP). .TP \fBEINVAL\fP Le groupe a été initialisé sans \fBFAN_REPORT_FID\fP mais un ou plusieurs types d'événements indiqués dans \fImask\fP en ont besoin. .TP \fBEINVAL\fP \fIflags\fP contient \fBFAN_MARK_IGNORE\fP et soit \fBFAN_MARK_MOUNT\fP ou \fBFAN_MARK_FILESYSTEM\fP, mais il ne contient pas \fBFAN_MARK_IGNORED_SURV_MODIFY\fP. .TP \fBEISDIR\fP \fIflags\fP contains \fBFAN_MARK_IGNORE\fP, but does not contain \fBFAN_MARK_IGNORED_SURV_MODIFY\fP, and \fIdirfd\fP and \fIpath\fP specify a directory. .TP \fBENODEV\fP .\" commit 30ad1938326bf9303ca38090339d948975a626f5 The filesystem object indicated by \fIdirfd\fP and \fIpath\fP is associated with a filesystem that reports zero \fIfsid\fP (e.g., \fBfuse\fP(4)). This error can be returned only with an fanotify group that identifies filesystem objects by file handles. Since Linux 6.8, this error can be returned when trying to add a mount or filesystem mark. .TP \fBENOENT\fP The filesystem object indicated by \fIdirfd\fP and \fIpath\fP does not exist. This error also occurs when trying to remove a mark from an object that is not marked. .TP \fBENOMEM\fP La mémoire nécessaire n’a pas pu être allouée. .TP \fBENOSPC\fP Le nombre de marques pour cet utilisateur dépasse la limite et l’attribut \fBFAN_UNLIMITED_MARKS\fP n’était pas indiqué quand le descripteur de fichier fanotify a été créé avec \fBfanotify_init\fP(2). Voir \fBfanotify\fP(7) pour des détails sur cette limite. .TP \fBENOSYS\fP Ce noyau n’implémente pas \fBfanotify_mark\fP(). L’interface de programmation fanotify n'est disponible que si le noyau a été configuré avec \fBCONFIG_FANOTIFY\fP. .TP \fBENOTDIR\fP \fIflags\fP contains \fBFAN_MARK_ONLYDIR\fP, and \fIdirfd\fP and \fIpath\fP do not specify a directory. .TP \fBENOTDIR\fP \fImask\fP contains \fBFAN_RENAME\fP, and \fIdirfd\fP and \fIpath\fP do not specify a directory. .TP \fBENOTDIR\fP \fIflags\fP contains \fBFAN_MARK_IGNORE\fP, or the fanotify group was initialized with flag \fBFAN_REPORT_TARGET_FID\fP, and \fImask\fP contains directory entry modification events (e.g., \fBFAN_CREATE\fP, \fBFAN_DELETE\fP), or directory event flags (e.g., \fBFAN_ONDIR\fP, \fBFAN_EVENT_ON_CHILD\fP), and \fIdirfd\fP and \fIpath\fP do not specify a directory. .TP \fBEOPNOTSUPP\fP .\" commit 96b2b072ee62be8ae68c8ecf14854c4d0505a8f8 The object indicated by \fIpath\fP is associated with a filesystem that does not support the encoding of file handles. This error can be returned only with an fanotify group that identifies filesystem objects by file handles. Calling \fBname_to_handle_at\fP(2) with the flag \fBAT_HANDLE_FID\fP (since Linux 6.5) can be used as a test to check if a filesystem supports reporting events with file handles. .TP \fBEPERM\fP L’opération n’est pas permise car l’appelant n’a pas la capacité requise. .TP \fBEXDEV\fP .\" commit 30ad1938326bf9303ca38090339d948975a626f5 .\" commit 30ad1938326bf9303ca38090339d948975a626f5 The filesystem object indicated by \fIpath\fP resides within a filesystem subvolume (e.g., \fBbtrfs\fP(5)) which uses a different \fIfsid\fP than its root superblock. This error can be returned only with an fanotify group that identifies filesystem objects by file handles. Since Linux 6.8, this error will be returned when trying to add a mount or filesystem mark on a subvolume, when trying to add inode marks in different subvolumes, or when trying to add inode marks in a \fBbtrfs\fP(5) subvolume and in another filesystem. Since Linux 6.8, this error will also be returned when trying to add marks in different filesystems, where one of the filesystems reports zero \fIfsid\fP (e.g., \fBfuse\fP(4)). .SH NORMES Linux. .SH HISTORIQUE .\" was introduced in Linux 2.6.36 and enabled in Linux 2.6.37. Linux 2.6.37. .SH NOTES .SS "FAN_OPEN_EXEC et FAN_OPEN_EXEC_PERM" Quand on utilise \fBFAN_OPEN_EXEC\fP ou \fBFAN_OPEN_EXEC_PERM\fP dans le \fImask\fP, des événements de ces types ne seront renvoyés que lorsque l'exécution directe d'un programme se produit. Plus particulièrement, cela signifie que les événements de ces types seront créés pour les fichiers ouverts en utilisant \fBexecve\fP(2), \fBexecveat\fP(2) ou \fBuselib\fP(2). Les événements de ces types n'apparaîtront pas quand un interpréteur est passé pour interprétation d'un fichier (ou s'il est en cours de lecture). .P De plus, si une marque a aussi été placée sur l'éditeur de liens dynamiques de Linux, un utilisateur doit s'attendre aussi à recevoir un événement associé quand un objet ELF a été ouvert avec succès en utilisant \fBexecve\fP(2) ou \fBexecveat\fP(2). .P Par exemple, si le binaire ELF suivant devait être appelé et si une marque \fBFAN_OPEN_EXEC\fP a été placée sur \fI/\fP : .P .in +4n .EX $ /bin/echo toto .EE .in .P Dans ce cas, l'application à l'écoute devrait recevoir des événements \fBFAN_OPEN_EXEC\fP, respectivement pour le binaire ELF et pour l'interpréteur : .P .in +4n .EX /bin/echo /lib64/ld\-linux\-x86\-64.so.2 .EE .in .SH BOGUES Les bogues suivants étaient présents avant Linux 3.16 : .IP \- 3 .\" Fixed by commit 0a8dd2db579f7a0ac7033d6b857c3d5dbaa77563 If \fIflags\fP contains \fBFAN_MARK_FLUSH\fP, \fIdirfd\fP, and \fIpath\fP must specify a valid filesystem object, even though this object is not used. .IP \- .\" Fixed by commit d4c7cf6cffb1bc711a833b5e304ba5bcfe76398b \fBreaddir\fP(2) ne crée pas d’événement \fBFAN_ACCESS\fP ; .IP \- .\" Fixed by commit cc299a98eb13a9853675a9cbb90b30b4011e1406 si \fBfanotify_mark\fP() est appelé avec \fBFAN_MARK_FLUSH\fP, les valeurs incorrectes de \fIflags\fP ne sont pas vérifiées. .SH "VOIR AUSSI" \fBfanotify_init\fP(2), \fBfanotify\fP(7) .PP .SH TRADUCTION La traduction française de cette page de manuel a été créée par Christophe Blaess , Stéphan Rafin , Thierry Vignaud , François Micaux, Alain Portal , Jean-Philippe Guérard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas François , Florentin Duneau , Simon Paillard , Denis Barbier , David Prévot et Jean-Philippe MENGUAL . .PP Cette traduction est une documentation libre ; veuillez vous reporter à la .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License version 3 .UE concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE. .PP Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à .MT debian-l10n-french@lists.debian.org .ME .