proc_pid_fdinfo
Table des matières
Retour à l'index
NOM
/proc/pid/fdinfo/ - Informations sur les descripteurs de fichier
DESCRIPTION
- /proc/pid/fdinfo/ (depuis Linux 2.6.22)
-
Il s'agit d'un sous-répertoire contenant un enregistrement pour chaque
fichier ouvert par le processus, nommé par son descripteur de fichier. Les
fichiers dans ce répertoire ne sont lisibles que par le propriétaire du
processus. Le contenu de chaque fichier peut être lu afin d'obtenir des
informations sur le descripteur de fichier correspondant. Le contenu dépend
du type de fichier référencé par le descripteur de fichier correspondant.
-
Pour les fichiers normaux et les répertoires, on aura quelque chose du
style :
-
$ cat /proc/12015/fdinfo/4
pos: 1000
flags: 01002002
mnt_id: 21
-
Les champs sont les suivants :
-
- pos
-
C’est un nombre décimal affichant le décalage dans le fichier.
- flags
-
C’est un nombre octal affichant le mode d’accès au fichier et les drapeaux
d’états du fichier (consulter open(2)). Si le drapeau « close-on-exec »
de descripteur de fichier est défini, alors drapeaux inclura aussi la
valeur O_CLOEXEC.
-
Avant Linux 3.1, ce champ affichait de manière incorrecte la valeur de
O_CLOEXEC au moment où le fichier était ouvert à la place de la valeur en
cours du drapeau « close-on-exec ».
- mnt_id
-
Ce champ, présent depuis Linux 3.15, est l’ID du montage contenant ce
fichier. Consulter la description de /proc/pid/mountinfo.
-
Pour les descripteurs de fichier eventfd (consulter eventfd(2)), les
champs suivants (depuis Linux 3.8) sont affichés :
-
pos: 0
flags: 02
mnt_id: 10
eventfd-count: 40
-
eventfd-count est la valeur en cours du compteur eventfd, en hexadécimal.
-
Pour les descripteurs de fichier epoll (consulter epoll(7)), les champs
suivants (depuis Linux 3.8) sont affichés :
-
pos: 0
flags: 02
mnt_id: 10
tfd: 9 events: 19 data: 74253d2500000009
tfd: 7 events: 19 data: 74253d2500000007
-
Chacune des lignes commençant par tfd décrivent un des descripteurs de
fichier supervisés à travers le descripteur de fichier epoll (consulter
epoll_ctl(2) pour plus de détails). Le champ tfd est le numéro du
descripteur de fichier. Le champ events est un masque hexadécimal des
évènements supervisés pour ce descripteur de fichier. Le champ data est
la valeur des données associées à ce descripteur de fichier.
-
Pour les descripteurs de fichier signalfd (consulter signalfd(2)), les
champs suivants (depuis Linux 3.8) sont affichés :
-
pos: 0
flags: 02
mnt_id: 10
sigmask: 0000000000000006
-
sigmask est le masque hexadécimal de signaux qui sont acceptés à l’aide
du descripteur de fichier signalfd (dans cet exemple, les bits 2 et 3 sont
définis, correspondant aux signaux SIGINT et SIGQUIT. Consulter
signal(7)).
-
Pour les descripteurs de fichier inotify (consulter inotify(7)), les
champs suivants (depuis Linux 3.8) sont affichés :
-
pos: 0
flags: 00
mnt_id: 11
inotify wd:2 ino:7ef82a sdev:800001 mask:800afff ignored_mask:0 fhandle-bytes:8 fhandle-type:1 f_handle:2af87e00220ffd73
inotify wd:1 ino:192627 sdev:800001 mask:800afff ignored_mask:0 fhandle-bytes:8 fhandle-type:1 f_handle:27261900802dfd73
-
Chacune des lignes commençant par « inotify » affiche des informations sur
un fichier ou un répertoire qui est en cours de supervision. Les champs dans
ce genre de ligne sont les suivants :
-
- wd
-
numéro du descripteur de fichier supervisé (en décimal) ;
- ino
-
numéro d’inœud du fichier cible (en hexadécimal) ;
- sdev
-
ID du périphérique dans lequel réside le fichier (en hexadécimal) ;
- mask
-
le masque d’évènements supervisés pour le fichier cible (en hexadécimal).
-
Si le noyau a été construit avec la prise en charge d’exportfs, le chemin du
fichier cible est exposé sous forme de gestionnaire de fichiers à travers
trois champs hexadécimaux : fhandle-bytes, fhandle-type et
f_handle.
-
Pour les descripteurs de fichier fanotify (consulter fanotify(7)), les
champs suivants (depuis Linux 3.8) sont affichés :
-
pos: 0
flags: 02
mnt_id: 11
fanotify flags:0 event-flags:88002
fanotify ino:19264f sdev:800001 mflags:0 mask:1 ignored_mask:0 fhandle-bytes:8 fhandle-type:1 f_handle:4f261900a82dfd73
-
La quatrième ligne affiche des informations définies lors de la création du
groupe à travers fanotify_init(2) :
-
- flags
-
l’argument flags indiqué à fanotify_init(2) (exprimé en hexadécimal) ;
- event-flags
-
l’argument event_f_flags indiqué à fanotify_init(2) (exprimé en
hexadécimal).
-
Chaque ligne supplémentaire montrée dans le fichier contient des
informations sur une des marques dans le groupe fanotify. La plupart de ces
champs sont comme pour inotify, sauf :
-
- mflags
-
les drapeaux associés à la marque (exprimé en hexadécimal) ;
- mask
-
le masque des évènements pour cette marque (exprimé en hexadécimal) ;
- ignored_mask
-
le masque d’évènements ignorés pour cette marque (exprimé en hexadécimal).
-
Pour plus de détails sur ces champs, consulter fanotify_mark(2).
-
Pour les descripteurs de fichier timerfd (consulter timerfd(2)), les
champs suivants (depuis Linux 3.17) sont affichés :
-
pos: 0
flags: 02004002
mnt_id: 13
clockid: 0
ticks: 0
settime flags: 03
it_value: (7695568592, 640020877)
it_interval: (0, 0)
-
- clockid
-
C’est la valeur numérique de l’ID d’horloge (correspondant à une des
constantes CLOCK_* définie à l’aide de <time.h>) qui est
utilisée pour marquer la progression du temporisateur (dans cet exemple, 0
est CLOCK_REALTIME).
- ticks
-
C’est le nombre d’expirations du temporisateur qui se sont produites
(c’est-à-dire la valeur que read(2) exécuté sur lui renverrait).
- settime flags
-
Ce champ liste les drapeaux avec lesquels le timerfd a été dernièrement armé
(consulter timerfd_settime(2)), en octal (dans cet exemple,
TFD_TIMER_ABSTIME et TFD_TIMER_CANCEL_ON_SET sont définis).
- it_value
-
Ce champ contient la durée avant la prochaine expiration du temporisateur
exprimée en secondes et nanosecondes. Cela est toujours exprimé comme valeur
relative, même si le temporisateur a été créé en utilisant le drapeau
TFD_TIMER_ABSTIME.
- it_interval
-
Ce champ contient l’intervalle du temporisateur, en secondes et nanosecondes
(les champs it_value et it_interval contiennent les valeurs que
timerfd_gettime(2) sur ce descripteur de fichier renverrait).
VOIR AUSSI
proc(5)
TRADUCTION
La traduction française de cette page de manuel a été créée par
Christophe Blaess <https://www.blaess.fr/christophe/>,
Stéphan Rafin <stephan.rafin@laposte.net>,
Thierry Vignaud <tvignaud@mandriva.com>,
François Micaux,
Alain Portal <aportal@univ-montp2.fr>,
Jean-Philippe Guérard <fevrier@tigreraye.org>,
Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>,
Julien Cristau <jcristau@debian.org>,
Thomas Huriaux <thomas.huriaux@gmail.com>,
Nicolas François <nicolas.francois@centraliens.net>,
Florentin Duneau <fduneau@gmail.com>,
Simon Paillard <simon.paillard@resel.enst-bretagne.fr>,
Denis Barbier <barbier@debian.org>,
David Prévot <david@tilapin.org>,
Jean-Paul Guillonneau <guillonneau.jeanpaul@free.fr>
et
Lucien Gentis <lucien.gentis@waika9.com>
Cette traduction est une documentation libre ; veuillez vous reporter à la
GNU General Public License version 3
concernant les conditions de copie et
de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel,
veuillez envoyer un message à
Index
- NOM
-
- DESCRIPTION
-
- VOIR AUSSI
-
- TRADUCTION
-
This document was created by
man2html,
using the manual pages.
Time: 05:06:34 GMT, September 19, 2025