# Russian translation of manpages # This file is distributed under the same license as the manpages-l10n package. # Copyright © of this file: # Azamat Hackimov , 2013-2014, 2017. # Dmitriy S. Seregin , 2013. # Yuri Kozlov , 2011-2019. # Иван Павлов , 2017, 2019. msgid "" msgstr "" "Project-Id-Version: manpages-l10n\n" "POT-Creation-Date: 2024-06-01 06:00+0200\n" "PO-Revision-Date: 2019-10-05 08:17+0300\n" "Last-Translator: Yuri Kozlov \n" "Language-Team: Russian \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 "listxattr" msgstr "listxattr" #. type: TH #: archlinux debian-unstable opensuse-tumbleweed #, no-wrap msgid "2024-05-02" msgstr "2 мая 2024 г." #. type: TH #: archlinux debian-unstable #, fuzzy, no-wrap #| msgid "Linux man-pages 6.7" msgid "Linux man-pages 6.8" msgstr "Linux man-pages 6.7" #. 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 "listxattr, llistxattr, flistxattr - list extended attribute names" msgstr "" "listxattr, llistxattr, flistxattr - выводит список названий расширенных " "атрибутов" #. 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, 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 Esys/xattr.hE>\n" msgstr "B<#include Esys/xattr.hE>\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 "" #| "BIB<, char *>IB<, size_t >IB<);>\n" #| "BIB<, char *>IB<, size_t >IB<);>\n" #| "BIB<, char *>IB<, size_t >IB<);>\n" msgid "" "BIB<, char *_Nullable >IB<, size_t >IB<);>\n" "BIB<, char *_Nullable >IB<, size_t >IB<);>\n" "BIB<, char *_Nullable >IB<, size_t >IB<);>\n" msgstr "" "BIB<, char *>IB<, size_t >IB<);>\n" "BIB<, char *>IB<, size_t >IB<);>\n" "BIB<, char *>IB<, size_t >IB<);>\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 "" "Extended attributes are I:I pairs associated with inodes " "(files, directories, symbolic links, etc.). They are extensions to the " "normal attributes which are associated with all inodes in the system (i.e., " "the B(2) data). A complete overview of extended attributes concepts " "can be found in B(7)." msgstr "" "Расширенные атрибуты представляют собой пару I<имя>:I<значение> и " "связываются с записями inode (файлы, каталоги, символьные ссылки и т.п.). " "Они являются расширениями к обычным атрибутам, связанным со всеми записями " "inode в системе (например, данные B(2)). Полное описание модели " "расширенных атрибутов можно найти в B(7)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() retrieves the list of extended attribute names associated " "with the given I in the filesystem. The retrieved list is placed in " "I, a caller-allocated buffer whose size (in bytes) is specified in the " "argument I. The list is the set of (null-terminated) names, one after " "the other. Names of extended attributes to which the calling process does " "not have access may be omitted from the list. The length of the attribute " "name I is returned." msgstr "" "B() получает список названий расширенных атрибутов, связанных с " "заданным путем I в файловой системе. Список помещается в I " "вызывающего, который выделил для этого буфер размером I (задаётся в " "байтах). Список представляет собой набор названий (заканчивающихся null) " "один за одним. Названия расширенных атрибутов, к которым вызывающий процесс " "не может иметь доступ, могут отсутствовать в списке. Возвращается длина " "списка I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() is identical to B(), except in the case of a " "symbolic link, where the list of names of extended attributes associated " "with the link itself is retrieved, not the file that it refers to." msgstr "" "B() идентичен B(), за исключением случая с символьной " "ссылкой, где возвращается список названий расширенных атрибутов, связанных с " "самой ссылкой, а не с файлом, на который она ссылается." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() is identical to B(), only the open file referred " "to by I (as returned by B(2)) is interrogated in place of I." msgstr "" "B() идентичен B(), отличием является то, что " "используется открытый файл, на который указывает I (возвращаемом " "B(2)), а не указанный в I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A single extended attribute I is a null-terminated string. The name " "includes a namespace prefix; there may be several, disjoint namespaces " "associated with an individual inode." msgstr "" "Одиночный расширенный атрибут I является строкой, заканчивающейся " "null. Имя включает префикс пространства имен; их может быть несколько, " "разрозненные пространства связаны с отдельной записью inode." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If I is specified as zero, these calls return the current size of the " "list of extended attribute names (and leave I unchanged). This can be " "used to determine the size of the buffer that should be supplied in a " "subsequent call. (But, bear in mind that there is a possibility that the " "set of extended attributes may change between the two calls, so that it is " "still necessary to check the return status from the second call.)" msgstr "" "Если I равно нулю, то эти вызовы возвращают текущий размер списка имён " "расширенных атрибутов (и не изменяют I). Это можно использовать для " "определения размера буфера, который будет указан в последующем вызове (но " "учтите, есть вероятность, что набор расширенных атрибутов может измениться " "между двумя вызовами, поэтому всё равно нужно проверять возвращаемое " "состояние после второго вызова)." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Example" msgstr "Пример" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "The I of names is returned as an unordered array of null-terminated " #| "character strings (attribute names are separated by null bytes (\\(aq" #| "\\e0\\(aq)), like this:" msgid "" "The I of names is returned as an unordered array of null-terminated " "character strings (attribute names are separated by null bytes " "(\\[aq]\\e0\\[aq])), like this:" msgstr "" "I<Список> названий возвращается в виде неупорядоченного массива символьных " "строк, заканчивающихся null (названия атрибутов разделяются байтами null " "(\\(aq\\e0\\(aq)), например:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "user.name1\\e0system.name1\\e0user.name2\\e0\n" msgstr "user.name1\\e0system.name1\\e0user.name2\\e0\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Filesystems that implement POSIX ACLs using extended attributes might return " "a I like this:" msgstr "" "Файловые системы, реализующие ACL стандарта POSIX с помощью расширенных " "атрибутов, могут возвращать такой I<список>:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "system.posix_acl_access\\e0system.posix_acl_default\\e0\n" msgstr "system.posix_acl_access\\e0system.posix_acl_default\\e0\n" #. 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 #, fuzzy #| msgid "" #| "On success, a nonnegative number is returned indicating the size of the " #| "extended attribute name list. On failure, -1 is returned and I is " #| "set appropriately." msgid "" "On success, a nonnegative number is returned indicating the size of the " "extended attribute name list. On failure, -1 is returned and I is " "set to indicate the error." msgstr "" "При успешном завершении работы возвращается неотрицательное число, " "обозначающее размер списка названий расширенных атрибутов. При ошибках " "возвращается -1 и I устанавливается в соответствующее значение." #. 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" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The size of the list of extended attribute names is larger than the maximum " "size allowed; the list cannot be retrieved. This can happen on filesystems " "that support an unlimited number of extended attributes per file such as " "XFS, for example. See BUGS." msgstr "" "Размер списка имён расширенных атрибутов превышает максимально допустимый; " "список невозможно получить. Это может случиться в файловых системах, которые " "поддерживают бесконечное количество расширенных атрибутов на файл, например " "XFS. Смотрите ДЕФЕКТЫ." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Extended attributes are not supported by the filesystem, or are disabled." msgstr "" "Расширенные атрибуты не поддерживаются файловой системой или отключены." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The I of the I buffer is too small to hold the result." msgstr "Размер I буфера I слишком мал для хранения результата." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "In addition, the errors documented in B(2) can also occur." msgstr "Также могут возникать ошибки, описанные в B(2)." #. 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 "Linux." msgstr "Linux." #. type: SH #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "HISTORY" msgstr "ИСТОРИЯ" #. .SH AUTHORS #. Andreas Gruenbacher, #. .RI < a.gruenbacher@computer.org > #. and the SGI XFS development team, #. .RI < linux-xfs@oss.sgi.com >. #. Please send any bug reports or comments to these addresses. #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "Since glibc 2.2.2:" msgid "Linux 2.4, glibc 2.3." msgstr "Начиная с glibc 2.2.2:" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BUGS" msgstr "ОШИБКИ" #. The xattr(7) page refers to this text: #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "As noted in B(7), the VFS imposes a limit of 64\\ kB on the size of " "the extended attribute name list returned by B(). If the total " "size of attribute names attached to a file exceeds this limit, it is no " "longer possible to retrieve the list of attribute names." msgstr "" "Как упоминалось в B(7), в VFS есть ограничение в 64\\ КБ на размер " "списка имён расширенных атрибутов, возвращаемый B(). Если полный " "размер имён атрибутов, прикреплённых к файлу, превышает это ограничение, то " "становится невозможно получить список имён атрибутов." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "EXAMPLES" msgstr "ПРИМЕРЫ" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The following program demonstrates the usage of B() and " "B(2). For the file whose pathname is provided as a command-line " "argument, it lists all extended file attributes and their values." msgstr "" "В следующей программе показано использование B() и " "B(2). Для файла, чьё имя указывается параметром в командной " "строке, выводится список файловых атрибутов и их значения." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "To keep the code simple, the program assumes that attribute keys and values " "are constant during the execution of the program. A production program " "should expect and handle changes during execution of the program. For " "example, the number of bytes required for attribute keys might increase " "between the two calls to B(). An application could handle this " "possibility using a loop that retries the call (perhaps up to a " "predetermined maximum number of attempts) with a larger buffer each time it " "fails with the error B. Calls to B(2) could be handled " "similarly." msgstr "" "Для упрощения кода при выполнении программы ключи атрибутов и значения " "считаются константами. В реальной программе нужно учитывать и обрабатывать " "изменения при выполнении программы. Например, количество байт, необходимое " "для ключей атрибутов, может увеличиваться между двумя вызовами " "B(). В приложении нужно предусмотреть эту возможность с помощью " "цикла, который повторяет вызов (возможно, ввести задаваемое максимальное " "количество попыток) с большим буфером каждый раз при ошибке B. " "Вызовы B(2) могут обрабатываться схожим образом." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The following output was recorded by first creating a file, setting some " "extended file attributes, and then listing the attributes with the example " "program." msgstr "" "В следующем выводе был создан файл, заданы некоторые расширенные файловые " "атрибуты и показан вывод атрибутов с помощью программы-примера." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Example output" 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\n" "$ B\n" "$ B\n" "$ B\n" "$ B<./listxattr /tmp/foo>\n" "user.fred: chocolate\n" "user.frieda: bar\n" "user.empty: Eno valueE\n" msgstr "" "$ B\n" "$ B\n" "$ B\n" "$ B\n" "$ B<./listxattr /tmp/foo>\n" "user.fred: chocolate\n" "user.frieda: bar\n" "user.empty: Eнет значенияE\n" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Program source (listxattr.c)" msgstr "Исходный код программы (listxattr.c)" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Estring.hE\n" "#include Esys/xattr.hE\n" "\\&\n" "int\n" "main(int argc, char *argv[])\n" "{\n" " char *buf, *key, *val;\n" " ssize_t buflen, keylen, vallen;\n" "\\&\n" " if (argc != 2) {\n" " fprintf(stderr, \"Usage: %s path\\en\", argv[0]);\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " /*\n" " * Determine the length of the buffer needed.\n" " */\n" " buflen = listxattr(argv[1], NULL, 0);\n" " if (buflen == -1) {\n" " perror(\"listxattr\");\n" " exit(EXIT_FAILURE);\n" " }\n" " if (buflen == 0) {\n" " printf(\"%s has no attributes.\\en\", argv[1]);\n" " exit(EXIT_SUCCESS);\n" " }\n" "\\&\n" " /*\n" " * Allocate the buffer.\n" " */\n" " buf = malloc(buflen);\n" " if (buf == NULL) {\n" " perror(\"malloc\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " /*\n" " * Copy the list of attribute keys to the buffer.\n" " */\n" " buflen = listxattr(argv[1], buf, buflen);\n" " if (buflen == -1) {\n" " perror(\"listxattr\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " /*\n" " * Loop over the list of zero terminated strings with the\n" " * attribute keys. Use the remaining buffer length to determine\n" " * the end of the list.\n" " */\n" " key = buf;\n" " while (buflen E 0) {\n" "\\&\n" " /*\n" " * Output attribute key.\n" " */\n" " printf(\"%s: \", key);\n" "\\&\n" " /*\n" " * Determine length of the value.\n" " */\n" " vallen = getxattr(argv[1], key, NULL, 0);\n" " if (vallen == -1)\n" " perror(\"getxattr\");\n" "\\&\n" " if (vallen E 0) {\n" "\\&\n" " /*\n" " * Allocate value buffer.\n" " * One extra byte is needed to append 0x00.\n" " */\n" " val = malloc(vallen + 1);\n" " if (val == NULL) {\n" " perror(\"malloc\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " /*\n" " * Copy value to buffer.\n" " */\n" " vallen = getxattr(argv[1], key, val, vallen);\n" " if (vallen == -1) {\n" " perror(\"getxattr\");\n" " } else {\n" " /*\n" " * Output attribute value.\n" " */\n" " val[vallen] = 0;\n" " printf(\"%s\", val);\n" " }\n" "\\&\n" " free(val);\n" " } else if (vallen == 0) {\n" " printf(\"Eno valueE\");\n" " }\n" "\\&\n" " printf(\"\\en\");\n" "\\&\n" " /*\n" " * Forward to next attribute key.\n" " */\n" " keylen = strlen(key) + 1;\n" " buflen -= keylen;\n" " key += keylen;\n" " }\n" "\\&\n" " free(buf);\n" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" #. SRC END #. 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(1), B(1), B(2), B(2), " "B(2), B(2), B(2), B(7), B(7)" msgstr "" "B(1), B(1), B(2), B(2), " "B(2), B(2), B(2), B(7), B(7)" #. type: TH #: debian-bookworm #, no-wrap msgid "2023-02-05" msgstr "5 февраля 2023 г." #. type: TH #: debian-bookworm #, no-wrap msgid "Linux man-pages 6.03" msgstr "Linux man-pages 6.03" #. type: SH #: debian-bookworm #, no-wrap msgid "VERSIONS" msgstr "ВЕРСИИ" #. type: Plain text #: debian-bookworm #, fuzzy #| msgid "" #| "These system calls have been available on Linux since kernel 2.4; glibc " #| "support is provided since version 2.3." msgid "" "These system calls have been available since Linux 2.4; glibc support is " "provided since glibc 2.3." msgstr "" "Данные системные вызовы доступны в Linux начиная с ядра версии 2.4; " "поддержка в glibc появилась в версии 2.3." #. .SH AUTHORS #. Andreas Gruenbacher, #. .RI < a.gruenbacher@computer.org > #. and the SGI XFS development team, #. .RI < linux-xfs@oss.sgi.com >. #. Please send any bug reports or comments to these addresses. #. type: Plain text #: debian-bookworm msgid "These system calls are Linux-specific." msgstr "Данные системные вызовы есть только в Linux." #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Estring.hE\n" "#include Esys/xattr.hE\n" msgstr "" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Estring.hE\n" "#include Esys/xattr.hE\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "int\n" "main(int argc, char *argv[])\n" "{\n" " char *buf, *key, *val;\n" " ssize_t buflen, keylen, vallen;\n" msgstr "" "int\n" "main(int argc, char *argv[])\n" "{\n" " char *buf, *key, *val;\n" " ssize_t buflen, keylen, vallen;\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (argc != 2) {\n" " fprintf(stderr, \"Usage: %s path\\en\", argv[0]);\n" " exit(EXIT_FAILURE);\n" " }\n" msgstr "" " if (argc != 2) {\n" " fprintf(stderr, \"Использование: %s путь\\en\", argv[0]);\n" " exit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " /*\n" " * Determine the length of the buffer needed.\n" " */\n" " buflen = listxattr(argv[1], NULL, 0);\n" " if (buflen == -1) {\n" " perror(\"listxattr\");\n" " exit(EXIT_FAILURE);\n" " }\n" " if (buflen == 0) {\n" " printf(\"%s has no attributes.\\en\", argv[1]);\n" " exit(EXIT_SUCCESS);\n" " }\n" msgstr "" " /*\n" " * Определение длины буфера.\n" " */\n" " buflen = listxattr(argv[1], NULL, 0);\n" " if (buflen == -1) {\n" " perror(\"listxattr\");\n" " exit(EXIT_FAILURE);\n" " }\n" " if (buflen == 0) {\n" " printf(\"%s не имеет атрибутов.\\en\", argv[1]);\n" " exit(EXIT_SUCCESS);\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " /*\n" " * Allocate the buffer.\n" " */\n" " buf = malloc(buflen);\n" " if (buf == NULL) {\n" " perror(\"malloc\");\n" " exit(EXIT_FAILURE);\n" " }\n" msgstr "" " /*\n" " * Выделение буфера.\n" " */\n" " buf = malloc(buflen);\n" " if (buf == NULL) {\n" " perror(\"malloc\");\n" " exit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " /*\n" " * Copy the list of attribute keys to the buffer.\n" " */\n" " buflen = listxattr(argv[1], buf, buflen);\n" " if (buflen == -1) {\n" " perror(\"listxattr\");\n" " exit(EXIT_FAILURE);\n" " }\n" msgstr "" " /*\n" " * Копирование списка ключей атрибутов в буфер.\n" " */\n" " buflen = listxattr(argv[1], buf, buflen);\n" " if (buflen == -1) {\n" " perror(\"listxattr\");\n" " exit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " /*\n" " * Loop over the list of zero terminated strings with the\n" " * attribute keys. Use the remaining buffer length to determine\n" " * the end of the list.\n" " */\n" " key = buf;\n" " while (buflen E 0) {\n" msgstr "" " /*\n" " * Циклический проход по списку строк (завершающихся 0) с\n" " * ключей атрибутов. Используется оставшаяся длина буфера для\n" " * определения конца списка.\n" " */\n" " key = buf;\n" " while (buflen E 0) {\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " /*\n" " * Output attribute key.\n" " */\n" " printf(\"%s: \", key);\n" msgstr "" " /*\n" " * Вывод ключа атрибута.\n" " */\n" " printf(\"%s: \", key);\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " /*\n" " * Determine length of the value.\n" " */\n" " vallen = getxattr(argv[1], key, NULL, 0);\n" " if (vallen == -1)\n" " perror(\"getxattr\");\n" msgstr "" " /*\n" " * Определение длины значения.\n" " */\n" " vallen = getxattr(argv[1], key, NULL, 0);\n" " if (vallen == -1)\n" " perror(\"getxattr\");\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " if (vallen E 0) {\n" msgstr " if (vallen E 0) {\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " /*\n" " * Allocate value buffer.\n" " * One extra byte is needed to append 0x00.\n" " */\n" " val = malloc(vallen + 1);\n" " if (val == NULL) {\n" " perror(\"malloc\");\n" " exit(EXIT_FAILURE);\n" " }\n" msgstr "" " /*\n" " * Выделение буфера под значения.\n" " * Один доп. байт нужен для добавляемого 0x00.\n" " */\n" " val = malloc(vallen + 1);\n" " if (val == NULL) {\n" " perror(\"malloc\");\n" " exit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, fuzzy, no-wrap #| msgid "" #| " /*\n" #| " * Copy value to buffer.\n" #| " */\n" #| " vallen = getxattr(argv[1], key, val, vallen);\n" #| " if (vallen == -1)\n" #| " perror(\"getxattr\");\n" #| " else {\n" #| " /*\n" #| " * Output attribute value.\n" #| " */\n" #| " val[vallen] = 0;\n" #| " printf(\"%s\", val);\n" #| " }\n" msgid "" " /*\n" " * Copy value to buffer.\n" " */\n" " vallen = getxattr(argv[1], key, val, vallen);\n" " if (vallen == -1) {\n" " perror(\"getxattr\");\n" " } else {\n" " /*\n" " * Output attribute value.\n" " */\n" " val[vallen] = 0;\n" " printf(\"%s\", val);\n" " }\n" msgstr "" " /*\n" " * Копирование значения в буфер.\n" " */\n" " vallen = getxattr(argv[1], key, val, vallen);\n" " if (vallen == -1)\n" " perror(\"getxattr\");\n" " else {\n" " /*\n" " * Вывод значения атрибута.\n" " */\n" " val[vallen] = 0;\n" " printf(\"%s\", val);\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " free(val);\n" " } else if (vallen == 0) {\n" " printf(\"Eno valueE\");\n" " }\n" msgstr "" " free(val);\n" " } else if (vallen == 0) {\n" " printf(\"Eнет значенияE\");\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " printf(\"\\en\");\n" msgstr " printf(\"\\en\");\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " /*\n" " * Forward to next attribute key.\n" " */\n" " keylen = strlen(key) + 1;\n" " buflen -= keylen;\n" " key += keylen;\n" " }\n" msgstr "" " /*\n" " * Переход к следующему ключу атрибута.\n" " */\n" " keylen = strlen(key) + 1;\n" " buflen -= keylen;\n" " key += keylen;\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " free(buf);\n" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" " free(buf);\n" " exit(EXIT_SUCCESS);\n" "}\n" #. type: TH #: fedora-40 fedora-rawhide mageia-cauldron #, no-wrap msgid "2023-10-31" msgstr "31 октября 2023 г." #. type: TH #: fedora-40 mageia-cauldron #, no-wrap msgid "Linux man-pages 6.06" msgstr "Linux man-pages 6.06" #. type: TH #: fedora-rawhide #, no-wrap msgid "Linux man-pages 6.7" msgstr "Linux man-pages 6.7" #. 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" #. type: TH #: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "Linux man-pages 6.7" msgid "Linux man-pages (unreleased)" msgstr "Linux man-pages 6.7"