diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 19:43:11 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 19:43:11 +0000 |
commit | fc22b3d6507c6745911b9dfcc68f1e665ae13dbc (patch) | |
tree | ce1e3bce06471410239a6f41282e328770aa404a /po/ru/man2/utimensat.2.po | |
parent | Initial commit. (diff) | |
download | manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.tar.xz manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.zip |
Adding upstream version 4.22.0.upstream/4.22.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'po/ru/man2/utimensat.2.po')
-rw-r--r-- | po/ru/man2/utimensat.2.po | 1737 |
1 files changed, 1737 insertions, 0 deletions
diff --git a/po/ru/man2/utimensat.2.po b/po/ru/man2/utimensat.2.po new file mode 100644 index 00000000..58b96dcf --- /dev/null +++ b/po/ru/man2/utimensat.2.po @@ -0,0 +1,1737 @@ +# Russian translation of manpages +# This file is distributed under the same license as the manpages-l10n package. +# Copyright © of this file: +# Azamat Hackimov <azamat.hackimov@gmail.com>, 2013, 2016. +# Dmitriy Ovchinnikov <dmitriyxt5@gmail.com>, 2012. +# Dmitry Bolkhovskikh <d20052005@yandex.ru>, 2017. +# Katrin Kutepova <blackkatelv@gmail.com>, 2018. +# Yuri Kozlov <yuray@komyakino.ru>, 2011-2019. +# Иван Павлов <pavia00@gmail.com>, 2017. +msgid "" +msgstr "" +"Project-Id-Version: manpages-l10n\n" +"POT-Creation-Date: 2024-03-01 17:13+0100\n" +"PO-Revision-Date: 2019-10-15 18:59+0300\n" +"Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n" +"Language-Team: Russian <man-pages-ru-talks@lists.sourceforge.net>\n" +"Language: ru\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || " +"(n%100>=11 && n%100<=14)? 2 : 3);\n" +"X-Generator: Lokalize 2.0\n" + +#. type: TH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "utimensat" +msgstr "utimensat" + +#. type: TH +#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#, no-wrap +msgid "2024-01-01" +msgstr "1 января 2024 г." + +#. type: TH +#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#, no-wrap +msgid "Linux man-pages 6.06" +msgstr "Linux man-pages 6.06" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NAME" +msgstr "ИМЯ" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "utimensat, futimens - change file timestamps with nanosecond precision" +msgstr "" +"utimensat, futimens - изменение временных меток файла с наносекундной " +"точностью" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "LIBRARY" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Standard C library (I<libc>, I<-lc>)" +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "SYNOPSIS" +msgstr "СИНТАКСИС" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"B<#include E<lt>fcntl.hE<gt>> /* Definition of B<AT_*> constants */\n" +"B<#include E<lt>sys/stat.hE<gt>>\n" +msgstr "" +"B<#include E<lt>fcntl.hE<gt>> /* определения констант B<AT_*> */\n" +"B<#include E<lt>sys/stat.hE<gt>>\n" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, fuzzy, no-wrap +#| msgid "" +#| "B<int utimensat(int >I<dirfd>B<, const char *>I<pathname>B<,>\n" +#| "B< const struct timespec >I<times>B<[2], int >I<flags>B<);>\n" +#| "B<int futimens(int >I<fd>B<, const struct timespec >I<times>B<[2]);>\n" +msgid "" +"B<int utimensat(int >I<dirfd>B<, const char *>I<pathname>B<,>\n" +"B< const struct timespec >I<times>B<[_Nullable 2], int >I<flags>B<);>\n" +"B<int futimens(int >I<fd>B<, const struct timespec >I<times>B<[_Nullable 2]);>\n" +msgstr "" +"B<int utimensat(int >I<dirfd>B<, const char *>I<pathname>B<,>\n" +"B< const struct timespec >I<times>B<[2], int >I<flags>B<);>\n" +"B<int futimens(int >I<fd>B<, const struct timespec >I<times>B<[2]);>\n" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):" +msgstr "" +"Требования макроса тестирования свойств для glibc (см. " +"B<feature_test_macros>(7)):" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "B<utimensat>():" +msgstr "B<utimensat>():" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +" Since glibc 2.10:\n" +" _POSIX_C_SOURCE E<gt>= 200809L\n" +" Before glibc 2.10:\n" +" _ATFILE_SOURCE\n" +msgstr "" +" Начиная с glibc 2.10:\n" +" _POSIX_C_SOURCE E<gt>= 200809L\n" +" До glibc 2.10:\n" +" _ATFILE_SOURCE\n" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "B<futimens>():" +msgstr "B<futimens>():" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +" Since glibc 2.10:\n" +" _POSIX_C_SOURCE E<gt>= 200809L\n" +" Before glibc 2.10:\n" +" _GNU_SOURCE\n" +msgstr "" +" Начиная с glibc 2.10:\n" +" _POSIX_C_SOURCE E<gt>= 200809L\n" +" До glibc 2.10:\n" +" _BSD_SOURCE\n" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "DESCRIPTION" +msgstr "ОПИСАНИЕ" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"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." +msgstr "" +"Вызовы B<utimensat>() и B<futimens>() обновляют временные метки файла с " +"наносекундной точностью. Этим они отличаются от B<utime>(2) и B<utimes>(2), " +"которые имеют секундную и микросекундную точность, соответственно." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"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>." +msgstr "" +"В вызове B<utimensat>() файл задаётся в I<pathname> по имени. В вызове " +"B<futimens>() файл указывается в виде открытого файлового дескриптора в " +"I<fd>." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "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:" +msgid "" +"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 B<timespec>(3) structure." +msgstr "" +"У обоих вызовов новые временные метки файла указываются в массиве I<times>: " +"в I<times>[0] задаётся новое «время последнего доступа» (I<atime>); в " +"I<times>[1] задаётся новое «время последнего изменения» (I<mtime>). В каждом " +"элементе I<times> указывается время в виде количества секунд и наносекунд, " +"прошедших с начала эпохи (1970-01-01 00:00:00 +0000 (UTC)). Эта информация " +"представляет собой структуру следующего формата:" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Updated file timestamps are set to the greatest value supported by the " +"filesystem that is not greater than the specified time." +msgstr "" +"Обновлённые временные метки файла устанавливаются в самое большое значение, " +"поддерживаемое файловой системой, но не больше чем указанное время." + +#. 2.6.22 was broken: it is not ignored +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"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." +msgstr "" +"Если в поле I<tv_nsec> одной из структур I<timespec> указано специальное " +"значение B<UTIME_NOW>, то соответствующая временная метка файла " +"устанавливается в значение текущего времени. Если в поле I<tv_nsec> одной из " +"структур I<timespec> указано специальное значение B<UTIME_OMIT>, то " +"соответствующая временная метка файла не изменяется. В обоих случаях " +"значение поля I<tv_sec> игнорируется." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "If I<times> is NULL, then both timestamps are set to the current time." +msgstr "" +"Если значение I<times> равно NULL, то значение обеих временных меток " +"становится равным текущему времени." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The status change time (ctime) will be set to the current time, even if the " +"other time stamps don't actually change." +msgstr "" + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Permissions requirements" +msgstr "Права доступа" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"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:" +msgstr "" +"Чтобы установить временные метки файла равными текущему времени (т.е., " +"значение I<times> равно NULL, или оба значения поля I<tv_nsec> равно " +"B<UTIME_NOW>) требуется одно из:" + +#. type: IP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "\\[bu]" +msgstr "\\[bu]" + +#. 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 +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "the caller must have write access to the file;" +msgstr "вызывающий должен иметь право на запись в файл;" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "the caller's effective user ID must match the owner of the file; or" +msgstr "" +"эффективный пользовательский идентификатор вызывающего должен совпадать с " +"идентификатором владельца файла;" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "the caller must have appropriate privileges." +msgstr "вызывающий должен иметь соответствующие права." + +#. 2.6.22 was broken here: +#. both must be something other than *either* UTIME_OMIT *or* UTIME_NOW. +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"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." +msgstr "" +"Чтобы установить временные метки файла равными не текущему времени (т. е., " +"значение I<times> не равно NULL, или оба значения поля I<tv_nsec> не равны " +"B<UTIME_NOW> или B<UTIME_OMIT>) требуется выполнение условия 2 или 3." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"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." +msgstr "" +"Если в обоих значениях поле I<tv_nsec> равно B<UTIME_OMIT>, то проверки " +"владения файлом и права доступа к нему не выполняются, и временные метки " +"файла не изменяются, но всё равно могут проверяться другие условия " +"возникновения ошибок." + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "utimensat() specifics" +msgstr "Особенности utimensat()" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"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." +msgstr "" +"Если в I<pathname> указано относительное значение имени, то по умолчанию оно " +"отсчитывается от каталога, на который ссылается открытый файловый " +"дескриптор, I<dirfd> (а не от текущего рабочего каталога вызывающего " +"процесса, как это делается в B<utimes>(2) для относительных имён). В " +"B<openat>(2) объяснено почему это может быть полезно." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"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))." +msgstr "" +"Если в I<pathname> задан относительный путь и I<dirfd> равно специальному " +"значению B<AT_FDCWD>, то I<pathname> рассматривается относительно текущего " +"рабочего каталога вызывающего процесса (как B<utimes>(2))." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "If I<pathname> is absolute, then I<dirfd> is ignored." +msgstr "Если в I<pathname> задан абсолютный путь, то I<dirfd> игнорируется." + +#. type: Plain text +#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#, fuzzy +#| msgid "" +#| "The I<flags> argument is a bit mask that is composed by ORing together " +#| "zero or more of the following values:" +msgid "" +"The I<flags> argument is a bit mask created by ORing together zero or more " +"of the following values defined in I<E<lt>fcntl.hE<gt>>:" +msgstr "" +"Аргумент I<flags> представляет собой битовую маску, которая составляется " +"логическим сложением (OR) следующих значений:" + +#. type: TP +#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#, fuzzy, no-wrap +#| msgid "B<AT_EMPTY_PATH> (since Linux 2.6.39)" +msgid "B<AT_EMPTY_PATH> (since Linux 5.8)" +msgstr "B<AT_EMPTY_PATH> (начиная с Linux 2.6.39)" + +#. type: Plain text +#: archlinux fedora-40 fedora-rawhide mageia-cauldron +msgid "" +"If I<pathname> is an empty string, operate on the file referred to by " +"I<dirfd> (which may have been obtained using the B<open>(2) B<O_PATH> " +"flag). In this case, I<dirfd> can refer to any type of file, not just a " +"directory. If I<dirfd> is B<AT_FDCWD>, the call operates on the current " +"working directory. This flag is Linux-specific; define B<_GNU_SOURCE> to " +"obtain its definition." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<AT_SYMLINK_NOFOLLOW>" +msgstr "B<AT_SYMLINK_NOFOLLOW>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"If I<pathname> specifies a symbolic link, then update the timestamps of the " +"link, rather than the file to which it refers." +msgstr "" +"Если I<pathname> указывает на символьную ссылку, то обновляются временные " +"метки ссылки, а не файла, на который она ссылается." + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "RETURN VALUE" +msgstr "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"On success, B<utimensat>() and B<futimens>() return 0. On error, -1 is " +"returned and I<errno> is set to indicate the error." +msgstr "" +"При успешном выполнении B<utimensat>() и B<futimens>() возвращается 0. При " +"ошибке возвращается -1, а в I<errno> содержится код ошибки." + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "ERRORS" +msgstr "ОШИБКИ" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<EACCES>" +msgstr "B<EACCES>" + +#. 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 by the +#. effective UID of the program. utimensat() also gives this error in the +#. same case. However, in the same circumstances, when utimensat() is +#. given a 'times' array in which both tv_nsec fields are UTIME_NOW, which +#. provides equivalent functionality to specifying 'times' as NULL, the +#. call succeeds. It should fail with the error EACCES in this case. +#. POSIX.1-2008 has the following: +#. .TP +#. .B EACCES +#. .RB ( utimensat ()) +#. .I fd +#. was not opened with +#. .B O_SEARCH +#. and the permissions of the directory to which +#. .I fd +#. refers do not allow searches. +#. EXT2_IMMUTABLE_FL and similar flags for other filesystems. +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "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," +msgid "" +"I<times> is NULL, or both I<tv_nsec> values are B<UTIME_NOW>, and 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)." +msgstr "" +"эффективный пользовательский идентификатор вызывающего процесса не совпадает " +"с идентификатором владельца файла, вызывающий не имеет права на запись в " +"файл, и у вызывающего нет привилегий (Linux: не имеет мандата B<CAP_FOWNER> " +"или B<CAP_DAC_OVERRIDE>); " + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<EBADF>" +msgstr "B<EBADF>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "(B<futimens>()) I<fd> is not a valid file descriptor." +msgstr "" +"(B<futimens>()) Значение I<fd> не является правильным файловым дескриптором." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"(B<utimensat>()) I<pathname> is relative but I<dirfd> is neither " +"B<AT_FDCWD> nor a valid file descriptor." +msgstr "" +"(B<utimensat>()) В I<pathname> содержится относительный путь, но значение " +"I<dirfd> не равно B<AT_FDCWD> и не является правильным файловым дескриптором." + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<EFAULT>" +msgstr "B<EFAULT>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"I<times> pointed to an invalid address; or, I<dirfd> was B<AT_FDCWD>, and " +"I<pathname> is NULL or an invalid address." +msgstr "" +"Значение I<times> указывает на некорректный адрес; или I<dirfd> равно " +"B<AT_FDCWD> и I<pathname> равно NULL или содержит некорректный адрес." + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<EINVAL>" +msgstr "B<EINVAL>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Invalid value in I<flags>." +msgstr "Некорректное значение I<flags>." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "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." +msgid "" +"Invalid value in one of the I<tv_nsec> fields (value outside range [0, " +"999,999,999], and not B<UTIME_NOW> or B<UTIME_OMIT>); or an invalid value in " +"one of the I<tv_sec> fields." +msgstr "" +"Некорректное значение в одном из полей I<tv_nsec> (значение вне диапазона от " +"0 до 999999999 и не равно B<UTIME_NOW> или B<UTIME_OMIT>) или некорректное " +"значение в одном из полей I<tv_sec>." + +#. SUSv4 does not specify this error. +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"I<pathname> is NULL, I<dirfd> is not B<AT_FDCWD>, and I<flags> contains " +"B<AT_SYMLINK_NOFOLLOW>." +msgstr "" +"Значение I<pathname> равно NULL, I<dirfd> не равно B<AT_FDCWD> и I<flags> " +"содержит B<AT_SYMLINK_NOFOLLOW>." + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<ELOOP>" +msgstr "B<ELOOP>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"(B<utimensat>()) Too many symbolic links were encountered in resolving " +"I<pathname>." +msgstr "" +"(B<utimensat>()) Во время определения I<pathname> встретилось слишком много " +"символьных ссылок." + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<ENAMETOOLONG>" +msgstr "B<ENAMETOOLONG>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "(B<utimensat>()) I<pathname> is too long." +msgstr "(B<utimensat>()) Слишком длинное значение аргумента I<pathname>." + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<ENOENT>" +msgstr "B<ENOENT>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"(B<utimensat>()) A component of I<pathname> does not refer to an existing " +"directory or file, or I<pathname> is an empty string." +msgstr "" +"(B<utimensat>()) Компонент пути I<pathname> не ссылается на существующий " +"каталог или файл, или в I<pathname> указана пустая строка." + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<ENOTDIR>" +msgstr "B<ENOTDIR>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"(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." +msgstr "" +"(B<utimensat>()) В I<pathname> содержится относительный путь, но значение " +"I<dirfd> не равно B<AT_FDCWD> или не является файловым дескриптором, " +"ссылающимся на каталог; или один из компонентов I<pathname> не является " +"каталогом." + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<EPERM>" +msgstr "B<EPERM>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The caller attempted to change one or both timestamps to a value other than " +"the current time, or to change one of the timestamps to the current time " +"while leaving the other timestamp unchanged, (i.e., I<times> is not NULL, " +"neither I<tv_nsec> field is B<UTIME_NOW>, and neither I<tv_nsec> field is " +"B<UTIME_OMIT>) and either:" +msgstr "" +"Вызывающий пытается изменить одну или обе временные метки на значение, " +"отличное от текущего времени, или изменить одну из временных меток на " +"текущее время, а другую оставить неизменной (т. е., значение I<times> не " +"равно NULL, у обоих значений поле I<tv_nsec> не равно B<UTIME_NOW>, и у " +"обоих значений поле I<tv_nsec> не равно B<UTIME_OMIT>) и:" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"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," +msgstr "" +"эффективный пользовательский идентификатор не совпадает с идентификатором " +"владельца файла, а вызывающий не имеет привилегий (Linux: не имеет мандата " +"B<CAP_FOWNER>);" + +#. 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_APPEND_FL and similar flags for +#. other filesystems. +#. Why the inconsistency (which is described under NOTES) between +#. EACCES and EPERM, where only EPERM tests for append-only. +#. (This was also so for the older utimes() implementation.) +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "the file is marked append-only or immutable (see B<chattr>(1))." +msgstr "" +"файл помечен как только для добавления или как неизменяемый (см. " +"B<chattr>(1))." + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<EROFS>" +msgstr "B<EROFS>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "The file is on a read-only filesystem." +msgstr "Файл расположен в файловой системе, доступной только для чтения." + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<ESRCH>" +msgstr "B<ESRCH>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"(B<utimensat>()) Search permission is denied for one of the prefix " +"components of I<pathname>." +msgstr "" +"(B<utimensat>()) В одном из каталогов префикса I<pathname> не разрешён поиск." + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "ATTRIBUTES" +msgstr "АТРИБУТЫ" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"For an explanation of the terms used in this section, see B<attributes>(7)." +msgstr "Описание терминов данного раздела смотрите в B<attributes>(7)." + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Interface" +msgstr "Интерфейс" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Attribute" +msgstr "Атрибут" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Value" +msgstr "Значение" + +#. type: tbl table +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed +#, no-wrap +msgid ".na\n" +msgstr ".na\n" + +#. type: tbl table +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed +#, no-wrap +msgid ".nh\n" +msgstr ".nh\n" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"B<utimensat>(),\n" +"B<futimens>()" +msgstr "" +"B<utimensat>(),\n" +"B<futimens>()" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Thread safety" +msgstr "Безвредность в нитях" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "MT-Safe" +msgstr "MT-Safe" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "VERSIONS" +msgstr "ВЕРСИИ" + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "C library/kernel ABI differences" +msgstr "Отличия между библиотекой C и ABI ядра" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"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:" +msgstr "" +"В Linux, B<futimens>() представляет собой библиотечную функцию на основе " +"системного вызова B<utimensat>(). Для этого в Linux-версии системного вызова " +"B<utimensat>() реализовано нестандартное свойство: если значение I<pathname> " +"равно NULL, то вызов изменяет временные метки файла на который ссылается " +"файловый дескриптор I<dirfd> (который может указывать на файл любого типа). " +"С помощью этого свойства вызов I<futimens(fd,\\ times)> реализован как:" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "utimensat(fd, NULL, times, 0);\n" +msgstr "utimensat(fd, NULL, times, 0);\n" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Note, however, that the glibc wrapper for B<utimensat>() disallows passing " +"NULL as the value for I<pathname>: the wrapper function returns the error " +"B<EINVAL> in this case." +msgstr "" +"Однако заметим, что обёрточная функция glibc для B<utimensat>() не позволяет " +"передачу NULL в качестве значения I<pathname> — в этом случае возвращается " +"ошибка B<EINVAL>." + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "STANDARDS" +msgstr "СТАНДАРТЫ" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +msgid "POSIX.1-2008." +msgstr "POSIX.1-2008." + +#. type: TP +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +#, fuzzy, no-wrap +#| msgid "B<utimensat>():" +msgid "B<utimensat>()" +msgstr "B<utimensat>():" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +#, fuzzy +#| msgid "glibc 2.1. C99, POSIX.1-2001." +msgid "Linux 2.6.22, glibc 2.6. POSIX.1-2008." +msgstr "glibc 2.1. C99, POSIX.1-2001." + +#. type: TP +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +#, fuzzy, no-wrap +#| msgid "B<futimens>():" +msgid "B<futimens>()" +msgstr "B<futimens>():" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +#, fuzzy +#| msgid "glibc 2.1. C99, POSIX.1-2001." +msgid "glibc 2.6. POSIX.1-2008." +msgstr "glibc 2.1. C99, POSIX.1-2001." + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NOTES" +msgstr "ЗАМЕЧАНИЯ" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "B<utimensat>() obsoletes B<futimesat>(2)." +msgstr "Вызов B<utimensat>() заменяет устаревший B<futimesat>(2)." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"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.)" +msgstr "" +"В Linux, временные метки нельзя изменять у файлов, помеченных как " +"неизменяемые (immutable), а у файлов, помеченных как только для добавления, " +"можно изменить метку только на значение текущего времени (это соответствует " +"сложившемуся исторически поведению в Linux вызовов B<utime>(2) и " +"B<utimes>(2))." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"If both I<tv_nsec> fields are specified as B<UTIME_OMIT>, then the Linux " +"implementation of B<utimensat>() succeeds even if the file referred to by " +"I<dirfd> and I<pathname> does not exist." +msgstr "" +"Если оба поля I<tv_nsec> равны B<UTIME_OMIT>, то вызов B<utimensat>() " +"реализации Linux завершается без ошибки, даже, если файл, на который " +"ссылается I<dirfd> и I<pathname>, не существует." + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "BUGS" +msgstr "ДЕФЕКТЫ" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "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." +msgid "" +"Several bugs afflict B<utimensat>() and B<futimens>() before Linux " +"2.6.26. These bugs are either nonconformances with the POSIX.1 draft " +"specification or inconsistencies with historical Linux behavior." +msgstr "" +"В ядрах до версии 2.6.26 в B<utimensat>() и B<futimens>() есть несколько " +"дефектов. Эти дефекты приводят к несоответствию с черновиком спецификации " +"POSIX.1 или к рассогласованию со старым поведением в Linux." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"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)." +msgstr "" +"В POSIX.1 определено, что если в одном из значений времени поле I<tv_nsec> " +"содержит значение B<UTIME_NOW> или B<UTIME_OMIT>, то значение " +"соответствующего поля I<tv_sec> должно игнорироваться. Вместо этого " +"требуется, чтобы значение поля I<tv_sec> равнялось 0 (иначе выдаётся ошибка " +"B<EINVAL>)." + +#. #-#-#-#-# archlinux: utimensat.2.pot (PACKAGE VERSION) #-#-#-#-# +#. Below, the long description of the errors from the previous bullet +#. point (abridged because it's too much detail for a man page). +#. .IP \[bu] +#. 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 match +#. the file owner and the process is not privileged. +#. Instead, the call successfully changes one of the timestamps. +#. .IP \[bu] +#. If file is not writable by the effective user ID of the process and +#. the process's effective user ID does not match the file owner and +#. the process is not privileged, +#. and +#. .I times +#. is NULL, then the error +#. .B EACCES +#. results. +#. This error should also occur if +#. .I times +#. points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead the call succeeds. +#. .IP \[bu] +#. If a file is marked as append-only (see +#. .BR chattr (1)), +#. then Linux traditionally +#. (i.e., +#. .BR utime (2), +#. .BR utimes (2)), +#. permits a NULL +#. .I times +#. argument to be used in order to update both timestamps to the current time. +#. For consistency, +#. .BR utimensat () +#. and +#. .BR futimens () +#. should also produce the same result when given a +#. .I times +#. argument that points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead, the call fails with the error +#. .BR EPERM . +#. .IP \[bu] +#. If a file is marked as immutable (see +#. .BR chattr (1)), +#. then Linux traditionally +#. (i.e., +#. .BR utime (2), +#. .BR utimes (2)), +#. gives an +#. .B EACCES +#. error if +#. .I times +#. is NULL. +#. For consistency, +#. .BR utimensat () +#. and +#. .BR futimens () +#. should also produce the same result when given a +#. .I times +#. that points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead, the call fails with the error +#. .BR EPERM . +#. type: Plain text +#. #-#-#-#-# debian-bookworm: utimensat.2.pot (PACKAGE VERSION) #-#-#-#-# +#. 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 match +#. the file owner and the process is not privileged. +#. Instead, the call successfully changes one of the timestamps. +#. .IP * +#. If file is not writable by the effective user ID of the process and +#. the process's effective user ID does not match the file owner and +#. the process is not privileged, +#. and +#. .I times +#. is NULL, then the error +#. .B EACCES +#. results. +#. This error should also occur if +#. .I times +#. points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead the call succeeds. +#. .IP * +#. If a file is marked as append-only (see +#. .BR chattr (1)), +#. then Linux traditionally +#. (i.e., +#. .BR utime (2), +#. .BR utimes (2)), +#. permits a NULL +#. .I times +#. argument to be used in order to update both timestamps to the current time. +#. For consistency, +#. .BR utimensat () +#. and +#. .BR futimens () +#. should also produce the same result when given a +#. .I times +#. argument that points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead, the call fails with the error +#. .BR EPERM . +#. .IP * +#. If a file is marked as immutable (see +#. .BR chattr (1)), +#. then Linux traditionally +#. (i.e., +#. .BR utime (2), +#. .BR utimes (2)), +#. gives an +#. .B EACCES +#. error if +#. .I times +#. is NULL. +#. For consistency, +#. .BR utimensat () +#. and +#. .BR futimens () +#. should also produce the same result when given a +#. .I times +#. that points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead, the call fails with the error +#. .BR EPERM . +#. type: Plain text +#. #-#-#-#-# debian-unstable: utimensat.2.pot (PACKAGE VERSION) #-#-#-#-# +#. 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 match +#. the file owner and the process is not privileged. +#. Instead, the call successfully changes one of the timestamps. +#. .IP * +#. If file is not writable by the effective user ID of the process and +#. the process's effective user ID does not match the file owner and +#. the process is not privileged, +#. and +#. .I times +#. is NULL, then the error +#. .B EACCES +#. results. +#. This error should also occur if +#. .I times +#. points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead the call succeeds. +#. .IP * +#. If a file is marked as append-only (see +#. .BR chattr (1)), +#. then Linux traditionally +#. (i.e., +#. .BR utime (2), +#. .BR utimes (2)), +#. permits a NULL +#. .I times +#. argument to be used in order to update both timestamps to the current time. +#. For consistency, +#. .BR utimensat () +#. and +#. .BR futimens () +#. should also produce the same result when given a +#. .I times +#. argument that points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead, the call fails with the error +#. .BR EPERM . +#. .IP * +#. If a file is marked as immutable (see +#. .BR chattr (1)), +#. then Linux traditionally +#. (i.e., +#. .BR utime (2), +#. .BR utimes (2)), +#. gives an +#. .B EACCES +#. error if +#. .I times +#. is NULL. +#. For consistency, +#. .BR utimensat () +#. and +#. .BR futimens () +#. should also produce the same result when given a +#. .I times +#. that points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead, the call fails with the error +#. .BR EPERM . +#. type: Plain text +#. #-#-#-#-# fedora-40: utimensat.2.pot (PACKAGE VERSION) #-#-#-#-# +#. Below, the long description of the errors from the previous bullet +#. point (abridged because it's too much detail for a man page). +#. .IP \[bu] +#. 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 match +#. the file owner and the process is not privileged. +#. Instead, the call successfully changes one of the timestamps. +#. .IP \[bu] +#. If file is not writable by the effective user ID of the process and +#. the process's effective user ID does not match the file owner and +#. the process is not privileged, +#. and +#. .I times +#. is NULL, then the error +#. .B EACCES +#. results. +#. This error should also occur if +#. .I times +#. points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead the call succeeds. +#. .IP \[bu] +#. If a file is marked as append-only (see +#. .BR chattr (1)), +#. then Linux traditionally +#. (i.e., +#. .BR utime (2), +#. .BR utimes (2)), +#. permits a NULL +#. .I times +#. argument to be used in order to update both timestamps to the current time. +#. For consistency, +#. .BR utimensat () +#. and +#. .BR futimens () +#. should also produce the same result when given a +#. .I times +#. argument that points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead, the call fails with the error +#. .BR EPERM . +#. .IP \[bu] +#. If a file is marked as immutable (see +#. .BR chattr (1)), +#. then Linux traditionally +#. (i.e., +#. .BR utime (2), +#. .BR utimes (2)), +#. gives an +#. .B EACCES +#. error if +#. .I times +#. is NULL. +#. For consistency, +#. .BR utimensat () +#. and +#. .BR futimens () +#. should also produce the same result when given a +#. .I times +#. that points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead, the call fails with the error +#. .BR EPERM . +#. type: Plain text +#. #-#-#-#-# fedora-rawhide: utimensat.2.pot (PACKAGE VERSION) #-#-#-#-# +#. Below, the long description of the errors from the previous bullet +#. point (abridged because it's too much detail for a man page). +#. .IP \[bu] +#. 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 match +#. the file owner and the process is not privileged. +#. Instead, the call successfully changes one of the timestamps. +#. .IP \[bu] +#. If file is not writable by the effective user ID of the process and +#. the process's effective user ID does not match the file owner and +#. the process is not privileged, +#. and +#. .I times +#. is NULL, then the error +#. .B EACCES +#. results. +#. This error should also occur if +#. .I times +#. points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead the call succeeds. +#. .IP \[bu] +#. If a file is marked as append-only (see +#. .BR chattr (1)), +#. then Linux traditionally +#. (i.e., +#. .BR utime (2), +#. .BR utimes (2)), +#. permits a NULL +#. .I times +#. argument to be used in order to update both timestamps to the current time. +#. For consistency, +#. .BR utimensat () +#. and +#. .BR futimens () +#. should also produce the same result when given a +#. .I times +#. argument that points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead, the call fails with the error +#. .BR EPERM . +#. .IP \[bu] +#. If a file is marked as immutable (see +#. .BR chattr (1)), +#. then Linux traditionally +#. (i.e., +#. .BR utime (2), +#. .BR utimes (2)), +#. gives an +#. .B EACCES +#. error if +#. .I times +#. is NULL. +#. For consistency, +#. .BR utimensat () +#. and +#. .BR futimens () +#. should also produce the same result when given a +#. .I times +#. that points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead, the call fails with the error +#. .BR EPERM . +#. type: Plain text +#. #-#-#-#-# mageia-cauldron: utimensat.2.pot (PACKAGE VERSION) #-#-#-#-# +#. Below, the long description of the errors from the previous bullet +#. point (abridged because it's too much detail for a man page). +#. .IP \[bu] +#. 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 match +#. the file owner and the process is not privileged. +#. Instead, the call successfully changes one of the timestamps. +#. .IP \[bu] +#. If file is not writable by the effective user ID of the process and +#. the process's effective user ID does not match the file owner and +#. the process is not privileged, +#. and +#. .I times +#. is NULL, then the error +#. .B EACCES +#. results. +#. This error should also occur if +#. .I times +#. points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead the call succeeds. +#. .IP \[bu] +#. If a file is marked as append-only (see +#. .BR chattr (1)), +#. then Linux traditionally +#. (i.e., +#. .BR utime (2), +#. .BR utimes (2)), +#. permits a NULL +#. .I times +#. argument to be used in order to update both timestamps to the current time. +#. For consistency, +#. .BR utimensat () +#. and +#. .BR futimens () +#. should also produce the same result when given a +#. .I times +#. argument that points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead, the call fails with the error +#. .BR EPERM . +#. .IP \[bu] +#. If a file is marked as immutable (see +#. .BR chattr (1)), +#. then Linux traditionally +#. (i.e., +#. .BR utime (2), +#. .BR utimes (2)), +#. gives an +#. .B EACCES +#. error if +#. .I times +#. is NULL. +#. For consistency, +#. .BR utimensat () +#. and +#. .BR futimens () +#. should also produce the same result when given a +#. .I times +#. that points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead, the call fails with the error +#. .BR EPERM . +#. type: Plain text +#. #-#-#-#-# opensuse-leap-15-6: utimensat.2.pot (PACKAGE VERSION) #-#-#-#-# +#. 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 match +#. the file owner and the process is not privileged. +#. Instead, the call successfully changes one of the timestamps. +#. .IP * +#. If file is not writable by the effective user ID of the process and +#. the process's effective user ID does not match the file owner and +#. the process is not privileged, +#. and +#. .I times +#. is NULL, then the error +#. .B EACCES +#. results. +#. This error should also occur if +#. .I times +#. points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead the call succeeds. +#. .IP * +#. If a file is marked as append-only (see +#. .BR chattr (1)), +#. then Linux traditionally +#. (i.e., +#. .BR utime (2), +#. .BR utimes (2)), +#. permits a NULL +#. .I times +#. argument to be used in order to update both timestamps to the current time. +#. For consistency, +#. .BR utimensat () +#. and +#. .BR futimens () +#. should also produce the same result when given a +#. .I times +#. argument that points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead, the call fails with the error +#. .BR EPERM . +#. .IP * +#. If a file is marked as immutable (see +#. .BR chattr (1)), +#. then Linux traditionally +#. (i.e., +#. .BR utime (2), +#. .BR utimes (2)), +#. gives an +#. .B EACCES +#. error if +#. .I times +#. is NULL. +#. For consistency, +#. .BR utimensat () +#. and +#. .BR futimens () +#. should also produce the same result when given a +#. .I times +#. that points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead, the call fails with the error +#. .BR EPERM . +#. type: Plain text +#. #-#-#-#-# opensuse-tumbleweed: utimensat.2.pot (PACKAGE VERSION) #-#-#-#-# +#. 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 match +#. the file owner and the process is not privileged. +#. Instead, the call successfully changes one of the timestamps. +#. .IP * +#. If file is not writable by the effective user ID of the process and +#. the process's effective user ID does not match the file owner and +#. the process is not privileged, +#. and +#. .I times +#. is NULL, then the error +#. .B EACCES +#. results. +#. This error should also occur if +#. .I times +#. points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead the call succeeds. +#. .IP * +#. If a file is marked as append-only (see +#. .BR chattr (1)), +#. then Linux traditionally +#. (i.e., +#. .BR utime (2), +#. .BR utimes (2)), +#. permits a NULL +#. .I times +#. argument to be used in order to update both timestamps to the current time. +#. For consistency, +#. .BR utimensat () +#. and +#. .BR futimens () +#. should also produce the same result when given a +#. .I times +#. argument that points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead, the call fails with the error +#. .BR EPERM . +#. .IP * +#. If a file is marked as immutable (see +#. .BR chattr (1)), +#. then Linux traditionally +#. (i.e., +#. .BR utime (2), +#. .BR utimes (2)), +#. gives an +#. .B EACCES +#. error if +#. .I times +#. is NULL. +#. For consistency, +#. .BR utimensat () +#. and +#. .BR futimens () +#. should also produce the same result when given a +#. .I times +#. that points to an array of structures in which both +#. .I tv_nsec +#. fields are +#. .BR UTIME_NOW . +#. Instead, the call fails with the error +#. .BR EPERM . +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"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." +msgstr "" +"Различные дефекты возникают при рассмотрении имеющихся прав и значений: " +"случай, когда у обоих значений поле I<tv_nsec> равно B<UTIME_NOW>, не всегда " +"рассматривается равным указанию в I<times> значения NULL, и случай, когда " +"одно значение I<tv_nsec> равно B<UTIME_NOW>, а другое — B<UTIME_OMIT>, не " +"рассматривается равным указанию в I<times> указателя на массив структур, " +"содержащий произвольные значения времени. В результате в некоторых случаях: " +"а) временные метки файлов могут быть обновлены процессом, который не имеет " +"прав на это; б) временные метки файлов не могут быть обновлены процессом, " +"хотя он имеет на это право; в) в случае ошибки возвращается неправильное " +"значение в I<errno>." + +#. 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. +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"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>." +msgstr "" +"В POSIX.1 сказано, что процесс имеющий I<права на запись в файл>, для " +"установки временных меток в текущее время может выполнить вызов со значением " +"I<times> равным NULL, или с I<times>, указывающим на массив структур, в " +"котором у обоих значений времени поле I<tv_nsec> равно B<UTIME_NOW>. Однако " +"B<futimens>() вместо этого проверяет I<права на запись у файлового " +"дескриптора>." + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "SEE ALSO" +msgstr "СМ. ТАКЖЕ" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"B<chattr>(1), B<touch>(1), B<futimesat>(2), B<openat>(2), B<stat>(2), " +"B<utimes>(2), B<futimes>(3), B<timespec>(3), B<inode>(7), " +"B<path_resolution>(7), B<symlink>(7)" +msgstr "" +"B<chattr>(1), B<touch>(1), B<futimesat>(2), B<openat>(2), B<stat>(2), " +"B<utimes>(2), B<futimes>(3), B<timespec>(3), B<inode>(7), " +"B<path_resolution>(7), B<symlink>(7)" + +#. type: TH +#: debian-bookworm +#, no-wrap +msgid "2023-02-12" +msgstr "12 февраля 2023 г." + +#. type: TH +#: debian-bookworm +#, no-wrap +msgid "Linux man-pages 6.03" +msgstr "Linux man-pages 6.03" + +#. type: Plain text +#: debian-bookworm debian-unstable opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"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>>:" +msgstr "" +"Значение поля I<flags> представляет собой битовую маску и может равняться 0 " +"или содержать следующую константу (определена в I<E<lt>fcntl.hE<gt>>):" + +#. type: Plain text +#: debian-bookworm +#, fuzzy +#| msgid "" +#| "B<utimensat>() was added to Linux in kernel 2.6.22; glibc support was " +#| "added with version 2.6." +msgid "" +"B<utimensat>() was added in Linux 2.6.22; glibc support was added with " +"glibc 2.6." +msgstr "" +"Вызов B<utimensat>() был добавлен в ядро Linux версии 2.6.22; поддержка в " +"glibc доступна с версии 2.6." + +#. type: Plain text +#: debian-bookworm +msgid "Support for B<futimens>() first appeared in glibc 2.6." +msgstr "Поддержка B<futimens>() появилась в glibc 2.6." + +#. type: Plain text +#: debian-bookworm +msgid "B<futimens>() and B<utimensat>() are specified in POSIX.1-2008." +msgstr "Вызовы B<futimens>() и B<utimensat>() определены в POSIX.1-2008." + +#. type: TH +#: debian-unstable opensuse-tumbleweed +#, no-wrap +msgid "2023-07-20" +msgstr "20 июля 2023 г." + +#. type: TH +#: debian-unstable opensuse-tumbleweed +#, no-wrap +msgid "Linux man-pages 6.05.01" +msgstr "Linux man-pages 6.05.01" + +#. type: TH +#: opensuse-leap-15-6 +#, no-wrap +msgid "2023-03-30" +msgstr "30 марта 2023 г." + +#. type: TH +#: opensuse-leap-15-6 +#, no-wrap +msgid "Linux man-pages 6.04" +msgstr "Linux man-pages 6.04" |