perkamon - en to fr translation catalogue (65 entries)

note: type: TH
en: 2017-09-15
fr: 15 septembre 2017

note: type: TH
en: Linux Programmer's Manual
fr: Manuel du programmeur Linux

note: type: SH
en: NAME
fr: NOM

note: type: Plain text
en: utimensat, futimens - change file timestamps with nanosecond precision
fr: utimensat, futimens - Modifier les horodatages d'un fichier avec une précision d'une nanoseconde

note: type: Plain text
en: B<#include E<lt>fcntl.hE<gt> /* Definition of AT_* constants */>
    B<#include E<lt>sys/stat.hE<gt>>
fr: B<#include E<lt>fcntl.hE<gt> /* Définition des constantes AT_* */>
    B<#include E<lt>sys/stat.hE<gt>>

note: type: Plain text
en: Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):
fr: Exigences de macros de test de fonctionnalités pour la glibc (consultez B<feature_test_macros>(7)) :

note: type: TP
en: Since glibc 2.10:
fr: Depuis la glibc 2.10 :

note: type: TP
en: Before glibc 2.10:
fr: Avant la glibc 2.10 :

note: type: Plain text
en: B<utimensat>()  and B<futimens>()  update the timestamps of a file with nanosecond precision.  This contrasts with the historical B<utime>(2)  and B<utimes>(2), which permit only second and microsecond precision, respectively, when setting file timestamps.
fr: B<utimensat>() et B<futimens>() mettent à jour les horodatages d'un fichier avec une précision d'une nanoseconde. Ceci change de l'appel historique ou de B<utimes>(2), qui permettent seulement une précision d'une seconde et d'une microseconde respectivement pour l'établissement des horodatages de fichier.

note: type: Plain text
en: With B<utimensat>()  the file is specified via the pathname given in I<pathname>.  With B<futimens>()  the file whose timestamps are to be updated is specified via an open file descriptor, I<fd>.
fr: Avec B<utimensat>(), le fichier est indiqué à l'aide du chemin fournit dans I<pathname>. Avec B<futimens>(), le fichier dont les horodatages doit être mis à jour est indiqué par un descripteur de fichier ouvert, I<fd>.

note: type: Plain text
en: For both calls, the new file timestamps are specified in the array I<times>: I<times>[0] specifies the new "last access time" (I<atime>); I<times>[1] specifies the new "last modification time" (I<mtime>).  Each of the elements of I<times> specifies a time as the number of seconds and nanoseconds since the Epoch, 1970-01-01 00:00:00 +0000 (UTC).  This information is conveyed in a structure of the following form:
fr: Pour les deux appels, les nouveaux horodatages de fichier sont indiqués dans le tableau I<times> : I<times>[0] indique l'horodatage du dernier accès (I<atime>) ; I<times>[1] indique l'horodatage de la dernière modification (I<mtime>). Chaque élément de I<times> indique une date par un nombre de secondes et de nanosecondes depuis l'époque (1er\ janvier 1970 à\ 00:00:00 UTC). Cette information est transmise dans une structure de la forme suivante :

note: type: Plain text
en: struct timespec {
        time_t tv_sec;        /* seconds */
        long   tv_nsec;       /* nanoseconds */
    };
fr: struct timespec {
        time_t tv_sec;        /* secondes     */
        long   tv_nsec;       /* nanosecondes */
    };

note: type: Plain text
en: Updated file timestamps are set to the greatest value supported by the filesystem that is not greater than the specified time.
fr: L'horodatage mis à jour pour le fichier est configuré à la valeur la plus importante gérée par le système de fichiers et qui n'est pas supérieure à l'horodatage fourni

note: 2.6.22 was broken: it is not ignored type: Plain text
en: If the I<tv_nsec> field of one of the I<timespec> structures has the special value B<UTIME_NOW>, then the corresponding file timestamp is set to the current time.  If the I<tv_nsec> field of one of the I<timespec> structures has the special value B<UTIME_OMIT>, then the corresponding file timestamp is left unchanged.  In both of these cases, the value of the corresponding I<tv_sec> field is ignored.
fr: Si le champ I<tv_nsec> d'une des structures I<timespec> prend la valeur particulière B<UTIME_NOW>, alors l'horodatage correspondant du fichier est défini à l'heure actuelle. Si le champ I<tv_nsec> d'une des structures I<timespec> prend la valeur particulière B<UTIME_OMIT>, alors l'horodatage correspondant du fichier reste inchangé. Dans ces deux cas, la valeur du champ I<tv_sec> est ignoré.

