diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-06-17 10:52:33 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-06-17 10:52:33 +0000 |
commit | 2c3307fb903f427be3d021c5780b75cac9af2ce8 (patch) | |
tree | 65cf431f40b7481d81ae2dfce9576342686448f7 /po/ru/man2/ptrace.2.po | |
parent | Releasing progress-linux version 4.22.0-1~progress7.99u1. (diff) | |
download | manpages-l10n-2c3307fb903f427be3d021c5780b75cac9af2ce8.tar.xz manpages-l10n-2c3307fb903f427be3d021c5780b75cac9af2ce8.zip |
Merging upstream version 4.23.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'po/ru/man2/ptrace.2.po')
-rw-r--r-- | po/ru/man2/ptrace.2.po | 738 |
1 files changed, 605 insertions, 133 deletions
diff --git a/po/ru/man2/ptrace.2.po b/po/ru/man2/ptrace.2.po index e0c35c23..c41ce39d 100644 --- a/po/ru/man2/ptrace.2.po +++ b/po/ru/man2/ptrace.2.po @@ -4,14 +4,14 @@ # Alexey, 2016. # Azamat Hackimov <azamat.hackimov@gmail.com>, 2014-2017. # kogamatranslator49 <r.podarov@yandex.ru>, 2015. -# Kogan, Darima <silverdk99@gmail.com>, 2014. +# Darima Kogan <silverdk99@gmail.com>, 2014. # Max Is <ismax799@gmail.com>, 2016. # 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:05+0100\n" +"POT-Creation-Date: 2024-06-01 06:13+0200\n" "PO-Revision-Date: 2019-10-12 08:58+0300\n" "Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n" "Language-Team: Russian <man-pages-ru-talks@lists.sourceforge.net>\n" @@ -19,9 +19,9 @@ msgstr "" "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" +"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 @@ -32,16 +32,17 @@ msgid "ptrace" msgstr "ptrace" #. type: TH -#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#: archlinux debian-unstable opensuse-tumbleweed #, no-wrap -msgid "2023-10-31" -msgstr "31 октября 2023 г." +msgid "2024-05-02" +msgstr "2 мая 2024 г." #. type: TH -#: archlinux fedora-40 fedora-rawhide mageia-cauldron -#, no-wrap -msgid "Linux man-pages 6.06" -msgstr "Linux man-pages 6.06" +#: 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 @@ -84,11 +85,13 @@ msgid "B<#include E<lt>sys/ptrace.hE<gt>>\n" msgstr "B<#include E<lt>sys/ptrace.hE<gt>>\n" #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed -#, no-wrap +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed +#, fuzzy, no-wrap +#| msgid "" +#| "B<long ptrace(enum __ptrace_request >I<request>B<, pid_t >I<pid>B<,>\n" +#| "B< void *>I<addr>B<, void *>I<data>B<);>\n" msgid "" -"B<long ptrace(enum __ptrace_request >I<request>B<, pid_t >I<pid>B<,>\n" +"B<long ptrace(enum __ptrace_request >I<op>B<, pid_t >I<pid>B<,>\n" "B< void *>I<addr>B<, void *>I<data>B<);>\n" msgstr "" "B<long ptrace(enum __ptrace_request >I<request>B<, pid_t >I<pid>B<,>\n" @@ -173,8 +176,18 @@ msgstr "" "процесса при помощи B<PTRACE_ATTACH> или B<PTRACE_SEIZE>." #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "While being traced, the tracee will stop each time a signal is delivered, " +#| "even if the signal is being ignored. (An exception is B<SIGKILL>, which " +#| "has its usual effect.) The tracer will be notified at its next call to " +#| "B<waitpid>(2) (or one of the related \"wait\" system calls); that call " +#| "will return a I<status> value containing information that indicates the " +#| "cause of the stop in the tracee. While the tracee is stopped, the tracer " +#| "can use various ptrace requests to inspect and modify the tracee. The " +#| "tracer then causes the tracee to continue, optionally ignoring the " +#| "delivered signal (or even delivering a different signal instead)." msgid "" "While being traced, the tracee will stop each time a signal is delivered, " "even if the signal is being ignored. (An exception is B<SIGKILL>, which has " @@ -182,7 +195,7 @@ msgid "" "B<waitpid>(2) (or one of the related \"wait\" system calls); that call will " "return a I<status> value containing information that indicates the cause of " "the stop in the tracee. While the tracee is stopped, the tracer can use " -"various ptrace requests to inspect and modify the tracee. The tracer then " +"various ptrace operations to inspect and modify the tracee. The tracer then " "causes the tracee to continue, optionally ignoring the delivered signal (or " "even delivering a different signal instead)." msgstr "" @@ -224,9 +237,10 @@ msgstr "" "B<PTRACE_DETACH>." #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed -msgid "The value of I<request> determines the action to be performed:" +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed +#, fuzzy +#| msgid "The value of I<request> determines the action to be performed:" +msgid "The value of I<op> determines the operation to be performed:" msgstr "Значение аргумента I<request> определяет выполняемое действие:" #. type: TP @@ -237,12 +251,16 @@ msgid "B<PTRACE_TRACEME>" msgstr "B<PTRACE_TRACEME>" #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "Indicate that this process is to be traced by its parent. A process " +#| "probably shouldn't make this request if its parent isn't expecting to " +#| "trace it. (I<pid>, I<addr>, and I<data> are ignored.)" msgid "" "Indicate that this process is to be traced by its parent. A process " -"probably shouldn't make this request if its parent isn't expecting to trace " -"it. (I<pid>, I<addr>, and I<data> are ignored.)" +"probably shouldn't make this operation if its parent isn't expecting to " +"trace it. (I<pid>, I<addr>, and I<data> are ignored.)" msgstr "" "Указывает, что этот процесс будет трассирован своим родительским процессом. " "Вероятно, процессу не следует посылать этот запрос, если родительский " @@ -250,12 +268,18 @@ msgstr "" "игнорируются)." #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed -msgid "" -"The B<PTRACE_TRACEME> request is used only by the tracee; the remaining " -"requests are used only by the tracer. In the following requests, I<pid> " -"specifies the thread ID of the tracee to be acted on. For requests other " +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "The B<PTRACE_TRACEME> request is used only by the tracee; the remaining " +#| "requests are used only by the tracer. In the following requests, I<pid> " +#| "specifies the thread ID of the tracee to be acted on. For requests other " +#| "than B<PTRACE_ATTACH>, B<PTRACE_SEIZE>, B<PTRACE_INTERRUPT>, and " +#| "B<PTRACE_KILL>, the tracee must be stopped." +msgid "" +"The B<PTRACE_TRACEME> operation is used only by the tracee; the remaining " +"operations are used only by the tracer. In the following operations, I<pid> " +"specifies the thread ID of the tracee to be acted on. For operations other " "than B<PTRACE_ATTACH>, B<PTRACE_SEIZE>, B<PTRACE_INTERRUPT>, and " "B<PTRACE_KILL>, the tracee must be stopped." msgstr "" @@ -267,26 +291,33 @@ msgstr "" "трассируемая нить должна быть остановлена." #. type: TP -#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B<PTRACE_EVENT_EXIT>" msgid "B<PTRACE_PEEKTEXT>" msgstr "B<PTRACE_EVENT_EXIT>" #. type: TQ -#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B<PTRACE_PEEKUSER>" msgid "B<PTRACE_PEEKDATA>" msgstr "B<PTRACE_PEEKUSER>" #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "Read a word at the address I<addr> in the tracee's memory, returning the " +#| "word as the result of the B<ptrace>() call. Linux does not have " +#| "separate text and data address spaces, so these two requests are " +#| "currently equivalent. (I<data> is ignored; but see NOTES.)" msgid "" "Read a word at the address I<addr> in the tracee's memory, returning the " "word as the result of the B<ptrace>() call. Linux does not have separate " -"text and data address spaces, so these two requests are currently " +"text and data address spaces, so these two operations are currently " "equivalent. (I<data> is ignored; but see NOTES.)" msgstr "" "Читает слово по адресу I<addr>, находящееся в памяти трассируемой нити, " @@ -321,26 +352,32 @@ msgstr "" "игнорируется; но смотрите ЗАМЕЧАНИЯ)." #. type: TP -#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B<PTRACE_POKEUSER>" msgid "B<PTRACE_POKETEXT>" msgstr "B<PTRACE_POKEUSER>" #. type: TQ -#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B<PTRACE_POKEUSER>" msgid "B<PTRACE_POKEDATA>" msgstr "B<PTRACE_POKEUSER>" #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "Copy the word I<data> to the address I<addr> in the tracee's memory. As " +#| "for B<PTRACE_PEEKTEXT> and B<PTRACE_PEEKDATA>, these two requests are " +#| "currently equivalent." msgid "" "Copy the word I<data> to the address I<addr> in the tracee's memory. As for " -"B<PTRACE_PEEKTEXT> and B<PTRACE_PEEKDATA>, these two requests are currently " -"equivalent." +"B<PTRACE_PEEKTEXT> and B<PTRACE_PEEKDATA>, these two operations are " +"currently equivalent." msgstr "" "Копирует слово I<data> в память трассируемой нити по адресу I<addr>. В " "настоящее время, как и для B<PTRACE_PEEKTEXT> и B<PTRACE_PEEKDATA>, эти два " @@ -372,14 +409,16 @@ msgstr "" "область USER вносить запрещено." #. type: TP -#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B<PTRACE_TRACEME>" msgid "B<PTRACE_GETREGS>" msgstr "B<PTRACE_TRACEME>" #. type: TQ -#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B<PTRACE_MODE_FSCREDS>" msgid "B<PTRACE_GETFPREGS>" @@ -435,14 +474,16 @@ msgstr "" "реальное количество возвращаемых байт." #. type: TP -#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B<PTRACE_TRACEME>" msgid "B<PTRACE_SETREGS>" msgstr "B<PTRACE_TRACEME>" #. type: TQ -#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B<PTRACE_MODE_FSCREDS>" msgid "B<PTRACE_SETFPREGS>" @@ -1047,14 +1088,16 @@ msgstr "" "нити (значение I<addr> игнорируется)." #. type: TP -#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B<PTRACE_KILL>" msgid "B<PTRACE_SYSCALL>" msgstr "B<PTRACE_KILL>" #. type: TQ -#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "PTRACE_SINGLESTEP stops" msgid "B<PTRACE_SINGLESTEP>" @@ -1098,26 +1141,27 @@ msgstr "B<PTRACE_SET_SYSCALL> (начиная с Linux 2.6.16)" #. see change_syscall in tools/testing/selftests/seccomp/seccomp_bpf.c #. and also strace's linux/*/set_scno.c files. #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "When in syscall-enter-stop, change the number of the system call that is " "about to be executed to the number specified in the I<data> argument. The " -"I<addr> argument is ignored. This request is currently supported only on " +"I<addr> argument is ignored. This operation is currently supported only on " "arm (and arm64, though only for backwards compatibility), but most other " "architectures have other means of accomplishing this (usually by changing " "the register that the userland code passed the system call number in)." msgstr "" #. type: TP -#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B<PTRACE_TRACEME>" msgid "B<PTRACE_SYSEMU>" msgstr "B<PTRACE_TRACEME>" #. type: TQ -#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B<PTRACE_SYSEMU>, B<PTRACE_SYSEMU_SINGLESTEP> (since Linux 2.6.14)" msgid "B<PTRACE_SYSEMU_SINGLESTEP> (since Linux 2.6.14)" @@ -1125,16 +1169,24 @@ msgstr "B<PTRACE_SYSEMU>, B<PTRACE_SYSEMU_SINGLESTEP> (начиная с Linux 2 #. As at 3.7 #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "For B<PTRACE_SYSEMU>, continue and stop on entry to the next system call, " +#| "which will not be executed. See the documentation on syscall-stops " +#| "below. For B<PTRACE_SYSEMU_SINGLESTEP>, do the same but also singlestep " +#| "if not a system call. This call is used by programs like User Mode Linux " +#| "that want to emulate all the tracee's system calls. The I<data> argument " +#| "is treated as for B<PTRACE_CONT>. The I<addr> argument is ignored. " +#| "These requests are currently supported only on x86." msgid "" "For B<PTRACE_SYSEMU>, continue and stop on entry to the next system call, " "which will not be executed. See the documentation on syscall-stops below. " "For B<PTRACE_SYSEMU_SINGLESTEP>, do the same but also singlestep if not a " "system call. This call is used by programs like User Mode Linux that want " "to emulate all the tracee's system calls. The I<data> argument is treated " -"as for B<PTRACE_CONT>. The I<addr> argument is ignored. These requests are " -"currently supported only on x86." +"as for B<PTRACE_CONT>. The I<addr> argument is ignored. These operations " +"are currently supported only on x86." msgstr "" "Действие B<PTRACE_SYSEMU> приводит к продолжению и остановке на входе в " "следующий системный вызов, который не будет выполнен . Смотрите описание по " @@ -1808,8 +1860,23 @@ msgstr "" "и когда нити многонитевой процесса разрушаются при B<execve>(2)." #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "The tracer cannot assume that the ptrace-stopped tracee exists. There " +#| "are many scenarios when the tracee may die while stopped (such as " +#| "B<SIGKILL>). Therefore, the tracer must be prepared to handle an " +#| "B<ESRCH> error on any ptrace operation. Unfortunately, the same error is " +#| "returned if the tracee exists but is not ptrace-stopped (for commands " +#| "which require a stopped tracee), or if it is not traced by the process " +#| "which issued the ptrace call. The tracer needs to keep track of the " +#| "stopped/running state of the tracee, and interpret B<ESRCH> as \"tracee " +#| "died unexpectedly\" only if it knows that the tracee has been observed to " +#| "enter ptrace-stop. Note that there is no guarantee that " +#| "I<waitpid(WNOHANG)> will reliably report the tracee's death status if a " +#| "ptrace operation returned B<ESRCH>. I<waitpid(WNOHANG)> may return 0 " +#| "instead. In other words, the tracee may be \"not yet fully dead\", but " +#| "already refusing ptrace requests." msgid "" "The tracer cannot assume that the ptrace-stopped tracee exists. There are " "many scenarios when the tracee may die while stopped (such as B<SIGKILL>). " @@ -1823,7 +1890,7 @@ msgid "" "there is no guarantee that I<waitpid(WNOHANG)> will reliably report the " "tracee's death status if a ptrace operation returned B<ESRCH>. " "I<waitpid(WNOHANG)> may return 0 instead. In other words, the tracee may be " -"\"not yet fully dead\", but already refusing ptrace requests." +"\"not yet fully dead\", but already refusing ptrace operations." msgstr "" "Трассировщик не может предполагать, что трассируемая нить, остановленная по " "ptrace, существует. Если много случаев, когда трассируемая нить может быть " @@ -2027,8 +2094,8 @@ msgstr "" "различить, если проверить значение I<statusE<gt>E<gt>8>, и, если есть " "неоднозначность этого значения, то запросив B<PTRACE_GETSIGINFO> (замечание: " "для выполнения этой проверки не может использоваться макрос " -"I<WSTOPSIG(status)>, так как он возвращает значение I<(statusE<gt>E<gt>8)\\ " -"&\\ 0xff>)." +"I<WSTOPSIG(status)>, так как он возвращает значение I<(statusE<gt>E<gt>8)\\ &" +"\\ 0xff>)." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide @@ -2038,8 +2105,21 @@ msgid "Signal-delivery-stop" msgstr "Signal-delivery-stop" #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "When a (possibly multithreaded) process receives any signal except " +#| "B<SIGKILL>, the kernel selects an arbitrary thread which handles the " +#| "signal. (If the signal is generated with B<tgkill>(2), the target thread " +#| "can be explicitly selected by the caller.) If the selected thread is " +#| "traced, it enters signal-delivery-stop. At this point, the signal is not " +#| "yet delivered to the process, and can be suppressed by the tracer. If " +#| "the tracer doesn't suppress the signal, it passes the signal to the " +#| "tracee in the next ptrace restart request. This second step of signal " +#| "delivery is called I<signal injection> in this manual page. Note that if " +#| "the signal is blocked, signal-delivery-stop doesn't happen until the " +#| "signal is unblocked, with the usual exception that B<SIGSTOP> can't be " +#| "blocked." msgid "" "When a (possibly multithreaded) process receives any signal except " "B<SIGKILL>, the kernel selects an arbitrary thread which handles the " @@ -2048,7 +2128,7 @@ msgid "" "traced, it enters signal-delivery-stop. At this point, the signal is not " "yet delivered to the process, and can be suppressed by the tracer. If the " "tracer doesn't suppress the signal, it passes the signal to the tracee in " -"the next ptrace restart request. This second step of signal delivery is " +"the next ptrace restart operation. This second step of signal delivery is " "called I<signal injection> in this manual page. Note that if the signal is " "blocked, signal-delivery-stop doesn't happen until the signal is unblocked, " "with the usual exception that B<SIGSTOP> can't be blocked." @@ -2109,12 +2189,17 @@ msgid "ptrace(PTRACE_restart, pid, 0, sig)\n" msgstr "ptrace(PTRACE_restart, pid, 0, sig)\n" #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed -msgid "" -"where B<PTRACE_restart> is one of the restarting ptrace requests. If I<sig> " -"is 0, then a signal is not delivered. Otherwise, the signal I<sig> is " -"delivered. This operation is called I<signal injection> in this manual " +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "where B<PTRACE_restart> is one of the restarting ptrace requests. If " +#| "I<sig> is 0, then a signal is not delivered. Otherwise, the signal " +#| "I<sig> is delivered. This operation is called I<signal injection> in " +#| "this manual page, to distinguish it from signal-delivery-stop." +msgid "" +"where B<PTRACE_restart> is one of the restarting ptrace operations. If " +"I<sig> is 0, then a signal is not delivered. Otherwise, the signal I<sig> " +"is delivered. This operation is called I<signal injection> in this manual " "page, to distinguish it from signal-delivery-stop." msgstr "" "где B<PTRACE_restart> — одно из перезапускающих действий ptrace. Если " @@ -2176,10 +2261,16 @@ msgstr "" "B<tgkill>(2)." #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "The fact that signal injection requests may be ignored when restarting " +#| "the tracee after ptrace stops that are not signal-delivery-stops is a " +#| "cause of confusion among ptrace users. One typical scenario is that the " +#| "tracer observes group-stop, mistakes it for signal-delivery-stop, " +#| "restarts the tracee with" msgid "" -"The fact that signal injection requests may be ignored when restarting the " +"The fact that signal injection operations may be ignored when restarting the " "tracee after ptrace stops that are not signal-delivery-stops is a cause of " "confusion among ptrace users. One typical scenario is that the tracer " "observes group-stop, mistakes it for signal-delivery-stop, restarts the " @@ -2379,11 +2470,11 @@ msgstr "" #| msgid "" #| "The kernel behavior described in the previous paragraph causes a problem " #| "with transparent handling of stopping signals. If the tracer restarts " -#| "the tracee after group-stop, the stopping signal is effectively " -#| "ignored\\(emthe tracee doesn't remain stopped, it runs. If the tracer " -#| "doesn't restart the tracee before entering into the next B<waitpid>(2), " -#| "future B<SIGCONT> signals will not be reported to the tracer; this would " -#| "cause the B<SIGCONT> signals to have no effect on the tracee." +#| "the tracee after group-stop, the stopping signal is effectively ignored" +#| "\\(emthe tracee doesn't remain stopped, it runs. If the tracer doesn't " +#| "restart the tracee before entering into the next B<waitpid>(2), future " +#| "B<SIGCONT> signals will not be reported to the tracer; this would cause " +#| "the B<SIGCONT> signals to have no effect on the tracee." msgid "" "The kernel behavior described in the previous paragraph causes a problem " "with transparent handling of stopping signals. If the tracer restarts the " @@ -2737,13 +2828,18 @@ msgid "I<si_code> E<lt>= 0" msgstr "I<si_code> E<lt>= 0" #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "B<SIGTRAP> was delivered as a result of a user-space action, for example, " +#| "a system call (B<tgkill>(2), B<kill>(2), B<sigqueue>(3), etc.), " +#| "expiration of a POSIX timer, change of state on a POSIX message queue, or " +#| "completion of an asynchronous I/O request." msgid "" "B<SIGTRAP> was delivered as a result of a user-space action, for example, a " "system call (B<tgkill>(2), B<kill>(2), B<sigqueue>(3), etc.), expiration of " "a POSIX timer, change of state on a POSIX message queue, or completion of an " -"asynchronous I/O request." +"asynchronous I/O operation." msgstr "" "B<SIGTRAP> был доставлен в результате действия из пространства пользователя, " "например, системного вызова (B<tgkill>(2), B<kill>(2), B<sigqueue>(3) и т. " @@ -3223,10 +3319,11 @@ msgstr "" "отправки каких-либо, используйте действие B<PTRACE_INTERRUPT>." #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed -msgid "The request" -msgstr "Запрос" +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed +#, fuzzy +#| msgid "Special operations" +msgid "The operation" +msgstr "Специальные операции" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide @@ -3673,19 +3770,18 @@ msgid "RETURN VALUE" msgstr "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed #, fuzzy #| msgid "" #| "On success, the B<PTRACE_PEEK*> requests return the requested data (but " #| "see NOTES), the B<PTRACE_SECCOMP_GET_FILTER> request returns the number " #| "of instructions in the BPF program, and other requests return zero." msgid "" -"On success, the B<PTRACE_PEEK*> requests return the requested data (but see " -"NOTES), the B<PTRACE_SECCOMP_GET_FILTER> request returns the number of " -"instructions in the BPF program, the B<PTRACE_GET_SYSCALL_INFO> request " +"On success, the B<PTRACE_PEEK*> operations return the requested data (but " +"see NOTES), the B<PTRACE_SECCOMP_GET_FILTER> operation returns the number of " +"instructions in the BPF program, the B<PTRACE_GET_SYSCALL_INFO> operation " "returns the number of bytes available to be written by the kernel, and other " -"requests return zero." +"operations return zero." msgstr "" "При успешном выполнении запросы B<PTRACE_PEEK*> возвращают запрашиваемые " "данные (но смотрите ЗАМЕЧАНИЯ), запрос B<PTRACE_SECCOMP_GET_FILTER> " @@ -3693,8 +3789,7 @@ msgstr "" "возвращают ноль." #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed #, fuzzy #| msgid "" #| "On error, all requests return -1, and I<errno> is set appropriately. " @@ -3702,9 +3797,9 @@ msgstr "" #| "-1, the caller must clear I<errno> before the call, and then check it " #| "afterward to determine whether or not an error occurred." msgid "" -"On error, all requests return -1, and I<errno> is set to indicate the " -"error. Since the value returned by a successful B<PTRACE_PEEK*> request may " -"be -1, the caller must clear I<errno> before the call, and then check it " +"On error, all operations return -1, and I<errno> is set to indicate the " +"error. Since the value returned by a successful B<PTRACE_PEEK*> operation " +"may be -1, the caller must clear I<errno> before the call, and then check it " "afterward to determine whether or not an error occurred." msgstr "" "При ошибке для всех действий возвращается -1, а переменной I<errno> " @@ -3778,13 +3873,17 @@ msgid "B<EIO>" msgstr "B<EIO>" #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "I<request> is invalid, or an attempt was made to read from or write to an " +#| "invalid area in the tracer's or the tracee's memory, or there was a word-" +#| "alignment violation, or an invalid signal was specified during a restart " +#| "request." msgid "" -"I<request> is invalid, or an attempt was made to read from or write to an " -"invalid area in the tracer's or the tracee's memory, or there was a word-" -"alignment violation, or an invalid signal was specified during a restart " -"request." +"I<op> is invalid, or an attempt was made to read from or write to an invalid " +"area in the tracer's or the tracee's memory, or there was a word-alignment " +"violation, or an invalid signal was specified during a restart operation." msgstr "" "Задано неверное значение I<request>, или была попытка чтения или записи " "информации в неподходящую область памяти трассируемой нити или " @@ -3832,11 +3931,15 @@ 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 +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "The specified process does not exist, or is not currently being traced by " +#| "the caller, or is not stopped (for requests that require a stopped " +#| "tracee)." msgid "" "The specified process does not exist, or is not currently being traced by " -"the caller, or is not stopped (for requests that require a stopped tracee)." +"the caller, or is not stopped (for operations that require a stopped tracee)." msgstr "" "Указанный процесс не существует, в данный момент не трассируется вызывающим " "процессом, или не остановлен (для выполнения действий, которые требуют " @@ -3889,17 +3992,23 @@ msgstr "" #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "NOTES" -msgstr "ЗАМЕЧАНИЯ" +msgstr "ПРИМЕЧАНИЯ" #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "Although arguments to B<ptrace>() are interpreted according to the " +#| "prototype given, glibc currently declares B<ptrace>() as a variadic " +#| "function with only the I<request> argument fixed. It is recommended to " +#| "always supply four arguments, even if the requested operation does not " +#| "use them, setting unused/ignored arguments to I<0L> or I<(void\\ *)\\ 0>." msgid "" "Although arguments to B<ptrace>() are interpreted according to the " "prototype given, glibc currently declares B<ptrace>() as a variadic " -"function with only the I<request> argument fixed. It is recommended to " -"always supply four arguments, even if the requested operation does not use " -"them, setting unused/ignored arguments to I<0L> or I<(void\\ *)\\ 0>." +"function with only the I<op> argument fixed. It is recommended to always " +"supply four arguments, even if the requested operation does not use them, " +"setting unused/ignored arguments to I<0L> or I<(void\\ *)\\ 0>." msgstr "" "Хотя параметры B<ptrace>() воспринимаются согласно заданному прототипу, в " "настоящее время в glibc B<ptrace>() объявлена как функция с переменным " @@ -4507,9 +4616,9 @@ msgstr "Более точно, Yama LSM ограничивает два типа #| "check\\(emfor example, B<ptrace>() B<PTRACE_ATTACH>. (See the \"Ptrace " #| "access mode checking\" discussion above.)" msgid "" -"Any operation that performs a ptrace access mode B<PTRACE_MODE_ATTACH> " -"check\\[em]for example, B<ptrace>() B<PTRACE_ATTACH>. (See the \"Ptrace " -"access mode checking\" discussion above.)" +"Any operation that performs a ptrace access mode B<PTRACE_MODE_ATTACH> check" +"\\[em]for example, B<ptrace>() B<PTRACE_ATTACH>. (See the \"Ptrace access " +"mode checking\" discussion above.)" msgstr "" "Все операции, которые выполняют проверку режима доступа ptrace " "B<PTRACE_MODE_ATTACH>, например, B<ptrace>() B<PTRACE_ATTACH> (смотрите " @@ -4668,11 +4777,18 @@ msgid "C library/kernel differences" msgstr "Отличия между библиотекой C и ядром" #. type: Plain text -#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide -#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed +#, fuzzy +#| msgid "" +#| "At the system call level, the B<PTRACE_PEEKTEXT>, B<PTRACE_PEEKDATA>, and " +#| "B<PTRACE_PEEKUSER> requests have a different API: they store the result " +#| "at the address specified by the I<data> parameter, and the return value " +#| "is the error flag. The glibc wrapper function provides the API given in " +#| "DESCRIPTION above, with the result being returned via the function return " +#| "value." msgid "" "At the system call level, the B<PTRACE_PEEKTEXT>, B<PTRACE_PEEKDATA>, and " -"B<PTRACE_PEEKUSER> requests have a different API: they store the result at " +"B<PTRACE_PEEKUSER> operations have a different API: they store the result at " "the address specified by the I<data> parameter, and the return value is the " "error flag. The glibc wrapper function provides the API given in " "DESCRIPTION above, with the result being returned via the function return " @@ -4690,7 +4806,7 @@ msgstr "" #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BUGS" -msgstr "ДЕФЕКТЫ" +msgstr "ОШИБКИ" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide @@ -4876,7 +4992,7 @@ msgstr "" #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "SEE ALSO" -msgstr "СМ. ТАКЖЕ" +msgstr "СМОТРИТЕ ТАКЖЕ" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide @@ -4904,56 +5020,412 @@ msgstr "5 февраля 2023 г." msgid "Linux man-pages 6.03" msgstr "Linux man-pages 6.03" +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +#, no-wrap +msgid "" +"B<long ptrace(enum __ptrace_request >I<request>B<, pid_t >I<pid>B<,>\n" +"B< void *>I<addr>B<, void *>I<data>B<);>\n" +msgstr "" +"B<long ptrace(enum __ptrace_request >I<request>B<, pid_t >I<pid>B<,>\n" +"B< void *>I<addr>B<, void *>I<data>B<);>\n" + +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +msgid "" +"While being traced, the tracee will stop each time a signal is delivered, " +"even if the signal is being ignored. (An exception is B<SIGKILL>, which has " +"its usual effect.) The tracer will be notified at its next call to " +"B<waitpid>(2) (or one of the related \"wait\" system calls); that call will " +"return a I<status> value containing information that indicates the cause of " +"the stop in the tracee. While the tracee is stopped, the tracer can use " +"various ptrace requests to inspect and modify the tracee. The tracer then " +"causes the tracee to continue, optionally ignoring the delivered signal (or " +"even delivering a different signal instead)." +msgstr "" +"При трассировке трассируемая нить останавливается каждый раз при получении " +"сигнала, даже если этот сигнал игнорируется (исключением является " +"B<SIGKILL>, работающий обычным образом). Трассировщик будет уведомлён об " +"этом при следующем вызове B<waitpid>(2) (или подобном «ожидающем» системном " +"вызове); этот вызов вернёт значение I<status>, в котором содержится " +"информация, указывающая на причину остановки трассируемой нити. Так как " +"трассируемая нить остановлена, трассировщик может использовать различные " +"запросы ptrace для обследования и изменения трассируемой нити. По окончании " +"трассировщик разрешает трассируемой нити продолжить работу, возможно " +"подавляя посылаемый ему сигнал (или даже отправляя вместо него другой " +"сигнал)." + +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +msgid "The value of I<request> determines the action to be performed:" +msgstr "Значение аргумента I<request> определяет выполняемое действие:" + +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +msgid "" +"Indicate that this process is to be traced by its parent. A process " +"probably shouldn't make this request if its parent isn't expecting to trace " +"it. (I<pid>, I<addr>, and I<data> are ignored.)" +msgstr "" +"Указывает, что этот процесс будет трассирован своим родительским процессом. " +"Вероятно, процессу не следует посылать этот запрос, если родительский " +"процесс не готов к трассировке (аргументы I<pid>, I<addr> и I<data> " +"игнорируются)." + +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +msgid "" +"The B<PTRACE_TRACEME> request is used only by the tracee; the remaining " +"requests are used only by the tracer. In the following requests, I<pid> " +"specifies the thread ID of the tracee to be acted on. For requests other " +"than B<PTRACE_ATTACH>, B<PTRACE_SEIZE>, B<PTRACE_INTERRUPT>, and " +"B<PTRACE_KILL>, the tracee must be stopped." +msgstr "" +"Действие B<PTRACE_TRACEME> используется только в трассируемой нити; " +"остальные действия предназначены только для трассировщика. Для значений, " +"описанных ниже, в параметре I<pid> задаётся идентификатор трассируемой нити, " +"над которой будет производиться действие. Перед выполнением действий (кроме " +"B<PTRACE_ATTACH>, B<PTRACE_SEIZE>, B<PTRACE_INTERRUPT> и B<PTRACE_KILL>) " +"трассируемая нить должна быть остановлена." + #. type: TP -#: debian-bookworm debian-unstable opensuse-leap-15-6 opensuse-tumbleweed +#: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "B<PTRACE_PEEKTEXT>, B<PTRACE_PEEKDATA>" msgstr "B<PTRACE_PEEKTEXT>, B<PTRACE_PEEKDATA>" +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +msgid "" +"Read a word at the address I<addr> in the tracee's memory, returning the " +"word as the result of the B<ptrace>() call. Linux does not have separate " +"text and data address spaces, so these two requests are currently " +"equivalent. (I<data> is ignored; but see NOTES.)" +msgstr "" +"Читает слово по адресу I<addr>, находящееся в памяти трассируемой нити, " +"возвращая это слово как результат вызова B<ptrace>() Linux не разделяет " +"адресные пространства текста и данных, поэтому оба вызова абсолютно " +"идентичны (значение I<data> игнорируется; но смотрите ЗАМЕЧАНИЯ)." + #. type: TP -#: debian-bookworm debian-unstable opensuse-leap-15-6 opensuse-tumbleweed +#: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "B<PTRACE_POKETEXT>, B<PTRACE_POKEDATA>" msgstr "B<PTRACE_POKETEXT>, B<PTRACE_POKEDATA>" +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +msgid "" +"Copy the word I<data> to the address I<addr> in the tracee's memory. As for " +"B<PTRACE_PEEKTEXT> and B<PTRACE_PEEKDATA>, these two requests are currently " +"equivalent." +msgstr "" +"Копирует слово I<data> в память трассируемой нити по адресу I<addr>. В " +"настоящее время, как и для B<PTRACE_PEEKTEXT> и B<PTRACE_PEEKDATA>, эти два " +"действия одинаковы." + #. type: TP -#: debian-bookworm debian-unstable opensuse-leap-15-6 opensuse-tumbleweed +#: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "B<PTRACE_GETREGS>, B<PTRACE_GETFPREGS>" msgstr "B<PTRACE_GETREGS>, B<PTRACE_GETFPREGS>" #. type: TP -#: debian-bookworm debian-unstable opensuse-leap-15-6 opensuse-tumbleweed +#: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "B<PTRACE_SETREGS>, B<PTRACE_SETFPREGS>" msgstr "B<PTRACE_SETREGS>, B<PTRACE_SETFPREGS>" #. type: TP -#: debian-bookworm debian-unstable opensuse-leap-15-6 opensuse-tumbleweed +#: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "B<PTRACE_SYSCALL>, B<PTRACE_SINGLESTEP>" msgstr "B<PTRACE_SYSCALL>, B<PTRACE_SINGLESTEP>" +#. commit 3f471126ee53feb5e9b210ea2f525ed3bb9b7a7f +#. As of 4.19-rc2 +#. commit 27aa55c5e5123fa8b8ad0156559d34d7edff58ca +#. see change_syscall in tools/testing/selftests/seccomp/seccomp_bpf.c +#. and also strace's linux/*/set_scno.c files. +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +msgid "" +"When in syscall-enter-stop, change the number of the system call that is " +"about to be executed to the number specified in the I<data> argument. The " +"I<addr> argument is ignored. This request is currently supported only on " +"arm (and arm64, though only for backwards compatibility), but most other " +"architectures have other means of accomplishing this (usually by changing " +"the register that the userland code passed the system call number in)." +msgstr "" + #. type: TP -#: debian-bookworm debian-unstable opensuse-leap-15-6 opensuse-tumbleweed +#: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "B<PTRACE_SYSEMU>, B<PTRACE_SYSEMU_SINGLESTEP> (since Linux 2.6.14)" msgstr "B<PTRACE_SYSEMU>, B<PTRACE_SYSEMU_SINGLESTEP> (начиная с Linux 2.6.14)" +#. As at 3.7 +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +msgid "" +"For B<PTRACE_SYSEMU>, continue and stop on entry to the next system call, " +"which will not be executed. See the documentation on syscall-stops below. " +"For B<PTRACE_SYSEMU_SINGLESTEP>, do the same but also singlestep if not a " +"system call. This call is used by programs like User Mode Linux that want " +"to emulate all the tracee's system calls. The I<data> argument is treated " +"as for B<PTRACE_CONT>. The I<addr> argument is ignored. These requests are " +"currently supported only on x86." +msgstr "" +"Действие B<PTRACE_SYSEMU> приводит к продолжению и остановке на входе в " +"следующий системный вызов, который не будет выполнен . Смотрите описание по " +"syscall-stop ниже. Действие B<PTRACE_SYSEMU_SINGLESTEP> выполняет тоже " +"самое, но для одиночной инструкции, если это не системный вызов. Это " +"действие используется программами, подобными User Mode Linux, которым нужно " +"эмулировать все системные вызовы трассируемых нитей. Аргумент I<data> " +"используется также как у B<PTRACE_CONT>. Аргумент I<addr> игнорируется. Эти " +"запросы поддерживаются только на x86." + +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +msgid "" +"The tracer cannot assume that the ptrace-stopped tracee exists. There are " +"many scenarios when the tracee may die while stopped (such as B<SIGKILL>). " +"Therefore, the tracer must be prepared to handle an B<ESRCH> error on any " +"ptrace operation. Unfortunately, the same error is returned if the tracee " +"exists but is not ptrace-stopped (for commands which require a stopped " +"tracee), or if it is not traced by the process which issued the ptrace " +"call. The tracer needs to keep track of the stopped/running state of the " +"tracee, and interpret B<ESRCH> as \"tracee died unexpectedly\" only if it " +"knows that the tracee has been observed to enter ptrace-stop. Note that " +"there is no guarantee that I<waitpid(WNOHANG)> will reliably report the " +"tracee's death status if a ptrace operation returned B<ESRCH>. " +"I<waitpid(WNOHANG)> may return 0 instead. In other words, the tracee may be " +"\"not yet fully dead\", but already refusing ptrace requests." +msgstr "" +"Трассировщик не может предполагать, что трассируемая нить, остановленная по " +"ptrace, существует. Если много случаев, когда трассируемая нить может быть " +"уничтожена будучи в остановленном состоянии (например, по B<SIGKILL>). " +"Поэтому, трассировщик должен быть готов обработать ошибку B<ESRCH> при любом " +"действии ptrace. К сожалению, эта же ошибка возвращается, если трассируемая " +"нить существует, но не остановлена по ptrace (для действий, которые требуют " +"остановленной трассируемой нити), или если она не трассируется процессом, " +"который вызвал ptrace. Трассировщику необходимо отслеживать состояние " +"остановки/работы трассируемой нити и воспринимать B<ESRCH> как «трассируемая " +"нить была неожиданно уничтожена» только, если он знает, что трассируемая " +"нить была в состоянии ptrace-stop. Заметим, что нет гарантии того, что " +"I<waitpid(WNOHANG)> всегда сообщит о состоянии уничтожения трассируемой " +"нити, если действие ptrace вернуло B<ESRCH>. Вызов I<waitpid(WNOHANG)> " +"вместо этого может вернуть 0. Другими словами, трассируемая нить может быть " +"«ещё не полностью уничтожена», но уже отклонять действия ptrace." + +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +msgid "" +"When a (possibly multithreaded) process receives any signal except " +"B<SIGKILL>, the kernel selects an arbitrary thread which handles the " +"signal. (If the signal is generated with B<tgkill>(2), the target thread " +"can be explicitly selected by the caller.) If the selected thread is " +"traced, it enters signal-delivery-stop. At this point, the signal is not " +"yet delivered to the process, and can be suppressed by the tracer. If the " +"tracer doesn't suppress the signal, it passes the signal to the tracee in " +"the next ptrace restart request. This second step of signal delivery is " +"called I<signal injection> in this manual page. Note that if the signal is " +"blocked, signal-delivery-stop doesn't happen until the signal is unblocked, " +"with the usual exception that B<SIGSTOP> can't be blocked." +msgstr "" +"Когда процесс (возможно, многонитевой) принимает какой-либо сигнал кроме " +"B<SIGKILL>, ядро выбирает произвольную нить для его обработки (если сигнал " +"генерируется с помощью B<tgkill>(2), то назначаемая нить может быть явно " +"выбрана вызывающим). Если над выбранной нитью выполняется трассировка, то " +"она попадает в режим signal-delivery-stop. В этот момент сигнал ещё не " +"доставлен процессу и может быть отменён трассировщиком. Если трассировщик не " +"отменил сигнал, то он передаётся трассируемой нити при следующем запросе " +"перезапуска ptrace. Этот второй этап доставки сигнала называется в этой " +"справочной странице I<внедрением сигнала>. Заметим, что если сигнал " +"блокируется, то signal-delivery-stop не происходит пока сигнал не будет " +"разблокирован (исключением, как обычно, является B<SIGSTOP>, который нельзя " +"заблокировать)." + +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +msgid "" +"where B<PTRACE_restart> is one of the restarting ptrace requests. If I<sig> " +"is 0, then a signal is not delivered. Otherwise, the signal I<sig> is " +"delivered. This operation is called I<signal injection> in this manual " +"page, to distinguish it from signal-delivery-stop." +msgstr "" +"где B<PTRACE_restart> — одно из перезапускающих действий ptrace. Если " +"значение I<sig> равно 0, то сигнал не доставляется. В противном случае, " +"доставляется сигнал I<sig>. Данная операция в справочной странице называется " +"I<внедрением сигнала> для того, чтобы можно отличить её от signal-delivery-" +"stop." + +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +msgid "" +"The fact that signal injection requests may be ignored when restarting the " +"tracee after ptrace stops that are not signal-delivery-stops is a cause of " +"confusion among ptrace users. One typical scenario is that the tracer " +"observes group-stop, mistakes it for signal-delivery-stop, restarts the " +"tracee with" +msgstr "" +"Тот факт, что запросы внедрения сигнала могут игнорироваться при перезапуске " +"трассируемой нити после остановок ptrace не из signal-delivery-stops, " +"вызывает путаницу у пользователей ptrace. Типичный сценарий: трассировщик " +"обнаруживает group-stop, принимает его за signal-delivery-stop, " +"перезапускает трассируемую нить с помощью" + +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +msgid "" +"B<SIGTRAP> was delivered as a result of a user-space action, for example, a " +"system call (B<tgkill>(2), B<kill>(2), B<sigqueue>(3), etc.), expiration of " +"a POSIX timer, change of state on a POSIX message queue, or completion of an " +"asynchronous I/O request." +msgstr "" +"B<SIGTRAP> был доставлен в результате действия из пространства пользователя, " +"например, системного вызова (B<tgkill>(2), B<kill>(2), B<sigqueue>(3) и т. " +"д.), истечении таймера POSIX, изменении состояния очереди сообщений POSIX " +"или выполнении асинхронного запроса ввода/вывода." + +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +msgid "The request" +msgstr "Запрос" + +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +#, fuzzy +#| msgid "" +#| "On success, the B<PTRACE_PEEK*> requests return the requested data (but " +#| "see NOTES), the B<PTRACE_SECCOMP_GET_FILTER> request returns the number " +#| "of instructions in the BPF program, and other requests return zero." +msgid "" +"On success, the B<PTRACE_PEEK*> requests return the requested data (but see " +"NOTES), the B<PTRACE_SECCOMP_GET_FILTER> request returns the number of " +"instructions in the BPF program, the B<PTRACE_GET_SYSCALL_INFO> request " +"returns the number of bytes available to be written by the kernel, and other " +"requests return zero." +msgstr "" +"При успешном выполнении запросы B<PTRACE_PEEK*> возвращают запрашиваемые " +"данные (но смотрите ЗАМЕЧАНИЯ), запрос B<PTRACE_SECCOMP_GET_FILTER> " +"возвращает количество инструкций в программе BPF, а другие запросы " +"возвращают ноль." + +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +#, fuzzy +#| msgid "" +#| "On error, all requests return -1, and I<errno> is set appropriately. " +#| "Since the value returned by a successful B<PTRACE_PEEK*> request may be " +#| "-1, the caller must clear I<errno> before the call, and then check it " +#| "afterward to determine whether or not an error occurred." +msgid "" +"On error, all requests return -1, and I<errno> is set to indicate the " +"error. Since the value returned by a successful B<PTRACE_PEEK*> request may " +"be -1, the caller must clear I<errno> before the call, and then check it " +"afterward to determine whether or not an error occurred." +msgstr "" +"При ошибке для всех действий возвращается -1, а переменной I<errno> " +"присваивается номер ошибки. Так как значение, возвращаемое при удачном " +"выполнении B<PTRACE_PEEK*>, может равняться -1, перед вызовом вызывающий " +"должен очистить содержимое I<errno>, чтобы узнать, возникала ошибка или нет." + +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +msgid "" +"I<request> is invalid, or an attempt was made to read from or write to an " +"invalid area in the tracer's or the tracee's memory, or there was a word-" +"alignment violation, or an invalid signal was specified during a restart " +"request." +msgstr "" +"Задано неверное значение I<request>, или была попытка чтения или записи " +"информации в неподходящую область памяти трассируемой нити или " +"трассировщика; ошибка выравнивания слов по границе, или при запросе " +"возобновления работы дочернего процесса был задан неверно номер сигнала." + +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +msgid "" +"The specified process does not exist, or is not currently being traced by " +"the caller, or is not stopped (for requests that require a stopped tracee)." +msgstr "" +"Указанный процесс не существует, в данный момент не трассируется вызывающим " +"процессом, или не остановлен (для выполнения действий, которые требуют " +"остановки трассируемой нити)." + +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +msgid "" +"Although arguments to B<ptrace>() are interpreted according to the " +"prototype given, glibc currently declares B<ptrace>() as a variadic " +"function with only the I<request> argument fixed. It is recommended to " +"always supply four arguments, even if the requested operation does not use " +"them, setting unused/ignored arguments to I<0L> or I<(void\\ *)\\ 0>." +msgstr "" +"Хотя параметры B<ptrace>() воспринимаются согласно заданному прототипу, в " +"настоящее время в glibc B<ptrace>() объявлена как функция с переменным " +"числом параметров, в которой фиксирован только параметр I<request>. " +"Рекомендуется всегда передавать четыре параметра, даже если в запрашиваемом " +"действии они не используются (неиспользуемые аргументы указывайте как I<0L> " +"или I<(void\\ *)\\ 0>)." + +#. type: Plain text +#: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 +msgid "" +"At the system call level, the B<PTRACE_PEEKTEXT>, B<PTRACE_PEEKDATA>, and " +"B<PTRACE_PEEKUSER> requests have a different API: they store the result at " +"the address specified by the I<data> parameter, and the return value is the " +"error flag. The glibc wrapper function provides the API given in " +"DESCRIPTION above, with the result being returned via the function return " +"value." +msgstr "" +"На уровне системных вызовов запросы B<PTRACE_PEEKTEXT>, B<PTRACE_PEEKDATA> и " +"B<PTRACE_PEEKUSER> имеют разный программный интерфейс: они сохраняют " +"результат по адресу, указанному в параметре I<data>, а возвращаемое значение " +"является индикатором ошибки. Обёрточная функция glibc предоставляет " +"программный интерфейс, описанные ОПИСАНИЕ выше, а результат возвращается в " +"виде возвращаемого значения функции." + #. type: TH -#: debian-unstable opensuse-leap-15-6 opensuse-tumbleweed +#: fedora-40 mageia-cauldron #, no-wrap -msgid "2023-03-30" -msgstr "30 марта 2023 г." +msgid "2023-10-31" +msgstr "31 октября 2023 г." #. type: TH -#: debian-unstable opensuse-tumbleweed +#: fedora-40 mageia-cauldron #, no-wrap -msgid "Linux man-pages 6.05.01" -msgstr "Linux man-pages 6.05.01" +msgid "Linux man-pages 6.06" +msgstr "Linux man-pages 6.06" + +#. type: TH +#: fedora-rawhide +#, no-wrap +msgid "2024-03-03" +msgstr "3 марта 2024 г." + +#. 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" |