# Russian translation of manpages # This file is distributed under the same license as the manpages-l10n package. # Copyright © of this file: # Azamat Hackimov , 2014. # Dmitriy S. Seregin , 2013. # Dmitry Bolkhovskikh , 2017. # Katrin Kutepova , 2018. # Yuri Kozlov , 2011-2019. # Иван Павлов , 2017. msgid "" msgstr "" "Project-Id-Version: manpages-l10n\n" "POT-Creation-Date: 2024-06-01 05:45+0200\n" "PO-Revision-Date: 2019-10-05 07:56+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 "close" msgstr "close" #. 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 "close - close a file descriptor" msgstr "close - закрывает файловый дескриптор" #. 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 Eunistd.hE>\n" msgstr "B<#include Eunistd.hE>\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\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-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, fuzzy #| msgid "" #| "B() closes a file descriptor, so that it no longer refers to any " #| "file and may be reused. Any record locks (see B(2)) held on the " #| "file it was associated with, and owned by the process, are removed " #| "(regardless of the file descriptor that was used to obtain the lock)." msgid "" "B() closes a file descriptor, so that it no longer refers to any " "file and may be reused. Any record locks (see B(2)) held on the " "file it was associated with, and owned by the process, are removed " "regardless of the file descriptor that was used to obtain the lock. This " "has some unfortunate consequences and one should be extra careful when using " "advisory record locking. See B(2) for discussion of the risks and " "consequences as well as for the (probably preferred) open file description " "locks." 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 "" "If I is the last file descriptor referring to the underlying open file " "description (see B(2)), the resources associated with the open file " "description are freed; if the file descriptor was the last reference to a " "file which has been removed using B(2), the file is deleted." msgstr "" "Если I является последней копией какого-либо файлового дескриптора, " "ссылающегося на используемое описание открытого файла, (см. B(2)), то " "ресурсы, связанные с описанием открытого файла, освобождаются; если файловый " "дескриптор был последней ссылкой на файл, удалённый с помощью B(2), " "то файл окончательно удаляется." #. 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 "" #| "B() returns zero on success. On error, -1 is returned, and " #| "I is set appropriately." msgid "" "B() returns zero on success. On error, -1 is returned, and I " "is set to indicate the error." msgstr "" "При успешном выполнении функции B() возвращается 0. В случае ошибки " "возвращается -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 "I isn't a valid open file descriptor." msgstr "Значение I не является допустимым открытым файловым дескриптором." #. 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" #. Though, it's in doubt whether this error can ever occur; see #. https://lwn.net/Articles/576478/ "Returning EINTR from close()" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The B() call was interrupted by a signal; see B(7)." msgstr "Вызов B() был прерван по сигналу; см. B(7)." #. 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 "An I/O error occurred." msgstr "Произошла ошибка ввода-вывода." #. type: TP #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: TQ #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: 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 "" "On NFS, these errors are not normally reported against the first write which " "exceeds the available storage space, but instead against a subsequent " "B(2), B(2), or B()." msgstr "" "Для NFS об этих ошибках, обычно, не сообщается при первой записи, которая " "превысила доступное пространство памяти, а только в последующем B(), " "B(2) или B()." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "See NOTES for a discussion of why B() should not be retried after an " "error." msgstr "" "Смотрите в ЗАМЕЧАНИЯХ почему B() нельзя вызывать снова после ошибки." #. 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: SH #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "HISTORY" msgstr "ИСТОРИЯ" #. SVr4 documents an additional ENOLINK error condition. #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "POSIX.1-2001, SVr4, 4.3BSD." msgstr "POSIX.1-2001, SVr4, 4.3BSD." #. 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 "" "A successful close does not guarantee that the data has been successfully " "saved to disk, as the kernel uses the buffer cache to defer writes. " "Typically, filesystems do not flush buffers when a file is closed. If you " "need to be sure that the data is physically stored on the underlying disk, " "use B(2). (It will depend on the disk hardware at this point.)" msgstr "" "Выполнение закрытия без ошибок не гарантирует, что данные были успешно " "записаны на диск, так как в ядре используется буферный кэш для отложенных " "записей. Как правило, файловые системы не записывают буферы при закрытии " "файла. Если требуется гарантировать физическую запись на используемый диск, " "то можно использовать B(2) (дальше всё будет зависеть от аппаратной " "составляющей диска)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The close-on-exec file descriptor flag can be used to ensure that a file " "descriptor is automatically closed upon a successful B(2); see " "B(2) for details." msgstr "" "Флаг файлового дескриптора закрытие-при-exec можно использовать для гарантии " "того, что файловый дескриптор автоматически закроется при успешном " "выполнении B(2); подробности смотрите в B(2)." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Multithreaded processes and close()" msgstr "" #. #-#-#-#-# archlinux: close.2.pot (PACKAGE VERSION) #-#-#-#-# #. Date: Tue, 4 Sep 2007 13:57:35 +0200 #. From: Fredrik Noring #. One such race involves signals and ERESTARTSYS. If a file descriptor #. in use by a system call is closed and then reused by e.g. an #. independent open() in some unrelated thread, before the original system #. call has restarted after ERESTARTSYS, the original system call will #. later restart with the reused file descriptor. This is most likely a #. serious programming error. #. type: Plain text #. #-#-#-#-# debian-bookworm: close.2.pot (PACKAGE VERSION) #-#-#-#-# #. Date: Tue, 4 Sep 2007 13:57:35 +0200 #. From: Fredrik Noring #. One such race involves signals and ERESTARTSYS. If a file descriptor #. in use by a system call is closed and then reused by e.g. an #. independent open() in some unrelated thread, before the original system #. call has restarted after ERESTARTSYS, the original system call will #. later restart with the reused file descriptor. This is most likely a #. serious programming error. #. type: Plain text #. #-#-#-#-# debian-unstable: close.2.pot (PACKAGE VERSION) #-#-#-#-# #. Date: Tue, 4 Sep 2007 13:57:35 +0200 #. From: Fredrik Noring #. One such race involves signals and ERESTARTSYS. If a file descriptor #. in use by a system call is closed and then reused by e.g. an #. independent open() in some unrelated thread, before the original system #. call has restarted after ERESTARTSYS, the original system call will #. later restart with the reused file descriptor. This is most likely a #. serious programming error. #. type: Plain text #. #-#-#-#-# fedora-40: close.2.pot (PACKAGE VERSION) #-#-#-#-# #. type: Plain text #. #-#-#-#-# fedora-rawhide: close.2.pot (PACKAGE VERSION) #-#-#-#-# #. type: Plain text #. #-#-#-#-# mageia-cauldron: close.2.pot (PACKAGE VERSION) #-#-#-#-# #. Date: Tue, 4 Sep 2007 13:57:35 +0200 #. From: Fredrik Noring #. One such race involves signals and ERESTARTSYS. If a file descriptor #. in use by a system call is closed and then reused by e.g. an #. independent open() in some unrelated thread, before the original system #. call has restarted after ERESTARTSYS, the original system call will #. later restart with the reused file descriptor. This is most likely a #. serious programming error. #. type: Plain text #. #-#-#-#-# opensuse-leap-15-6: close.2.pot (PACKAGE VERSION) #-#-#-#-# #. Date: Tue, 4 Sep 2007 13:57:35 +0200 #. From: Fredrik Noring #. One such race involves signals and ERESTARTSYS. If a file descriptor #. in use by a system call is closed and then reused by e.g. an #. independent open() in some unrelated thread, before the original system #. call has restarted after ERESTARTSYS, the original system call will #. later restart with the reused file descriptor. This is most likely a #. serious programming error. #. type: Plain text #. #-#-#-#-# opensuse-tumbleweed: close.2.pot (PACKAGE VERSION) #-#-#-#-# #. Date: Tue, 4 Sep 2007 13:57:35 +0200 #. From: Fredrik Noring #. One such race involves signals and ERESTARTSYS. If a file descriptor #. in use by a system call is closed and then reused by e.g. an #. independent open() in some unrelated thread, before the original system #. call has restarted after ERESTARTSYS, the original system call will #. later restart with the reused file descriptor. This is most likely a #. serious programming error. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "It is probably unwise to close file descriptors while they may be in use by " "system calls in other threads in the same process. Since a file descriptor " "may be reused, there are some obscure race conditions that may cause " "unintended side effects." msgstr "" "Вероятно неблагоразумно закрывать дескрипторы файла, в то время как они " "могут использоваться системными вызовами других нитей того же процесса. Так " "как файловый дескриптор может использоваться повторно, есть некоторые " "неясные условия возникновения гонок, которые могут вызвать непреднамеренные " "побочные эффекты." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Furthermore, consider the following scenario where two threads are " "performing operations on the same file descriptor:" msgstr "" #. type: IP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "(1)" msgstr "(1)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "One thread is blocked in an I/O system call on the file descriptor. For " "example, it is trying to B(2) to a pipe that is already full, or " "trying to B(2) from a stream socket which currently has no available " "data." msgstr "" #. type: IP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "(2)" msgstr "(2)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "close - close a file descriptor" msgid "Another thread closes the file descriptor." msgstr "close - закрывает файловый дескриптор" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The behavior in this situation varies across systems. On some systems, when " "the file descriptor is closed, the blocking system call returns immediately " "with an error." msgstr "" #. 'struct file' in kernel-speak #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On Linux (and possibly some other systems), the behavior is different: the " "blocking I/O system call holds a reference to the underlying open file " "description, and this reference keeps the description open until the I/O " "system call completes. (See B(2) for a discussion of open file " "descriptions.) Thus, the blocking system call in the first thread may " "successfully complete after the B() in the second thread." msgstr "" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Dealing with error returns from close()" msgstr "Обработка ошибки, возвращённой close()" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A careful programmer will check the return value of B(), since it is " "quite possible that errors on a previous B(2) operation are reported " "only on the final B() that releases the open file description. " "Failing to check the return value when closing a file may lead to I " "loss of data. This can especially be observed with NFS and with disk quota." msgstr "" "Аккуратный программист всегда проверяет возвращаемое B() значение, " "так как очень вероятно, что об ошибках предыдущей операции B(2) будет " "сообщено только при последнем вызове B(), который освобождает " "описание открытого файла. Невыполнение проверки возвращаемого значение при " "закрытии файла может привести к I<неучтённой> потере данных. Это особенно " "часто встречается с NFS и дисковыми квотами." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Note, however, that a failure return should be used only for diagnostic " "purposes (i.e., a warning to the application that there may still be I/O " "pending or there may have been failed I/O) or remedial purposes (e.g., " "writing the file once more or creating a backup)." msgstr "" "Однако заметим, что возвращаемая ошибка должна использоваться только для " "диагностики (т. е., предупредить приложение, что, возможно, есть " "незаконченные операции ввода-вывода или произошла ошибка ввода-вывода) или " "исправления (например, повторной записи файла или создания резервной копии)." #. The file descriptor is released early in close(); #. close() ==> __close_fd(): #. __put_unused_fd() ==> __clear_open_fd() #. return filp_close(file, files); #. The errors are returned by filp_close() after the FD has been #. cleared for re-use. #. filp_close() #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Retrying the B() after a failure return is the wrong thing to do, " "since this may cause a reused file descriptor from another thread to be " "closed. This can occur because the Linux kernel I releases the file " "descriptor early in the close operation, freeing it for reuse; the steps " "that may return an error, such as flushing data to the filesystem or device, " "occur only later in the close operation." msgstr "" "Повторный вызов B() после получения ошибки делать не стоит, так как " "это может привести к закрытию повторно использованного файлового дескриптора " "другой нити. Это может произойти из-за того, что ядро Linux I<всегда> " "освобождает файловый дескриптор в самом начале операции закрытия, делая его " "доступным для повторного использования; шаги, которые могут вернуть ошибку, " "такие как сброс данных в файловую систему или устройство, происходят только " "после операции закрытия." #. FreeBSD documents this explicitly. From the look of the source code #. SVR4, ancient SunOS, later Solaris, and AIX all do this. #. Issue 8 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Many other implementations similarly always close the file descriptor " "(except in the case of B, meaning that the file descriptor was " "invalid) even if they subsequently report an error on return from " "B(). POSIX.1 is currently silent on this point, but there are plans " "to mandate this behavior in the next major release of the standard." msgstr "" "Многие другие реализации поступают схожим образом и всегда закрывают " "файловый дескриптор (за исключением случая B, означающего " "некорректный файловый дескриптор) даже, если они затем возвратят ошибку " "B(). В POSIX.1 ничего не сказано на этот счёт, но есть планы " "узаконить такое поведение в следующем выпуске стандарта." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A careful programmer who wants to know about I/O errors may precede " "B() with a call to B(2)." 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 "" "The B error is a somewhat special case. Regarding the B " "error, POSIX.1-2008 says:" msgstr "" "Ошибка B является особым случаем. Про B в POSIX.1-2008 сказано:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B() is interrupted by a signal that is to be caught, it shall " "return -1 with I set to B and the state of I is " "unspecified." msgstr "" "Если B() прерван сигналом, который будет обработан, то вызов должен " "вернуть -1, а I присвоить значение B; при этом состояние " "I не определено." #. FIXME . for later review when Issue 8 is one day released... #. POSIX proposes further changes for EINTR #. http://austingroupbugs.net/tag_view_page.php?tag_id=8 #. http://austingroupbugs.net/view.php?id=529 #. FIXME . #. Review the following glibc bug later #. https://sourceware.org/bugzilla/show_bug.cgi?id=14627 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This permits the behavior that occurs on Linux and many other " "implementations, where, as with other errors that may be reported by " "B(), the file descriptor is guaranteed to be closed. However, it " "also permits another possibility: that the implementation returns an " "B error and keeps the file descriptor open. (According to its " "documentation, HP-UX's B() does this.) The caller must then once " "more use B() to close the file descriptor, to avoid file descriptor " "leaks. This divergence in implementation behaviors provides a difficult " "hurdle for portable applications, since on many implementations, B() " "must not be called again after an B error, and on at least one, " "B() must be called again. There are plans to address this conundrum " "for the next major release of the POSIX.1 standard." msgstr "" "Этим допускается режим работы, действующий в Linux и многих других " "реализациях, где как и при других ошибках, которые может вернуть B(), " "файловый дескриптор гарантированно закрывается. Однако, это также допускает " "и другой режим: реализация возвращает ошибку B и оставляет файловый " "дескриптор открытым (согласно документации, так делает B() в HP-UX). " "Вызывающий должен позднее ещё раз вызвать B() для закрытия файлового " "дескриптора, чтобы не допустить утечек файловых дескрипторов. Такое " "расхождение в поведении реализаций является сложным препятствием для " "переносимых приложений, так как во многих реализациях B() не должен " "вызываться ещё раз после получения ошибки B и, по крайней мере, в " "одной B() нужно вызвать снова. Есть планы разгадать эту загадку в " "следующей большой версии стандарта POSIX.1." #. 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(2), B(2), B(2), B(2), B(2), " "B(2), B(3)" msgstr "" "B(2), B(2), B(2), B(2), B(2), " "B(2), B(3)" #. type: TH #: debian-bookworm #, no-wrap msgid "2022-10-30" msgstr "30 октября 2022 г." #. type: TH #: debian-bookworm #, no-wrap msgid "Linux man-pages 6.03" msgstr "Linux man-pages 6.03" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 msgid "" "B() closes a file descriptor, so that it no longer refers to any " "file and may be reused. Any record locks (see B(2)) held on the " "file it was associated with, and owned by the process, are removed " "(regardless of the file descriptor that was used to obtain the lock)." msgstr "" "Функция B() закрывает файловый дескриптор, который после этого не " "ссылается ни на один и файл и может быть использован повторно. Все " "блокировки (см. B(2)), связанные с соответствующим файлом и " "принадлежащие процессу, снимаются (независимо от того, какой файловый " "дескриптор был ли использован для установки блокировки)." #. type: TP #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "B, B" msgstr "B, B" #. SVr4 documents an additional ENOLINK error condition. #. type: Plain text #: debian-bookworm msgid "POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD." msgstr "POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD." #. 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" #. Date: Tue, 4 Sep 2007 13:57:35 +0200 #. From: Fredrik Noring #. One such race involves signals and ERESTARTSYS. If a file descriptor #. in use by a system call is closed and then reused by e.g. an #. independent open() in some unrelated thread, before the original system #. call has restarted after ERESTARTSYS, the original system call will #. later restart with the reused file descriptor. This is most likely a #. serious programming error. #. type: Plain text #: fedora-40 fedora-rawhide msgid "" "When dealing with sockets, you have to be sure that there is no B(2) " "still blocking on it on another thread, otherwise it might block forever, " "since no more messages will be send via the socket. Be sure to use " "B(2) to shut down all parts the connection before closing the " "socket." msgstr "" #. 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"