note: type: Plain text
en: If I<times> is NULL, then both timestamps are set to the current time.
fr: Si I<times> est NULL, les deux horodatages sont définis à l'heure actuelle.

note: type: SS
en: Permissions requirements
fr: Droits d'accès nécessaires

note: type: Plain text
en: To set both file timestamps to the current time (i.e., I<times> is NULL, or both I<tv_nsec> fields specify B<UTIME_NOW>), either:
fr: Pour définir les deux horodatages à l'heure actuelle (c'est-à-dire quand I<times> vaut NULL ou que les deux champs I<tv_nsec> valent B<UTIME_NOW>), il faut :

note: 2.6.22 was broken here -- for futimens() the check is based on whether or not the file descriptor is writable, not on whether the caller's effective UID has write permission for the file referred to by the descriptor. type: Plain text
en: the caller must have write access to the file;
fr: soit que l'utilisateur ait les droits d'écriture sur le fichier ;

note: type: Plain text
en: the caller's effective user ID must match the owner of the file; or
fr: soit que l'identifiant effectif de l'appelant corresponde au propriétaire du fichier ;

note: type: Plain text
en: the caller must have appropriate privileges.
fr: ou que le processus appelant ait les privilèges nécessaires.

note: 2.6.22 was broken here: both must be something other than *either* UTIME_OMIT *or* UTIME_NOW. type: Plain text
en: To make any change other than setting both timestamps to the current time (i.e., I<times> is not NULL, and neither I<tv_nsec> field is B<UTIME_NOW> and neither I<tv_nsec> field is B<UTIME_OMIT>), either condition 2 or 3 above must apply.
fr: Pour pouvoir effectuer d'autres changements que de définir les horodatage à l'heure actuelle (c'est-à-dire quand I<times> n'est pas NULL et que ni le champ I<tv_nsec> ne vaut B<UTIME_NOW> ni le champ I<tv_nsec> ne vaut B<UTIME_OMIT>), les conditions 2 ou 3 ci-dessus s'appliquent.

note: type: Plain text
en: If both I<tv_nsec> fields are specified as B<UTIME_OMIT>, then no file ownership or permission checks are performed, and the file timestamps are not modified, but other error conditions may still be detected.
fr: Si les deux champs I<tv_nsec> valent B<UTIME_OMIT>, aucune vérification n'est effectuée sur le propriétaire ou les permissions et les horodatages ne sont pas modifiés, mais les autres situations d'erreur sont toujours détectées.

note: type: SS
en: utimensat() specifics
fr: Spécificités de utimensat()

note: type: Plain text
en: If I<pathname> is relative, then by default it is interpreted relative to the directory referred to by the open file descriptor, I<dirfd> (rather than relative to the current working directory of the calling process, as is done by B<utimes>(2)  for a relative pathname).  See B<openat>(2)  for an explanation of why this can be useful.
fr: Si le chemin donné dans I<pathname> est relatif, il est par défaut interprété par rapport au répertoire référencé par le descripteur de fichier ouvert I<dirfd> (plutôt que par rapport au répertoire courant du processus, comme pour B<utimes>(2) pour les chemins relatifs). Consultez B<openat>(2) pour avoir les raisons pour lesquelles ceci peut être utile.

note: type: Plain text
en: If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, then I<pathname> is interpreted relative to the current working directory of the calling process (like B<utimes>(2)).
fr: Si I<pathname> est un chemin relatif, et si I<dirfd> a la valeur spéciale B<AT_FDCWD>, alors I<pathname> est interprété par rapport au répertoire courant du processus appelant, comme dans B<utimes>(2).

note: type: Plain text
en: If I<pathname> is absolute, then I<dirfd> is ignored.
fr: Si I<pathname> est un chemin absolu, I<dirfd> est ignoré.

note: type: Plain text
en: The I<flags> field is a bit mask that may be 0, or include the following constant, defined in I<E<lt>fcntl.hE<gt>>:
fr: Le champ I<flags> est un champ de bits qui peut être nul ou inclure les constantes suivantes, définies dans I<E<lt>fcntl.hE<gt>> :

note: type: Plain text
en: If I<pathname> specifies a symbolic link, then update the timestamps of the link, rather than the file to which it refers.
fr: Si I<pathname> indique un lien symbolique, alors mettre à jour l'horodatage du lien, plutôt que le fichier pointé.

