Provided by: manpages-fr_4.27.0-1_all bug

NOM

       /proc/pid/fd/ - Descripteurs de fichier

DESCRIPTION

       /proc/pid/fd/
              Il  s'agit  d'un  sous-répertoire  contenant  un  enregistrement pour chaque fichier ouvert par le
              processus. Chaque enregistrement a le descripteur du fichier pour nom, et est un  lien  symbolique
              vers  le  vrai  fichier.  Ainsi,  0 correspond à l'entrée standard, 1 à la sortie standard, 2 à la
              sortie d'erreur, etc.

              Pour les descripteurs de fichier de tubes et de sockets,  les  enregistrements  seront  des  liens
              symboliques  dont  le  contenu est le type de fichier avec l’inœud. Un appel de readlink(2) sur ce
              fichier renvoie une chaîne au format :

                  type:[inœud]

              Par exemple, socket:[2248868] sera un socket et son inœud est 2248868. Pour les sockets, cet inœud
              permet de trouver plus de renseignements dans un des fichiers de /proc/net/.

              Pour les descripteurs de fichier sans inœud correspondant (par exemple les descripteurs de fichier
              produits   par   bpf(2),   epoll_create(2),   eventfd(2),   inotify_init(2),   perf_event_open(2),
              signalfd(2),  timerfd_create(2)  et userfaultfd(2)), l’enregistrement sera un lien symbolique avec
              un contenu de la forme :

                  anon_inode:type_fichier

              Dans de nombreux cas (mais pas tous), le type_fichier est entouré de crochets.

              Par exemple, un descripteur de fichier epoll aura un lien symbolique dont le contenu est la chaîne
              anon_inode:[eventpoll].

              Dans un processus multithread, le contenu de ce répertoire n'est pas disponible  si  le  processus
              principal est déjà terminé (typiquement par l'appel de pthread_exit(3)).

              Les programmes qui prennent un nom de fichier comme paramètre de la ligne de commande, mais qui ne
              prennent  pas  leur  entrée sur l'entrée standard si aucun paramètre n'est fourni, ou qui écrivent
              dans un fichier indiqué par un paramètre de la ligne de commande sans envoyer  la  sortie  sur  la
              sortie  standard  si aucun paramètre n'est fourni, peuvent néanmoins utiliser l'entrée standard et
              la sortie standard par l'intermédiaire des fichiers  /proc/pid/fd  comme  arguments  de  ligne  de
              commande. Par exemple, en supposant que l'option -i indique le nom du fichier d'entrée et l'option
              -o le nom du fichier de sortie :

                  $ tototiti -i /proc/self/fd/0 -o /proc/self/fd/1 ...

              et vous avez alors réalisé un filtre fonctionnel.

              /proc/self/fd/N  est approximativement identique à /dev/fd/N sur certains systèmes UNIX ou de type
              UNIX.  En  fait,  la  plupart  des  scripts  MAKEDEV  de  Linux  lient  symboliquement  /dev/fd  à
              /proc/self/fd.

              La  plupart des systèmes fournissent les liens symboliques /dev/stdin, /dev/stdout et /dev/stderr,
              qui sont respectivement liés aux fichiers 0, 1 et 2 de /proc/self/fd.  Par  conséquent,  l'exemple
              précédent peut être écrit de la façon suivante :

                  $ tototiti -i /dev/stdin -o /dev/stdout ...

              La  permission  de  déréférencer ou de lire (readlink(2)) ces liens symboliques dans ce répertoire
              est régie par une  vérification  du  mode  d’accès  ptrace  PTRACE_MODE_READ_FSCREDS  ;  consulter
              ptrace(2).

              Remarquez  que  pour  les  descripteurs  de fichier référençant des inœuds (tubes et sockets, voir
              ci-dessus), ces inœuds ont toujours les bits de  permission  et  les  informations  d’appartenance
              distincts  de ceux de l’enregistrement /proc/pid/fd, et le propriétaire peut être différent des ID
              utilisateur et groupe du processus. Un processus non privilégié peut ne pas avoir les  permissions
              suffisantes pour les ouvrir, comme dans cet exemple :

                  $ echo test | sudo -u nobody cat
                  test
                  $ echo test | sudo -u nobody cat /proc/self/fd/0
                  cat: /proc/self/fd/0: Permission denied

              Le  descripteur  de fichier 0 se réfère au tube créé par l’interpréteur et ayant pour propriétaire
              cet utilisateur d’interpréteur, qui est nobody, aussi cat  n’a  pas  la  permission  de  créer  un
              nouveau  descripteur  de fichier pour lire cet inœud, même s’il peut toujours lire à partir de son
              descripteur de fichier 0 existant.

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 à
       debian-l10n-french@lists.debian.org.

Pages du manuel de Linux 6.9.1                     2 mai 2024                                     proc_pid_fd(5)