note: type: SH
en: RETURN VALUE
fr: VALEUR DE RETOUR

note: type: Plain text
en: On success, B<utimensat>()  and B<futimens>()  return 0.  On error, -1 is returned and I<errno> is set to indicate the error.
fr: S'ils réussissent les appels B<utimensat>() et B<futimens>() renvoient zéro, sinon ils renvoient -1 et remplissent I<errno> avec le code d'erreur.

note: type: SH
en: ERRORS
fr: ERREURS

note: But Linux 2.6.22 was broken here. Traditionally, utime()/utimes() gives the error EACCES for the case where the timestamp pointer argument is NULL (i.e., set both timestamps to the current time), and the file is owned by a user other than the effective UID of the caller, and the file is not writable
en: the effective user ID of the caller does not match the owner of the file, the caller does not have write access to the file, and the caller is not privileged (Linux: does not have either the B<CAP_FOWNER> or the B<CAP_DAC_OVERRIDE> capability); or,
fr: l'identifiant de l'utilisateur effectif de l'appelant ne correspond pas au propriétaire du fichier, l'appelant n'a pas la permission d'écriture sur le fichier et l'appelant n'est pas privilégié (Linux : n'a ni la capacité B<CAP_FOWNER>, ni la capacité B<CAP_DAC_OVERRIDE>) ; ou

note: EXT2_IMMUTABLE_FL and similar flags for other filesystems. type: Plain text
en: the file is marked immutable (see B<chattr>(1)).
fr: le fichier est marqué comme étant immuable (consultez B<chattr>(1)).

note: type: Plain text
en: (B<futimens>())  I<fd> is not a valid file descriptor.
fr: (B<futimens>()) I<fd> n'est pas un descripteur de fichier valable.

note: type: Plain text
en: (B<utimensat>())  I<pathname> is a relative pathname, but I<dirfd> is neither B<AT_FDCWD> nor a valid file descriptor.
fr: (B<utimensat>()) I<pathname> est un chemin relatif, mais I<dirfd> n'est ni B<AT_FDCWD> ni un descripteur de fichier valable.

note: type: Plain text
en: I<times> pointed to an invalid address; or, I<dirfd> was B<AT_FDCWD>, and I<pathname> is NULL or an invalid address.
fr: I<times> pointe vers une adresse incorrecte ; ou I<dirfd> valait B<AT_FDCWD> et I<pathname> est NULL ou une adresse incorrecte.

note: type: Plain text
en: Invalid value in I<flags>.
fr: Valeur incorrecte dans I<flags>.

note: type: Plain text
en: Invalid value in one of the I<tv_nsec> fields (value outside range 0 to 999,999,999, and not B<UTIME_NOW> or B<UTIME_OMIT>); or an invalid value in one of the I<tv_sec> fields.
fr: Valeur incorrecte dans un des champs I<tv_nsec> (valeur en dehors de l'intervalle allant de 0 à 999.999.999 et ne valant ni B<UTIME_NOW> ni B<UTIME_OMIT>) ; ou une valeur incorrecte dans un des champs I<tv_sec>.

note: SUSv4 does not specify this error. type: Plain text
en: I<pathname> is NULL, I<dirfd> is not B<AT_FDCWD>, and I<flags> contains B<AT_SYMLINK_NOFOLLOW>.
fr: I<pathname> est NULL, I<dirfd> ne vaut pas B<AT_FDCWD> et I<flags> contient B<AT_SYMLINK_NOFOLLOW>.

note: type: Plain text
en: (B<utimensat>())  Too many symbolic links were encountered in resolving I<pathname>.
fr: (B<utimensat>()) Trop de liens symboliques ont été rencontrés en parcourant I<pathname>.

note: type: Plain text
en: (B<utimensat>())  I<pathname> is too long.
fr: (B<utimensat>()) I<pathname> est trop long.

note: type: Plain text
en: (B<utimensat>())  A component of I<pathname> does not refer to an existing directory or file, or I<pathname> is an empty string.
fr: (B<utimensat>()) Un élément du chemin d'accès I<pathname> ne correspond pas un répertoire ou àun fichier existant ou I<pathname> est une chaîne vide.

note: type: Plain text
en: (B<utimensat>())  I<pathname> is a relative pathname, but I<dirfd> is neither B<AT_FDCWD> nor a file descriptor referring to a directory; or, one of the prefix components of I<pathname> is not a directory.
fr: (B<utimensat>()) I<pathname> est un chemin relatif, mais I<dirfd> n'est ni B<AT_FDCWD> ni un descripteur de fichier correspondant à un répertoire ; ou l'un des composants au début de I<pathname> n'est pas un répertoire.

note: type: Plain text
en: the caller's effective user ID does not match the owner of file, and the caller is not privileged (Linux: does not have the B<CAP_FOWNER> capability); or,
fr: l'identifiant d'utilisateur effectif de l'appelant ne correspond pas au propriétaire du fichier et l'appelant n'est pas privilégié (Linux : n'a pas la capacité B<CAP_FOWNER>).

note: Linux 2.6.22 was broken here: it was not consistent with the old utimes() implementation, since the case when both tv_nsec fields are UTIME_NOW, was not treated like the (times == NULL) case. EXT2_IMMUTABLE_FL EXT_APPPEND_FL and similar flags for other filesystems. Why the inconsistency (which is de
en: the file is marked append-only or immutable (see B<chattr>(1)).
fr: le fichier est marqué comme n'acceptant que des ajouts ou est immuable (voir B<chattr>(1)).

note: type: Plain text
en: The file is on a read-only filesystem.
fr: Le fichier se trouve sur un système de fichiers en lecture seule.

note: type: Plain text
en: (B<utimensat>())  Search permission is denied for one of the prefix components of I<pathname>.
fr: (B<utimensat>()) Un élément au début du chemin d'accès I<pathname> ne permet pas le parcours.

note: type: Plain text
en: B<utimensat>()  was added to Linux in kernel 2.6.22; glibc support was added with version 2.6.
fr: B<utimensat>() a été ajouté à Linux dans le noyau 2.6.22 ; la glibc le gère depuis la version 2.6.

note: type: Plain text
en: Support for B<futimens>()  first appeared in glibc 2.6.
fr: La prise en charge de B<futimens>() est apparu dans la glibc 2.6.

note: type: SH
en: ATTRIBUTES
fr: ATTRIBUTS

note: type: tbl table
en: Value
fr: Valeur

note: type: SH
en: CONFORMING TO
fr: CONFORMITÉ

note: type: Plain text
en: B<futimens>()  and B<utimensat>()  are specified in POSIX.1-2008.
fr: B<futimens>() et B<utimensat>() sont spécifiés dans POSIX.1-2008.

note: type: Plain text
en: B<utimensat>()  obsoletes B<futimesat>(2).
fr: B<utimensat>() rend B<futimesat>(2) obsolète.

note: type: Plain text
en: On Linux, timestamps cannot be changed for a file marked immutable, and the only change permitted for files marked append-only is to set the timestamps to the current time.  (This is consistent with the historical behavior of B<utime>(2)  and B<utimes>(2)  on Linux.)
fr: Sous Linux, les horodatages ne peuvent pas être modifiés pour un fichier marqué comme étant immuable, et la seule modification autorisée pour les fichier n'autorisant que des ajouts est de définir les horodatages à l'heure actuelle. (C'est cohérent avec le comportement historique de B<utime>(2) et de B<utimes>(2) sous Linux)

note: type: Plain text
en: On Linux, B<futimens>()  is a library function implemented on top of the B<utimensat>()  system call.  To support this, the Linux B<utimensat>()  system call implements a nonstandard feature: if I<pathname> is NULL, then the call modifies the timestamps of the file referred to by the file descriptor I<dirfd> (which may refer to any type of file).  Using this feature, the call I<futimens(fd,\ times)> is implemented as:
fr: Sous Linux, B<futimens>() est une fonction de bibliothèque implémentée à l'aide de l'appel système B<utimensat>(). Pour ceci, l'appel système B<utimensat>() de Linux implémente une fonctionnalité non standard : si I<pathname> est NULL, alors l'appel modifie les horodatages du fichier correspondant au descripteur de fichier I<dirfd> (qui peut correspondre à n'importe quel type de fichier). En utilisant cette fonctionnalité, l'appel I<futimens(fd,\ times)> est implémenté comme ceci :

note: type: SH
en: BUGS
fr: BOGUES

note: type: Plain text
en: Several bugs afflict B<utimensat>()  and B<futimens>()  on kernels before 2.6.26.  These bugs are either nonconformances with the POSIX.1 draft specification or inconsistencies with historical Linux behavior.
fr: Plusieurs bogues affectent B<utimensat>() et B<futimens>() sur les noyaux antérieurs à 2.6.26. Ces bogues sont soit des non conformités avec le brouillon de la spécification POSIX.1 soit des incohérences avec le comportement historique de Linux.

note: type: Plain text
en: POSIX.1 specifies that if one of the I<tv_nsec> fields has the value B<UTIME_NOW> or B<UTIME_OMIT>, then the value of the corresponding I<tv_sec> field should be ignored.  Instead, the value of the I<tv_sec> field is required to be 0 (or the error B<EINVAL> results).
fr: POSIX.1 spécifie que si un des champs I<tv_nsec> prend la valeur B<UTIME_NOW> ou B<UTIME_OMIT>, alors la valeur du champs I<tv_sec> correspondant doit être ignorée. À la place, la valeur du champ I<tv_sec> doit être nul (ou une erreur B<EINVAL> sera produite).

note: Below, the long description of the errors from the previous bullet point (abridged because it's too much detail for a man page). .IP * If one of the .I tv_nsec fields is .BR UTIME_OMIT and the other is .BR UTIME_NOW , then the error .B EPERM should occur if the process's effective user ID does not m
en: Various bugs mean that for the purposes of permission checking, the case where both I<tv_nsec> fields are set to B<UTIME_NOW> isn't always treated the same as specifying I<times> as NULL, and the case where one I<tv_nsec> value is B<UTIME_NOW> and the other is B<UTIME_OMIT> isn't treated the same as specifying I<times> as a pointer to an array of structures containing arbitrary time values.  As a result, in some cases: a) file timestamps can be updated by a process that shouldn't have permission to perform updates; b) file timestamps can't be updated by a process that should have permission to perform updates; and c) the wrong I<errno> value is returned in case of an error.
fr: Ces bogues indiquent que pour ce qui est de la vérification des droits, le cas où les deux champs I<tv_nsec> ne valent pas B<UTIME_NOW> n'est pas toujours traité de la même façon que lorsque I<times> est NULL, et le cas où une des valeurs I<tv_nsec> vaut B<UTIME_NOW> et l'autre vaut B<UTIME_OMIT> n'est pas traité de la même façon que quand I<times> pointe vers un tableau de structures contenant des valeurs de temps arbitraires. De ce fait, il se peut que : a) des horodatages de fichier puissent être mis à jour par un processus qui ne devrait pas avoir le droit de faire ces mises à jour ; b) des horodatages de fichier ne puissent pas être mis à jour par un processus qui devrait avoir le droit de faire ces mises à jour ; et c) la mauvaise valeur d'I<errno> puisse être renvoyée en cas d'erreur.

note: This means that a process with a file descriptor that allows writing could change the timestamps of a file for which it does not have write permission; conversely, a process with a read-only file descriptor won't be able to update the timestamps of a file, even if it has write permission on the file
en: POSIX.1 says that a process that has I<write access to the file> can make a call with I<times> as NULL, or with I<times> pointing to an array of structures in which both I<tv_nsec> fields are B<UTIME_NOW>, in order to update both timestamps to the current time.  However, B<futimens>()  instead checks whether the I<access mode of the file descriptor allows writing>.
fr: POSIX.1 indique qu'un processus qui a les I<droits d'accès en écriture pour un fichier> peut faire un appel avec I<times> valant NULL ou avec I<times> pointant vers un tableau de structures dans lesquelles les deux champs I<tv_nsec> valent B<UTIME_NOW> pour mettre à jour les deux horodatages à l'heure actuelle. Cependant, B<futimens>() vérifie à la place si le I<mode d'accès du descripteur de fichier permet l'écriture>.

note: type: SH
en: SEE ALSO
fr: VOIR AUSSI

note: type: Plain text
en: This page is part of release 5.03 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man-pages/.
fr: Cette page fait partie de la publication 5.03 du projet I<man-pages> Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse \%https://www.kernel.org/doc/man-pages/.

note: type: Plain text
en: This page is part of release 5.02 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man-pages/.
fr: Cette page fait partie de la publication 5.02 du projet I<man-pages> Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse \%https://www.kernel.org/doc/man-pages/.

note: type: Plain text
en: This page is part of release 5.01 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man-pages/.
fr: Cette page fait partie de la publication 5.01 du projet I<man-pages> Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse \%https://www.kernel.org/doc/man-pages/.
