aboutsummaryrefslogtreecommitdiff
path: root/documentation/content/ru
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/content/ru')
-rw-r--r--documentation/content/ru/articles/_index.adoc4
-rw-r--r--documentation/content/ru/articles/_index.po31
-rw-r--r--documentation/content/ru/articles/building-products/_index.adoc32
-rw-r--r--documentation/content/ru/articles/building-products/_index.po295
-rw-r--r--documentation/content/ru/articles/committers-guide/_index.adoc116
-rw-r--r--documentation/content/ru/articles/committers-guide/_index.po1292
-rw-r--r--documentation/content/ru/articles/contributing/_index.adoc25
-rw-r--r--documentation/content/ru/articles/contributing/_index.po289
-rw-r--r--documentation/content/ru/articles/contributors/_index.adoc160
-rw-r--r--documentation/content/ru/articles/contributors/_index.po68
-rw-r--r--documentation/content/ru/articles/contributors/contrib-develinmemoriam.adoc176
-rw-r--r--documentation/content/ru/articles/contributors/contrib-develinmemoriam.po4
-rw-r--r--documentation/content/ru/articles/explaining-bsd/_index.adoc2
-rw-r--r--documentation/content/ru/articles/explaining-bsd/_index.po76
-rw-r--r--documentation/content/ru/articles/filtering-bridges/_index.adoc4
-rw-r--r--documentation/content/ru/articles/filtering-bridges/_index.po60
-rw-r--r--documentation/content/ru/articles/freebsd-releng/_index.adoc358
-rw-r--r--documentation/content/ru/articles/freebsd-releng/_index.po238
-rw-r--r--documentation/content/ru/articles/freebsd-status-report-process/_index.adoc209
-rw-r--r--documentation/content/ru/articles/freebsd-status-report-process/_index.po93
-rw-r--r--documentation/content/ru/articles/gjournal-desktop/_index.adoc2
-rw-r--r--documentation/content/ru/articles/gjournal-desktop/_index.po4
-rw-r--r--documentation/content/ru/articles/leap-seconds/_index.adoc71
-rw-r--r--documentation/content/ru/articles/leap-seconds/_index.po36
-rw-r--r--documentation/content/ru/articles/license-guide/_index.adoc373
-rw-r--r--documentation/content/ru/articles/license-guide/_index.po83
-rw-r--r--documentation/content/ru/articles/linux-emulation/_index.adoc10
-rw-r--r--documentation/content/ru/articles/linux-emulation/_index.po474
-rw-r--r--documentation/content/ru/articles/linux-users/_index.adoc199
-rw-r--r--documentation/content/ru/articles/linux-users/_index.po109
-rw-r--r--documentation/content/ru/articles/mailing-list-faq/_index.adoc2
-rw-r--r--documentation/content/ru/articles/mailing-list-faq/_index.po55
-rw-r--r--documentation/content/ru/articles/port-mentor-guidelines/_index.adoc2
-rw-r--r--documentation/content/ru/articles/port-mentor-guidelines/_index.po40
-rw-r--r--documentation/content/ru/articles/pr-guidelines/_index.adoc2
-rw-r--r--documentation/content/ru/articles/pr-guidelines/_index.po26
-rw-r--r--documentation/content/ru/articles/rc-scripting/_index.adoc2
-rw-r--r--documentation/content/ru/articles/rc-scripting/_index.po515
-rw-r--r--documentation/content/ru/articles/serial-uart/_index.adoc2
-rw-r--r--documentation/content/ru/articles/serial-uart/_index.po304
-rw-r--r--documentation/content/ru/articles/solid-state/_index.adoc46
-rw-r--r--documentation/content/ru/articles/solid-state/_index.po223
-rw-r--r--documentation/content/ru/articles/vinum/_index.adoc2
-rw-r--r--documentation/content/ru/articles/vinum/_index.po335
44 files changed, 2834 insertions, 3615 deletions
diff --git a/documentation/content/ru/articles/_index.adoc b/documentation/content/ru/articles/_index.adoc
index de739232b6..b73bb994b5 100644
--- a/documentation/content/ru/articles/_index.adoc
+++ b/documentation/content/ru/articles/_index.adoc
@@ -1,8 +1,8 @@
---
-title: Articles
layout: total-list
+title: Статьи
---
-= Articles
+= Статьи
{{< list-articles-directories >}}
diff --git a/documentation/content/ru/articles/_index.po b/documentation/content/ru/articles/_index.po
new file mode 100644
index 0000000000..a0a6f8a9b5
--- /dev/null
+++ b/documentation/content/ru/articles/_index.po
@@ -0,0 +1,31 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR The FreeBSD Project
+# This file is distributed under the same license as the FreeBSD Documentation package.
+# Vladlen Popolitov <vladlenpopolitov@list.ru>, 2025.
+msgid ""
+msgstr ""
+"Project-Id-Version: FreeBSD Documentation VERSION\n"
+"POT-Creation-Date: 2022-01-08 11:34-0300\n"
+"PO-Revision-Date: 2025-06-04 18:10+0000\n"
+"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
+"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
+"documentation/articles_index/ru/>\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=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"X-Generator: Weblate 4.17\n"
+
+#. type: Title =
+#: documentation/content/en/articles/_index.adoc:1
+#: documentation/content/en/articles/_index.adoc:6
+#, no-wrap
+msgid "Articles"
+msgstr "Статьи"
+
+#. type: Plain text
+#: documentation/content/en/articles/_index.adoc:8
+msgid "{{< list-articles-directories >}}"
+msgstr "{{< list-articles-directories >}}"
diff --git a/documentation/content/ru/articles/building-products/_index.adoc b/documentation/content/ru/articles/building-products/_index.adoc
index 469af9b0ef..f26b77090a 100644
--- a/documentation/content/ru/articles/building-products/_index.adoc
+++ b/documentation/content/ru/articles/building-products/_index.adoc
@@ -63,7 +63,8 @@ toc::[]
Хотя исходный код FreeBSD распространяется свободно, чтобы в полной мере воспользоваться преимуществами работы проекта, организациям необходимо _сотрудничать_ с ним. В последующих разделах этой статьи мы обсудим эффективные способы взаимодействия с проектом и подводные камни, которых следует избегать при этом.
-*Caveat Reader.* The author believes that the characteristics of the FreeBSD Project listed in this article were substantially true at the time the article was conceived and written (2005). However, the reader should keep in mind that the practices and processes used by open-source communities can change over time, and that the information in this article should therefore be taken as indicative rather than normative.
+*Предупреждение для читателя.* Автор считает, что перечисленные в этой статье характеристики проекта FreeBSD были в основном верны на момент написания статьи (2005 год).
+Однако читателю следует учитывать, что практики и процессы, используемые сообществами открытого исходного кода, могут меняться со временем, поэтому информацию в этой статье следует рассматривать как ориентировочную, а не нормативную.
=== Целевая аудитория
@@ -122,7 +123,7 @@ FreeBSD предоставляет инструменты для создани
В этой модели организации вносят полезные инфраструктурные фреймворки в проект FreeBSD (например, см. man:netgraph[3]). Широкое распространение кода помогает быстро выявлять проблемы производительности и ошибки. Участие высококлассных разработчиков также приводит к полезным расширениям инфраструктуры, от которых выигрывает и сама организация-вкладчик.
* Как среда разработки, поддерживающая кросс-разработку для встраиваемых ОС, таких как http://www.rtems.com/[RTEMS] и http://ecos.sourceware.org/[eCOS].
+
-В обширной коллекции портированных и упакованных приложений FreeBSD, насчитывающей {numports} элементов, доступно множество полноценных сред разработки.
+В обширной коллекции портированных приложений и пакетов FreeBSD, насчитывающей {numports} элементов, доступно множество полноценных сред разработки.
* В качестве способа поддержки Unix-подобного API в проприетарной ОС, повышая её привлекательность для разработчиков приложений.
+
В этой части ядра FreeBSD и прикладных программ "портированы" для работы вместе с другими задачами в проприетарной ОС. Наличие стабильной и хорошо протестированной реализации Unix(TM) API может сократить усилия, необходимые для переноса популярных приложений на проприетарную ОС. Поскольку FreeBSD поставляется с качественной документацией по своей внутренней структуре и имеет эффективные процессы управления уязвимостями и выпуска релизов, затраты на поддержание актуальности остаются низкими.
@@ -208,13 +209,18 @@ image::freebsd-branches.png[]
Добровольческие проекты работают по другим правилам, чем коммерческие компании. Частая ошибка, которую совершают компании, входя в мир открытого исходного кода, — недооценка этих различий.
-*Motivation.* Most contributions to FreeBSD are done voluntarily without monetary rewards entering the picture. The factors that motivate individuals are complex, ranging from altruism, to an interest in solving the kinds of problems that FreeBSD attempts to solve. In this environment, "elegance is never optional"crossref:building-products[Nor1993,"Tutorial on Good Lisp Programming Style"].
+*Мотивация.* Большинство вкладов в FreeBSD делается добровольно,
+без денежного вознаграждения. Факторы, мотивирующие людей, сложны и
+варьируются от альтруизма до интереса к решению задач, которые FreeBSD
+пытается решить. В таких условиях «элегантность никогда не бывает опциональной»
+crossref:building-products[Nor1993,"Tutorial on Good Lisp Programming Style"].
-*The Long Term View.* FreeBSD traces its roots back nearly twenty years to the work of the Computer Science Research Group at the University of California Berkeley.footnote:[FreeBSD's source repository contains a history of the project since its inception, and there are CDROMs available that contain earlier code from the CSRG.] A number of the original CSRG developers remain associated with the project.
+*Долгосрочная перспектива.* FreeBSD ведёт свою историю почти двадцать лет назад, к работе Исследовательской группы по информатике (Computer Science Research Group) в Университете Калифорнии, Беркли.footnote:[Исходный репозиторий FreeBSD содержит историю проекта с момента его создания, а также доступны CD-ROM с более ранним кодом от CSRG.] Некоторые из оригинальных разработчиков CSRG до сих пор связаны с проектом.
Проект ценит долгосрочные перспективы crossref:building-products[Nor2001,"Научись программировать за десять лет"]. Часто встречающаяся в проекте аббревиатура — DTRT, что означает «Do The Right Thing» (сделай правильно).
-*Development Processes.* Computer programs are tools for communication: at one level programmers communicate their intentions using a precise notation to a tool (a compiler) that translates their instructions to executable code. At another level, the same notation is used for communication of intent between two programmers.
+*Процессы разработки.* Компьютерные программы — это инструменты для общения: на одном уровне программисты передают свои намерения, используя точную нотацию, инструменту (компилятору), который преобразует их инструкции в исполняемый код.
+На другом уровне та же нотация используется для передачи намерений между двумя программистами.
Формальные спецификации и проектные документы редко используются в проекте. Вместо них применяются понятный и хорошо написанный код, а также хорошо составленные журналы изменений (crossref:building-products[fig-change-log, Пример записи в журнале изменений]). Разработка FreeBSD происходит по принципу «грубого консенсуса и работающего кода» crossref:building-products[Carp1996,"Архитектурные принципы Интернета"].
@@ -241,16 +247,17 @@ This speeds up arg reduction by a factor of 2 for |x| between 3*pi/4 and
Общение между программистами улучшается благодаря использованию общего стандарта кодирования man:style[9].
-*Communication Channels.* FreeBSD's contributors are spread across the world. Email (and to a lesser extent, IRC) is the preferred means of communication in the project.
+*Каналы связи.* Участники проекта FreeBSD живут в разных уголках мира.
+Электронная почта (и в меньшей степени IRC) — это предпочтительные способы общения в проекте.
=== Лучшие практики для сотрудничества с проектом FreeBSD
Теперь рассмотрим несколько лучших практик для наиболее эффективного использования FreeBSD в разработке продуктов.
Планируйте на долгосрочную перспективу::
-Настройка процессов, которые помогают отслеживать разработку FreeBSD. Например:
+Настройте процессы, которые помогают отслеживать разработку FreeBSD. Например:
+
-*Track FreeBSD source code.* The project makes it easy to mirror its SVN repository using extref:{committers-guide}[svnsync, svn-advanced-use-setting-up-svnsync]. Having the complete history of the source is useful when debugging complex problems and offers valuable insight into the intentions of the original developers. Use a capable source control system that allows you to easily merge changes between the upstream FreeBSD code base and your own in-house code.
+*Отслеживание исходного кода FreeBSD.* Проект упрощает зеркалирование своего SVN-репозитория с помощью extref:{committers-guide}[svnsync, svn-advanced-use-setting-up-svnsync]. Наличие полной истории исходного кода полезно при отладке сложных проблем и дает ценное понимание намерений оригинальных разработчиков. Используйте систему контроля версий, которая позволяет легко объединять изменения между основной кодовой базой FreeBSD и вашим внутренним кодом.
+
crossref:building-products[fig-svn-blame, Аннотированный листинг исходного кода, сгенерированный с помощью `svn blame`] показывает часть аннотированного листинга файла, на который ссылается журнал изменений в crossref:building-products[fig-change-log, Пример записи в журнале изменений]. Происхождение каждой строки исходного кода чётко видно. Аннотированные листинги, показывающие историю каждого файла, входящего в состав FreeBSD, https://svnweb.freebsd.org/[доступны в интернете].
+
@@ -274,16 +281,17 @@ crossref:building-products[fig-svn-blame, Аннотированный лист
....
.Аннотированный листинг исходного кода, сгенерированный с использованием `svn blame` [[fig-svn-blame]]
+
-*Use a gatekeeper.* Appoint a _gatekeeper_ to monitor FreeBSD development, to keep an eye out for changes that could potentially impact your products.
+*Используйте привратника.* Назначьте _привратника_ для отслеживания разработки FreeBSD, чтобы следить за изменениями, которые могут потенциально повлиять на ваши продукты.
+
-*Report bugs upstream.* If you notice bug in the FreeBSD code that you are using, file a https://www.FreeBSD.org/support/bugreports/[bug report]. This step helps ensure that you do not have to fix the bug the next time you take a code drop from upstream.
+*Сообщайте об ошибках в вышестоящий проект.* Если вы заметили ошибку в коде FreeBSD, который используете, заполните https://www.FreeBSD.org/support/bugreports/[отчёт об ошибке].
+Этот шаг помогает гарантировать, что вам не придётся исправлять ошибку в следующий раз, когда вы получите обновление кода из вышестоящего проекта.
Используйте преимущества разработки релизов FreeBSD::
Используйте код из ветви разработки -STABLE FreeBSD. Эти ветви разработки официально поддерживаются инженерной командой выпуска и командой безопасности FreeBSD и содержат проверенный код.
-Пожертвовуйте код для снижения затрат::
+Пожертвуйте код для снижения затрат::
Основная часть затрат, связанных с разработкой продуктов, приходится на их поддержку. Пожертвовав некритичный код проекту, вы получаете выгоду в виде гораздо более широкого распространения вашего кода, чем это было бы возможно иначе. В свою очередь, это приводит к выявлению большего количества ошибок и уязвимостей безопасности, а также к обнаружению и исправлению аномалий производительности.
-Получайте поддержку эффективно::
+Получайте эффективную поддержку::
Для продуктов с жёсткими сроками рекомендуется нанять или заключить консультационное соглашение с разработчиком или компанией, имеющими опыт работы с FreeBSD. {freebsd-jobs} является полезным каналом связи для поиска специалистов. Проект FreeBSD поддерживает link:https://www.FreeBSD.org/commercial/consult_bycat/[галерею консультантов и консалтинговых компаний], занимающихся работой с FreeBSD. http://www.bsdcertification.org/[Группа сертификации BSD] предлагает сертификацию для всех основных ОС, производных от BSD.
+
Для менее критичных задач вы можете обратиться за помощью в link:https://lists.freebsd.org/[списки рассылки проекта]. Полезное руководство о том, как правильно задавать вопросы, приведено в crossref:building-products[Ray2004,"Как правильно задавать вопросы"].
diff --git a/documentation/content/ru/articles/building-products/_index.po b/documentation/content/ru/articles/building-products/_index.po
index 1cd929d1ad..06e304eb3e 100644
--- a/documentation/content/ru/articles/building-products/_index.po
+++ b/documentation/content/ru/articles/building-products/_index.po
@@ -5,8 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-09-21 12:20+0300\n"
-"PO-Revision-Date: 2025-09-05 04:45+0000\n"
+"POT-Creation-Date: 2024-12-29 08:30-0500\n"
+"PO-Revision-Date: 2025-10-29 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/articlesbuilding-products_index/ru/>\n"
@@ -18,7 +18,7 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/articles/building-products/_index.adoc:1
#, no-wrap
msgid "How FreeBSD can help you build a better product"
@@ -128,22 +128,10 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/building-products/_index.adoc:75
-#, fuzzy
-#| msgid ""
-#| "*Caveat Reader.* The author believes that the characteristics of the "
-#| "FreeBSD Project listed in this article were substantially true at the "
-#| "time the article was conceived and written (2005).\n"
-#| "However, the reader should keep in mind that the practices and processes "
-#| "used by open-source communities can change over time, and that the "
-#| "information in this article should therefore be taken as indicative "
-#| "rather than normative.\n"
-msgid ""
-"*Caveat Reader.* The author believes that the characteristics of the FreeBSD "
-"Project listed in this article were substantially true at the time the "
-"article was conceived and written (2005). However, the reader should keep "
-"in mind that the practices and processes used by open-source communities can "
-"change over time, and that the information in this article should therefore "
-"be taken as indicative rather than normative."
+#, no-wrap
+msgid ""
+"*Caveat Reader.* The author believes that the characteristics of the FreeBSD Project listed in this article were substantially true at the time the article was conceived and written (2005).\n"
+"However, the reader should keep in mind that the practices and processes used by open-source communities can change over time, and that the information in this article should therefore be taken as indicative rather than normative.\n"
msgstr ""
"*Предупреждение для читателя.* Автор считает, что перечисленные в этой "
"статье характеристики проекта FreeBSD были в основном верны на момент "
@@ -365,12 +353,11 @@ msgid ""
"components in their products include a shorter time to market, lower "
"development costs and lower development risks."
msgstr ""
-"crossref:building-products[GoldGab2005,\"Инновации происходят в другом "
-"месте: открытое ПО как бизнес-стратегия\"] подробно рассматривает бизнес-"
-"причины использования открытого ПО. Для организаций преимущества "
-"использования компонентов FreeBSD в своих продуктах включают сокращение "
-"времени выхода на рынок, снижение затрат на разработку и уменьшение рисков "
-"разработки."
+"crossref:building-products[GoldGab2005,\"Инновации происходят в другом месте:"
+" открытое ПО как бизнес-стратегия\"] подробно рассматривает бизнес-причины "
+"использования открытого ПО. Для организаций преимущества использования "
+"компонентов FreeBSD в своих продуктах включают сокращение времени выхода на "
+"рынок, снижение затрат на разработку и уменьшение рисков разработки."
#. type: Title ===
#: documentation/content/en/articles/building-products/_index.adoc:119
@@ -487,7 +474,7 @@ msgid ""
"There are many full-fledged development environments in the {numports}-"
"strong collection of applications ported and packaged with FreeBSD."
msgstr ""
-"В обширной коллекции портированных и упакованных приложений FreeBSD, "
+"В обширной коллекции портированных приложений и пакетов FreeBSD, "
"насчитывающей {numports} элементов, доступно множество полноценных сред "
"разработки."
@@ -537,8 +524,8 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/building-products/_index.adoc:155
msgid ""
-"A complete system that can cross-host itself for link:https://"
-"www.FreeBSD.org/platforms/[many architectures:]"
+"A complete system that can cross-host itself for link:https://www.FreeBSD."
+"org/platforms/[many architectures:]"
msgstr ""
"Полная система, способная самостоятельно осуществлять кросс-хостинг для "
"link:https://www.FreeBSD.org/platforms/[множества архитектур:]"
@@ -574,8 +561,8 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/building-products/_index.adoc:159
msgid ""
-"Security features: Mandatory Access Control (man:mac[9]), jails "
-"(man:jail[2]), ACLs, and in-kernel cryptographic device support."
+"Security features: Mandatory Access Control (man:mac[9]), jails (man:"
+"jail[2]), ACLs, and in-kernel cryptographic device support."
msgstr ""
"Безопасность: Принудительное управление доступом (man:mac[9]), клетки "
"(man:jail[2]), ACL и поддержка криптографических устройств в ядре."
@@ -615,9 +602,13 @@ msgid ""
"supports soft updates, snapshots and very large filesystem sizes (16TB per\n"
"\t\tfilesystem) crossref:building-products[McKu1999,\"Soft Updates: A Technique for Eliminating Most Synchronous Writes in the Fast Filesystem\"].\n"
msgstr ""
-"FreeBSD поддерживает множество файловых систем, а его родная файловая система UFS2\n"
-"поддерживает мягкие обновления, снимки и очень большие размеры файловых систем (16TB на\n"
-"файловую систему) crossref:building-products[McKu1999,\"Soft Updates: A Technique for Eliminating Most Synchronous Writes in the Fast Filesystem\"].\n"
+"FreeBSD поддерживает множество файловых систем, а его родная файловая "
+"система UFS2\n"
+"поддерживает мягкие обновления, снимки и очень большие размеры файловых "
+"систем (16TB на\n"
+"файловую систему) crossref:building-products[McKu1999,\"Soft Updates: A "
+"Technique for Eliminating Most Synchronous Writes in the Fast Filesystem\"]."
+"\n"
#. type: Plain text
#: documentation/content/en/articles/building-products/_index.adoc:169
@@ -656,8 +647,8 @@ msgid ""
"jargon) to the source base."
msgstr ""
"Существует два основных типа участников FreeBSD: обычные пользователи "
-"FreeBSD и разработчики с правом записи (известные в жаргоне как "
-"_коммиттеры_) в исходную базу."
+"FreeBSD и разработчики с правом записи (известные в жаргоне как _коммиттеры_)"
+" в исходную базу."
#. type: Plain text
#: documentation/content/en/articles/building-products/_index.adoc:180
@@ -670,8 +661,8 @@ msgid ""
"them learn the ropes."
msgstr ""
"В первой группе участвуют тысячи разработчиков; подавляющее большинство "
-"вкладов в FreeBSD поступает от участников этой группы. Права на коммит "
-"(доступ на запись) в репозиторий предоставляются тем, кто регулярно вносит "
+"вкладов в FreeBSD поступает от участников этой группы. Права на коммит ("
+"доступ на запись) в репозиторий предоставляются тем, кто регулярно вносит "
"вклад в проект. Права на коммит связаны с дополнительными обязанностями, и "
"новым коммиттерам назначаются наставники, чтобы помочь им освоиться."
@@ -706,8 +697,8 @@ msgid ""
"responsibilities for committers."
msgstr ""
"В FreeBSD нет \"корпоративных\" коммиттеров. Отдельные коммиттеры обязаны "
-"нести ответственность за изменения, которые они вносят в код. В extref:"
-"{committers-guide}[Руководстве коммиттера FreeBSD] crossref:building-"
+"нести ответственность за изменения, которые они вносят в код. В extref"
+":{committers-guide}[Руководстве коммиттера FreeBSD] crossref:building-"
"products[ComGuide,\"Руководство коммиттера\"] описаны правила и обязанности "
"коммиттеров."
@@ -766,8 +757,8 @@ msgid ""
"_-RELEASE_ branches are maintained by the FreeBSD security team. Only bug "
"fixes for critical issues are permitted onto -RELEASE branches."
msgstr ""
-"Ветви _-RELEASE_ поддерживаются командой безопасности FreeBSD. На ветви "
-"-RELEASE допускаются только исправления ошибок для критических проблем."
+"Ветви _-RELEASE_ поддерживаются командой безопасности FreeBSD. На ветви -"
+"RELEASE допускаются только исправления ошибок для критических проблем."
#. type: Block title
#: documentation/content/en/articles/building-products/_index.adoc:205
@@ -803,8 +794,8 @@ msgstr ""
"Архитектуры машин разделены на «уровни»: архитектуры _Уровня 1_ полностью "
"поддерживаются командами разработки выпусков и безопасности проекта, "
"архитектуры _Уровня 2_ поддерживаются по мере возможностей, а "
-"экспериментальные архитектуры составляют _Уровень 3_. Список extref:"
-"{committers-guide}[поддерживаемых архитектур, archs] является частью "
+"экспериментальные архитектуры составляют _Уровень 3_. Список extref"
+":{committers-guide}[поддерживаемых архитектур, archs] является частью "
"коллекции документации FreeBSD."
#. type: Plain text
@@ -815,8 +806,8 @@ msgid ""
"dates laid down in the road map are not deadlines; FreeBSD is released when "
"its code and documentation are ready."
msgstr ""
-"Команда разработки релизов публикует link:https://www.FreeBSD.org/releng/"
-"[дорожную карту] будущих выпусков FreeBSD на веб-сайте проекта. Указанные в "
+"Команда разработки релизов публикует link:https://www.FreeBSD.org/releng/["
+"дорожную карту] будущих выпусков FreeBSD на веб-сайте проекта. Указанные в "
"дорожной карте даты не являются крайними сроками; FreeBSD выпускается, когда "
"его код и документация готовы."
@@ -881,8 +872,8 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/building-products/_index.adoc:232
msgid ""
-"The goals of the FreeBSD project are crossref:building-"
-"products[Hub1994,\"Contributing to the FreeBSD Project\"]:"
+"The goals of the FreeBSD project are crossref:building-products[Hub1994,"
+"\"Contributing to the FreeBSD Project\"]:"
msgstr ""
"Цели проекта FreeBSD описаны в crossref:building-products[Hub1994,\"Участие "
"в проекте FreeBSD\"]:"
@@ -905,18 +896,18 @@ msgstr "Сделать нашу работу доступной для всех
#: documentation/content/en/articles/building-products/_index.adoc:237
msgid ""
"FreeBSD enjoys an open and transparent working culture. Nearly all "
-"discussion in the project happens by email, on link:https://"
-"lists.freebsd.org/[public mailing lists] that are also archived for "
-"posterity. The project's policies are link:https://www.FreeBSD.org/internal/"
-"policies/[documented] and maintained under revision control. Participation "
-"in the project is open to all."
+"discussion in the project happens by email, on link:https://lists.freebsd."
+"org/[public mailing lists] that are also archived for posterity. The "
+"project's policies are link:https://www.FreeBSD.org/internal/policies/"
+"[documented] and maintained under revision control. Participation in the "
+"project is open to all."
msgstr ""
"FreeBSD придерживается открытой и прозрачной рабочей культуры. Почти все "
-"обсуждения в проекте происходят по электронной почте на link:https://"
-"lists.freebsd.org/[публичных списках рассылки], которые также архивируются "
-"для потомков. Политики проекта link:https://www.FreeBSD.org/internal/"
-"policies/[документированы] и поддерживаются в системе контроля версий. "
-"Участие в проекте открыто для всех."
+"обсуждения в проекте происходят по электронной почте на link:https://lists."
+"freebsd.org/[публичных списках рассылки], которые также архивируются для "
+"потомков. Политики проекта link:https://www.FreeBSD.org/internal/policies/"
+"[документированы] и поддерживаются в системе контроля версий. Участие в "
+"проекте открыто для всех."
#. type: Title ===
#: documentation/content/en/articles/building-products/_index.adoc:239
@@ -946,23 +937,13 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/building-products/_index.adoc:251
-#, fuzzy
-#| msgid ""
-#| "*Motivation.* Most contributions to FreeBSD are done voluntarily without\n"
-#| "monetary rewards entering the picture. The factors that motivate "
-#| "individuals are\n"
-#| "complex, ranging from altruism, to an interest in solving the kinds of "
-#| "problems\n"
-#| "that FreeBSD attempts to solve. In this environment, \"elegance is never\n"
-#| "optional\"crossref:building-products[Nor1993,\"Tutorial on Good Lisp "
-#| "Programming Style\"].\n"
-msgid ""
-"*Motivation.* Most contributions to FreeBSD are done voluntarily without "
-"monetary rewards entering the picture. The factors that motivate individuals "
-"are complex, ranging from altruism, to an interest in solving the kinds of "
-"problems that FreeBSD attempts to solve. In this environment, \"elegance is "
-"never optional\"crossref:building-products[Nor1993,\"Tutorial on Good Lisp "
-"Programming Style\"]."
+#, no-wrap
+msgid ""
+"*Motivation.* Most contributions to FreeBSD are done voluntarily without\n"
+"monetary rewards entering the picture. The factors that motivate individuals are\n"
+"complex, ranging from altruism, to an interest in solving the kinds of problems\n"
+"that FreeBSD attempts to solve. In this environment, \"elegance is never\n"
+"optional\"crossref:building-products[Nor1993,\"Tutorial on Good Lisp Programming Style\"].\n"
msgstr ""
"*Мотивация.* Большинство вкладов в FreeBSD делается добровольно,\n"
"без денежного вознаграждения. Факторы, мотивирующие людей, сложны и\n"
@@ -974,21 +955,8 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/building-products/_index.adoc:253
-#, fuzzy
-#| msgid ""
-#| "*The Long Term View.* FreeBSD traces its roots back nearly twenty years "
-#| "to the work of the Computer Science Research Group at the University of "
-#| "California Berkeley.footnote:[FreeBSD's source repository contains a "
-#| "history of the project since its inception, and there are CDROMs "
-#| "available that contain earlier code from the CSRG.] A number of the "
-#| "original CSRG developers remain associated with the project.\n"
-msgid ""
-"*The Long Term View.* FreeBSD traces its roots back nearly twenty years to "
-"the work of the Computer Science Research Group at the University of "
-"California Berkeley.footnote:[FreeBSD's source repository contains a history "
-"of the project since its inception, and there are CDROMs available that "
-"contain earlier code from the CSRG.] A number of the original CSRG "
-"developers remain associated with the project."
+#, no-wrap
+msgid "*The Long Term View.* FreeBSD traces its roots back nearly twenty years to the work of the Computer Science Research Group at the University of California Berkeley.footnote:[FreeBSD's source repository contains a history of the project since its inception, and there are CDROMs available that contain earlier code from the CSRG.] A number of the original CSRG developers remain associated with the project.\n"
msgstr ""
"*Долгосрочная перспектива.* FreeBSD ведёт свою историю почти двадцать лет "
"назад, к работе Исследовательской группы по информатике (Computer Science "
@@ -1000,32 +968,20 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/building-products/_index.adoc:255
msgid ""
-"The project values long-term perspectives crossref:building-"
-"products[Nor2001,\"Teach Yourself Programming in Ten Years\"]. A frequent "
-"acronym encountered in the project is DTRT, which stands for \"Do The Right "
-"Thing\"."
+"The project values long-term perspectives crossref:building-products[Nor2001,"
+"\"Teach Yourself Programming in Ten Years\"]. A frequent acronym encountered "
+"in the project is DTRT, which stands for \"Do The Right Thing\"."
msgstr ""
-"Проект ценит долгосрочные перспективы crossref:building-"
-"products[Nor2001,\"Научись программировать за десять лет\"]. Часто "
-"встречающаяся в проекте аббревиатура — DTRT, что означает «Do The Right "
-"Thing» (сделай правильно)."
+"Проект ценит долгосрочные перспективы crossref:building-products[Nor2001,"
+"\"Научись программировать за десять лет\"]. Часто встречающаяся в проекте "
+"аббревиатура — DTRT, что означает «Do The Right Thing» (сделай правильно)."
#. type: Plain text
#: documentation/content/en/articles/building-products/_index.adoc:258
-#, fuzzy
-#| msgid ""
-#| "*Development Processes.* Computer programs are tools for communication: "
-#| "at one level programmers communicate their intentions using a precise "
-#| "notation to a tool (a compiler) that translates their instructions to "
-#| "executable code.\n"
-#| "At another level, the same notation is used for communication of intent "
-#| "between two programmers.\n"
-msgid ""
-"*Development Processes.* Computer programs are tools for communication: at "
-"one level programmers communicate their intentions using a precise notation "
-"to a tool (a compiler) that translates their instructions to executable "
-"code. At another level, the same notation is used for communication of "
-"intent between two programmers."
+#, no-wrap
+msgid ""
+"*Development Processes.* Computer programs are tools for communication: at one level programmers communicate their intentions using a precise notation to a tool (a compiler) that translates their instructions to executable code.\n"
+"At another level, the same notation is used for communication of intent between two programmers.\n"
msgstr ""
"*Процессы разработки.* Компьютерные программы — это инструменты для общения: "
"на одном уровне программисты передают свои намерения, используя точную "
@@ -1114,16 +1070,10 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/building-products/_index.adoc:290
-#, fuzzy
-#| msgid ""
-#| "*Communication Channels.* FreeBSD's contributors are spread across the "
-#| "world.\n"
-#| "Email (and to a lesser extent, IRC) is the preferred means of "
-#| "communication in the project.\n"
+#, no-wrap
msgid ""
-"*Communication Channels.* FreeBSD's contributors are spread across the "
-"world. Email (and to a lesser extent, IRC) is the preferred means of "
-"communication in the project."
+"*Communication Channels.* FreeBSD's contributors are spread across the world.\n"
+"Email (and to a lesser extent, IRC) is the preferred means of communication in the project.\n"
msgstr ""
"*Каналы связи.* Участники проекта FreeBSD живут в разных уголках мира.\n"
"Электронная почта (и в меньшей степени IRC) — это предпочтительные способы "
@@ -1156,28 +1106,13 @@ msgid ""
"Setup processes that help in tracking the development of FreeBSD. For "
"example:"
msgstr ""
-"Настройка процессов, которые помогают отслеживать разработку FreeBSD. "
+"Настройте процессы, которые помогают отслеживать разработку FreeBSD. "
"Например:"
#. type: Plain text
#: documentation/content/en/articles/building-products/_index.adoc:300
-#, fuzzy
-#| msgid ""
-#| "*Track FreeBSD source code.* The project makes it easy to mirror its SVN "
-#| "repository using extref:{committers-guide}[svnsync, svn-advanced-use-"
-#| "setting-up-svnsync]. Having the complete history of the source is useful "
-#| "when debugging complex problems and offers valuable insight into the "
-#| "intentions of the original developers. Use a capable source control "
-#| "system that allows you to easily merge changes between the upstream "
-#| "FreeBSD code base and your own in-house code.\n"
-msgid ""
-"*Track FreeBSD source code.* The project makes it easy to mirror its SVN "
-"repository using extref:{committers-guide}[svnsync, svn-advanced-use-setting-"
-"up-svnsync]. Having the complete history of the source is useful when "
-"debugging complex problems and offers valuable insight into the intentions "
-"of the original developers. Use a capable source control system that allows "
-"you to easily merge changes between the upstream FreeBSD code base and your "
-"own in-house code."
+#, no-wrap
+msgid "*Track FreeBSD source code.* The project makes it easy to mirror its SVN repository using extref:{committers-guide}[svnsync, svn-advanced-use-setting-up-svnsync]. Having the complete history of the source is useful when debugging complex problems and offers valuable insight into the intentions of the original developers. Use a capable source control system that allows you to easily merge changes between the upstream FreeBSD code base and your own in-house code.\n"
msgstr ""
"*Отслеживание исходного кода FreeBSD.* Проект упрощает зеркалирование своего "
"SVN-репозитория с помощью extref:{committers-guide}[svnsync, svn-advanced-"
@@ -1200,10 +1135,10 @@ msgstr ""
"crossref:building-products[fig-svn-blame, Аннотированный листинг исходного "
"кода, сгенерированный с помощью `svn blame`] показывает часть "
"аннотированного листинга файла, на который ссылается журнал изменений в "
-"crossref:building-products[fig-change-log, Пример записи в журнале "
-"изменений]. Происхождение каждой строки исходного кода чётко видно. "
-"Аннотированные листинги, показывающие историю каждого файла, входящего в "
-"состав FreeBSD, https://svnweb.freebsd.org/[доступны в интернете]."
+"crossref:building-products[fig-change-log, Пример записи в журнале изменений]"
+". Происхождение каждой строки исходного кода чётко видно. Аннотированные "
+"листинги, показывающие историю каждого файла, входящего в состав FreeBSD, "
+"https://svnweb.freebsd.org/[доступны в интернете]."
#. type: delimited block . 4
#: documentation/content/en/articles/building-products/_index.adoc:309
@@ -1229,36 +1164,40 @@ msgid ""
"176465 bde 2008-02-22 07:55:14 -0800 (Fri, 22 Feb 2008) \n"
" 2116 jkh 1994-08-19 02:40:01 -0700 (Fri, 19 Aug 1994) #include \"math.h\"\n"
msgstr ""
-"176410 bde 2008-02-19 07:42:46 -0800 (Tue, 19 Feb 2008) #include <sys/cdefs.h>\n"
-"176410 bde 2008-02-19 07:42:46 -0800 (Tue, 19 Feb 2008) __FBSDID(\"$FreeBSD$\");\n"
+"176410 bde 2008-02-19 07:42:46 -0800 (Tue, 19 Feb 2008) #include <sys/"
+"cdefs.h>\n"
+"176410 bde 2008-02-19 07:42:46 -0800 (Tue, 19 Feb 2008) __FBSDID(\""
+"$FreeBSD$\");\n"
" 2116 jkh 1994-08-19 02:40:01 -0700 (Fri, 19 Aug 1994) \n"
-" 2116 jkh 1994-08-19 02:40:01 -0700 (Fri, 19 Aug 1994) /* __ieee754_rem_pio2f(x,y)\n"
+" 2116 jkh 1994-08-19 02:40:01 -0700 (Fri, 19 Aug 1994) /* "
+"__ieee754_rem_pio2f(x,y)\n"
" 8870 rgrimes 1995-05-29 22:51:47 -0700 (Mon, 29 May 1995) *\n"
-"176552 bde 2008-02-25 05:33:20 -0800 (Mon, 25 Feb 2008) * return the remainder of x rem pi/2 in *y\n"
-"176552 bde 2008-02-25 05:33:20 -0800 (Mon, 25 Feb 2008) * use double precision for everything except passing x\n"
-"152535 bde 2005-11-16 18:20:04 -0800 (Wed, 16 Nov 2005) * use __kernel_rem_pio2() for large x\n"
+"176552 bde 2008-02-25 05:33:20 -0800 (Mon, 25 Feb 2008) * return the "
+"remainder of x rem pi/2 in *y\n"
+"176552 bde 2008-02-25 05:33:20 -0800 (Mon, 25 Feb 2008) * use double "
+"precision for everything except passing x\n"
+"152535 bde 2005-11-16 18:20:04 -0800 (Wed, 16 Nov 2005) * use "
+"__kernel_rem_pio2() for large x\n"
" 2116 jkh 1994-08-19 02:40:01 -0700 (Fri, 19 Aug 1994) */\n"
" 2116 jkh 1994-08-19 02:40:01 -0700 (Fri, 19 Aug 1994) \n"
-"176465 bde 2008-02-22 07:55:14 -0800 (Fri, 22 Feb 2008) #include <float.h>\n"
+"176465 bde 2008-02-22 07:55:14 -0800 (Fri, 22 Feb 2008) #include "
+"<float.h>\n"
"176465 bde 2008-02-22 07:55:14 -0800 (Fri, 22 Feb 2008) \n"
-" 2116 jkh 1994-08-19 02:40:01 -0700 (Fri, 19 Aug 1994) #include \"math.h\"\n"
+" 2116 jkh 1994-08-19 02:40:01 -0700 (Fri, 19 Aug 1994) #include "
+"\"math.h\"\n"
#. type: Block title
#: documentation/content/en/articles/building-products/_index.adoc:324
#, no-wrap
msgid "An annotated source listing generated using `svn blame` [[fig-svn-blame]]"
-msgstr "Аннотированный листинг исходного кода, сгенерированный с использованием `svn blame` [[fig-svn-blame]]"
+msgstr ""
+"Аннотированный листинг исходного кода, сгенерированный с использованием `svn "
+"blame` [[fig-svn-blame]]"
#. type: Plain text
#: documentation/content/en/articles/building-products/_index.adoc:327
-#, fuzzy
-#| msgid ""
-#| "*Use a gatekeeper.* Appoint a _gatekeeper_ to monitor FreeBSD "
-#| "development, to keep an eye out for changes that could potentially impact "
-#| "your products.\n"
-msgid ""
-"*Use a gatekeeper.* Appoint a _gatekeeper_ to monitor FreeBSD development, "
-"to keep an eye out for changes that could potentially impact your products."
+#, no-wrap
+msgid "*Use a gatekeeper.* Appoint a _gatekeeper_ to monitor FreeBSD development, to keep an eye out for changes that could potentially impact your products.\n"
msgstr ""
"*Используйте привратника.* Назначьте _привратника_ для отслеживания "
"разработки FreeBSD, чтобы следить за изменениями, которые могут потенциально "
@@ -1266,18 +1205,10 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/building-products/_index.adoc:330
-#, fuzzy
-#| msgid ""
-#| "*Report bugs upstream.* If you notice bug in the FreeBSD code that you "
-#| "are using, file a https://www.FreeBSD.org/support/bugreports/[bug "
-#| "report].\n"
-#| "This step helps ensure that you do not have to fix the bug the next time "
-#| "you take a code drop from upstream.\n"
-msgid ""
-"*Report bugs upstream.* If you notice bug in the FreeBSD code that you are "
-"using, file a https://www.FreeBSD.org/support/bugreports/[bug report]. This "
-"step helps ensure that you do not have to fix the bug the next time you take "
-"a code drop from upstream."
+#, no-wrap
+msgid ""
+"*Report bugs upstream.* If you notice bug in the FreeBSD code that you are using, file a https://www.FreeBSD.org/support/bugreports/[bug report].\n"
+"This step helps ensure that you do not have to fix the bug the next time you take a code drop from upstream.\n"
msgstr ""
"*Сообщайте об ошибках в вышестоящий проект.* Если вы заметили ошибку в коде "
"FreeBSD, который используете, заполните https://www.FreeBSD.org/support/"
@@ -1306,7 +1237,7 @@ msgstr ""
#: documentation/content/en/articles/building-products/_index.adoc:334
#, no-wrap
msgid "Donate code to reduce costs"
-msgstr "Пожертвовуйте код для снижения затрат"
+msgstr "Пожертвуйте код для снижения затрат"
#. type: Plain text
#: documentation/content/en/articles/building-products/_index.adoc:338
@@ -1328,7 +1259,7 @@ msgstr ""
#: documentation/content/en/articles/building-products/_index.adoc:339
#, no-wrap
msgid "Get support effectively"
-msgstr "Получайте поддержку эффективно"
+msgstr "Получайте эффективную поддержку"
#. type: Plain text
#: documentation/content/en/articles/building-products/_index.adoc:344
@@ -1353,15 +1284,15 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/building-products/_index.adoc:348
msgid ""
-"For less critical needs, you can ask for help on the link:https://"
-"lists.freebsd.org/[project mailing lists]. A useful guide to follow when "
-"asking for help is given in crossref:building-products[Ray2004,\"How to ask "
+"For less critical needs, you can ask for help on the link:https://lists."
+"freebsd.org/[project mailing lists]. A useful guide to follow when asking "
+"for help is given in crossref:building-products[Ray2004,\"How to ask "
"questions the smart way\"]."
msgstr ""
-"Для менее критичных задач вы можете обратиться за помощью в link:https://"
-"lists.freebsd.org/[списки рассылки проекта]. Полезное руководство о том, как "
-"правильно задавать вопросы, приведено в crossref:building-"
-"products[Ray2004,\"Как правильно задавать вопросы\"]."
+"Для менее критичных задач вы можете обратиться за помощью в "
+"link:https://lists.freebsd.org/[списки рассылки проекта]. Полезное "
+"руководство о том, как правильно задавать вопросы, приведено в crossref"
+":building-products[Ray2004,\"Как правильно задавать вопросы\"]."
#. type: Labeled list
#: documentation/content/en/articles/building-products/_index.adoc:348
@@ -1413,8 +1344,8 @@ msgstr ""
"поддержать разработчика, который уже занимается связанной проблемой. Помощь "
"может варьироваться от пожертвования оборудования до прямой финансовой "
"поддержки. В некоторых странах пожертвования проекту FreeBSD имеют налоговые "
-"льготы. У проекта есть специальный link:https://www.FreeBSD.org/donations/"
-"[представитель по пожертвованиям], который помогает донорам. Также проект "
+"льготы. У проекта есть специальный link:https://www.FreeBSD.org/donations/["
+"представитель по пожертвованиям], который помогает донорам. Также проект "
"поддерживает веб-страницу, где разработчики link:https://www.FreeBSD.org/"
"donations/wantlist/[указывают свои потребности]."
diff --git a/documentation/content/ru/articles/committers-guide/_index.adoc b/documentation/content/ru/articles/committers-guide/_index.adoc
index fdc0635660..6c7a971f9d 100644
--- a/documentation/content/ru/articles/committers-guide/_index.adoc
+++ b/documentation/content/ru/articles/committers-guide/_index.adoc
@@ -4,7 +4,7 @@ authors:
author: 'The FreeBSD Documentation Project'
copyright: '1999-2022 The FreeBSD Documentation Project'
description: 'Вводная информация для коммиттеров FreeBSD'
-tags: "[\"FreeBSD Committer's Guide\", \"Guide\", \"Community\"]"
+tags: ["FreeBSD Committer's Guide", "Guide", "Community"]
title: 'Руководство коммиттера'
trademarks: ["freebsd", "coverity", "git", "github", "gitlab", "ibm", "intel", "general"]
weight: 25
@@ -1293,9 +1293,13 @@ freefall% gen-gitconfig.sh
===== Как отслеживать -current и -stable, имея только одну копию репозитория?
-**Q:** Although disk space is not a huge issue, it's more efficient to use only one copy of the repository. With SVN mirroring, I could checkout multiple trees from the same repository. How do I do this with Git?
+**В:** Хотя место на диске не является большой проблемой, эффективнее использовать только одну копию репозитория.
+При зеркалировании SVN я мог извлекать несколько деревьев из одного и того же репозитория.
+Как мне сделать это с помощью Git?
-**A:** You can use Git worktrees. There's a number of ways to do this, but the simplest way is to use a clone to track -current, and a worktree to track stable releases. While using a 'bare repository' has been put forward as a way to cope, it's more complicated and will not be documented here.
+**О:** Вы можете использовать рабочие деревья Git.
+Существует несколько способов сделать это, но самый простой — использовать клон для отслеживания -current и рабочее дерево для отслеживания стабильных выпусков.
+Хотя использование «голого (bare) репозитория» предлагалось как способ справиться с этим, это более сложно и здесь документироваться не будет.
Сначала необходимо клонировать репозиторий FreeBSD, здесь показано клонирование в `freebsd-current` для избежания путаницы. `$URL` — это любой зеркальный сервер, который работает для вас наилучшим образом:
@@ -1333,9 +1337,9 @@ freefall% gen-gitconfig.sh
===== Ой! Я закоммитил в `main` вместо другой ветки.
-**Q:** From time to time, I goof up and mistakenly commit to the `main` branch. What do I do?
+**В:** Время от времени я ошибаюсь и по ошибке делаю коммит в ветку `main`. Что мне делать?
-**A:** First, don't panic.
+**О:** Во-первых, не паникуйте.
Во-вторых, не отправляйте (push) изменения. На самом деле, можно исправить почти всё, если изменения не были отправлены. Все ответы в этом разделе предполагают, что отправки не произошло.
@@ -1350,9 +1354,12 @@ freefall% gen-gitconfig.sh
===== Ой! Я закоммитил что-то не в ту ветку!
-**Q:** I was working on feature on the `wilma` branch, but accidentally committed a change relevant to the `fred` branch in 'wilma'. What do I do?
+**В:** Я работал над функцией в ветке `wilma`, но случайно сделал коммит изменению, относящемуся к ветке `fred`, в 'wilma'.
+Что мне делать?
-**A:** The answer is similar to the previous one, but with cherry picking. This assumes there's only one commit on wilma, but will generalize to more complicated situations. It also assumes that it's the last commit on wilma (hence using wilma in the `git cherry-pick` command), but that too can be generalized.
+**О:** Ответ аналогичен предыдущему, но с использованием выборочного применением коммитов (cherry-pick).
+Предполагается, что в ветке wilma имеется всего один коммит, однако подход можно обобщить и для более сложных ситуаций.
+Также предполагается, что это последний коммит в ветке wilma (отсюда использование wilma в команде `git cherry-pick`), но и это можно обобщить.
[source, shell]
....
@@ -1373,13 +1380,21 @@ freefall% gen-gitconfig.sh
% git rebase -i main wilma # удалить скопированное изменение
....
-**Q:** But what if I want to commit a few changes to `main`, but keep the rest in `wilma` for some reason?
+**В:** Но что, если я хочу сделать коммит нескольким изменениям в `main`, но оставить остальные в `wilma` по какой-то причине?
-**A:** The same technique above also works if you are wanting to 'land' parts of the branch you are working on into `main` before the rest of the branch is ready (say you noticed an unrelated typo, or fixed an incidental bug). You can cherry pick those changes into `main`, then push to the parent repository. Once you've done that, cleanup couldn't be simpler: just `git rebase -i`. Git will notice you've done this and skip the common changes automatically (even if you had to change the commit message or tweak the commit slightly). There's no need to switch back to wilma to adjust it: just rebase!
+**О:** Тот же метод, описанный выше, также работает, если вы хотите «приземлить» части ветки, над которой работаете, в `main` до того, как вся ветка будет готова (скажем, вы заметили несвязанную опечатку или исправили случайную ошибку).
+Вы можете выборочно применить (cherry-pick) эти изменения в `main`, а затем отправить их в родительский репозиторий.
+После того, как вы это сделаете, очистка не может быть проще: просто выполните `git rebase -i`.
+Git заметит, что вы это сделали, и автоматически пропустит общие изменения (даже если вам пришлось изменить сообщение коммита или слегка подкорректировать коммит).
+Нет необходимости переключаться обратно на wilma, чтобы её поправить: просто делайте rebase!
-**Q:** I want to split off some changes from branch `wilma` into branch `fred`
+**В:** Я хочу выделить некоторые изменения из ветки `wilma` в ветку `fred`
-**A:** The more general answer would be the same as the previous. You'd checkout/create the `fred` branch, cherry pick the changes you want from `wilma` one at a time, then rebase `wilma` to remove those changes you cherry picked. `git rebase -i main wilma` will toss you into an editor, and remove the `pick` lines that correspond to the commits you copied to `fred`. If all goes well, and there are no conflicts, you're done. If not, you'll need to resolve the conflicts as you go.
+**О:** Более общий ответ будет таким же, как и предыдущий.
+Вы должны выгрузить(checkout)/создать ветку `fred`, выборочно применить (cherry-pick) нужные изменения из ветки `wilma` по одному, а затем перебазировать (rebase) `wilma`, чтобы удалить те изменения, которые вы выборочно применили.
+`git rebase -i main wilma` перенесёт вас в редактор, где нужно удалить строки `pick`, соответствующие коммитам, которые вы скопировали в `fred`.
+Если всё пройдёт хорошо и не будет конфликтов, вы закончили.
+Если нет, вам нужно будет разрешать конфликты по мере их появления.
Другой способ сделать это — выгрузить `wilma`, а затем создать ветку `fred`, указывающую на ту же точку в дереве. Затем вы можете выполнить `git rebase -i` для обеих этих веток, выбирая изменения, которые вы хотите видеть в `fred` или `wilma`, оставляя строки с `pick` и удаляя остальные в редакторе. Некоторые предпочитают создать тег/ветку с названием `pre-split` перед началом, на случай если что-то пойдет не так при разделении. Вы можете отменить это следующей последовательностью:
@@ -1393,9 +1408,11 @@ freefall% gen-gitconfig.sh
Последний шаг необязателен. Если вы собираетесь повторить попытку разделения, его можно пропустить.
-**Q:** But I did things as I read along and didn't see your advice at the end to create a branch, and now `fred` and `wilma` are all screwed up. How do I find what `wilma` was before I started. I don't know how many times I moved things around.
+**В:** Но я делал всё по мере прочтения и не увидел ваш совет в конце создать ветку, и теперь `fred` и `wilma` полностью испорчены.
+Как мне найти, чем `wilma` была до того, как я начал.
+Я не знаю, сколько раз я всё переставлял.
-**A:** All is not lost. You can figure out it, so long as it hasn't been too long, or too many commits (hundreds).
+**О:** Не всё потеряно. Вы можете разобраться с этим, если прошло не слишком много времени или не было сделано слишком много коммитов (сотни).
Итак, я создал ветку wilma и закоммитил в неё пару изменений, затем решил разделить её на fred и wilma. Ничего странного при этом не произошло, но предположим, что произошло. Способ посмотреть, что вы сделали, — это использовать `git reflog`:
@@ -1417,7 +1434,7 @@ a6a5094 (fred) HEAD@{4}: rebase -i (pick): Encourage contributions
Здесь мы видим изменения, которые я внес. Вы можете использовать это, чтобы понять, где что-то пошло не так. Я лишь укажу на несколько моментов. Первый из них — HEAD@{X} является 'коммитоподобной' сущностью, поэтому вы можете использовать это в качестве аргумента команды. Хотя если эта команда вносит что-либо в репозиторий, номера X изменяются. Вы также можете использовать хэш (первый столбец).
-Далее, 'Encourage contributions' был последним коммитом, который я сделал в `wilma` перед тем, как решил разделить всё. Вы также можете видеть, что тот же хэш присутствует, когда я создал ветку `fred` для этого. Я начал с перебазирования `fred`, и вы видите 'начало', каждый шаг и 'завершение' этого процесса. Хотя нам это здесь не нужно, вы можете точно понять, что произошло. К счастью, чтобы исправить это, вы можете выполнить шаги из предыдущего ответа, но с хэшом `869cbd3` вместо `pre-split`. Хотя это кажется немного многословным, это легко запомнить, поскольку вы делаете одно действие за раз. Вы также можете последовательно применить команды одну за другой:
+Далее, 'Encourage contributions' был последним коммитом, который я сделал в `wilma` перед тем, как решил разделить всё. Вы также можете видеть, что тот же хэш присутствует, когда я создал ветку `fred` для этого. Я начал с перебазирования `fred`, и вы видите 'начало', каждый шаг и 'завершение' этого процесса. Хотя нам это здесь не нужно, вы можете точно понять, что произошло. К счастью, чтобы исправить это, вы можете выполнить шаги из предыдущего ответа, но с хэшем `869cbd3` вместо `pre-split`. Хотя это кажется немного многословным, это легко запомнить, поскольку вы делаете одно действие за раз. Вы также можете последовательно применить команды одну за другой:
[source, shell]
....
@@ -1450,9 +1467,10 @@ HEAD is now at 869cbd3 Encourage contributions
===== Ой! Я выполнил `git pull`, и это создало коммит слияния, что мне делать?
-**Q:** I was on autopilot and did a `git pull` for my development tree and that created a merge commit on `main`. How do I recover?
+**В:** Я действовал на автопилоте и сделал `git pull` для своего дерева разработки, что создало коммит слияния в `main`.
+Как мне восстановиться?
-**A:** This can happen when you invoke the pull with your development branch checked out.
+**О:** Это может произойти, когда вы выполняете извлечение (checkout) с выбранной веткой разработки.
Многие разработчики используют `git pull --rebase`, чтобы избежать этой ситуации.
@@ -1473,9 +1491,10 @@ git reset --hard HEAD^1
Кроме того, команда `git pull --rebase` на этом этапе перебазирует ваши изменения из ветки 'main' на последнюю версию 'freebsd/main'.
-**Q:** But I also need to fix my `main` branch. How do I do that?
+**В:** Но мне также нужно исправить мою ветку `main`. Как мне это сделать?
-**A:** Git keeps track of the remote repository branches in a `freebsd/` namespace. To fix your `main` branch, just make it point to the remote's `main`:
+**О:** Git отслеживает ветки удалённого репозитория в пространстве имён `freebsd/`.
+Чтобы исправить вашу ветку `main`, просто заставьте её указывать на удалённую ветку `main`:
[source, shell]
....
@@ -1486,9 +1505,10 @@ git branch -f main freebsd/main
===== Смешивание и сопоставление веток
-**Q:** So I have two branches `worker` and `async` that I'd like to combine into one branch called `feature` while maintaining the commits in both.
+**В:** Итак, у меня есть две ветки `worker` и `async`, которые я хочу объединить в одну ветку под названием `feature`
+с сохранением коммитов в обеих.
-**A:** This is a job for cherry pick.
+**О:** Это задача для выборочного применения (cherry-pick).
[source, shell]
....
@@ -1499,9 +1519,10 @@ git branch -f main freebsd/main
Теперь у вас есть новая ветка под названием `feature`. Эта ветка объединяет коммиты из обеих веток. Вы можете далее работать с ней с помощью `git rebase`.
-**Q:** I have a branch called `driver` and I'd like to break it up into `kernel` and `userland` so I can evolve them separately and commit each branch as it becomes ready.
+**В:** У меня есть ветка под названием `driver`, и я хочу разделить её на `kernel` и `userland`, чтобы развивать их отдельно и коммитить каждую ветку по мере её готовности.
-**A:** This takes a little bit of prep work, but `git rebase` will do the heavy lifting here.
+**О:** Это требует небольшой подготовительной работы, но `git rebase`
+выполнит здесь основную часть работы.
[source, shell]
....
@@ -1526,9 +1547,11 @@ git branch -f main freebsd/main
и сделайте то же самое, что вы сделали с веткой `kernel `.
-**Q:** Oh great! I followed the above and forgot a commit in the `kernel` branch. How do I recover?
+**В:** Отлично! Я выполнил указанные выше шаги и забыл сделать коммит в ветке `kernel`.
+Как мне восстановиться?
-**A:** You can use the `driver` branch to find the hash of the commit is missing and cherry pick it.
+**О:** Вы можете использовать ветку `driver`, чтобы найти хэш коммита, который отсутствует, и
+выборочно применить его (cherry-pick).
[source, shell]
....
@@ -1537,9 +1560,13 @@ git branch -f main freebsd/main
% git cherry-pick $HASH
....
-**Q:** OK. I have the same situation as the above, but my commits are all mixed up. I need parts of one commit to go to one branch and the rest to go to the other. In fact, I have several. Your rebase method to select sounds tricky.
+**В:** Хорошо. У меня такая же ситуация, как и выше, но мои коммиты все перемешаны.
+Мне нужно, чтобы части одного коммита попали в одну ветку, а остальные — в другую.
+На самом деле, у меня их несколько.
+Ваш метод перебазирования с выбором кажется сложным.
-**A:** In this situation, you'd be better off to curate the original branch to separate out the commits, and then use the above method to split the branch.
+**О:** В этой ситуации вам лучше обработать исходную ветку, чтобы отделить
+коммиты, а затем использовать вышеуказанный метод для разделения ветки.
Итак, предположим, что есть всего один коммит с чистым деревом. Вы можете использовать либо `git rebase` со строкой `edit`, либо это с коммитом на острие. В любом случае шаги одинаковы. Первое, что нам нужно сделать, — это откатиться на один коммит назад, оставив изменения незакоммиченными в дереве:
@@ -1563,15 +1590,17 @@ git add -i foo/bar.c
===== Присоединение к организации FreeBSD на GitHub.
-**Q:** How do I join the FreeBSD GitHub organization?
+**В:** Как присоединиться к организации FreeBSD на GitHub?
-**A:** Please see https://wiki.freebsd.org/GitHub#Joining_the_Organisation[our GitHub Wiki Info] page for details. Briefly, all FreeBSD committers may join. Those who are not committers who request joining will be considered on a case by case basis.
+**О:** Подробности смотрите на странице https://wiki.freebsd.org/GitHub#Joining_the_Organisation[нашей вики GitHub].
+Вкратце, присоединиться могут все коммиттеры FreeBSD.
+Лица, не являющиеся коммиттерами, которые запрашивают присоединение, будут рассматриваться в индивидуальном порядке.
==== Клонирование и зеркалирование
-**Q:** I'd like to mirror the entire Git repository, how do I do that?
+**В:** Я хочу создать полную зеркальную копию репозитория Git, как мне это сделать?
-**A:** If all you want to do is mirror, then
+**О:** Если вам нужно только зеркалирование, то
[source, shell]
....
@@ -1595,9 +1624,10 @@ git add -i foo/bar.c
Второй недостаток заключается в том, что Git обычно перезаписывает ссылки из вышестоящего репозитория (названия веток, теги и т.д.) , чтобы ваши локальные ссылки могли изменяться независимо от вышестоящего репозитория. Это означает, что вы потеряете изменения, если будете коммитить в свой репозиторий куда-либо, кроме веток приватных проектов.
-**Q:** So what can I do instead?
+**В:** Так что же я могу сделать вместо этого?
-**A:** Well, you can stuff all of the upstream repository's refs into a private namespace in your local repository. Git clones everything via a 'refspec' and the default refspec is:
+**О:** Ну, вы можете поместить все ссылки (refs) вышестоящего репозитория в приватное пространство имён вашего локального репозитория.
+Git клонирует всё через 'refspec', и refspec по умолчанию выглядит так:
[source, shell]
....
@@ -1784,7 +1814,7 @@ Author: github-user <38923459+github-user@users.noreply.github.com>
[[commit-steps]]
[.procedure]
====
-*Steps for New Committers*
+*Шаги для новых коммиттеров*
. Добавить автора
+
@@ -1845,7 +1875,7 @@ Author: github-user <38923459+github-user@users.noreply.github.com>
Если ваша система электронной почты использует SPF со строгими правилами, вам следует исключить `mx2.FreeBSD.org` из проверок SPF.
======
+
-Из-за высокой нагрузки, которую обработка СПАМа создает на центральных почтовых серверах, обрабатывающих почтовые рассылки, фронтенд-сервер выполняет базовые проверки и может отбрасывать некоторые сообщения на их основе. В настоящее время единственной активной проверкой является наличие корректной DNS-информации для подключающегося хоста, но это может измениться. Некоторые пользователи связывают эти проверки с ложным отбрасыванием легитимной почты. Для отключения данных проверок для вашей почты создайте файл с именем [.filename]#~/.spam_lover# на `freefall.FreeBSD.org`.
+Из-за высокой нагрузки, которую обработка спама создает на центральных почтовых серверах, обрабатывающих почтовые рассылки, фронтенд-сервер выполняет базовые проверки и может отбрасывать некоторые сообщения на их основе. В настоящее время единственной активной проверкой является наличие корректной DNS-информации для подключающегося хоста, но это может измениться. Некоторые пользователи связывают эти проверки с ложным отбрасыванием легитимной почты. Для отключения данных проверок для вашей почты создайте файл с именем [.filename]#~/.spam_lover# на `freefall.FreeBSD.org`.
+
[NOTE]
======
@@ -2018,7 +2048,7 @@ example@freebsd.org:smtp.freebsd.org::587
* Все нетривиальные изменения должны быть проверены перед их фиксацией в репозитории.
* Рецензирование может проводиться по электронной почте, в Bugzilla, в Phabricator или с помощью другого механизма. По возможности рецензирование должно быть публичным.
* Разработчик, ответственный за изменение кода, также обязан вносить все необходимые изменения, связанные с проверкой.
-* Рецензирование кода может быть итеративным процессом, который продолжается до тех пор, пока патч не будет готов к коммиту. В частности, после отправки патча на рецензирование, он должен получить явное подтверждение "выглядит хорошо" перед коммитом. Оно должно быть явным, и это может принимать любую форму, которая имеет смысл для метода резензирования.
+* Рецензирование кода может быть итеративным процессом, который продолжается до тех пор, пока патч не будет готов к коммиту. В частности, после отправки патча на рецензирование, он должен получить явное подтверждение "выглядит хорошо" перед коммитом. Оно должно быть явным, и это может принимать любую форму, которая имеет смысл для метода рецензирования.
* Тайм-ауты не являются заменой проверке.
Иногда проверка кода занимает больше времени, чем хотелось бы, особенно для большого по объему функционала. Принятые способы ускорить проверку ваших патчей:
@@ -2222,7 +2252,7 @@ Approved by: re (имя-пользователя)
|Если коммиту должно быть сделано слияние в подмножество стабильных веток, укажите названия веток.
|`MFH:`
-|Если коммиту должено быть сделано слияние в квартальную ветку портов, укажите квартальную ветку. Например, `2021Q2`.
+|Если коммиту должно быть сделано слияние в квартальную ветку портов, укажите квартальную ветку. Например, `2021Q2`.
|`Relnotes:`
|Если изменение является кандидатом для включения в примечания к выпуску следующей версии из ветки, установите значение `yes`.
@@ -2523,11 +2553,9 @@ doceng — это группа, ответственная за инфрастр
`{so}`::
`{so-name}` — это link:https://www.FreeBSD.org/security/[ответственный за безопасность FreeBSD], который курирует работу `{security-officer}`.
-{committers-name}::
-{dev-src-all}, {dev-ports-all} and {dev-doc-all} are the mailing lists that the version control system uses to send commit messages to. _Never_ send email directly to these lists. Only send replies to this list when they are short and are directly related to a commit.
+{committers-name}:: {dev-src-all}, {dev-ports-all} и {dev-doc-all} — это списки рассылки, которые система управления версиями использует для отправки сообщений о коммитах. _Никогда_ не отправляйте письма напрямую в эти списки. Отправляйте ответы в этот список только в том случае, если они короткие и непосредственно связаны с коммитом.
-{developers-name}::
-All committers are subscribed to -developers. This list was created to be a forum for the committers "community" issues. Examples are Core voting, announcements, etc.
+{developers-name}:: Все коммиттеры подписаны на список рассылки -developers. Этот список был создан для обсуждения вопросов, связанных с сообществом коммиттеров. Примеры включают голосования Core, объявления и т.д.
+
`{developers-name}` предназначен исключительно для использования коммиттерами FreeBSD. Для разработки FreeBSD коммиттеры должны иметь возможность открыто обсуждать вопросы, которые будут решены до их публичного объявления. Откровенные обсуждения работы в процессе не подходят для открытой публикации и могут навредить FreeBSD.
+
@@ -2721,7 +2749,7 @@ FreeBSD — это _открытый_ проект. Это означает, ч
[[archs]]
== Поддержка множественных архитектур
-FreeBSD — это высокопортативная операционная система, предназначенная для работы на множестве различных типов аппаратных архитектур. Поддержание четкого разделения между машинно-зависимым (MD) и машинно-независимым (MI) кодом, а также минимизация MD-кода являются важной частью нашей стратегии по сохранению гибкости в отношении текущих тенденций в аппаратном обеспечении. Каждая новая аппаратная архитектура, поддерживаемая FreeBSD, существенно увеличивает затраты на поддержку кода, инструментальных средств и инжиниринг выпусков. Это также значительно повышает стоимость эффективного тестирования изменений в ядре. Таким образом, существует серьезная мотивация для разграничения уровней поддержки различных архитектур, оставаясь при этом сильными в нескольких ключевых архитектурах, которые рассматриваются как «целевая аудитория» FreeBSD.
+FreeBSD — это высокопортативная операционная система, предназначенная для работы на множестве различных типов аппаратных архитектур. Поддержание четкого разделения между машинозависимым (MD) и машинонезависимым (MI) кодом, а также минимизация MD-кода являются важной частью нашей стратегии по сохранению гибкости в отношении текущих тенденций в аппаратном обеспечении. Каждая новая аппаратная архитектура, поддерживаемая FreeBSD, существенно увеличивает затраты на поддержку кода, инструментальных средств и управление выпусками. Это также значительно повышает стоимость эффективного тестирования изменений в ядре. Таким образом, существует серьезная мотивация для разграничения уровней поддержки различных архитектур, оставаясь при этом сильными в нескольких ключевых архитектурах, которые рассматриваются как «целевая аудитория» FreeBSD.
=== Заявление об общих намерениях
@@ -2966,7 +2994,7 @@ FreeBSD — это высокопортативная операционная
[[ports-qa-new-category-how]]
==== Какова процедура создания новой категории?
-Пожалуйста, ознакомьтесь с extref:{porters-handbook}makefiles/[Предложение новой категории, proposing-categories] в Руководстве портера. После выполнения этой процедуры и назначения PR в группе — {portmgr}, решение об одобрении принимается ими. Если решение положительное, их обязанностью является:
+Пожалуйста, ознакомьтесь с extref:{porters-handbook}makefiles/[Предложение новой категории, proposing-categories] в Руководстве FreeBSD по созданию портов. После выполнения этой процедуры и назначения PR в группе — {portmgr}, решение об одобрении принимается ими. Если решение положительное, их обязанностью является:
[.procedure]
====
@@ -2998,7 +3026,7 @@ FreeBSD — это высокопортативная операционная
. После этого можно зафиксировать обновлённый файл [.filename]#ports/Makefile#, чтобы подключить новую категорию к сборке, а также сделать коммит изменениям в файле [.filename]#Makefile# для старой категории или категорий.
. Добавьте соответствующие записи в [.filename]#ports/MOVED#.
. Обновите документацию, изменив:
-** extref:{porters-handbook}makefiles/[список категорий, porting-categories] в Руководстве портера
+** extref:{porters-handbook}makefiles/[список категорий, porting-categories] в Руководстве FreeBSD по созданию портов
+
. Только после того, как все вышеперечисленное будет выполнено и больше никто не сообщает о проблемах с новыми портами, старые порты следует удалить из их прежних мест в репозитории.
====
@@ -3007,7 +3035,7 @@ FreeBSD — это высокопортативная операционная
Это намного проще, чем физическая категория. Требуется всего несколько изменений:
-* extref:{porters-handbook}makefiles/[список категорий, porting-categories] в Руководстве портера
+* extref:{porters-handbook}makefiles/[список категорий, porting-categories] в Руководстве FreeBSD по созданию портов
[[ports-qa-misc-questions]]
=== Разные вопросы
diff --git a/documentation/content/ru/articles/committers-guide/_index.po b/documentation/content/ru/articles/committers-guide/_index.po
index 4061142175..3fdd1f69a3 100644
--- a/documentation/content/ru/articles/committers-guide/_index.po
+++ b/documentation/content/ru/articles/committers-guide/_index.po
@@ -5,8 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-09-18 21:42+0300\n"
-"PO-Revision-Date: 2025-09-18 04:45+0000\n"
+"POT-Creation-Date: 2025-08-17 20:53+0100\n"
+"PO-Revision-Date: 2025-10-30 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/articlescommitters-guide_index/ru/>\n"
@@ -18,7 +18,7 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/articles/committers-guide/_index.adoc:1
#, no-wrap
msgid "Introductory information for FreeBSD committers"
@@ -224,8 +224,10 @@ msgid ""
"man:ssh[1] is required to connect to the project hosts. For more information,\n"
"\tsee crossref:committers-guide[ssh.guide, SSH Quick-Start Guide].\n"
msgstr ""
-"Для подключения к хостам проекта требуется man:ssh[1]. Дополнительную информацию\n"
-"можно найти в crossref:committers-guide[ssh.guide, Руководстве по быстрому началу работы с SSH].\n"
+"Для подключения к хостам проекта требуется man:ssh[1]. Дополнительную "
+"информацию\n"
+"можно найти в crossref:committers-guide[ssh.guide, Руководстве по быстрому "
+"началу работы с SSH].\n"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:105
@@ -287,8 +289,8 @@ msgstr "Создание ключа"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:122
msgid ""
-"Existing keys can be used, but should be checked with "
-"[.filename]#documentation/tools/checkkey.sh# first. In this case, make sure "
+"Existing keys can be used, but should be checked with [."
+"filename]#documentation/tools/checkkey.sh# first. In this case, make sure "
"the key has a FreeBSD user ID."
msgstr ""
"Существующие ключи можно использовать, но сначала их следует проверить с "
@@ -308,16 +310,15 @@ msgstr ""
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:129
msgid ""
-"Install [.filename]#security/gnupg#. Enter these lines in "
-"[.filename]#~/.gnupg/gpg.conf# to set minimum acceptable defaults for "
-"signing and new key preferences (see the link:https://www.gnupg.org/"
-"documentation/manuals/gnupg/GPG-Options.html[GnuPG options documentation] "
-"for more details):"
+"Install [.filename]#security/gnupg#. Enter these lines in [.filename]#~/."
+"gnupg/gpg.conf# to set minimum acceptable defaults for signing and new key "
+"preferences (see the link:https://www.gnupg.org/documentation/manuals/gnupg/"
+"GPG-Options.html[GnuPG options documentation] for more details):"
msgstr ""
-"Установите [.filename]#security/gnupg#. Добавьте следующие строки в "
-"[.filename]#~/.gnupg/gpg.conf#, чтобы задать минимально приемлемые настройки "
-"для подписи и предпочтений новых ключей (подробнее см. в link:https://"
-"www.gnupg.org/documentation/manuals/gnupg/GPG-Options.html[документации по "
+"Установите [.filename]#security/gnupg#. Добавьте следующие строки в [."
+"filename]#~/.gnupg/gpg.conf#, чтобы задать минимально приемлемые настройки "
+"для подписи и предпочтений новых ключей (подробнее см. в link:https://www."
+"gnupg.org/documentation/manuals/gnupg/GPG-Options.html[документации по "
"опциям GnuPG]):"
#. type: delimited block . 4
@@ -469,20 +470,20 @@ msgstr ""
"После ввода адреса электронной почты запрашивается парольная фраза. Методы "
"создания безопасной парольной фразы вызывают споры. Вместо того чтобы "
"предлагать один способ, вот несколько ссылок на сайты, описывающие различные "
-"методы: https://world.std.com/~reinhold/diceware.html[], https://"
-"www.iusmentis.com/security/passphrasefaq/[], https://xkcd.com/936/[], "
-"https://en.wikipedia.org/wiki/Passphrase[]."
+"методы: https://world.std.com/~reinhold/diceware.html[], https://www."
+"iusmentis.com/security/passphrasefaq/[], https://xkcd.com/936/[], https://en."
+"wikipedia.org/wiki/Passphrase[]."
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:190
msgid ""
"Protect the private key and passphrase. If either the private key or "
-"passphrase may have been compromised or disclosed, immediately notify "
-"mailto:accounts@FreeBSD.org[accounts@FreeBSD.org] and revoke the key."
+"passphrase may have been compromised or disclosed, immediately notify mailto:"
+"accounts@FreeBSD.org[accounts@FreeBSD.org] and revoke the key."
msgstr ""
"Защитите закрытый ключ и парольную фразу. Если закрытый ключ или парольная "
-"фраза могли быть скомпрометированы или раскрыты, немедленно уведомите "
-"mailto:accounts@FreeBSD.org[accounts@FreeBSD.org] и отзовите ключ."
+"фраза могли быть скомпрометированы или раскрыты, немедленно уведомите mailto:"
+"accounts@FreeBSD.org[accounts@FreeBSD.org] и отзовите ключ."
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:193
@@ -542,11 +543,11 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:216
msgid ""
-"A Kerberos password can also be set manually by logging into "
-"`freefall.FreeBSD.org` and running:"
+"A Kerberos password can also be set manually by logging into `freefall."
+"FreeBSD.org` and running:"
msgstr ""
-"Пароль Kerberos также можно установить вручную, войдя в "
-"`freefall.FreeBSD.org` и выполнив:"
+"Пароль Kerberos также можно установить вручную, войдя в `freefall.FreeBSD."
+"org` и выполнив:"
#. type: delimited block . 4
#: documentation/content/en/articles/committers-guide/_index.adoc:220
@@ -564,9 +565,8 @@ msgid ""
msgstr ""
"Если ранее не использовались аутентифицированные через Kerberos службы "
"кластера FreeBSD.org, будет отображено сообщение `Client unknown`. Эта "
-"ошибка означает, что сначала необходимо использовать метод `ssh "
-"kpasswd.freebsd.org`, показанный выше, для инициализации учётной записи "
-"Kerberos."
+"ошибка означает, что сначала необходимо использовать метод `ssh kpasswd."
+"freebsd.org`, показанный выше, для инициализации учётной записи Kerberos."
#. type: Title ==
#: documentation/content/en/articles/committers-guide/_index.adoc:229
@@ -714,13 +714,13 @@ msgstr "Политика активности коммиттеров в друг
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:266
msgid ""
-"All committers may modify [.filename]#src/share/misc/committers-*.dot#, "
-"[.filename]#src/usr.bin/calendar/calendars/calendar.freebsd#, and "
-"[.filename]#ports/astro/xearth/files#."
+"All committers may modify [.filename]#src/share/misc/committers-*.dot#, [."
+"filename]#src/usr.bin/calendar/calendars/calendar.freebsd#, and [."
+"filename]#ports/astro/xearth/files#."
msgstr ""
-"Все коммиттеры могут изменять файлы [.filename]#src/share/misc/committers-"
-"*.dot#, [.filename]#src/usr.bin/calendar/calendars/calendar.freebsd# и "
-"[.filename]#ports/astro/xearth/files#."
+"Все коммиттеры могут изменять файлы [.filename]#src/share/misc/committers-*."
+"dot#, [.filename]#src/usr.bin/calendar/calendars/calendar.freebsd# и [."
+"filename]#ports/astro/xearth/files#."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:267
@@ -730,8 +730,8 @@ msgid ""
"comment fixes without approval from a src committer, subject to the normal "
"care and tending of commits."
msgstr ""
-"Документационные коммиттеры могут вносить изменения в документацию в файлы "
-"[.filename]#src#, такие как руководства, README, базы данных fortune, "
+"Документационные коммиттеры могут вносить изменения в документацию в файлы [."
+"filename]#src#, такие как руководства, README, базы данных fortune, "
"календарные файлы и исправления комментариев, без одобрения коммиттера src, "
"при условии соблюдения обычных правил и внимания к коммитам."
@@ -901,9 +901,9 @@ msgstr "Основы Git"
msgid ""
"When one searches for \"Git Primer\" a number of good ones come up. Daniel "
"Miessler's link:https://danielmiessler.com/study/git/[A git primer] and "
-"Willie Willus' link:https://gist.github.com/williewillus/"
-"068e9a8543de3a7ef80adb2938657b6b[Git - Quick Primer] are both good "
-"overviews. The Git book is also complete, but much longer https://git-"
+"Willie Willus' link:https://gist.github.com/"
+"williewillus/068e9a8543de3a7ef80adb2938657b6b[Git - Quick Primer] are both "
+"good overviews. The Git book is also complete, but much longer https://git-"
"scm.com/book/en/v2. There is also this website https://dangitgit.com/ for "
"common traps and pitfalls of Git, in case you need guidance to fix things "
"up. Finally, an introduction link:https://eagain.net/articles/git-for-"
@@ -915,11 +915,11 @@ msgstr ""
"git/[Введение в Git] и Вилли Виллуса link:https://gist.github.com/"
"williewillus/068e9a8543de3a7ef80adb2938657b6b[Git - Краткое введение] "
"являются хорошими обзорами. Книга по Git также полная, но гораздо длиннее: "
-"https://git-scm.com/book/en/v2. Также обратите внимание на сайт https://"
-"dangitgit.com/, посвящённый распространённым ловушкам и подводным камням "
-"Git, на случай, если вам нужно исправить ошибки. Наконец, введение, "
-"link:https://eagain.net/articles/git-for-computer-scientists/"
-"[ориентированное на компьютерных учёных], оказалось полезным для некоторых в "
+"https://git-scm.com/book/en/v2. Также обратите внимание на сайт "
+"https://dangitgit.com/, посвящённый распространённым ловушкам и подводным "
+"камням Git, на случай, если вам нужно исправить ошибки. Наконец, введение, "
+"link:https://eagain.net/articles/git-for-computer-scientists/["
+"ориентированное на компьютерных учёных], оказалось полезным для некоторых в "
"объяснении мировоззрения Git."
#. type: Plain text
@@ -1112,8 +1112,8 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:392
msgid ""
-"Again, note that `gitrepo.freebsd.org` has been canonicalized to "
-"`repo.freebsd.org`."
+"Again, note that `gitrepo.freebsd.org` has been canonicalized to `repo."
+"freebsd.org`."
msgstr ""
"Еще раз обратите внимание, что `gitrepo.freebsd.org` является псевдонимом "
"для `repo.freebsd.org`."
@@ -1215,11 +1215,11 @@ msgstr "git worktree add -b admin ../${repo}-admin internal/admin\n"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:440
msgid ""
-"For browsing `internal/admin` branch on web: `https://cgit.freebsd.org/$"
-"{repo}/log/?h=internal/admin`"
+"For browsing `internal/admin` branch on web: `https://cgit.freebsd.org/"
+"${repo}/log/?h=internal/admin`"
msgstr ""
-"Для просмотра ветки `internal/admin` в веб-интерфейсе: `https://"
-"cgit.freebsd.org/${repo}/log/?h=internal/admin`"
+"Для просмотра ветки `internal/admin` в веб-интерфейсе: `https://cgit.freebsd."
+"org/${repo}/log/?h=internal/admin`"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:442
@@ -1278,8 +1278,8 @@ msgid ""
"For FreeBSD-RELEASE, release engineering branch names include `releng/12.4` "
"and `releng/13.2`."
msgstr ""
-"Для FreeBSD-RELEASE, названия веток разработки выпусков включают `releng/"
-"12.4` и `releng/13.2`."
+"Для FreeBSD-RELEASE, названия веток разработки выпусков включают `releng/12."
+"4` и `releng/13.2`."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:466
@@ -1333,10 +1333,10 @@ msgid ""
"the latest information on where to get FreeBSD sources. $URL below can be "
"obtained from that page."
msgstr ""
-"Пожалуйста, обратитесь к разделу crossref:committers-"
-"guide[admin,Административные детали] для получения актуальной информации о "
-"том, где взять исходные коды FreeBSD. Значение $URL ниже можно получить с "
-"этой страницы."
+"Пожалуйста, обратитесь к разделу crossref:committers-guide["
+"admin,Административные детали] для получения актуальной информации о том, "
+"где взять исходные коды FreeBSD. Значение $URL ниже можно получить с этой "
+"страницы."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:481
@@ -1382,14 +1382,14 @@ msgid ""
"will create a deep clone. `branch` should be one of the branches listed in "
"the previous section. If no `branch` is given: the default (`main`) will be "
"used. If no `<directory>` is given: the name of the new directory will "
-"match the name of the repo ([.filename]#doc#, [.filename]#ports# or "
-"[.filename]#src#)."
+"match the name of the repo ([.filename]#doc#, [.filename]#ports# or [."
+"filename]#src#)."
msgstr ""
"создаст полную копию. `branch` должна быть одной из веток, перечисленных в "
"предыдущем разделе. Если параметр `branch` не указан: будет использоваться "
"ветка по умолчанию (`main`). Если параметр `<directory>` не указан: имя "
-"нового каталога будет соответствовать имени репозитория ([.filename]#doc#, "
-"[.filename]#ports# или [.filename]#src#)."
+"нового каталога будет соответствовать имени репозитория ([.filename]#doc#, [."
+"filename]#ports# или [.filename]#src#)."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:499
@@ -1503,11 +1503,11 @@ msgid ""
"MYKERNEL under sys/${ARCH}/conf with your changes against GENERIC. To have "
"MYKERNEL disregarded by Git, it can be added to .git/info/exclude."
msgstr ""
-"Если вы хотите собрать собственное ядро, в extref:{handbook}"
-"kernelconfig[разделе конфигурации ядра, kernelconfig] руководства FreeBSD "
-"рекомендуется создать файл MYKERNEL в sys/${ARCH}/conf с вашими изменениями "
-"на основе GENERIC. Чтобы Git игнорировал MYKERNEL, его можно добавить в .git/"
-"info/exclude."
+"Если вы хотите собрать собственное ядро, в extref:{handbook}kernelconfig["
+"разделе конфигурации ядра, kernelconfig] руководства FreeBSD рекомендуется "
+"создать файл MYKERNEL в sys/${ARCH}/conf с вашими изменениями на основе "
+"GENERIC. Чтобы Git игнорировал MYKERNEL, его можно добавить в .git/info/"
+"exclude."
#. type: Title =====
#: documentation/content/en/articles/committers-guide/_index.adoc:539
@@ -1931,14 +1931,14 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:692
msgid ""
"The cgit repository web interface for use with web browsers is at https://"
-"cgit.FreeBSD.org/ports/ . The production Git repository is at https://"
-"git.FreeBSD.org/ports.git and at ssh://anongit@git.FreeBSD.org/ports.git (or "
+"cgit.FreeBSD.org/ports/ . The production Git repository is at https://git."
+"FreeBSD.org/ports.git and at ssh://anongit@git.FreeBSD.org/ports.git (or "
"anongit@git.FreeBSD.org:ports.git)."
msgstr ""
-"Веб-интерфейс cgit для работы в браузере доступен по адресу https://"
-"cgit.FreeBSD.org/ports/ . Рабочий репозиторий Git находится по адресу "
-"https://git.FreeBSD.org/ports.git и ssh://anongit@git.FreeBSD.org/ports.git "
-"(или `anongit@git.FreeBSD.org:ports.git`)."
+"Веб-интерфейс cgit для работы в браузере доступен по адресу https://cgit."
+"FreeBSD.org/ports/ . Рабочий репозиторий Git находится по адресу https://git."
+"FreeBSD.org/ports.git и ssh://anongit@git.FreeBSD.org/ports.git (или "
+"`anongit@git.FreeBSD.org:ports.git`)."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:696
@@ -1961,9 +1961,9 @@ msgstr "Форматы сообщений коммитов"
#: documentation/content/en/articles/committers-guide/_index.adoc:702
msgid ""
"A hook is available in the ports repository to help you write up your commit "
-"messages in https://cgit.freebsd.org/ports/tree/.hooks/prepare-commit-"
-"msg[.hooks/prepare-commit-message]. It can be enabled by running ``git "
-"config --add core.hooksPath .hooks``."
+"messages in https://cgit.freebsd.org/ports/tree/.hooks/prepare-commit-msg[."
+"hooks/prepare-commit-message]. It can be enabled by running ``git config --"
+"add core.hooksPath .hooks``."
msgstr ""
"В репозитории портов доступен перехватчик, который помогает оформлять "
"сообщения коммитов в https://cgit.freebsd.org/ports/tree/.hooks/prepare-"
@@ -2136,8 +2136,8 @@ msgid ""
"at a newer location on the parent branch. We will cover the most common "
"scenarios that arise using it."
msgstr ""
-"В дополнение к слиянию, Git поддерживает концепцию «перебазирования» "
-"(rebase), которая позволяет избежать этих проблем. Команда `git rebase` "
+"В дополнение к слиянию, Git поддерживает концепцию «перебазирования» (rebase)"
+", которая позволяет избежать этих проблем. Команда `git rebase` "
"воспроизводит все коммиты ветки в конце родительской ветки. Мы рассмотрим "
"наиболее распространённые сценарии, возникающие при её использовании."
@@ -2278,8 +2278,8 @@ msgid ""
"Once you are done with the above, you have to move the commits to ls.c "
"forward from the old version of FreeBSD to the newer one."
msgstr ""
-"После завершения вышеуказанных действий необходимо перенести коммиты для "
-"`ls.c` со старой версии FreeBSD на новую."
+"После завершения вышеуказанных действий необходимо перенести коммиты для `ls."
+"c` со старой версии FreeBSD на новую."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:821
@@ -2448,9 +2448,10 @@ msgid ""
"this guide."
msgstr ""
"Для более подробного ознакомления с этой темой, см. довольно обширное "
-"руководство по адресу: https://www.freecodecamp.org/news/the-ultimate-guide-"
-"to-git-merge-and-git-rebase/. Этот ресурс будет полезен для решения проблем, "
-"которые возникают нечасто, но слишком специфичны для данного руководства."
+"руководство по адресу: https://www.freecodecamp.org/news/"
+"the-ultimate-guide-to-git-merge-and-git-rebase/. Этот ресурс будет полезен "
+"для решения проблем, которые возникают нечасто, но слишком специфичны для "
+"данного руководства."
#. type: Title =====
#: documentation/content/en/articles/committers-guide/_index.adoc:880
@@ -2539,8 +2540,8 @@ msgstr "Краткое содержание"
#: documentation/content/en/articles/committers-guide/_index.adoc:911
msgid ""
"MFC workflow can be summarized as `git cherry-pick -x` plus `git commit --"
-"amend` to adjust the commit message. For multiple commits, use `git rebase "
-"-i` to squash them together and edit the commit message."
+"amend` to adjust the commit message. For multiple commits, use `git rebase -"
+"i` to squash them together and edit the commit message."
msgstr ""
"Рабочий процесс MFC можно обобщить как `git cherry-pick -x` плюс `git commit "
"--amend` для корректировки сообщения коммита. Для нескольких коммитов "
@@ -2567,8 +2568,8 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:922
msgid ""
"For MFC commits, for example a vendor import, you would need to specify one "
-"parent for cherry-pick purposes. Normally, that would be the \"first "
-"parent\" of the branch you are cherry-picking from, so:"
+"parent for cherry-pick purposes. Normally, that would be the \"first parent"
+"\" of the branch you are cherry-picking from, so:"
msgstr ""
"Для коммитов MFC, например, импорта от вендора, вам потребуется указать "
"одного родителя для целей выборочного применения (cherry-pick). Обычно это "
@@ -2601,8 +2602,8 @@ msgid ""
"due to losing the commit race, use `git pull --rebase` and try to push again."
msgstr ""
"После завершения выборочного применения выполните отправку с помощью `git "
-"push`. Если возникнет ошибка из-за проигрыша в гонке коммитов, используйте "
-"`git pull --rebase` и повторите попытку отправки."
+"push`. Если возникнет ошибка из-за проигрыша в гонке коммитов, используйте `"
+"git pull --rebase` и повторите попытку отправки."
#. type: Title ====
#: documentation/content/en/articles/committers-guide/_index.adoc:934
@@ -2688,7 +2689,8 @@ msgstr ""
"% for h in $HASH_LIST; do git cherry-pick -x $h; done\n"
"% git rebase -i stable/X\n"
"# отметить каждый коммит после первого как 'squash'\n"
-"# При необходимости обновить сообщение коммита, чтобы отразить все его элементы.\n"
+"# При необходимости обновить сообщение коммита, чтобы отразить все его "
+"элементы.\n"
"# Обязательно сохранить строки \"cherry picked from\".\n"
"% git push freebsd HEAD:stable/X\n"
@@ -2775,8 +2777,8 @@ msgid ""
"pickup the proper parent. Just do:"
msgstr ""
"Бывают, надеюсь, редкие случаи, когда возможно, что ветка `main` была "
-"объединена в обратном порядке скриптом преобразования. Если это произойдет "
-"(а мы пока таких случаев не обнаружили), вам следует изменить указанное выше "
+"объединена в обратном порядке скриптом преобразования. Если это произойдет ("
+"а мы пока таких случаев не обнаружили), вам следует изменить указанное выше "
"на `-m 2`, чтобы выбрать правильного родителя. Просто выполните:"
#. type: delimited block . 4
@@ -2949,8 +2951,8 @@ msgid ""
"to work around these difficulties and is working on automated tooling to "
"take advantage of this."
msgstr ""
-"Git предоставляет встроенную поддержку этого через команды `git cherry` и "
-"`git log --cherry`. Эти команды сравнивают исходные различия коммитов (но не "
+"Git предоставляет встроенную поддержку этого через команды `git cherry` и `"
+"git log --cherry`. Эти команды сравнивают исходные различия коммитов (но не "
"другие метаданные, такие как сообщения журнала), чтобы определить, идентичны "
"ли два коммита. Это хорошо работает, когда каждый коммит из `main` "
"переносится как отдельный коммит в стабильную ветку, но перестаёт работать, "
@@ -3338,8 +3340,8 @@ msgid ""
"Now you need to update the mtree in FreeBSD. The sources live in `contrib/"
"mtree` since it is upstream software."
msgstr ""
-"Теперь вам нужно обновить mtree в FreeBSD. Исходные коды находятся в "
-"`contrib/mtree`, так как это программное обеспечение из внешних источников."
+"Теперь вам нужно обновить mtree в FreeBSD. Исходные коды находятся в `"
+"contrib/mtree`, так как это программное обеспечение из внешних источников."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1179
@@ -3379,8 +3381,8 @@ msgid ""
"were conflicts, you would need to fix them before committing. Include "
"details about the changes being merged in the merge commit message."
msgstr ""
-"Это создаст коммит слияния поддерева `contrib/mtree` с локальной веткой "
-"`vendor/NetBSD/mtree`. Изучите разницу (diff) между результатом слияния и "
+"Это создаст коммит слияния поддерева `contrib/mtree` с локальной веткой `"
+"vendor/NetBSD/mtree`. Изучите разницу (diff) между результатом слияния и "
"содержимым вышестоящей ветки. Если слияние сократило наши локальные "
"изменения до более тривиальных различий, таких как изменения пустых строк "
"или отступов, попробуйте исправить локальные изменения, чтобы уменьшить "
@@ -3442,7 +3444,9 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:1216
#, no-wrap
msgid "Rebasing your change against latest FreeBSD source tree"
-msgstr "Перебазирование ваших изменений относительно последней версии исходного дерева FreeBSD"
+msgstr ""
+"Перебазирование ваших изменений относительно последней версии исходного "
+"дерева FreeBSD"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1219
@@ -3558,8 +3562,8 @@ msgid ""
"Commit the results with the prior commit message (the example assumes "
"there's only one merge on the XXX branch)."
msgstr ""
-"Сделайте коммит полученному результату с предыдущим сообщением коммита "
-"(пример предполагает, что в ветке XXX была только одна операция слияния)."
+"Сделайте коммит полученному результату с предыдущим сообщением коммита ("
+"пример предполагает, что в ветке XXX была только одна операция слияния)."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1238
@@ -3642,7 +3646,9 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:1262
#, no-wrap
msgid "% git checkout -B YYY freebsd/main # Create new throw-away YYY branch if starting over is just going to be easier\n"
-msgstr "% git checkout -B YYY freebsd/main # Создать новую временную ветку YYY, если начать заново будет проще\n"
+msgstr ""
+"% git checkout -B YYY freebsd/main # Создать новую временную ветку YYY, если "
+"начать заново будет проще\n"
#. type: Title ====
#: documentation/content/en/articles/committers-guide/_index.adoc:1264
@@ -3723,8 +3729,8 @@ msgid ""
"commit with the commit message always at XXX~1 to make committing easier."
msgstr ""
"Если вы попытались выполнить отправку из предыдущего раздела и она "
-"завершилась неудачей, то вам следует выполнить следующие действия для "
-"«повторного выполнения» операций. Эта последовательность сохраняет коммит с "
+"завершилась неудачей, то вам следует выполнить следующие действия для «"
+"повторного выполнения» операций. Эта последовательность сохраняет коммит с "
"сообщением о коммите всегда на позиции XXX~1 для упрощения коммита."
#. type: delimited block . 4
@@ -3738,12 +3744,16 @@ msgid ""
"% git checkout XXX .\t\t# XXX branch has the conflict resolution\n"
"% git commit -c XXX~1\t\t# -c reuses the commit message from commit before rebase\n"
msgstr ""
-"% git checkout -B XXX YYY\t# recreate that throw-away-branch XXX and switch to it\n"
+"% git checkout -B XXX YYY\t# recreate that throw-away-branch XXX and switch "
+"to it\n"
"% git merge freebsd/main\t# Merge the changes and resolve conflicts\n"
-"% git checkout -B YYY freebsd/main # Recreate new throw-away YYY branch for redo\n"
-"% git subtree merge -P contrib/mtree vendor/NetBSD/mtree # Redo subtree merge\n"
+"% git checkout -B YYY freebsd/main # Recreate new throw-away YYY branch for "
+"redo\n"
+"% git subtree merge -P contrib/mtree vendor/NetBSD/mtree # Redo subtree "
+"merge\n"
"% git checkout XXX .\t\t# XXX branch has the conflict resolution\n"
-"% git commit -c XXX~1\t\t# -c reuses the commit message from commit before rebase\n"
+"% git commit -c XXX~1\t\t# -c reuses the commit message from commit before "
+"rebase\n"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1301
@@ -4164,8 +4174,8 @@ msgstr ""
"Это вызовет интерактивный экран для изменения настроек по умолчанию. Пока "
"просто выйдите из редактора. Всё должно примениться автоматически. Если нет, "
"то вам потребуется разрешить различия. https://docs.github.com/en/free-pro-"
-"team@latest/github/using-git/resolving-merge-conflicts-after-a-git-"
-"rebase[Документация GitHub] может помочь вам в этом процессе."
+"team@latest/github/using-git/resolving-merge-conflicts-after-a-git-rebase["
+"Документация GitHub] может помочь вам в этом процессе."
#. type: Title =====
#: documentation/content/en/articles/committers-guide/_index.adoc:1460
@@ -4186,7 +4196,8 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:1467
#, no-wrap
msgid "% git remote set-url --push freebsd ssh://git@gitrepo.freebsd.org/src.git\n"
-msgstr "% git remote set-url --push freebsd ssh://git@gitrepo.freebsd.org/src.git\n"
+msgstr ""
+"% git remote set-url --push freebsd ssh://git@gitrepo.freebsd.org/src.git\n"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1471
@@ -4333,9 +4344,9 @@ msgstr "Поиск ревизии Subversion"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1527
msgid ""
-"You'll need to make sure that you've fetched the notes (see the "
-"crossref:committers-guide[git-mini-daily-use, Daily use]for details). Once "
-"you have these, notes will show up in the git log command like so:"
+"You'll need to make sure that you've fetched the notes (see the crossref:"
+"committers-guide[git-mini-daily-use, Daily use]for details). Once you have "
+"these, notes will show up in the git log command like so:"
msgstr ""
"Вам нужно убедиться, что вы получили (fetch) примечания (подробности "
"смотрите в разделе crossref:committers-guide[git-mini-daily-use, Ежедневное "
@@ -4411,17 +4422,11 @@ msgstr "Как отслеживать -current и -stable, имея только
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1561
-#, fuzzy
-#| msgid ""
-#| "**Q:** Although disk space is not a huge issue, it's more efficient to "
-#| "use only one copy of the repository.\n"
-#| "With SVN mirroring, I could checkout multiple trees from the same "
-#| "repository.\n"
-#| "How do I do this with Git?\n"
-msgid ""
-"**Q:** Although disk space is not a huge issue, it's more efficient to use "
-"only one copy of the repository. With SVN mirroring, I could checkout "
-"multiple trees from the same repository. How do I do this with Git?"
+#, no-wrap
+msgid ""
+"**Q:** Although disk space is not a huge issue, it's more efficient to use only one copy of the repository.\n"
+"With SVN mirroring, I could checkout multiple trees from the same repository.\n"
+"How do I do this with Git?\n"
msgstr ""
"**В:** Хотя место на диске не является большой проблемой, эффективнее "
"использовать только одну копию репозитория.\n"
@@ -4431,18 +4436,11 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1565
-#, fuzzy
-#| msgid ""
-#| "**A:** You can use Git worktrees.\n"
-#| "There's a number of ways to do this, but the simplest way is to use a "
-#| "clone to track -current, and a worktree to track stable releases.\n"
-#| "While using a 'bare repository' has been put forward as a way to cope, "
-#| "it's more complicated and will not be documented here.\n"
-msgid ""
-"**A:** You can use Git worktrees. There's a number of ways to do this, but "
-"the simplest way is to use a clone to track -current, and a worktree to "
-"track stable releases. While using a 'bare repository' has been put forward "
-"as a way to cope, it's more complicated and will not be documented here."
+#, no-wrap
+msgid ""
+"**A:** You can use Git worktrees.\n"
+"There's a number of ways to do this, but the simplest way is to use a clone to track -current, and a worktree to track stable releases.\n"
+"While using a 'bare repository' has been put forward as a way to cope, it's more complicated and will not be documented here.\n"
msgstr ""
"**О:** Вы можете использовать рабочие деревья Git.\n"
"Существует несколько способов сделать это, но самый простой — использовать "
@@ -4466,7 +4464,9 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:1572
#, no-wrap
msgid "% git clone -o freebsd --config remote.freebsd.fetch='+refs/notes/*:refs/notes/*' $URL freebsd-current\n"
-msgstr "% git clone -o freebsd --config remote.freebsd.fetch='+refs/notes/*:refs/notes/*' $URL freebsd-current\n"
+msgstr ""
+"% git clone -o freebsd --config remote.freebsd.fetch='+refs/notes/*:refs/"
+"notes/*' $URL freebsd-current\n"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1575
@@ -4551,22 +4551,16 @@ msgstr "Ой! Я закоммитил в `main` вместо другой вет
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1605
-#, fuzzy
-#| msgid ""
-#| "**Q:** From time to time, I goof up and mistakenly commit to the `main` "
-#| "branch. What do I do?\n"
-msgid ""
-"**Q:** From time to time, I goof up and mistakenly commit to the `main` "
-"branch. What do I do?"
+#, no-wrap
+msgid "**Q:** From time to time, I goof up and mistakenly commit to the `main` branch. What do I do?\n"
msgstr ""
"**В:** Время от времени я ошибаюсь и по ошибке делаю коммит в ветку `main`. "
"Что мне делать?\n"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1607
-#, fuzzy
-#| msgid "**A:** First, don't panic.\n"
-msgid "**A:** First, don't panic."
+#, no-wrap
+msgid "**A:** First, don't panic.\n"
msgstr "**О:** Во-первых, не паникуйте.\n"
#. type: Plain text
@@ -4608,14 +4602,10 @@ msgstr "Ой! Я закоммитил что-то не в ту ветку!"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1625
-#, fuzzy
-#| msgid ""
-#| "**Q:** I was working on feature on the `wilma` branch, but accidentally "
-#| "committed a change relevant to the `fred` branch in 'wilma'.\n"
-#| "What do I do?\n"
+#, no-wrap
msgid ""
-"**Q:** I was working on feature on the `wilma` branch, but accidentally "
-"committed a change relevant to the `fred` branch in 'wilma'. What do I do?"
+"**Q:** I was working on feature on the `wilma` branch, but accidentally committed a change relevant to the `fred` branch in 'wilma'.\n"
+"What do I do?\n"
msgstr ""
"**В:** Я работал над функцией в ветке `wilma`, но случайно сделал коммит "
"изменению, относящемуся к ветке `fred`, в 'wilma'.\n"
@@ -4623,20 +4613,11 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1629
-#, fuzzy
-#| msgid ""
-#| "**A:** The answer is similar to the previous one, but with cherry "
-#| "picking.\n"
-#| "This assumes there's only one commit on wilma, but will generalize to "
-#| "more complicated situations.\n"
-#| "It also assumes that it's the last commit on wilma (hence using wilma in "
-#| "the `git cherry-pick` command), but that too can be generalized.\n"
-msgid ""
-"**A:** The answer is similar to the previous one, but with cherry picking. "
-"This assumes there's only one commit on wilma, but will generalize to more "
-"complicated situations. It also assumes that it's the last commit on wilma "
-"(hence using wilma in the `git cherry-pick` command), but that too can be "
-"generalized."
+#, no-wrap
+msgid ""
+"**A:** The answer is similar to the previous one, but with cherry picking.\n"
+"This assumes there's only one commit on wilma, but will generalize to more complicated situations.\n"
+"It also assumes that it's the last commit on wilma (hence using wilma in the `git cherry-pick` command), but that too can be generalized.\n"
msgstr ""
"**О:** Ответ аналогичен предыдущему, но с использованием выборочного "
"применением коммитов (cherry-pick).\n"
@@ -4687,43 +4668,21 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1650
-#, fuzzy
-#| msgid ""
-#| "**Q:** But what if I want to commit a few changes to `main`, but keep the "
-#| "rest in `wilma` for some reason?\n"
-msgid ""
-"**Q:** But what if I want to commit a few changes to `main`, but keep the "
-"rest in `wilma` for some reason?"
+#, no-wrap
+msgid "**Q:** But what if I want to commit a few changes to `main`, but keep the rest in `wilma` for some reason?\n"
msgstr ""
"**В:** Но что, если я хочу сделать коммит нескольким изменениям в `main`, но "
"оставить остальные в `wilma` по какой-то причине?\n"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1656
-#, fuzzy
-#| msgid ""
-#| "**A:** The same technique above also works if you are wanting to 'land' "
-#| "parts of the branch you are working on into `main` before the rest of the "
-#| "branch is ready (say you noticed an unrelated typo, or fixed an "
-#| "incidental bug).\n"
-#| "You can cherry pick those changes into `main`, then push to the parent "
-#| "repository.\n"
-#| "Once you've done that, cleanup couldn't be simpler: just `git rebase "
-#| "-i`.\n"
-#| "Git will notice you've done this and skip the common changes "
-#| "automatically (even if you had to change the commit message or tweak the "
-#| "commit slightly).\n"
-#| "There's no need to switch back to wilma to adjust it: just rebase!\n"
-msgid ""
-"**A:** The same technique above also works if you are wanting to 'land' "
-"parts of the branch you are working on into `main` before the rest of the "
-"branch is ready (say you noticed an unrelated typo, or fixed an incidental "
-"bug). You can cherry pick those changes into `main`, then push to the "
-"parent repository. Once you've done that, cleanup couldn't be simpler: just "
-"`git rebase -i`. Git will notice you've done this and skip the common "
-"changes automatically (even if you had to change the commit message or tweak "
-"the commit slightly). There's no need to switch back to wilma to adjust it: "
-"just rebase!"
+#, no-wrap
+msgid ""
+"**A:** The same technique above also works if you are wanting to 'land' parts of the branch you are working on into `main` before the rest of the branch is ready (say you noticed an unrelated typo, or fixed an incidental bug).\n"
+"You can cherry pick those changes into `main`, then push to the parent repository.\n"
+"Once you've done that, cleanup couldn't be simpler: just `git rebase -i`.\n"
+"Git will notice you've done this and skip the common changes automatically (even if you had to change the commit message or tweak the commit slightly).\n"
+"There's no need to switch back to wilma to adjust it: just rebase!\n"
msgstr ""
"**О:** Тот же метод, описанный выше, также работает, если вы хотите "
"«приземлить» части ветки, над которой работаете, в `main` до того, как вся "
@@ -4733,44 +4692,28 @@ msgstr ""
"отправить их в родительский репозиторий.\n"
"После того, как вы это сделаете, очистка не может быть проще: просто "
"выполните `git rebase -i`.\n"
-"Git заметит, что вы это сделали, и автоматически пропустит общие изменения "
-"(даже если вам пришлось изменить сообщение коммита или слегка "
+"Git заметит, что вы это сделали, и автоматически пропустит общие изменения ("
+"даже если вам пришлось изменить сообщение коммита или слегка "
"подкорректировать коммит).\n"
"Нет необходимости переключаться обратно на wilma, чтобы её поправить: просто "
"делайте rebase!\n"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1658
-#, fuzzy
-#| msgid ""
-#| "**Q:** I want to split off some changes from branch `wilma` into branch "
-#| "`fred`\n"
-msgid ""
-"**Q:** I want to split off some changes from branch `wilma` into branch "
-"`fred`"
+#, no-wrap
+msgid "**Q:** I want to split off some changes from branch `wilma` into branch `fred`\n"
msgstr ""
"**В:** Я хочу выделить некоторые изменения из ветки `wilma` в ветку `fred`\n"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1664
-#, fuzzy
-#| msgid ""
-#| "**A:** The more general answer would be the same as the previous.\n"
-#| "You'd checkout/create the `fred` branch, cherry pick the changes you want "
-#| "from `wilma` one at a time, then rebase `wilma` to remove those changes "
-#| "you cherry picked.\n"
-#| "`git rebase -i main wilma` will toss you into an editor, and remove the "
-#| "`pick` lines that correspond to the commits you copied to `fred`.\n"
-#| "If all goes well, and there are no conflicts, you're done.\n"
-#| "If not, you'll need to resolve the conflicts as you go.\n"
-msgid ""
-"**A:** The more general answer would be the same as the previous. You'd "
-"checkout/create the `fred` branch, cherry pick the changes you want from "
-"`wilma` one at a time, then rebase `wilma` to remove those changes you "
-"cherry picked. `git rebase -i main wilma` will toss you into an editor, and "
-"remove the `pick` lines that correspond to the commits you copied to "
-"`fred`. If all goes well, and there are no conflicts, you're done. If not, "
-"you'll need to resolve the conflicts as you go."
+#, no-wrap
+msgid ""
+"**A:** The more general answer would be the same as the previous.\n"
+"You'd checkout/create the `fred` branch, cherry pick the changes you want from `wilma` one at a time, then rebase `wilma` to remove those changes you cherry picked.\n"
+"`git rebase -i main wilma` will toss you into an editor, and remove the `pick` lines that correspond to the commits you copied to `fred`.\n"
+"If all goes well, and there are no conflicts, you're done.\n"
+"If not, you'll need to resolve the conflicts as you go.\n"
msgstr ""
"**О:** Более общий ответ будет таким же, как и предыдущий.\n"
"Вы должны выгрузить(checkout)/создать ветку `fred`, выборочно применить "
@@ -4826,17 +4769,11 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1684
-#, fuzzy
-#| msgid ""
-#| "**Q:** But I did things as I read along and didn't see your advice at the "
-#| "end to create a branch, and now `fred` and `wilma` are all screwed up.\n"
-#| "How do I find what `wilma` was before I started.\n"
-#| "I don't know how many times I moved things around.\n"
-msgid ""
-"**Q:** But I did things as I read along and didn't see your advice at the "
-"end to create a branch, and now `fred` and `wilma` are all screwed up. How "
-"do I find what `wilma` was before I started. I don't know how many times I "
-"moved things around."
+#, no-wrap
+msgid ""
+"**Q:** But I did things as I read along and didn't see your advice at the end to create a branch, and now `fred` and `wilma` are all screwed up.\n"
+"How do I find what `wilma` was before I started.\n"
+"I don't know how many times I moved things around.\n"
msgstr ""
"**В:** Но я делал всё по мере прочтения и не увидел ваш совет в конце "
"создать ветку, и теперь `fred` и `wilma` полностью испорчены.\n"
@@ -4845,13 +4782,8 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1686
-#, fuzzy
-#| msgid ""
-#| "**A:** All is not lost. You can figure out it, so long as it hasn't been "
-#| "too long, or too many commits (hundreds).\n"
-msgid ""
-"**A:** All is not lost. You can figure out it, so long as it hasn't been too "
-"long, or too many commits (hundreds)."
+#, no-wrap
+msgid "**A:** All is not lost. You can figure out it, so long as it hasn't been too long, or too many commits (hundreds).\n"
msgstr ""
"**О:** Не всё потеряно. Вы можете разобраться с этим, если прошло не слишком "
"много времени или не было сделано слишком много коммитов (сотни).\n"
@@ -4887,7 +4819,8 @@ msgid ""
"%\n"
msgstr ""
"% git reflog\n"
-"6ff9c25 (HEAD -> wilma) HEAD@{0}: rebase -i (finish): returning to refs/heads/wilma\n"
+"6ff9c25 (HEAD -> wilma) HEAD@{0}: rebase -i (finish): returning to refs/"
+"heads/wilma\n"
"6ff9c25 (HEAD -> wilma) HEAD@{1}: rebase -i (start): checkout main\n"
"869cbd3 HEAD@{2}: rebase -i (start): checkout wilma\n"
"a6a5094 (fred) HEAD@{3}: rebase -i (finish): returning to refs/heads/fred\n"
@@ -4933,7 +4866,7 @@ msgstr ""
"перебазирования `fred`, и вы видите 'начало', каждый шаг и 'завершение' "
"этого процесса. Хотя нам это здесь не нужно, вы можете точно понять, что "
"произошло. К счастью, чтобы исправить это, вы можете выполнить шаги из "
-"предыдущего ответа, но с хэшом `869cbd3` вместо `pre-split`. Хотя это "
+"предыдущего ответа, но с хэшем `869cbd3` вместо `pre-split`. Хотя это "
"кажется немного многословным, это легко запомнить, поскольку вы делаете одно "
"действие за раз. Вы также можете последовательно применить команды одну за "
"другой:"
@@ -5015,18 +4948,15 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:1755
#, no-wrap
msgid "Ooops! I did a `git pull` and it created a merge commit, what do I do?"
-msgstr "Ой! Я выполнил `git pull`, и это создало коммит слияния, что мне делать?"
+msgstr ""
+"Ой! Я выполнил `git pull`, и это создало коммит слияния, что мне делать?"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1759
-#, fuzzy
-#| msgid ""
-#| "**Q:** I was on autopilot and did a `git pull` for my development tree "
-#| "and that created a merge commit on `main`.\n"
-#| "How do I recover?\n"
+#, no-wrap
msgid ""
-"**Q:** I was on autopilot and did a `git pull` for my development tree and "
-"that created a merge commit on `main`. How do I recover?"
+"**Q:** I was on autopilot and did a `git pull` for my development tree and that created a merge commit on `main`.\n"
+"How do I recover?\n"
msgstr ""
"**В:** Я действовал на автопилоте и сделал `git pull` для своего дерева "
"разработки, что создало коммит слияния в `main`.\n"
@@ -5034,13 +4964,8 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1761
-#, fuzzy
-#| msgid ""
-#| "**A:** This can happen when you invoke the pull with your development "
-#| "branch checked out.\n"
-msgid ""
-"**A:** This can happen when you invoke the pull with your development branch "
-"checked out."
+#, no-wrap
+msgid "**A:** This can happen when you invoke the pull with your development branch checked out.\n"
msgstr ""
"**О:** Это может произойти, когда вы выполняете извлечение (checkout) с "
"выбранной веткой разработки.\n"
@@ -5099,26 +5024,20 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1784
-#, fuzzy
-#| msgid "**Q:** But I also need to fix my `main` branch. How do I do that?\n"
-msgid "**Q:** But I also need to fix my `main` branch. How do I do that?"
+#, no-wrap
+msgid "**Q:** But I also need to fix my `main` branch. How do I do that?\n"
msgstr ""
"**В:** Но мне также нужно исправить мою ветку `main`. Как мне это сделать?\n"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1787
-#, fuzzy
-#| msgid ""
-#| "**A:** Git keeps track of the remote repository branches in a `freebsd/` "
-#| "namespace.\n"
-#| "To fix your `main` branch, just make it point to the remote's `main`:\n"
-msgid ""
-"**A:** Git keeps track of the remote repository branches in a `freebsd/` "
-"namespace. To fix your `main` branch, just make it point to the remote's "
-"`main`:"
-msgstr ""
-"**О:** Git отслеживает ветки удалённого репозитория в пространстве имён "
-"`freebsd/`.\n"
+#, no-wrap
+msgid ""
+"**A:** Git keeps track of the remote repository branches in a `freebsd/` namespace.\n"
+"To fix your `main` branch, just make it point to the remote's `main`:\n"
+msgstr ""
+"**О:** Git отслеживает ветки удалённого репозитория в пространстве имён `"
+"freebsd/`.\n"
"Чтобы исправить вашу ветку `main`, просто заставьте её указывать на "
"удалённую ветку `main`:\n"
@@ -5149,14 +5068,10 @@ msgstr "Смешивание и сопоставление веток"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1801
-#, fuzzy
-#| msgid ""
-#| "**Q:** So I have two branches `worker` and `async` that I'd like to "
-#| "combine into one branch called `feature`\n"
-#| "while maintaining the commits in both.\n"
+#, no-wrap
msgid ""
-"**Q:** So I have two branches `worker` and `async` that I'd like to combine "
-"into one branch called `feature` while maintaining the commits in both."
+"**Q:** So I have two branches `worker` and `async` that I'd like to combine into one branch called `feature`\n"
+"while maintaining the commits in both.\n"
msgstr ""
"**В:** Итак, у меня есть две ветки `worker` и `async`, которые я хочу "
"объединить в одну ветку под названием `feature`\n"
@@ -5164,9 +5079,8 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1803
-#, fuzzy
-#| msgid "**A:** This is a job for cherry pick.\n"
-msgid "**A:** This is a job for cherry pick."
+#, no-wrap
+msgid "**A:** This is a job for cherry pick.\n"
msgstr "**О:** Это задача для выборочного применения (cherry-pick).\n"
#. type: delimited block . 4
@@ -5193,15 +5107,8 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1816
-#, fuzzy
-#| msgid ""
-#| "**Q:** I have a branch called `driver` and I'd like to break it up into "
-#| "`kernel` and `userland` so I can evolve them separately and commit each "
-#| "branch as it becomes ready.\n"
-msgid ""
-"**Q:** I have a branch called `driver` and I'd like to break it up into "
-"`kernel` and `userland` so I can evolve them separately and commit each "
-"branch as it becomes ready."
+#, no-wrap
+msgid "**Q:** I have a branch called `driver` and I'd like to break it up into `kernel` and `userland` so I can evolve them separately and commit each branch as it becomes ready.\n"
msgstr ""
"**В:** У меня есть ветка под названием `driver`, и я хочу разделить её на "
"`kernel` и `userland`, чтобы развивать их отдельно и коммитить каждую ветку "
@@ -5209,14 +5116,10 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1819
-#, fuzzy
-#| msgid ""
-#| "**A:** This takes a little bit of prep work, but `git rebase` will do the "
-#| "heavy\n"
-#| "lifting here.\n"
+#, no-wrap
msgid ""
-"**A:** This takes a little bit of prep work, but `git rebase` will do the "
-"heavy lifting here."
+"**A:** This takes a little bit of prep work, but `git rebase` will do the heavy\n"
+"lifting here.\n"
msgstr ""
"**О:** Это требует небольшой подготовительной работы, но `git rebase`\n"
"выполнит здесь основную часть работы.\n"
@@ -5276,14 +5179,10 @@ msgstr "и сделайте то же самое, что вы сделали с
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1847
-#, fuzzy
-#| msgid ""
-#| "**Q:** Oh great! I followed the above and forgot a commit in the `kernel` "
-#| "branch.\n"
-#| "How do I recover?\n"
+#, no-wrap
msgid ""
-"**Q:** Oh great! I followed the above and forgot a commit in the `kernel` "
-"branch. How do I recover?"
+"**Q:** Oh great! I followed the above and forgot a commit in the `kernel` branch.\n"
+"How do I recover?\n"
msgstr ""
"**В:** Отлично! Я выполнил указанные выше шаги и забыл сделать коммит в "
"ветке `kernel`.\n"
@@ -5291,14 +5190,10 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1850
-#, fuzzy
-#| msgid ""
-#| "**A:** You can use the `driver` branch to find the hash of the commit is "
-#| "missing and\n"
-#| "cherry pick it.\n"
+#, no-wrap
msgid ""
-"**A:** You can use the `driver` branch to find the hash of the commit is "
-"missing and cherry pick it."
+"**A:** You can use the `driver` branch to find the hash of the commit is missing and\n"
+"cherry pick it.\n"
msgstr ""
"**О:** Вы можете использовать ветку `driver`, чтобы найти хэш коммита, "
"который отсутствует, и\n"
@@ -5318,19 +5213,12 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1862
-#, fuzzy
-#| msgid ""
-#| "**Q:** OK. I have the same situation as the above, but my commits are all "
-#| "mixed up.\n"
-#| "I need parts of one commit to go to one branch and the rest to go to the "
-#| "other.\n"
-#| "In fact, I have several.\n"
-#| "Your rebase method to select sounds tricky.\n"
-msgid ""
-"**Q:** OK. I have the same situation as the above, but my commits are all "
-"mixed up. I need parts of one commit to go to one branch and the rest to go "
-"to the other. In fact, I have several. Your rebase method to select sounds "
-"tricky."
+#, no-wrap
+msgid ""
+"**Q:** OK. I have the same situation as the above, but my commits are all mixed up.\n"
+"I need parts of one commit to go to one branch and the rest to go to the other.\n"
+"In fact, I have several.\n"
+"Your rebase method to select sounds tricky.\n"
msgstr ""
"**В:** Хорошо. У меня такая же ситуация, как и выше, но мои коммиты все "
"перемешаны.\n"
@@ -5341,15 +5229,10 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1865
-#, fuzzy
-#| msgid ""
-#| "**A:** In this situation, you'd be better off to curate the original "
-#| "branch to separate\n"
-#| "out the commits, and then use the above method to split the branch.\n"
-msgid ""
-"**A:** In this situation, you'd be better off to curate the original branch "
-"to separate out the commits, and then use the above method to split the "
-"branch."
+#, no-wrap
+msgid ""
+"**A:** In this situation, you'd be better off to curate the original branch to separate\n"
+"out the commits, and then use the above method to split the branch.\n"
msgstr ""
"**О:** В этой ситуации вам лучше обработать исходную ветку, чтобы отделить\n"
"коммиты, а затем использовать вышеуказанный метод для разделения ветки.\n"
@@ -5396,8 +5279,8 @@ msgstr ""
"укладываются по границам файлов. В этом случае вы можете просто выполнить "
"обычный `git add` для файлов в каждой группе, а затем сделать `git commit`. "
"Примечание: при этом вы потеряете сообщение коммита при выполнении сброса, "
-"поэтому если оно вам по какой-то причине нужно, следует сохранить копию "
-"(хотя `git log $HASH` может его восстановить)."
+"поэтому если оно вам по какой-то причине нужно, следует сохранить копию ("
+"хотя `git log $HASH` может его восстановить)."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1884
@@ -5438,25 +5321,17 @@ msgstr "Присоединение к организации FreeBSD на GitHub
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1898
-#, fuzzy
-#| msgid "**Q:** How do I join the FreeBSD GitHub organization?\n"
-msgid "**Q:** How do I join the FreeBSD GitHub organization?"
+#, no-wrap
+msgid "**Q:** How do I join the FreeBSD GitHub organization?\n"
msgstr "**В:** Как присоединиться к организации FreeBSD на GitHub?\n"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1902
-#, fuzzy
-#| msgid ""
-#| "**A:** Please see https://wiki.freebsd.org/"
-#| "GitHub#Joining_the_Organisation[our GitHub Wiki Info] page for details.\n"
-#| "Briefly, all FreeBSD committers may join.\n"
-#| "Those who are not committers who request joining will be considered on a "
-#| "case by case basis.\n"
-msgid ""
-"**A:** Please see https://wiki.freebsd.org/"
-"GitHub#Joining_the_Organisation[our GitHub Wiki Info] page for details. "
-"Briefly, all FreeBSD committers may join. Those who are not committers who "
-"request joining will be considered on a case by case basis."
+#, no-wrap
+msgid ""
+"**A:** Please see https://wiki.freebsd.org/GitHub#Joining_the_Organisation[our GitHub Wiki Info] page for details.\n"
+"Briefly, all FreeBSD committers may join.\n"
+"Those who are not committers who request joining will be considered on a case by case basis.\n"
msgstr ""
"**О:** Подробности смотрите на странице https://wiki.freebsd.org/"
"GitHub#Joining_the_Organisation[нашей вики GitHub].\n"
@@ -5472,19 +5347,16 @@ msgstr "Клонирование и зеркалирование"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1906
-#, fuzzy
-#| msgid ""
-#| "**Q:** I'd like to mirror the entire Git repository, how do I do that?\n"
-msgid "**Q:** I'd like to mirror the entire Git repository, how do I do that?"
+#, no-wrap
+msgid "**Q:** I'd like to mirror the entire Git repository, how do I do that?\n"
msgstr ""
"**В:** Я хочу создать полную зеркальную копию репозитория Git, как мне это "
"сделать?\n"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1908
-#, fuzzy
-#| msgid "**A:** If all you want to do is mirror, then\n"
-msgid "**A:** If all you want to do is mirror, then"
+#, no-wrap
+msgid "**A:** If all you want to do is mirror, then\n"
msgstr "**О:** Если вам нужно только зеркалирование, то\n"
#. type: delimited block . 4
@@ -5555,22 +5427,16 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1936
-#, fuzzy
-#| msgid "**Q:** So what can I do instead?\n"
-msgid "**Q:** So what can I do instead?"
+#, no-wrap
+msgid "**Q:** So what can I do instead?\n"
msgstr "**В:** Так что же я могу сделать вместо этого?\n"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1939
-#, fuzzy
-#| msgid ""
-#| "**A:** Well, you can stuff all of the upstream repository's refs into a "
-#| "private namespace in your local repository.\n"
-#| "Git clones everything via a 'refspec' and the default refspec is:\n"
+#, no-wrap
msgid ""
-"**A:** Well, you can stuff all of the upstream repository's refs into a "
-"private namespace in your local repository. Git clones everything via a "
-"'refspec' and the default refspec is:"
+"**A:** Well, you can stuff all of the upstream repository's refs into a private namespace in your local repository.\n"
+"Git clones everything via a 'refspec' and the default refspec is:\n"
msgstr ""
"**О:** Ну, вы можете поместить все ссылки (refs) вышестоящего репозитория в "
"приватное пространство имён вашего локального репозитория.\n"
@@ -5682,8 +5548,8 @@ msgid ""
"above]."
msgstr ""
"Прежде чем начать, убедитесь, что ваш локальный репозиторий Git актуален и "
-"имеет правильно настроенные источники, как показано в разделе "
-"crossref:committers-guide[keeping_current,выше]."
+"имеет правильно настроенные источники, как показано в разделе crossref"
+":committers-guide[keeping_current,выше]."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:1984
@@ -5738,8 +5604,8 @@ msgid ""
"With this in place you can create a branch crossref:committers-"
"guide[keeping_a_local_branch,as shown above]."
msgstr ""
-"В этом репозитории вы можете создать ветку crossref:committers-"
-"guide[keeping_a_local_branch,как показано выше]."
+"В этом репозитории вы можете создать ветку crossref:committers-guide["
+"keeping_a_local_branch,как показано выше]."
#. type: delimited block . 4
#: documentation/content/en/articles/committers-guide/_index.adoc:2004
@@ -5753,8 +5619,8 @@ msgid ""
"Make whatever modifications you wish in your branch. Build, test, and once "
"you're ready to collaborate with others it's time to push your changes into "
"your hosted branch. Before you can push you'll have to set the appropriate "
-"upstream, as Git will tell you the first time you try to push to your "
-"+github+ remote:"
+"upstream, as Git will tell you the first time you try to push to your +github"
+"+ remote:"
msgstr ""
"Вносите любые изменения в своей ветке. Собирайте, тестируйте, и как только "
"будете готовы к совместной работе с другими, настанет время отправить свои "
@@ -5814,14 +5680,16 @@ msgstr ""
"Compressing objects: 100% (12202/12202), done.\n"
"Writing objects: 100% (20180/20180), 56.25 MiB | 13.15 MiB/s, done.\n"
"Total 20180 (delta 11316), reused 12972 (delta 7770), pack-reused 0\n"
-"remote: Resolving deltas: 100% (11316/11316), completed with 247 local objects.\n"
+"remote: Resolving deltas: 100% (11316/11316), completed with 247 local "
+"objects.\n"
"remote:\n"
"remote: Create a pull request for 'gnn-feature' on GitHub by visiting:\n"
"remote: https://github.com/gvnn3/freebsd-src/pull/new/gnn-feature\n"
"remote:\n"
"To github.com:gvnn3/freebsd-src.git\n"
" * [new branch] gnn-feature -> gnn-feature\n"
-"Branch 'gnn-feature' set up to track remote branch 'gnn-feature' from 'github'.\n"
+"Branch 'gnn-feature' set up to track remote branch 'gnn-feature' from "
+"'github'.\n"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:2040
@@ -5960,8 +5828,8 @@ msgstr ""
"создают ветку; выборочно применяют изменения из запроса на принятие "
"изменений; тестируют их; корректируют сообщения коммитов; и выполняют "
"слияние перемоткой (fast-forward) обратно в `main`. Номер PR ниже обозначен "
-"как `$PR`. При корректировке сообщения добавьте `Pull Request: https://"
-"github.com/freebsd-src/pull/$PR`. Все запросы на принятие изменений, "
+"как `$PR`. При корректировке сообщения добавьте `Pull Request: https://github"
+".com/freebsd-src/pull/$PR`. Все запросы на принятие изменений, "
"зафиксированные в репозитории FreeBSD, должны быть проверены как минимум "
"одним человеком. Это не обязательно должен быть тот, кто их фиксирует, но в "
"этом случае тот, кто фиксирует, должен доверять компетентности других "
@@ -6015,7 +5883,8 @@ msgid ""
"% git push freebsd --push-option=confirm-author\n"
msgstr ""
"% git fetch github pull/$PR/head:staging\n"
-"% git rebase -i main staging\t# to move the staging branch forward, adjust commit message here\n"
+"% git rebase -i main staging\t# to move the staging branch forward, adjust "
+"commit message here\n"
"<do testing here, as needed>\n"
"% git checkout main\n"
"% git pull --ff-only\t\t# to get the latest if time has passed\n"
@@ -6204,9 +6073,8 @@ msgstr ""
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:2174
-#, fuzzy
-#| msgid "*Steps for New Committers*\n"
-msgid "*Steps for New Committers*"
+#, no-wrap
+msgid "*Steps for New Committers*\n"
msgstr "*Шаги для новых коммиттеров*\n"
#. type: delimited block = 4
@@ -6280,10 +6148,10 @@ msgid ""
"addkey.sh#) to make this easier. See the https://cgit.freebsd.org/doc/plain/"
"documentation/static/pgpkeys/README[README] file for more information."
msgstr ""
-"`{des}` написал сценарий оболочки ([.filename]#doc/documentation/tools/"
-"addkey.sh#) для упрощения этого процесса. Для получения дополнительной "
-"информации обратитесь к файлу https://cgit.freebsd.org/doc/plain/"
-"documentation/static/pgpkeys/README[README]."
+"`{des}` написал сценарий оболочки ([.filename]#doc/documentation/tools/addkey"
+".sh#) для упрощения этого процесса. Для получения дополнительной информации "
+"обратитесь к файлу https://cgit.freebsd.org/doc/plain/documentation/static/"
+"pgpkeys/README[README]."
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:2191
@@ -6310,16 +6178,15 @@ msgid ""
"It is very important to have a current PGP/GnuPG key in the repository. The "
"key may be required for positive identification of a committer. For example, "
"the `{admins}` might need it for account recovery. A complete keyring of "
-"`FreeBSD.org` users is available for download from link:https://"
-"docs.FreeBSD.org/pgpkeys/pgpkeys.txt[https://docs.FreeBSD.org/pgpkeys/"
-"pgpkeys.txt]."
+"`FreeBSD.org` users is available for download from link:https://docs.FreeBSD."
+"org/pgpkeys/pgpkeys.txt[https://docs.FreeBSD.org/pgpkeys/pgpkeys.txt]."
msgstr ""
"Очень важно иметь актуальный PGP/GnuPG ключ в репозитории. Ключ может "
"потребоваться для подтверждения личности коммиттера. Например, `{admins}` "
"используют его для восстановления учетной записи. Полный набор ключей "
-"пользователей `FreeBSD.org` доступен для скачивания по ссылке link:https://"
-"docs.FreeBSD.org/pgpkeys/pgpkeys.txt[https://docs.FreeBSD.org/pgpkeys/"
-"pgpkeys.txt]."
+"пользователей `FreeBSD.org` доступен для скачивания по ссылке "
+"link:https://docs.FreeBSD.org/pgpkeys/pgpkeys.txt[https://docs.FreeBSD.org/"
+"pgpkeys/pgpkeys.txt]."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:2199
@@ -6361,9 +6228,9 @@ msgid ""
msgstr ""
"См. crossref:committers-guide[kerberos-ldap, Kerberos и LDAP веб-пароль для "
"кластера FreeBSD] для генерации или настройки учётной записи Kerberos для "
-"использования с другими сервисами FreeBSD, такими как link:https://"
-"bugs.freebsd.org/bugzilla/[база данных отслеживания ошибок] (вы получаете "
-"учётную запись для отслеживания ошибок как часть этого шага)."
+"использования с другими сервисами FreeBSD, такими как link:https://bugs."
+"freebsd.org/bugzilla/[база данных отслеживания ошибок] (вы получаете учётную "
+"запись для отслеживания ошибок как часть этого шага)."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:2207
@@ -6381,10 +6248,10 @@ msgid ""
msgstr ""
"Учётная запись link:https://wiki.freebsd.org[FreeBSD Wiki] — учётная запись "
"на вики позволяет делиться проектами и идеями. Те, у кого ещё нет учётной "
-"записи, могут следовать инструкциям на странице link:https://"
-"wiki.freebsd.org/Wiki/About[Wiki/About], чтобы её получить. Свяжитесь с "
-"mailto:wiki-admin@FreeBSD.org[wiki-admin@FreeBSD.org], если вам нужна помощь "
-"с вашей учётной записью на Вики."
+"записи, могут следовать инструкциям на странице link:https://wiki.freebsd."
+"org/Wiki/About[Wiki/About], чтобы её получить. Свяжитесь с mailto:wiki-"
+"admin@FreeBSD.org[wiki-admin@FreeBSD.org], если вам нужна помощь с вашей "
+"учётной записью на Вики."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:2212
@@ -6395,15 +6262,15 @@ msgstr "Необязательно: Обновить информацию в В
#: documentation/content/en/articles/committers-guide/_index.adoc:2214
msgid ""
"Wiki Information - After gaining access to the wiki, some people add entries "
-"to the https://wiki.freebsd.org/HowWeGotHere[How We Got Here], https://"
-"wiki.freebsd.org/IRC/Nicknames[IRC Nicks], https://wiki.freebsd.org/"
-"Community/Dogs[Dogs of FreeBSD], and or https://wiki.freebsd.org/Community/"
-"Cats[Cats of FreeBSD] pages."
+"to the https://wiki.freebsd.org/HowWeGotHere[How We Got Here], https://wiki."
+"freebsd.org/IRC/Nicknames[IRC Nicks], https://wiki.freebsd.org/Community/"
+"Dogs[Dogs of FreeBSD], and or https://wiki.freebsd.org/Community/Cats[Cats "
+"of FreeBSD] pages."
msgstr ""
"Информация в вики — получив доступ к вики, некоторые добавляют записи на "
-"страницы https://wiki.freebsd.org/HowWeGotHere[Как мы сюда попали], https://"
-"wiki.freebsd.org/IRC/Nicknames[IRC-псевдонимы], https://wiki.freebsd.org/"
-"Community/Dogs[Собаки FreeBSD] и/или https://wiki.freebsd.org/Community/"
+"страницы https://wiki.freebsd.org/HowWeGotHere[Как мы сюда попали], "
+"https://wiki.freebsd.org/IRC/Nicknames[IRC-псевдонимы], https://wiki.freebsd."
+"org/Community/Dogs[Собаки FreeBSD] и/или https://wiki.freebsd.org/Community/"
"Cats[Кошки FreeBSD]."
#. type: Plain text
@@ -6414,15 +6281,15 @@ msgstr "Необязательно: Обновить порты с личной
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:2217
msgid ""
-"[.filename]#ports/astro/xearth/files/freebsd.committers.markers# and "
-"[.filename]#src/usr.bin/calendar/calendars/calendar.freebsd# - Some people "
-"add entries for themselves to these files to show where they are located or "
-"the date of their birthday."
+"[.filename]#ports/astro/xearth/files/freebsd.committers.markers# and [."
+"filename]#src/usr.bin/calendar/calendars/calendar.freebsd# - Some people add "
+"entries for themselves to these files to show where they are located or the "
+"date of their birthday."
msgstr ""
-"[.filename]#ports/astro/xearth/files/freebsd.committers.markers# и "
-"[.filename]#src/usr.bin/calendar/calendars/calendar.freebsd# — Некоторые "
-"люди добавляют в эти файлы записи о себе, чтобы указать своё местоположение "
-"или дату своего дня рождения."
+"[.filename]#ports/astro/xearth/files/freebsd.committers.markers# и [."
+"filename]#src/usr.bin/calendar/calendars/calendar.freebsd# — Некоторые люди "
+"добавляют в эти файлы записи о себе, чтобы указать своё местоположение или "
+"дату своего дня рождения."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:2218
@@ -6487,8 +6354,8 @@ msgstr ""
#. type: delimited block = 6
#: documentation/content/en/articles/committers-guide/_index.adoc:2234
msgid ""
-"If your e-mail system uses SPF with strict rules, you should exclude "
-"`mx2.FreeBSD.org` from SPF checks."
+"If your e-mail system uses SPF with strict rules, you should exclude `mx2."
+"FreeBSD.org` from SPF checks."
msgstr ""
"Если ваша система электронной почты использует SPF со строгими правилами, "
"вам следует исключить `mx2.FreeBSD.org` из проверок SPF."
@@ -6501,18 +6368,18 @@ msgid ""
"checks and will drop some messages based on these checks. At the moment "
"proper DNS information for the connecting host is the only check in place "
"but that may change. Some people blame these checks for bouncing valid "
-"email. To have these checks turned off for your email, create a file named "
-"[.filename]#~/.spam_lover# on `freefall.FreeBSD.org`."
+"email. To have these checks turned off for your email, create a file named [."
+"filename]#~/.spam_lover# on `freefall.FreeBSD.org`."
msgstr ""
-"Из-за высокой нагрузки, которую обработка СПАМа создает на центральных "
+"Из-за высокой нагрузки, которую обработка спама создает на центральных "
"почтовых серверах, обрабатывающих почтовые рассылки, фронтенд-сервер "
"выполняет базовые проверки и может отбрасывать некоторые сообщения на их "
"основе. В настоящее время единственной активной проверкой является наличие "
"корректной DNS-информации для подключающегося хоста, но это может "
"измениться. Некоторые пользователи связывают эти проверки с ложным "
"отбрасыванием легитимной почты. Для отключения данных проверок для вашей "
-"почты создайте файл с именем [.filename]#~/.spam_lover# на "
-"`freefall.FreeBSD.org`."
+"почты создайте файл с именем [.filename]#~/.spam_lover# на `freefall.FreeBSD."
+"org`."
#. type: delimited block = 6
#: documentation/content/en/articles/committers-guide/_index.adoc:2241
@@ -6598,8 +6465,8 @@ msgid ""
"A header will be appended with the SASL username: (`Authenticated sender: "
"_username_`)."
msgstr ""
-"Будет добавлен заголовок сообщения с именем пользователя SASL: "
-"(`Authenticated sender: _имя_пользователя_`)."
+"Будет добавлен заголовок сообщения с именем пользователя SASL: (`"
+"Authenticated sender: _имя_пользователя_`)."
#. type: delimited block = 6
#: documentation/content/en/articles/committers-guide/_index.adoc:2268
@@ -6613,7 +6480,9 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:2272
#, no-wrap
msgid "Using a Local MTA to Forward Emails to the FreeBSD.org SMTP Service"
-msgstr "Использование локального MTA для пересылки электронной почты в SMTP-сервис FreeBSD.org"
+msgstr ""
+"Использование локального MTA для пересылки электронной почты в SMTP-сервис "
+"FreeBSD.org"
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:2275
@@ -6633,9 +6502,9 @@ msgstr "Использование Postfix"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:2282
msgid ""
-"To tell a local Postfix instance that anything from "
-"`_yourusername_@FreeBSD.org` should be forwarded to the FreeBSD.org servers, "
-"add this to your [.filename]#main.cf#:"
+"To tell a local Postfix instance that anything from `_yourusername_@FreeBSD."
+"org` should be forwarded to the FreeBSD.org servers, add this to your [."
+"filename]#main.cf#:"
msgstr ""
"Чтобы сообщить локальному экземпляру Postfix, что любое письмо от "
"`_вашеимяпользователя_@FreeBSD.org` должно быть перенаправлено на серверы "
@@ -6651,7 +6520,8 @@ msgid ""
"smtp_sasl_password_maps = hash:/usr/local/etc/postfix/sasl_passwd\n"
"smtp_use_tls = yes\n"
msgstr ""
-"sender_dependent_relayhost_maps = hash:/usr/local/etc/postfix/relayhost_maps\n"
+"sender_dependent_relayhost_maps = hash:/usr/local/etc/postfix/"
+"relayhost_maps\n"
"smtp_sasl_auth_enable = yes\n"
"smtp_sasl_security_options = noanonymous\n"
"smtp_sasl_password_maps = hash:/usr/local/etc/postfix/sasl_passwd\n"
@@ -6691,8 +6561,8 @@ msgstr "[smtp.freebsd.org]:587 вашеимяпользователя:
#: documentation/content/en/articles/committers-guide/_index.adoc:2307
msgid ""
"If the email server is used by other people, you may want to prevent them "
-"from sending e-mails from your address. To achieve this, add this to your "
-"[.filename]#main.cf#:"
+"from sending e-mails from your address. To achieve this, add this to your [."
+"filename]#main.cf#:"
msgstr ""
"Если почтовый сервер используется другими людьми, вы можете захотеть "
"предотвратить отправку ими писем с вашего адреса. Для достижения этой цели "
@@ -6756,8 +6626,10 @@ msgid ""
"action \"freebsd\" relay host smtp+tls://freebsd@smtp.freebsd.org:587 auth <secrets>\n"
"match from any auth yourlocalusername mail-from \"_yourusername_@freebsd.org\" for any action \"freebsd\"\n"
msgstr ""
-"action \"freebsd\" relay host smtp+tls://freebsd@smtp.freebsd.org:587 auth <secrets>\n"
-"match from any auth вашеимялокальногопользователя mail-from \"_вашеимяпользователя_@freebsd.org\" for any action \"freebsd\"\n"
+"action \"freebsd\" relay host smtp+tls://freebsd@smtp.freebsd.org:587 auth "
+"<secrets>\n"
+"match from any auth вашеимялокальногопользователя mail-from "
+"\"_вашеимяпользователя_@freebsd.org\" for any action \"freebsd\"\n"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:2338
@@ -6796,7 +6668,8 @@ msgid ""
" to FreeBSD.org servers, add this to Exim [.filename]#configuration#:\n"
msgstr ""
"Чтобы направить локальный экземпляр Exim для пересылки всей почты от\n"
-"`_example_@FreeBSD.org` на серверы FreeBSD.org, добавьте это в [.filename]#конфигурацию# Exim:\n"
+"`_example_@FreeBSD.org` на серверы FreeBSD.org, добавьте это в [."
+"filename]#конфигурацию# Exim:\n"
#. type: delimited block . 4
#: documentation/content/en/articles/committers-guide/_index.adoc:2363
@@ -6912,15 +6785,15 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:2407
msgid ""
"When the mentor decides that a mentee has learned the ropes and is ready to "
-"commit on their own, the mentor announces it with a commit to "
-"[.filename]#mentors#. This file is in the [.filename]#admin# orphan branch "
-"of each repository. Detailed information on how to access these branches "
-"can be found in crossref:committers-guide[admin-branch, \"admin\" branch]."
+"commit on their own, the mentor announces it with a commit to [."
+"filename]#mentors#. This file is in the [.filename]#admin# orphan branch of "
+"each repository. Detailed information on how to access these branches can "
+"be found in crossref:committers-guide[admin-branch, \"admin\" branch]."
msgstr ""
"Когда наставник решает, что подопечный освоил основы и готов к "
"самостоятельной фиксации изменений, наставник объявляет об этом, выполняя "
-"коммит в [.filename]#mentors#. Этот файл находится в сиротской ветке "
-"[.filename]#admin# каждого репозитория. Подробная информация о том, как "
+"коммит в [.filename]#mentors#. Этот файл находится в сиротской ветке [."
+"filename]#admin# каждого репозитория. Подробная информация о том, как "
"получить доступ к этим веткам, доступна в crossref:committers-guide[admin-"
"branch, ветке \"admin\"]."
@@ -6940,8 +6813,8 @@ msgid ""
"review:"
msgstr ""
"Рецензирование кода — один из способов повышения качества программного "
-"обеспечения. Следующие рекомендации применимы к коммитам в ветку `main` (-"
-"CURRENT) репозитория `src`. Другие ветки, а также деревья `ports` и `docs` "
+"обеспечения. Следующие рекомендации применимы к коммитам в ветку `main` "
+"(-CURRENT) репозитория `src`. Другие ветки, а также деревья `ports` и `docs` "
"имеют собственные политики проверки и рецензирования, но данные рекомендации "
"в целом применимы к коммитам, требующим рецензии:"
@@ -6986,7 +6859,7 @@ msgstr ""
"до тех пор, пока патч не будет готов к коммиту. В частности, после отправки "
"патча на рецензирование, он должен получить явное подтверждение \"выглядит "
"хорошо\" перед коммитом. Оно должно быть явным, и это может принимать любую "
-"форму, которая имеет смысл для метода резензирования."
+"форму, которая имеет смысл для метода рецензирования."
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:2420
@@ -7270,7 +7143,8 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:2490
#, no-wrap
msgid "Prefix the subject line with a component, if applicable"
-msgstr "Добавьте к строке темы префикс с указанием компонента, если это применимо"
+msgstr ""
+"Добавьте к строке темы префикс с указанием компонента, если это применимо"
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:2494
@@ -7449,7 +7323,8 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:2545
#, no-wrap
msgid "Consider whether parts of the commit message could be code comments instead"
-msgstr "Подумайте, можно ли части сообщения коммита оформить как комментарии в коде"
+msgstr ""
+"Подумайте, можно ли части сообщения коммита оформить как комментарии в коде"
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:2548
@@ -7573,7 +7448,10 @@ msgstr "`PR:`"
#: documentation/content/en/articles/committers-guide/_index.adoc:2580
#, no-wrap
msgid "The problem report (if any) which is affected (typically, by being closed) by this commit. Multiple PRs may be specified on one line, separated by commas or spaces."
-msgstr "Номер отчета о проблеме (если есть), на который влияет данный коммит (обычно путем закрытия). Можно указать несколько номеров PR в одной строке, разделяя их запятыми или пробелами."
+msgstr ""
+"Номер отчета о проблеме (если есть), на который влияет данный коммит (обычно "
+"путем закрытия). Можно указать несколько номеров PR в одной строке, разделяя "
+"их запятыми или пробелами."
#. type: Table
#: documentation/content/en/articles/committers-guide/_index.adoc:2581
@@ -7589,7 +7467,8 @@ msgid ""
"Typically used when there is no PR, for example if the issue was reported on\n"
"a mailing list."
msgstr ""
-"Имя и адрес электронной почты лица, сообщившего о проблеме; для разработчиков — только имя пользователя в кластере FreeBSD.\n"
+"Имя и адрес электронной почты лица, сообщившего о проблеме; для "
+"разработчиков — только имя пользователя в кластере FreeBSD.\n"
"Обычно используется, когда нет PR, например, если проблема была сообщена в\n"
"почтовой рассылке."
@@ -7607,7 +7486,9 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:2589
#, no-wrap
msgid "This has been deprecated with git; submitted patches should have the author set by using `git commit --author` with a full name and valid email."
-msgstr "Это устарело в git; отправляемые патчи должны указывать автора с помощью `git commit --author` с указанием полного имени и действительного email."
+msgstr ""
+"Это устарело в git; отправляемые патчи должны указывать автора с помощью `"
+"git commit --author` с указанием полного имени и действительного email."
#. type: Table
#: documentation/content/en/articles/committers-guide/_index.adoc:2590
@@ -7633,7 +7514,12 @@ msgid ""
"Reviewed by: Full Name <valid@email> (maintainer)\n"
"...."
msgstr ""
-"Имя и адрес электронной почты человека или людей, которые проверили изменение; для разработчиков достаточно указать имя пользователя в кластере FreeBSD. Если патч был отправлен в список рассылки для проверки и получил положительный отзыв, то укажите только название списка. Если рецензент не является участником проекта, укажите имя, электронную почту и, если это порт, внешнюю роль, например, сопровождающего:\n"
+"Имя и адрес электронной почты человека или людей, которые проверили "
+"изменение; для разработчиков достаточно указать имя пользователя в кластере "
+"FreeBSD. Если патч был отправлен в список рассылки для проверки и получил "
+"положительный отзыв, то укажите только название списка. Если рецензент не "
+"является участником проекта, укажите имя, электронную почту и, если это "
+"порт, внешнюю роль, например, сопровождающего:\n"
"\n"
"Проверено разработчиком:\n"
"[source,shell]\n"
@@ -7657,7 +7543,9 @@ msgstr "`Tested by:`"
#: documentation/content/en/articles/committers-guide/_index.adoc:2608
#, no-wrap
msgid "The name and e-mail address of the person or people that tested the change; for developers, just the username on the FreeBSD cluster."
-msgstr "Имя и адрес электронной почты человека или людей, которые проверили изменение; для разработчиков — просто имя пользователя в кластере FreeBSD."
+msgstr ""
+"Имя и адрес электронной почты человека или людей, которые проверили "
+"изменение; для разработчиков — просто имя пользователя в кластере FreeBSD."
#. type: Table
#: documentation/content/en/articles/committers-guide/_index.adoc:2609
@@ -7672,8 +7560,13 @@ msgid ""
"The name and e-mail address of the person or people that contributed to the patch by providing meaningful feedback; for developers, just the username on the FreeBSD cluster.\n"
"Typically used to credit those who did not explicitly review, test, or approve the change, but nevertheless contributed to the discussion surrounding the change, which led to improvements and a better understanding of its impact on the FreeBSD project."
msgstr ""
-"Имя и адрес электронной почты человека или людей, которые внесли вклад в исправление, предоставив содержательную обратную связь; для разработчиков — просто имя пользователя в кластере FreeBSD.\n"
-"Обычно используется для упоминания тех, кто не проводил явного рецензирования, тестирования или одобрения изменения, но тем не менее участвовал в обсуждении, связанном с изменением, что привело к улучшениям и лучшему пониманию его влияния на проект FreeBSD."
+"Имя и адрес электронной почты человека или людей, которые внесли вклад в "
+"исправление, предоставив содержательную обратную связь; для разработчиков — "
+"просто имя пользователя в кластере FreeBSD.\n"
+"Обычно используется для упоминания тех, кто не проводил явного "
+"рецензирования, тестирования или одобрения изменения, но тем не менее "
+"участвовал в обсуждении, связанном с изменением, что привело к улучшениям и "
+"лучшему пониманию его влияния на проект FreeBSD."
#. type: Table
#: documentation/content/en/articles/committers-guide/_index.adoc:2613
@@ -7709,24 +7602,29 @@ msgid ""
"Approved by: re (username)\n"
"...."
msgstr ""
-"Имя и адрес электронной почты лица или лиц, утвердивших изменение; для разработчиков — просто имя пользователя в кластере FreeBSD.\n"
+"Имя и адрес электронной почты лица или лиц, утвердивших изменение; для "
+"разработчиков — просто имя пользователя в кластере FreeBSD.\n"
"\n"
"Есть несколько случаев, когда утверждение является обычной практикой:\n"
"\n"
"* когда новый коммиттер находится под наставничеством\n"
"* коммиты в область дерева, указанную в файле LOCKS (src)\n"
"* во время цикла выпуска\n"
-"* коммиты в репозиторий, где у вас нет права на коммит (например, коммиттер src делает коммит в docs)\n"
+"* коммиты в репозиторий, где у вас нет права на коммит (например, коммиттер "
+"src делает коммит в docs)\n"
"* коммиты в порт, поддерживаемый кем-то другим\n"
"\n"
-"Во время наставничества получите одобрение наставника перед коммитом. Укажите имя пользователя наставника в этом поле и отметьте, что он является наставником:\n"
+"Во время наставничества получите одобрение наставника перед коммитом. "
+"Укажите имя пользователя наставника в этом поле и отметьте, что он является "
+"наставником:\n"
"\n"
"[source,shell]\n"
"....\n"
"Approved by: имя-пользователя-наставника (mentor)\n"
"....\n"
"\n"
-"Если коммиты были утверждены командой, укажите название команды, за которым в скобках следует имя пользователя утверждающего. Например:\n"
+"Если коммиты были утверждены командой, укажите название команды, за которым "
+"в скобках следует имя пользователя утверждающего. Например:\n"
"\n"
"[source,shell]\n"
"....\n"
@@ -7743,7 +7641,9 @@ msgstr "`Obtained from:`"
#: documentation/content/en/articles/committers-guide/_index.adoc:2642
#, no-wrap
msgid "The name of the project (if any) from which the code was obtained. Do not use this line for the name of an individual person."
-msgstr "Название проекта (если есть), из которого был получен код. Не используйте эту строку для указания имени отдельного человека."
+msgstr ""
+"Название проекта (если есть), из которого был получен код. Не используйте "
+"эту строку для указания имени отдельного человека."
#. type: Table
#: documentation/content/en/articles/committers-guide/_index.adoc:2643
@@ -7758,8 +7658,12 @@ msgid ""
"The Git short hash and the title line of a commit that is fixed by this change as returned by `git log -n 1 --pretty=format:'%h (\"%s\")' GIT-COMMIT-HASH`.\n"
"We include the commit title so that the referenced commit can be located even in the case that a future VCS migration invalidates hash references."
msgstr ""
-"Короткий хэш Git и заголовок коммита, который исправлен этим изменением, как возвращается командой `git log -n 1 --pretty=format:'%h (\"%s\")' GIT-COMMIT-HASH`.\n"
-"Мы включаем заголовок коммита, чтобы можно было найти указанный коммит даже в случае, если будущая миграция системы контроля версий сделает ссылки по хэшу недействительными."
+"Короткий хэш Git и заголовок коммита, который исправлен этим изменением, как "
+"возвращается командой `git log -n 1 --pretty=format:'%h (\"%s\")' GIT-COMMIT-"
+"HASH`.\n"
+"Мы включаем заголовок коммита, чтобы можно было найти указанный коммит даже "
+"в случае, если будущая миграция системы контроля версий сделает ссылки по "
+"хэшу недействительными."
#. type: Table
#: documentation/content/en/articles/committers-guide/_index.adoc:2647
@@ -7771,7 +7675,10 @@ msgstr "`MFC after:`"
#: documentation/content/en/articles/committers-guide/_index.adoc:2649
#, no-wrap
msgid "To receive an e-mail reminder to MFC at a later date, specify the number of days, weeks, or months after which an MFC is planned."
-msgstr "Чтобы получить напоминание по электронной почте о запланированном MFC через определенное время, укажите количество дней, недель или месяцев, после которых планируется выполнить MFC."
+msgstr ""
+"Чтобы получить напоминание по электронной почте о запланированном MFC через "
+"определенное время, укажите количество дней, недель или месяцев, после "
+"которых планируется выполнить MFC."
#. type: Table
#: documentation/content/en/articles/committers-guide/_index.adoc:2650
@@ -7783,7 +7690,9 @@ msgstr "`MFC to:`"
#: documentation/content/en/articles/committers-guide/_index.adoc:2652
#, no-wrap
msgid "If the commit should be merged to a subset of stable branches, specify the branch names."
-msgstr "Если коммиту должно быть сделано слияние в подмножество стабильных веток, укажите названия веток."
+msgstr ""
+"Если коммиту должно быть сделано слияние в подмножество стабильных веток, "
+"укажите названия веток."
#. type: Table
#: documentation/content/en/articles/committers-guide/_index.adoc:2653
@@ -7795,7 +7704,9 @@ msgstr "`MFH:`"
#: documentation/content/en/articles/committers-guide/_index.adoc:2655
#, no-wrap
msgid "If the commit is to be merged into a ports quarterly branch name, specify the quarterly branch. For example `2021Q2`."
-msgstr "Если коммиту должено быть сделано слияние в квартальную ветку портов, укажите квартальную ветку. Например, `2021Q2`."
+msgstr ""
+"Если коммиту должно быть сделано слияние в квартальную ветку портов, укажите "
+"квартальную ветку. Например, `2021Q2`."
#. type: Table
#: documentation/content/en/articles/committers-guide/_index.adoc:2656
@@ -7807,7 +7718,9 @@ msgstr "`Relnotes:`"
#: documentation/content/en/articles/committers-guide/_index.adoc:2658
#, no-wrap
msgid "If the change is a candidate for inclusion in the release notes for the next release from the branch, set to `yes`."
-msgstr "Если изменение является кандидатом для включения в примечания к выпуску следующей версии из ветки, установите значение `yes`."
+msgstr ""
+"Если изменение является кандидатом для включения в примечания к выпуску "
+"следующей версии из ветки, установите значение `yes`."
#. type: Table
#: documentation/content/en/articles/committers-guide/_index.adoc:2659
@@ -7819,7 +7732,10 @@ msgstr "`Security:`"
#: documentation/content/en/articles/committers-guide/_index.adoc:2661
#, no-wrap
msgid "If the change is related to a security vulnerability or security exposure, include one or more references or a description of the issue. If possible, include a VuXML URL or a CVE ID."
-msgstr "Если изменение связано с уязвимостью или угрозой безопасности, укажите одну или несколько ссылок либо описание проблемы. По возможности включите URL VuXML или идентификатор CVE."
+msgstr ""
+"Если изменение связано с уязвимостью или угрозой безопасности, укажите одну "
+"или несколько ссылок либо описание проблемы. По возможности включите URL "
+"VuXML или идентификатор CVE."
#. type: Table
#: documentation/content/en/articles/committers-guide/_index.adoc:2662
@@ -7831,7 +7747,14 @@ msgstr "`Event:`"
#: documentation/content/en/articles/committers-guide/_index.adoc:2664
#, no-wrap
msgid "The description for the event where this commit was made. If this is a recurring event, add the year or even the month to it. For example, this could be `FooBSDcon 2019`. The idea behind this line is to put recognition to conferences, gatherings, and other types of meetups and to show that these are useful to have. Please do not use the `Sponsored by:` line for this as that is meant for organizations sponsoring certain features or developers working on them."
-msgstr "Описание события, в рамках которого был выполнен этот коммит. Если это повторяющееся событие, добавьте год или даже месяц. Например, это может быть `FooBSDcon 2019`. Идея этой строки — отдать должное конференциям, встречам и другим подобным мероприятиям, а также показать, что их проведение полезно. Пожалуйста, не используйте строку `Sponsored by:` для этого, так как она предназначена для организаций, спонсирующих определённые функции, или разработчиков, работающих над ними."
+msgstr ""
+"Описание события, в рамках которого был выполнен этот коммит. Если это "
+"повторяющееся событие, добавьте год или даже месяц. Например, это может быть "
+"`FooBSDcon 2019`. Идея этой строки — отдать должное конференциям, встречам и "
+"другим подобным мероприятиям, а также показать, что их проведение полезно. "
+"Пожалуйста, не используйте строку `Sponsored by:` для этого, так как она "
+"предназначена для организаций, спонсирующих определённые функции, или "
+"разработчиков, работающих над ними."
#. type: Table
#: documentation/content/en/articles/committers-guide/_index.adoc:2665
@@ -7843,7 +7766,16 @@ msgstr "`Sponsored by:`"
#: documentation/content/en/articles/committers-guide/_index.adoc:2667
#, no-wrap
msgid "Sponsoring organizations for this change, if any. Separate multiple organizations with commas. If only a portion of the work was sponsored, or different amounts of sponsorship were provided to different authors, please give appropriate credit in parentheses after each sponsor name. For example, `Example.com (alice, code refactoring), Wormulon (bob), Momcorp (cindy)` shows that Alice was sponsored by Example.com to do code refactoring, while Wormulon sponsored Bob's work and Momcorp sponsored Cindy's work. Other authors were either not sponsored or chose not to list sponsorship."
-msgstr "Организации, спонсировавшие это изменение (если есть). Разделяйте несколько организаций запятыми. Если только часть работы была спонсирована или разные суммы спонсорской поддержки были предоставлены разным авторам, укажите соответствующую информацию в скобках после каждого имени спонсора. Например, `Example.com (alice, code refactoring), Wormulon (bob), Momcorp (cindy)` показывает, что Alice была спонсирована Example.com для рефакторинга кода, в то время как Wormulon спонсировал работу Bob, а Momcorp спонсировал работу Cindy. Другие авторы либо не были спонсированы, либо решили не указывать спонсорство."
+msgstr ""
+"Организации, спонсировавшие это изменение (если есть). Разделяйте несколько "
+"организаций запятыми. Если только часть работы была спонсирована или разные "
+"суммы спонсорской поддержки были предоставлены разным авторам, укажите "
+"соответствующую информацию в скобках после каждого имени спонсора. Например, "
+"`Example.com (alice, code refactoring), Wormulon (bob), Momcorp (cindy)` "
+"показывает, что Alice была спонсирована Example.com для рефакторинга кода, в "
+"то время как Wormulon спонсировал работу Bob, а Momcorp спонсировал работу "
+"Cindy. Другие авторы либо не были спонсированы, либо решили не указывать "
+"спонсорство."
#. type: Table
#: documentation/content/en/articles/committers-guide/_index.adoc:2668
@@ -7859,8 +7791,11 @@ msgid ""
"It should include the entire URL to the pull request, as these often act as code reviews for the code.\n"
"For example: `https://github.com/freebsd/freebsd-src/pull/745`"
msgstr ""
-"Это изменение было отправлено как запрос на принятие изменений (pull request) или запрос на слияние (merge request) в один из публичных Git-репозиториев FreeBSD только для чтения.\n"
-"Оно должно включать полный URL запроса на включение изменений, так как они часто выполняют роль рецензий кода.\n"
+"Это изменение было отправлено как запрос на принятие изменений (pull request)"
+" или запрос на слияние (merge request) в один из публичных Git-репозиториев "
+"FreeBSD только для чтения.\n"
+"Оно должно включать полный URL запроса на включение изменений, так как они "
+"часто выполняют роль рецензий кода.\n"
"Например: `https://github.com/freebsd/freebsd-src/pull/745`"
#. type: Table
@@ -7877,7 +7812,9 @@ msgid ""
"GitHub has a detailed description of the Co-authored-by trailer at https://docs.github.com/en/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-with-multiple-authors."
msgstr ""
"Имя и адрес электронной почты дополнительного автора коммита.\n"
-"GitHub содержит подробное описание трейлера Co-authored-by по адресу https://docs.github.com/en/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-with-multiple-authors."
+"GitHub содержит подробное описание трейлера Co-authored-by по адресу "
+"https://docs.github.com/en/pull-requests/committing-changes-to-your-project/"
+"creating-and-editing-commits/creating-a-commit-with-multiple-authors."
#. type: Table
#: documentation/content/en/articles/committers-guide/_index.adoc:2677
@@ -7889,7 +7826,8 @@ msgstr "`Signed-off-by:`"
#: documentation/content/en/articles/committers-guide/_index.adoc:2679
#, no-wrap
msgid "ID certifies compliance with https://developercertificate.org/"
-msgstr "ID подтверждает соответствие требованиям https://developercertificate.org/"
+msgstr ""
+"ID подтверждает соответствие требованиям https://developercertificate.org/"
#. type: Table
#: documentation/content/en/articles/committers-guide/_index.adoc:2680
@@ -7901,7 +7839,9 @@ msgstr "`Differential Revision:`"
#: documentation/content/en/articles/committers-guide/_index.adoc:2682
#, no-wrap
msgid "The full URL of the Phabricator review. This line __must be the last line__. For example: `https://reviews.freebsd.org/D1708`."
-msgstr "Полный URL обзора в Phabricator. Эта строка __должна быть последней строкой__. Например: `https://reviews.freebsd.org/D1708`."
+msgstr ""
+"Полный URL обзора в Phabricator. Эта строка __должна быть последней "
+"строкой__. Например: `https://reviews.freebsd.org/D1708`."
#. type: Block title
#: documentation/content/en/articles/committers-guide/_index.adoc:2684
@@ -8001,8 +7941,7 @@ msgstr "Журнал изменений для коммита, вносящег
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:2739
msgid "Committing some code based on work done in the OpenBSD project."
-msgstr ""
-"Коммит некоторого кода на основе работы, выполненной в проекте OpenBSD."
+msgstr "Коммит некоторого кода на основе работы, выполненной в проекте OpenBSD."
#. type: delimited block . 4
#: documentation/content/en/articles/committers-guide/_index.adoc:2745
@@ -8014,7 +7953,9 @@ msgstr "Obtained from:\tOpenBSD\n"
#: documentation/content/en/articles/committers-guide/_index.adoc:2749
#, no-wrap
msgid "Commit Log for a Change to FreeBSD-CURRENT with a Planned Commit to FreeBSD-STABLE to Follow at a Later Date."
-msgstr "Журнал коммитов для правки в FreeBSD-CURRENT с запланированным коммитом в FreeBSD-STABLE в последующее время."
+msgstr ""
+"Журнал коммитов для правки в FreeBSD-CURRENT с запланированным коммитом в "
+"FreeBSD-STABLE в последующее время."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:2754
@@ -8102,18 +8043,17 @@ msgstr "Предпочтительная лицензия для новых фа
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:2795
msgid ""
-"The FreeBSD Project's full license policy can be found at link:https://"
-"www.FreeBSD.org/internal/software-license/[https://www.FreeBSD.org/internal/"
+"The FreeBSD Project's full license policy can be found at link:https://www."
+"FreeBSD.org/internal/software-license/[https://www.FreeBSD.org/internal/"
"software-license]. The rest of this section is intended to help you get "
"started. As a rule, when in doubt, ask. It is much easier to give advice "
"than to fix the source tree."
msgstr ""
"Полная политика лицензирования проекта FreeBSD доступна по ссылке "
-"link:https://www.FreeBSD.org/internal/software-license/[https://"
-"www.FreeBSD.org/internal/software-license]. Остальная часть этого раздела "
-"предназначена для того, чтобы помочь вам начать работу. Как правило, если "
-"сомневаетесь — спрашивайте. Дать совет гораздо проще, чем исправлять дерево "
-"исходного кода."
+"link:https://www.FreeBSD.org/internal/software-license/[https://www.FreeBSD."
+"org/internal/software-license]. Остальная часть этого раздела предназначена "
+"для того, чтобы помочь вам начать работу. Как правило, если сомневаетесь — "
+"спрашивайте. Дать совет гораздо проще, чем исправлять дерево исходного кода."
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:2797
@@ -8189,15 +8129,15 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:2834
msgid ""
-"The FreeBSD project strongly discourages the so-called \"advertising "
-"clause\" in new code. Due to the large number of contributors to the "
-"FreeBSD project, complying with this clause for many commercial vendors has "
-"become difficult. If you have code in the tree with the advertising clause, "
-"please consider removing it. In fact, please consider using the above "
-"license for your code."
+"The FreeBSD project strongly discourages the so-called \"advertising clause"
+"\" in new code. Due to the large number of contributors to the FreeBSD "
+"project, complying with this clause for many commercial vendors has become "
+"difficult. If you have code in the tree with the advertising clause, please "
+"consider removing it. In fact, please consider using the above license for "
+"your code."
msgstr ""
-"Проект FreeBSD настоятельно не рекомендует использовать так называемую "
-"«рекламную оговорку» в новом коде. Из-за большого числа участников проекта "
+"Проект FreeBSD настоятельно не рекомендует использовать так называемую «"
+"рекламную оговорку» в новом коде. Из-за большого числа участников проекта "
"FreeBSD соблюдение этой оговорки стало затруднительным для многих "
"коммерческих вендоров. Если ваш код в дереве содержит рекламную оговорку, "
"пожалуйста, рассмотрите возможность её удаления. Более того, пожалуйста, "
@@ -8394,10 +8334,10 @@ msgstr ""
"руководствоваться следует дословным текстом лицензии. Проект старается "
"следовать https://spdx.github.io/spdx-spec/v2.2.2/[Спецификации SPDX, версия "
"2.2]. Инструкцию, как помечать исходные файлы, и допустимые алгебраические "
-"выражения можно найти в https://spdx.github.io/spdx-spec/v2.2.2/SPDX-license-"
-"expressions/[Приложении D] и https://spdx.github.io/spdx-spec/v2.2.2/using-"
-"SPDX-short-identifiers-in-source-files/[Приложении E]. Проект берет "
-"идентификаторы из списка допустимых https://spdx.org/licenses/[кратких "
+"выражения можно найти в https://spdx.github.io/spdx-spec/v2.2.2/"
+"SPDX-license-expressions/[Приложении D] и https://spdx.github.io/spdx-spec/v2"
+".2.2/using-SPDX-short-identifiers-in-source-files/[Приложении E]. Проект "
+"берет идентификаторы из списка допустимых https://spdx.org/licenses/[кратких "
"лицензионных идентификаторов] SPDX. Проект использует только тег _SPDX-"
"License-Identifier_."
@@ -8433,11 +8373,11 @@ msgstr ""
"особой необходимости согласовывать действия с другими коммиттерами перед "
"внесением изменений. Это же относится и к исправлению ошибок в явно "
"заброшенных частях системы (к сожалению, такие области существуют). При "
-"изменении частей системы, которые поддерживаются (формально или "
-"неформально), рассмотрите возможность запроса рецензирования, как это делал "
-"бы разработчик до получения прав коммиттера. Для портов свяжитесь с "
-"сопровождающим, указанным в переменной `MAINTAINER` в файле "
-"[.filename]#Makefile#."
+"изменении частей системы, которые поддерживаются (формально или неформально)"
+", рассмотрите возможность запроса рецензирования, как это делал бы "
+"разработчик до получения прав коммиттера. Для портов свяжитесь с "
+"сопровождающим, указанным в переменной `MAINTAINER` в файле [."
+"filename]#Makefile#."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:2896
@@ -8712,8 +8652,8 @@ msgid ""
"Phabricator[Phabricator wiki page] for details."
msgstr ""
"Проект FreeBSD использует https://reviews.freebsd.org[Phabricator] для "
-"запросов на рецензирование кода. Подробности можно найти на https://"
-"wiki.freebsd.org/Phabricator[странице Phabricator в вики]."
+"запросов на рецензирование кода. Подробности можно найти на https://wiki."
+"freebsd.org/Phabricator[странице Phabricator в вики]."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:2982
@@ -8802,20 +8742,20 @@ msgid ""
"website and documentation on the FTP site is up to date with respect to the "
"Subversion tree. It is not a conflict resolution body. The vast majority "
"of documentation related discussion takes place on the {freebsd-doc}. More "
-"details regarding the doceng team can be found in its https://"
-"www.FreeBSD.org/internal/doceng/[charter]. Committers interested in "
-"contributing to the documentation should familiarize themselves with the "
-"extref:{fdp-primer}[Documentation Project Primer]."
+"details regarding the doceng team can be found in its https://www.FreeBSD."
+"org/internal/doceng/[charter]. Committers interested in contributing to the "
+"documentation should familiarize themselves with the extref:{fdp-primer}"
+"[Documentation Project Primer]."
msgstr ""
"doceng — это группа, ответственная за инфраструктуру сборки документации, "
"утверждение новых коммиттеров документации и обеспечение актуальности веб-"
"сайта FreeBSD и документации на FTP-сайте в соответствии с деревом "
"Subversion. Она не является органом по разрешению конфликтов. Подавляющее "
"большинство обсуждений, связанных с документацией, происходит в рассылке "
-"{freebsd-doc}. Подробнее о команде doceng можно узнать в её https://"
-"www.FreeBSD.org/internal/doceng/[уставе]. Коммиттеры, заинтересованные в "
-"работе над документацией, должны ознакомиться с руководством extref:{fdp-"
-"primer}[Проект документации FreeBSD: введение для новых участников]."
+"{freebsd-doc}. Подробнее о команде doceng можно узнать в её https://www."
+"FreeBSD.org/internal/doceng/[уставе]. Коммиттеры, заинтересованные в работе "
+"над документацией, должны ознакомиться с руководством extref:{fdp-primer}["
+"Проект документации FreeBSD: введение для новых участников]."
#. type: Labeled list
#: documentation/content/en/articles/committers-guide/_index.adoc:3009
@@ -8856,26 +8796,13 @@ msgstr ""
"`{so-name}` — это link:https://www.FreeBSD.org/security/[ответственный за "
"безопасность FreeBSD], который курирует работу `{security-officer}`."
-#. type: Labeled list
-#: documentation/content/en/articles/committers-guide/_index.adoc:3018
-#, no-wrap
-msgid "{committers-name}"
-msgstr ""
-
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:3022
-#, fuzzy
-#| msgid ""
-#| "{committers-name}:: {dev-src-all}, {dev-ports-all} and {dev-doc-all} are "
-#| "the mailing lists that the version control system uses to send commit "
-#| "messages to. _Never_ send email directly to these lists. Only send "
-#| "replies to this list when they are short and are directly related to a "
-#| "commit."
-msgid ""
-"{dev-src-all}, {dev-ports-all} and {dev-doc-all} are the mailing lists that "
-"the version control system uses to send commit messages to. _Never_ send "
-"email directly to these lists. Only send replies to this list when they are "
-"short and are directly related to a commit."
+msgid ""
+"{committers-name}:: {dev-src-all}, {dev-ports-all} and {dev-doc-all} are the "
+"mailing lists that the version control system uses to send commit messages "
+"to. _Never_ send email directly to these lists. Only send replies to this "
+"list when they are short and are directly related to a commit."
msgstr ""
"{committers-name}:: {dev-src-all}, {dev-ports-all} и {dev-doc-all} — это "
"списки рассылки, которые система управления версиями использует для отправки "
@@ -8883,24 +8810,12 @@ msgstr ""
"Отправляйте ответы в этот список только в том случае, если они короткие и "
"непосредственно связаны с коммитом."
-#. type: Labeled list
-#: documentation/content/en/articles/committers-guide/_index.adoc:3023
-#, fuzzy, no-wrap
-#| msgid "Developers"
-msgid "{developers-name}"
-msgstr "Разработчики"
-
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:3027
-#, fuzzy
-#| msgid ""
-#| "{developers-name}:: All committers are subscribed to -developers. This "
-#| "list was created to be a forum for the committers \"community\" issues. "
-#| "Examples are Core voting, announcements, etc."
msgid ""
-"All committers are subscribed to -developers. This list was created to be a "
-"forum for the committers \"community\" issues. Examples are Core voting, "
-"announcements, etc."
+"{developers-name}:: All committers are subscribed to -developers. This list "
+"was created to be a forum for the committers \"community\" issues. Examples "
+"are Core voting, announcements, etc."
msgstr ""
"{developers-name}:: Все коммиттеры подписаны на список рассылки -developers. "
"Этот список был создан для обсуждения вопросов, связанных с сообществом "
@@ -8998,16 +8913,16 @@ msgstr "Поддерживаются только ключи ECDSA, Ed25519 ил
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:3054
msgid ""
-"Send your public key ([.filename]#$HOME/.ssh/id_ecdsa.pub#, "
-"[.filename]#$HOME/.ssh/id_ed25519.pub#, or [.filename]#$HOME/.ssh/"
-"id_rsa.pub#) to the person setting you up as a committer so it can be put "
-"into [.filename]#yourlogin# in [.filename]#/etc/ssh-keys/# on `freefall`."
+"Send your public key ([.filename]#$HOME/.ssh/id_ecdsa.pub#, [.filename]#"
+"$HOME/.ssh/id_ed25519.pub#, or [.filename]#$HOME/.ssh/id_rsa.pub#) to the "
+"person setting you up as a committer so it can be put into [."
+"filename]#yourlogin# in [.filename]#/etc/ssh-keys/# on `freefall`."
msgstr ""
-"Отправьте ваш открытый ключ ([.filename]#$HOME/.ssh/id_ecdsa.pub#, "
-"[.filename]#$HOME/.ssh/id_ed25519.pub# или [.filename]#$HOME/.ssh/"
-"id_rsa.pub#) человеку, который настраивает вас как коммиттера, чтобы его "
-"можно было добавить в [.filename]#yourlogin# в [.filename]#/etc/ssh-keys/# "
-"на `freefall`."
+"Отправьте ваш открытый ключ ([.filename]#$HOME/.ssh/id_ecdsa.pub#, [."
+"filename]#$HOME/.ssh/id_ed25519.pub# или [.filename]#$HOME/.ssh/id_rsa.pub#) "
+"человеку, который настраивает вас как коммиттера, чтобы его можно было "
+"добавить в [.filename]#yourlogin# в [.filename]#/etc/ssh-keys/# на "
+"`freefall`."
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3059
@@ -9026,8 +8941,8 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:3061
msgid "Test with a simple remote command: `ssh freefall.FreeBSD.org ls /usr`."
msgstr ""
-"Проверка с помощью простой удалённой команды: `ssh freefall.FreeBSD.org ls /"
-"usr`."
+"Проверка с помощью простой удалённой команды: `ssh freefall.FreeBSD.org ls "
+"/usr`."
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3063
@@ -9059,8 +8974,8 @@ msgstr "Доступность Coverity(R) для коммиттеров FreeBSD
msgid ""
"All FreeBSD developers can obtain access to Coverity analysis results of all "
"FreeBSD Project software. All who are interested in obtaining access to the "
-"analysis results of the automated Coverity runs, can sign up at http://"
-"scan.coverity.com/[Coverity Scan]."
+"analysis results of the automated Coverity runs, can sign up at http://scan."
+"coverity.com/[Coverity Scan]."
msgstr ""
"Все разработчики FreeBSD могут получить доступ к результатам анализа "
"Coverity для всего программного обеспечения проекта FreeBSD. Все, кто "
@@ -9078,11 +8993,11 @@ msgid ""
"Wiki access list."
msgstr ""
"В вики FreeBSD есть мини-руководство для разработчиков, которые "
-"заинтересованы в работе с отчетами анализа Coverity(R): https://"
-"wiki.freebsd.org/CoverityPrevent[https://wiki.freebsd.org/CoverityPrevent]. "
-"Обратите внимание, что это мини-руководство доступно только разработчикам "
-"FreeBSD, поэтому если вы не можете открыть эту страницу, вам нужно будет "
-"попросить добавить вас в соответствующий список доступа к вики."
+"заинтересованы в работе с отчетами анализа Coverity(R): https://wiki.freebsd."
+"org/CoverityPrevent[https://wiki.freebsd.org/CoverityPrevent]. Обратите "
+"внимание, что это мини-руководство доступно только разработчикам FreeBSD, "
+"поэтому если вы не можете открыть эту страницу, вам нужно будет попросить "
+"добавить вас в соответствующий список доступа к вики."
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3076
@@ -9112,8 +9027,8 @@ msgid ""
"the _Code of Conduct_ specific to committers."
msgstr ""
"Все участники проекта FreeBSD должны соблюдать _Кодекс поведения_, доступный "
-"по ссылке link:https://www.FreeBSD.org/internal/code-of-conduct/[https://"
-"www.FreeBSD.org/internal/code-of-conduct]. Как коммиттеры, вы представляете "
+"по ссылке link:https://www.FreeBSD.org/internal/code-of-conduct/[https://www."
+"FreeBSD.org/internal/code-of-conduct]. Как коммиттеры, вы представляете "
"публичное лицо проекта, и ваше поведение оказывает существенное влияние на "
"его общественное восприятие. Это руководство расширяет разделы _Кодекса "
"поведения_, относящиеся к коммиттерам."
@@ -9139,8 +9054,8 @@ msgstr "Обсудите любые значительные изменения
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3088
msgid ""
-"Respect existing maintainers (if listed in the `MAINTAINER` field in "
-"[.filename]#Makefile# or in [.filename]#MAINTAINER# in the top-level "
+"Respect existing maintainers (if listed in the `MAINTAINER` field in [."
+"filename]#Makefile# or in [.filename]#MAINTAINER# in the top-level "
"directory)."
msgstr ""
"Уважайте существующих сопровождающих (если они указаны в поле `MAINTAINER` в "
@@ -9245,15 +9160,15 @@ msgid ""
msgstr ""
"Как уже отмечалось, нарушение некоторых из этих правил может стать "
"основанием для временного лишения прав на коммиты или, при повторных "
-"нарушениях, для их постоянного отзыва. Отдельные члены Основной Команды "
-"(Core Team) имеют право временно приостановить права на коммиты до тех пор, "
-"пока основная команда в полном составе не рассмотрит вопрос. В случае "
-"«чрезвычайной ситуации» (например, если коммиттер наносит ущерб "
-"репозиторию), временное лишение прав может также быть осуществлено "
-"хранителями репозитория. Только Основная Команда 2/3 большинства голосов "
-"имеет право приостановить права на коммиты сроком более чем на неделю или "
-"отозвать их полностью. Это правило существует не для того, чтобы сделать "
-"основную команду сборищем жестоких диктаторов, которые могут избавляться от "
+"нарушениях, для их постоянного отзыва. Отдельные члены Основной Команды ("
+"Core Team) имеют право временно приостановить права на коммиты до тех пор, "
+"пока основная команда в полном составе не рассмотрит вопрос. В случае «"
+"чрезвычайной ситуации» (например, если коммиттер наносит ущерб репозиторию), "
+"временное лишение прав может также быть осуществлено хранителями "
+"репозитория. Только Основная Команда 2/3 большинства голосов имеет право "
+"приостановить права на коммиты сроком более чем на неделю или отозвать их "
+"полностью. Это правило существует не для того, чтобы сделать основную "
+"команду сборищем жестоких диктаторов, которые могут избавляться от "
"коммиттеров так же легко, как от пустых банок из-под газировки, а чтобы дать "
"проекту своего рода предохранительный клапан. Если кто-то выходит из-под "
"контроля, важно иметь возможность немедленно принять меры, а не быть "
@@ -9396,9 +9311,8 @@ msgid ""
"Consider the points raised under crossref:committers-guide[respect,Respect "
"other committers] and apply them also to contributors."
msgstr ""
-"Учитывайте моменты, поднятые в разделе crossref:committers-"
-"guide[respect,Уважайте других коммиттеров], и применяйте их также к "
-"контрибьюторам."
+"Учитывайте моменты, поднятые в разделе crossref:committers-guide["
+"respect,Уважайте других коммиттеров], и применяйте их также к контрибьюторам."
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3152
@@ -9593,8 +9507,8 @@ msgstr ""
"сложную ситуацию. Если человек, отправляющий гневное сообщение, хотя бы "
"проявил такт и отправил его лично, проявите такт и вы — оставьте это в "
"тайне. Если вы чувствуете, что другой разработчик относится к вам "
-"несправедливо, и это причиняет вам страдания, обратитесь к Основной команде "
-"(Core team), а не выносите это на публику. Основная команда постарается "
+"несправедливо, и это причиняет вам страдания, обратитесь к Основной команде ("
+"Core team), а не выносите это на публику. Основная команда постарается "
"выступить в роли миротворцев и вернуть ситуацию в разумное русло. Если спор "
"касается изменений в кодовой базе и участники не могут прийти к согласию, "
"основная команда может назначить третью сторону, устраивающую всех, для "
@@ -9642,9 +9556,9 @@ msgstr ""
"предполагает, что знает правильный способ что-то сделать. Если вы не делали "
"этого раньше, велика вероятность, что вы на самом деле не знаете, как у нас "
"принято делать, и вам действительно нужно сначала спросить, иначе вы "
-"рискуете полностью опозориться на публике. Нет ничего постыдного в вопросе "
-"«как, черт возьми, это сделать?» Мы уже знаем, что вы умный человек; иначе "
-"вы не были бы коммиттером."
+"рискуете полностью опозориться на публике. Нет ничего постыдного в вопросе «"
+"как, черт возьми, это сделать?» Мы уже знаем, что вы умный человек; иначе вы "
+"не были бы коммиттером."
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3205
@@ -9670,20 +9584,20 @@ msgstr ""
"работу другой архитектуры, обязательно протестируйте его на всех "
"поддерживаемых архитектурах. Пожалуйста, убедитесь, что ваше изменение "
"работает для crossref:committers-guide[compilers,поддерживаемых инструментов "
-"сборки]. Пожалуйста, обратитесь к https://www.FreeBSD.org/internal/"
-"[Внутренней странице FreeBSD] для получения списка доступных ресурсов. По "
+"сборки]. Пожалуйста, обратитесь к https://www.FreeBSD.org/internal/["
+"Внутренней странице FreeBSD] для получения списка доступных ресурсов. По "
"мере добавления других архитектур в список поддерживаемых платформ FreeBSD "
"будут предоставлены соответствующие общие ресурсы для тестирования."
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3208
msgid ""
-"Contributed software is anything under the [.filename]#src/contrib#, "
-"[.filename]#src/crypto#, or [.filename]#src/sys/contrib# trees."
+"Contributed software is anything under the [.filename]#src/contrib#, [."
+"filename]#src/crypto#, or [.filename]#src/sys/contrib# trees."
msgstr ""
"Предоставленное программное обеспечение — это всё, что находится в деревьях "
-"каталогов [.filename]#src/contrib#, [.filename]#src/crypto# или "
-"[.filename]#src/sys/contrib#."
+"каталогов [.filename]#src/contrib#, [.filename]#src/crypto# или [.filename]#"
+"src/sys/contrib#."
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3213
@@ -9850,8 +9764,8 @@ msgid ""
"The FreeBSD base system also supports various versions of Clang and GCC as "
"out-of-tree compilers. For large or risky changes, committers should do a "
"test build with a supported version of GCC. Out of tree compilers are "
-"available as packages. GCC compilers are available as `${TARGET_ARCH}-gcc$"
-"{VERSION}` packages, such as package:devel/freebsd-gcc14@aarch64[aarch64-"
+"available as packages. GCC compilers are available as `${TARGET_ARCH}-gcc"
+"${VERSION}` packages, such as package:devel/freebsd-gcc14@aarch64[aarch64-"
"gcc14]. Clang compilers are available as `llvm${VERSION}` packages, such as "
"package:devel/llvm18[llvm18]. The project runs automated CI jobs to build "
"everything with these compilers. Committers are expected to fix the jobs "
@@ -9860,16 +9774,16 @@ msgid ""
"example `CROSS_TOOLCHAIN=aarch64-gcc14` or `CROSS_TOOLCHAIN=llvm18`. For "
"universe or tinderbox builds, `USE_GCC_TOOLCHAINS=gcc${VERSION}` builds all "
"architectures using the appropriate GCC compiler packages. For universe or "
-"tinderbox builds using an out-of-tree Clang, pass `CROSS_TOOLCHAIN=llvm$"
-"{VERSION}`. Note that while all architectures in the base system can be "
+"tinderbox builds using an out-of-tree Clang, pass `CROSS_TOOLCHAIN=llvm"
+"${VERSION}`. Note that while all architectures in the base system can be "
"compiled by Clang, only a few architectures can be fully built by GCC."
msgstr ""
"Базовая система FreeBSD также поддерживает различные версии Clang и GCC в "
"качестве компиляторов, не входящих в дерево исходного кода. Для крупных или "
"рискованных изменений коммиттеры должны выполнить тестовую сборку с "
"поддерживаемой версией GCC. Компиляторы, не входящие в дерево исходного "
-"кода, доступны в виде пакетов. Компиляторы GCC доступны в виде пакетов `$"
-"{TARGET_ARCH}-gcc${VERSION}`, например package:devel/freebsd-"
+"кода, доступны в виде пакетов. Компиляторы GCC доступны в виде пакетов "
+"`${TARGET_ARCH}-gcc${VERSION}`, например package:devel/freebsd-"
"gcc14@aarch64[aarch64-gcc14]. Компиляторы Clang доступны в виде пакетов "
"`llvm${VERSION}`, например package:devel/llvm18[llvm18]. Проект запускает "
"автоматизированные задачи CI для сборки всего с использованием этих "
@@ -10037,8 +9951,8 @@ msgid ""
"references are correct and that the man page has all of the appropriate "
"`MLINKS` installed."
msgstr ""
-"Для страниц руководства запустите package:sysutils/manck[] и "
-"package:textproc/igor[] на странице руководства, чтобы проверить, что все "
+"Для страниц руководства запустите package:sysutils/manck[] и package:"
+"textproc/igor[] на странице руководства, чтобы проверить, что все "
"перекрестные ссылки и ссылки на файлы корректны, а также что страница "
"руководства имеет все необходимые `MLINKS`."
@@ -10058,8 +9972,8 @@ msgstr ""
"— это любое изменение, которое не меняет функциональность кода. Смешивание "
"изменений затрудняет понимание изменений функциональности при запросе "
"различий между версиями, что может скрыть новые ошибки. Не включайте "
-"изменения пробелов вместе с изменениями содержимого в коммитах для "
-"[.filename]#doc/#. Лишний шум в различиях значительно усложняет работу "
+"изменения пробелов вместе с изменениями содержимого в коммитах для [."
+"filename]#doc/#. Лишний шум в различиях значительно усложняет работу "
"переводчиков. Вместо этого вносите исправления стиля или пробелов в "
"отдельных коммитах, явно обозначенных как таковые в сообщении коммита."
@@ -10095,8 +10009,8 @@ msgid ""
"The option, utility, or interface is preserved until the next major (point "
"zero) release."
msgstr ""
-"Опция, утилита или интерфейс сохраняются до следующего мажорного (точка-"
-"ноль) релиза."
+"Опция, утилита или интерфейс сохраняются до следующего мажорного (точка-ноль)"
+" релиза."
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3322
@@ -10316,16 +10230,16 @@ msgid ""
msgstr ""
"FreeBSD — это высокопортативная операционная система, предназначенная для "
"работы на множестве различных типов аппаратных архитектур. Поддержание "
-"четкого разделения между машинно-зависимым (MD) и машинно-независимым (MI) "
+"четкого разделения между машинозависимым (MD) и машинонезависимым (MI) "
"кодом, а также минимизация MD-кода являются важной частью нашей стратегии по "
"сохранению гибкости в отношении текущих тенденций в аппаратном обеспечении. "
"Каждая новая аппаратная архитектура, поддерживаемая FreeBSD, существенно "
-"увеличивает затраты на поддержку кода, инструментальных средств и инжиниринг "
-"выпусков. Это также значительно повышает стоимость эффективного тестирования "
-"изменений в ядре. Таким образом, существует серьезная мотивация для "
-"разграничения уровней поддержки различных архитектур, оставаясь при этом "
-"сильными в нескольких ключевых архитектурах, которые рассматриваются как "
-"«целевая аудитория» FreeBSD."
+"увеличивает затраты на поддержку кода, инструментальных средств и управление "
+"выпусками. Это также значительно повышает стоимость эффективного "
+"тестирования изменений в ядре. Таким образом, существует серьезная мотивация "
+"для разграничения уровней поддержки различных архитектур, оставаясь при этом "
+"сильными в нескольких ключевых архитектурах, которые рассматриваются как «"
+"целевая аудитория» FreeBSD."
#. type: Title ===
#: documentation/content/en/articles/committers-guide/_index.adoc:3373
@@ -10650,8 +10564,8 @@ msgid ""
"Dedicated hardware in one of the FreeBSD clusters for package building "
"(either natively or via qemu-user)."
msgstr ""
-"Выделенное оборудование в одном из кластеров FreeBSD для сборки пакетов "
-"(нативно или через qemu-user)."
+"Выделенное оборудование в одном из кластеров FreeBSD для сборки пакетов ("
+"нативно или через qemu-user)."
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3432
@@ -10976,17 +10890,17 @@ msgstr "Как добавить новый порт?"
#: documentation/content/en/articles/committers-guide/_index.adoc:3503
msgid ""
"Adding a port to the tree is relatively simple. Once the port is ready to be "
-"added, as explained later crossref:committers-guide[ports-qa-add-new-"
-"extra,here], you need to add the port's directory entry in the category's "
-"[.filename]#Makefile#. In this [.filename]#Makefile#, ports are listed in "
+"added, as explained later crossref:committers-guide[ports-qa-add-new-extra,"
+"here], you need to add the port's directory entry in the category's [."
+"filename]#Makefile#. In this [.filename]#Makefile#, ports are listed in "
"alphabetical order and added to the `SUBDIR` variable, like this:"
msgstr ""
"Добавление порта в дерево относительно просто. Как только порт готов к "
"добавлению, как описано далее crossref:committers-guide[ports-qa-add-new-"
-"extra,здесь], необходимо добавить запись каталога порта в "
-"[.filename]#Makefile# соответствующей категории. В этом "
-"[.filename]#Makefile# порты перечислены в алфавитном порядке и добавлены в "
-"переменную `SUBDIR`, например:"
+"extra,здесь], необходимо добавить запись каталога порта в [."
+"filename]#Makefile# соответствующей категории. В этом [.filename]#Makefile# "
+"порты перечислены в алфавитном порядке и добавлены в переменную `SUBDIR`, "
+"например:"
#. type: delimited block . 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3507
@@ -11049,9 +10963,9 @@ msgid ""
"handbook}testing[poudriere, testing-poudriere] sections."
msgstr ""
"В главе extref:{porters-handbook}testing[Руководства портировщика по "
-"тестированию] содержатся более подробные инструкции. См. разделы extref:"
-"{porters-handbook}testing[Portclippy / Portfmt, testing-portclippy] и extref:"
-"{porters-handbook}testing[poudriere, testing-poudriere]."
+"тестированию] содержатся более подробные инструкции. См. разделы extref"
+":{porters-handbook}testing[Portclippy / Portfmt, testing-portclippy] и extref"
+":{porters-handbook}testing[poudriere, testing-poudriere]."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:3530
@@ -11089,10 +11003,9 @@ msgid ""
"poudriere] to test the new port is not possible, the bare minimum of testing "
"includes this sequence:"
msgstr ""
-"Если по какой-то причине использование extref:{porters-handbook}"
-"testing[poudriere, testing-poudriere] для тестирования нового порта "
-"невозможно, минимальный набор тестирования включает следующую "
-"последовательность:"
+"Если по какой-то причине использование extref:{porters-handbook}testing["
+"poudriere, testing-poudriere] для тестирования нового порта невозможно, "
+"минимальный набор тестирования включает следующую последовательность:"
#. type: delimited block . 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3549
@@ -11187,8 +11100,8 @@ msgstr "Удалите файлы и каталог порта с помощью
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:3577
msgid ""
-"Remove the `SUBDIR` listing of the port in the parent directory "
-"[.filename]#Makefile#."
+"Remove the `SUBDIR` listing of the port in the parent directory [."
+"filename]#Makefile#."
msgstr ""
"Удалите указание `SUBDIR` для порта в [.filename]#Makefile# родительского "
"каталога."
@@ -11227,16 +11140,16 @@ msgstr "Как переместить порт в новое место?"
#: documentation/content/en/articles/committers-guide/_index.adoc:3591
msgid ""
"Perform a thorough check of the ports collection for any dependencies on the "
-"old port location/name, and update them. Running `grep` on "
-"[.filename]#INDEX# is not enough because some ports have dependencies "
-"enabled by compile-time options. A full man:git-grep[1] of the ports "
-"collection is recommended."
+"old port location/name, and update them. Running `grep` on [."
+"filename]#INDEX# is not enough because some ports have dependencies enabled "
+"by compile-time options. A full man:git-grep[1] of the ports collection is "
+"recommended."
msgstr ""
"Выполните тщательную проверку коллекции портов на наличие зависимостей от "
-"старого расположения или имени порта и обновите их. Запуск `grep` по файлу "
-"[.filename]#INDEX# недостаточен, поскольку некоторые порты имеют "
-"зависимости, включённые через параметры компиляции. Рекомендуется выполнить "
-"полный поиск с помощью man:git-grep[1] по коллекции портов."
+"старого расположения или имени порта и обновите их. Запуск `grep` по файлу [."
+"filename]#INDEX# недостаточен, поскольку некоторые порты имеют зависимости, "
+"включённые через параметры компиляции. Рекомендуется выполнить полный поиск "
+"с помощью man:git-grep[1] по коллекции портов."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:3592
@@ -11342,7 +11255,9 @@ msgstr "Квартальные ветки"
#: documentation/content/en/articles/committers-guide/_index.adoc:3628
#, no-wrap
msgid "What is the procedure to request authorization for merging a commit to the quarterly branch?"
-msgstr "Какова процедура получения разрешения на слияние коммита с квартальной веткой?"
+msgstr ""
+"Какова процедура получения разрешения на слияние коммита с квартальной "
+"веткой?"
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3631
@@ -11416,10 +11331,10 @@ msgid ""
"or not to approve it. If they do, it is their responsibility to:"
msgstr ""
"Пожалуйста, ознакомьтесь с extref:{porters-handbook}makefiles/[Предложение "
-"новой категории, proposing-categories] в Руководстве портера. После "
-"выполнения этой процедуры и назначения PR в группе — {portmgr}, решение об "
-"одобрении принимается ими. Если решение положительное, их обязанностью "
-"является:"
+"новой категории, proposing-categories] в Руководстве FreeBSD по созданию "
+"портов. После выполнения этой процедуры и назначения PR в группе — {portmgr}"
+", решение об одобрении принимается ими. Если решение положительное, их "
+"обязанностью является:"
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3660
@@ -11431,11 +11346,11 @@ msgstr ""
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3661
msgid ""
-"Update the `VALID_CATEGORIES` definition in [.filename]#ports/Mk/"
-"bsd.port.mk#."
+"Update the `VALID_CATEGORIES` definition in [.filename]#ports/Mk/bsd.port."
+"mk#."
msgstr ""
-"Обновите определение `VALID_CATEGORIES` в файле [.filename]#ports/Mk/"
-"bsd.port.mk#."
+"Обновите определение `VALID_CATEGORIES` в файле [.filename]#ports/Mk/bsd.port"
+".mk#."
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3662
@@ -11489,8 +11404,8 @@ msgstr ""
#. type: delimited block = 6
#: documentation/content/en/articles/committers-guide/_index.adoc:3678
msgid ""
-"If you want to be really thorough, now might be a good time to run "
-"man:portlint[1]."
+"If you want to be really thorough, now might be a good time to run man:"
+"portlint[1]."
msgstr ""
"Если вы хотите быть действительно тщательным, сейчас может быть подходящее "
"время запустить man:portlint[1]."
@@ -11508,8 +11423,8 @@ msgstr ""
"использует запись `CATEGORIES` каждого порта для создания его `PKGORIGIN`, "
"который служит для связи установленных пакетов с директорией порта, из "
"которого они были собраны. Если эта запись неверна, такие распространённые "
-"инструменты для работы с портами, как man:pkg-version[8] и "
-"man:portupgrade[1], не будут работать."
+"инструменты для работы с портами, как man:pkg-version[8] и man:portupgrade[1]"
+", не будут работать."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:3683
@@ -11551,11 +11466,11 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:3685
msgid ""
"Once this is done, you can commit the updated [.filename]#ports/Makefile# to "
-"connect the new category to the build and also commit the "
-"[.filename]#Makefile# changes for the old category or categories."
+"connect the new category to the build and also commit the [."
+"filename]#Makefile# changes for the old category or categories."
msgstr ""
-"После этого можно зафиксировать обновлённый файл [.filename]#ports/"
-"Makefile#, чтобы подключить новую категорию к сборке, а также сделать коммит "
+"После этого можно зафиксировать обновлённый файл [.filename]#ports/Makefile#"
+", чтобы подключить новую категорию к сборке, а также сделать коммит "
"изменениям в файле [.filename]#Makefile# для старой категории или категорий."
#. type: Plain text
@@ -11576,7 +11491,7 @@ msgid ""
"Porter's Handbook"
msgstr ""
"extref:{porters-handbook}makefiles/[список категорий, porting-categories] в "
-"Руководстве портера"
+"Руководстве FreeBSD по созданию портов"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:3690
@@ -11615,7 +11530,9 @@ msgstr "Разные вопросы"
#: documentation/content/en/articles/committers-guide/_index.adoc:3702
#, no-wrap
msgid "Are there changes that can be committed without asking the maintainer for approval?"
-msgstr "Существуют ли изменения, которые можно зафиксировать без запроса одобрения у сопровождающего?"
+msgstr ""
+"Существуют ли изменения, которые можно зафиксировать без запроса одобрения у "
+"сопровождающего?"
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3705
@@ -11681,12 +11598,12 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:3723
msgid ""
"Reports for all the package builds (official, experimental, and non-"
-"regression) are aggregated at link:pkg-status.FreeBSD.org[pkg-"
-"status.FreeBSD.org]."
+"regression) are aggregated at link:pkg-status.FreeBSD.org[pkg-status.FreeBSD."
+"org]."
msgstr ""
"Отчеты по всем сборкам пакетов (официальные, экспериментальные и без "
-"регрессии) агрегируются на link:pkg-status.FreeBSD.org[pkg-"
-"status.FreeBSD.org]."
+"регрессии) агрегируются на link:pkg-status.FreeBSD.org[pkg-status.FreeBSD."
+"org]."
#. type: Title ====
#: documentation/content/en/articles/committers-guide/_index.adoc:3725
@@ -11713,14 +11630,14 @@ msgstr "Есть ли другие файлы, которые мне нельз
#: documentation/content/en/articles/committers-guide/_index.adoc:3734
msgid ""
"Any file directly under [.filename]#ports/#, or any file under a "
-"subdirectory that starts with an uppercase letter ([.filename]#Mk/#, "
-"[.filename]#Tools/#, etc.). In particular, the {portmgr} is very protective "
+"subdirectory that starts with an uppercase letter ([.filename]#Mk/#, [."
+"filename]#Tools/#, etc.). In particular, the {portmgr} is very protective "
"of [.filename]#ports/Mk/bsd.port*.mk# so do not commit changes to those "
"files unless you want to face their wrath."
msgstr ""
"Любой файл непосредственно в [.filename]#ports/# или любой файл в "
-"подкаталоге, название которого начинается с заглавной буквы ([.filename]#Mk/"
-"#, [.filename]#Tools/# и т.д.). В частности, {portmgr} очень ревностно "
+"подкаталоге, название которого начинается с заглавной буквы ([.filename]#Mk/#"
+", [.filename]#Tools/# и т.д.). В частности, {portmgr} очень ревностно "
"относится к [.filename]#ports/Mk/bsd.port*.mk#, поэтому не вносите изменения "
"в эти файлы, если не хотите навлечь на себя их гнев."
@@ -11728,7 +11645,9 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:3736
#, no-wrap
msgid "What is the proper procedure for updating the checksum for a port distfile when the file changes without a version change?"
-msgstr "Как правильно обновить контрольную сумму для distfile порта, если файл изменился без изменения версии?"
+msgstr ""
+"Как правильно обновить контрольную сумму для distfile порта, если файл "
+"изменился без изменения версии?"
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3740
@@ -11755,7 +11674,9 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:3742
#, no-wrap
msgid "How can an experimental test build of the ports tree (exp-run) be requested?"
-msgstr "Как можно запросить экспериментальную тестовую сборку дерева портов (exp-run)?"
+msgstr ""
+"Как можно запросить экспериментальную тестовую сборку дерева портов (exp-"
+"run)?"
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3746
@@ -11805,8 +11726,8 @@ msgid ""
msgstr ""
"Если вверху написано «Показать дополнительные поля (Show Advanced Fields)», "
"нажмите на это. Теперь будет написано «Скрыть дополнительные поля (Hide "
-"Advanced Fields)». Станут доступны многие новые поля. Если уже написано "
-"«Скрыть дополнительные поля», ничего делать не нужно."
+"Advanced Fields)». Станут доступны многие новые поля. Если уже написано «"
+"Скрыть дополнительные поля», ничего делать не нужно."
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:3756
@@ -11893,8 +11814,8 @@ msgstr "crossref:committers-guide[conventions-everyone, Для всех]"
#. type: Plain text
#: documentation/content/en/articles/committers-guide/_index.adoc:3777
msgid ""
-"Get your mentor to add you to the \"Additional Contributors\" "
-"([.filename]#doc/shared/contrib-additional.adoc#), if you are not already "
+"Get your mentor to add you to the \"Additional Contributors\" ([."
+"filename]#doc/shared/contrib-additional.adoc#), if you are not already "
"listed there."
msgstr ""
"Попросите вашего наставника добавить вас в список \"Дополнительные "
@@ -11948,15 +11869,17 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:3795
#, no-wrap
msgid "How do I access people.FreeBSD.org to put up personal or project information?"
-msgstr "Как получить доступ к people.FreeBSD.org для размещения личной или проектной информации?"
+msgstr ""
+"Как получить доступ к people.FreeBSD.org для размещения личной или проектной "
+"информации?"
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3799
msgid ""
-"`people.FreeBSD.org` is the same as `freefall.FreeBSD.org`. Just create a "
-"[.filename]#public_html# directory. Anything you place in that directory "
-"will automatically be visible under https://people.FreeBSD.org/[https://"
-"people.FreeBSD.org/]."
+"`people.FreeBSD.org` is the same as `freefall.FreeBSD.org`. Just create a [."
+"filename]#public_html# directory. Anything you place in that directory will "
+"automatically be visible under https://people.FreeBSD.org/[https://people."
+"FreeBSD.org/]."
msgstr ""
"`people.FreeBSD.org` — это то же самое, что и `freefall.FreeBSD.org`. Просто "
"создайте каталог [.filename]#public_html#. Всё, что вы поместите в этот "
@@ -11972,17 +11895,18 @@ msgstr "Где хранятся архивы списков рассылки?"
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3803
msgid ""
-"The mailing lists are archived under [.filename]#/local/mail# on "
-"`freefall.FreeBSD.org`."
+"The mailing lists are archived under [.filename]#/local/mail# on `freefall."
+"FreeBSD.org`."
msgstr ""
-"Списки рассылки архивируются в [.filename]#/local/mail# на "
-"`freefall.FreeBSD.org`."
+"Списки рассылки архивируются в [.filename]#/local/mail# на `freefall.FreeBSD."
+"org`."
#. type: Title ===
#: documentation/content/en/articles/committers-guide/_index.adoc:3804
#, no-wrap
msgid "I would like to mentor a new committer. What process do I need to follow?"
-msgstr "Я хочу стать наставником нового коммиттера. Какой процесс мне нужно пройти?"
+msgstr ""
+"Я хочу стать наставником нового коммиттера. Какой процесс мне нужно пройти?"
#. type: delimited block = 4
#: documentation/content/en/articles/committers-guide/_index.adoc:3807
@@ -12082,13 +12006,13 @@ msgstr ""
#: documentation/content/en/articles/committers-guide/_index.adoc:3836
msgid ""
"rsync.net offers a free-forever 500 GB account to FreeBSD developers. Simply "
-"sign up at https://www.rsync.net/freebsd.html[https://www.rsync.net/"
-"freebsd.html] using your `@freebsd.org` address to receive this free account."
+"sign up at https://www.rsync.net/freebsd.html[https://www.rsync.net/freebsd."
+"html] using your `@freebsd.org` address to receive this free account."
msgstr ""
"rsync.net предоставляет бесплатный аккаунт на 500 ГБ навсегда разработчикам "
-"FreeBSD. Просто зарегистрируйтесь по адресу https://www.rsync.net/"
-"freebsd.html[https://www.rsync.net/freebsd.html], используя ваш адрес "
-"`@freebsd.org`, чтобы получить этот бесплатный аккаунт."
+"FreeBSD. Просто зарегистрируйтесь по адресу https://www.rsync.net/freebsd."
+"html[https://www.rsync.net/freebsd.html], используя ваш адрес `@freebsd.org`"
+", чтобы получить этот бесплатный аккаунт."
#~ msgid "https://ci.freebsd.org[Jenkins]"
#~ msgstr "https://ci.freebsd.org[Jenkins]"
diff --git a/documentation/content/ru/articles/contributing/_index.adoc b/documentation/content/ru/articles/contributing/_index.adoc
index 605ac4d6b9..9197476f65 100644
--- a/documentation/content/ru/articles/contributing/_index.adoc
+++ b/documentation/content/ru/articles/contributing/_index.adoc
@@ -1,10 +1,10 @@
---
authors:
- -
+ -
author: 'Jordan Hubbard'
- -
+ -
author: 'Sam Lawrance'
- -
+ -
author: 'Mark Linimon'
description: 'Как внести вклад в проект FreeBSD'
tags: ["Contributing", "FreeBSD", "Non-Programmer Tasks", "Programmer Tasks"]
@@ -194,7 +194,7 @@ https://wiki.freebsd.org/IdeasPage[Список проектов и идей Fre
В случае значительного вклада в виде большого объёма работы или добавления важной новой функции в FreeBSD, почти всегда необходимо либо отправить изменения в виде tar-файлов, либо загрузить их на веб- или FTP-сайт для доступа других людей. Если у вас нет доступа к веб- или FTP-сайту, запросите на соответствующем списке рассылки FreeBSD, чтобы кто-то разместил изменения для вас.
-При работе с большими объемами кода неизбежно возникает деликатная тема авторских прав. FreeBSD предпочитает свободные лицензии, такие как BSD или ISC. Копилефтные лицензии, например GPLv2, иногда допускаются. Полный список можно найти на странице link:https://www.FreeBSD.org/internal/software-license/[политики лицензирования основной команды].
+При работе с большими объемами кода неизбежно возникает деликатная тема авторских прав. FreeBSD предпочитает свободные лицензии, такие как BSD или ISC. Коплефтные лицензии, например GPLv2, иногда допускаются. Полный список можно найти на странице link:https://www.FreeBSD.org/internal/software-license/[политики лицензирования основной команды].
=== Деньги или Оборудование
@@ -264,19 +264,24 @@ USA
Как сопровождающему, вам потребуется управлять следующими задачами:
-* **Новые версии программного обеспечения и обновления.** Новые версии и обновления существующего портированного программного обеспечения появляются постоянно, и их необходимо включать в Коллекцию портов, чтобы обеспечить актуальное ПО.
+* *Новые версии программного обеспечения и обновления.* Новые версии и обновления существующего портированного программного обеспечения появляются постоянно, и их необходимо включать в Коллекцию портов, чтобы обеспечить актуальное ПО.
* *Изменения в зависимостях.* Если в зависимостях вашего порта были внесены значительные изменения, возможно, его потребуется обновить, чтобы он продолжал работать корректно.
* *Изменения, затрагивающие зависимые порты.* Если другие порты зависят от порта, который вы поддерживаете, изменения в вашем порте могут потребовать согласования с другими сопровождающими.
-* *Взаимодействие с другими пользователями, сопровождающими и разработчиками.* Часть обязанностей сопровождающего включает в себя поддержку. От вас не ожидают предоставления общей поддержки (но мы приветствуем это, если вы решите её оказывать). Ваша задача — быть точкой координации по вопросам, связанным с вашими портами, специфичным для FreeBSD.
+* *Взаимодействие с другими пользователями, сопровождающими и разработчиками.* Часть обязанностей сопровождающего включает в себя поддержку.
+ От вас не ожидают предоставления общей поддержки (но мы приветствуем это, если вы решите её оказывать). Ваша задача — быть точкой координации по вопросам, связанным с вашими портами, специфичным для FreeBSD.
-* *Поиск ошибок.* Порт может быть подвержен ошибкам, специфичным для FreeBSD. Вам потребуется исследовать, находить и исправлять эти ошибки при их поступлении. Ещё лучше тщательно тестировать порт для выявления проблем до их попадания в Коллекцию портов.
+* *Поиск ошибок.* Порт может быть подвержен ошибкам, специфичным для FreeBSD.
+ Вам потребуется исследовать, находить и исправлять эти ошибки при их поступлении.
+ Ещё лучше тщательно тестировать порт для выявления проблем до их попадания в Коллекцию портов.
-* *Изменения в инфраструктуре и политике портов.* Иногда обновляются системы, используемые для сборки портов и пакетов, или появляются новые рекомендации, влияющие на инфраструктуру. Вам следует учитывать эти изменения, если ваши порты затронуты и требуют обновления.
+* *Изменения в инфраструктуре и политике портов.* Иногда обновляются системы, используемые для сборки портов и пакетов, или появляются новые рекомендации, влияющие на инфраструктуру.
+ Вам следует учитывать эти изменения, если ваши порты затронуты и требуют обновления.
-* *Изменения в базовой системе.* FreeBSD находится в постоянной разработке. Изменения в программном обеспечении, библиотеках, ядре или даже изменения политики могут вызвать каскадные требования к изменениям в портах.
+* *Изменения в базовой системе.* FreeBSD находится в постоянной разработке.
+ Изменения в программном обеспечении, библиотеках, ядре или даже изменения политики могут вызвать каскадные требования к изменениям в портах.
==== Обязанности сопровождающего
@@ -312,7 +317,7 @@ USA
+
[NOTE]
======
-Пожалуйста, не отправляйте архив man:shar[1] всего порта; вместо этого используйте man:git-format-patch[1] или man:diff[1] `-ruN`. Таким образом, коммиттеры смогут гораздо проще увидеть, какие именно изменения были внесены. Раздел extref:{porters-handbook}[Обновление, port-upgrading] в Руководстве портера содержит дополнительную информацию.
+Пожалуйста, не отправляйте архив man:shar[1] всего порта; вместо этого используйте man:git-format-patch[1] или man:diff[1] `-ruN`. Таким образом, коммиттеры смогут гораздо проще увидеть, какие именно изменения были внесены. Раздел extref:{porters-handbook}[Обновление, port-upgrading] в Руководстве FreeBSD по созданию портов содержит дополнительную информацию.
======
. Ждите
+
diff --git a/documentation/content/ru/articles/contributing/_index.po b/documentation/content/ru/articles/contributing/_index.po
index 118ab6104d..cbc6e46b2f 100644
--- a/documentation/content/ru/articles/contributing/_index.po
+++ b/documentation/content/ru/articles/contributing/_index.po
@@ -5,8 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-10-01 20:43+0300\n"
-"PO-Revision-Date: 2025-09-05 04:45+0000\n"
+"POT-Creation-Date: 2024-12-29 08:30-0500\n"
+"PO-Revision-Date: 2025-10-30 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/articlescontributing_index/ru/>\n"
@@ -18,7 +18,7 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/articles/contributing/_index.adoc:1
#, no-wrap
msgid "How to contribute to the FreeBSD Project"
@@ -103,11 +103,11 @@ msgid ""
"in almost any area, can almost certainly help the project."
msgstr ""
"Проект FreeBSD отвечает за целостную операционную среду, а не только за ядро "
-"или несколько разрозненных утилит. Таким образом, наши списки "
-"[.filename]#TODO# охватывают очень широкий спектр задач: от документации, "
-"бета-тестирования и презентаций до установщика системы и "
-"высокоспециализированных видов разработки ядра. Люди с любым уровнем "
-"навыков, практически в любой области, почти наверняка могут помочь проекту."
+"или несколько разрозненных утилит. Таким образом, наши списки [."
+"filename]#TODO# охватывают очень широкий спектр задач: от документации, бета-"
+"тестирования и презентаций до установщика системы и высокоспециализированных "
+"видов разработки ядра. Люди с любым уровнем навыков, практически в любой "
+"области, почти наверняка могут помочь проекту."
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:78
@@ -230,8 +230,8 @@ msgid ""
msgstr ""
"Большинство перечисленных здесь задач может потребовать значительных "
"временных затрат, глубоких знаний о ядре FreeBSD или того и другого. Однако, "
-"есть также множество полезных задач, подходящих для \"хакеров выходного "
-"дня\"."
+"есть также множество полезных задач, подходящих для \"хакеров выходного дня\""
+"."
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:111
@@ -260,12 +260,12 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:115
msgid ""
-"If you know of any bug fixes which have been successfully applied to "
-"-CURRENT but have not been merged into -STABLE after a decent interval "
+"If you know of any bug fixes which have been successfully applied to -"
+"CURRENT but have not been merged into -STABLE after a decent interval "
"(normally a couple of weeks), send the committer a polite reminder."
msgstr ""
-"Если вам известны исправления ошибок, которые были успешно применены в "
-"-CURRENT, но не были перенесены в -STABLE в течение разумного срока (обычно "
+"Если вам известны исправления ошибок, которые были успешно применены в -"
+"CURRENT, но не были перенесены в -STABLE в течение разумного срока (обычно "
"пары недель), отправьте коммиттеру вежливое напоминание."
#. type: Plain text
@@ -291,8 +291,8 @@ msgid ""
msgstr ""
"Соберите дерево исходников (или только его часть) с включенными "
"дополнительными предупреждениями и устраните эти предупреждения. Список "
-"предупреждений при сборке также можно найти в нашем https://"
-"ci.freebsd.org[CI], выбрав сборку и отметив \"LLVM/Clang Warnings\"."
+"предупреждений при сборке также можно найти в нашем https://ci.freebsd."
+"org[CI], выбрав сборку и отметив \"LLVM/Clang Warnings\"."
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:120
@@ -441,8 +441,8 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:155
msgid ""
-"If you have created or adopted a port, be aware of "
-"crossref:contributing[maintain-port, The challenge for port maintainers]."
+"If you have created or adopted a port, be aware of crossref:"
+"contributing[maintain-port, The challenge for port maintainers]."
msgstr ""
"Если вы создали или адаптировали порт, обратите внимание на раздел "
"crossref:contributing[maintain-port, Задача для сопровождающих портов]."
@@ -450,8 +450,8 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:156
msgid ""
-"When you are looking for a quick challenge you could "
-"crossref:contributing[fix-broken, Finding and fixing a broken port]."
+"When you are looking for a quick challenge you could crossref:"
+"contributing[fix-broken, Finding and fixing a broken port]."
msgstr ""
"Если вы ищете быстрый вызов, вы можете crossref:contributing[fix-broken, "
"Найти и исправить сломанный порт]."
@@ -560,8 +560,8 @@ msgid ""
"message[commit log guide]."
msgstr ""
"Каждое логическое изменение — это отдельный коммит в рамках pull request. "
-"Сообщения коммитов для каждого изменения должны соответствовать extref:"
-"{committers-guide}#commit-log-message[руководству по оформлению логов "
+"Сообщения коммитов для каждого изменения должны соответствовать extref"
+":{committers-guide}#commit-log-message[руководству по оформлению логов "
"коммитов]."
#. type: Plain text
@@ -604,8 +604,8 @@ msgid ""
"Certificate of Origin]."
msgstr ""
"Коммиты должны включать одну или несколько строк `Signed-off-by:` с полным "
-"именем и адресом электронной почты, подтверждающими https://"
-"developercertificate.org/[Сертификат происхождения разработчика]."
+"именем и адресом электронной почты, подтверждающими "
+"https://developercertificate.org/[Сертификат происхождения разработчика]."
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:197
@@ -635,8 +635,8 @@ msgstr ""
msgid ""
"Pull requests submitted to the ports repository may or may not see action, "
"based on the whims of developers. For now, you will have a better "
-"experience if you follow the ports submission process "
-"crossref:contributing[ports-contributing, Contributing to ports]."
+"experience if you follow the ports submission process crossref:"
+"contributing[ports-contributing, Contributing to ports]."
msgstr ""
"Запросы на включение изменений, отправленные в репозиторий портов, могут "
"быть обработаны или проигнорированы, в зависимости от настроения "
@@ -667,8 +667,8 @@ msgid ""
"prior to uploading them."
msgstr ""
"Если вы обнаружили ошибку или хотите отправить конкретное изменение, "
-"пожалуйста, сообщите об этом, используя https://bugs.FreeBSD.org/submit/"
-"[форму отправки отчёта об ошибках]. Постарайтесь заполнить каждое поле "
+"пожалуйста, сообщите об этом, используя https://bugs.FreeBSD.org/submit/["
+"форму отправки отчёта об ошибках]. Постарайтесь заполнить каждое поле "
"отчёта. Если патчи не превышают 65 КБ, включите их непосредственно в отчёт. "
"Если патч подходит для применения к исходному дереву, укажите `[PATCH]` в "
"кратком описании отчёта. При включении патчей _не_ используйте копирование и "
@@ -850,8 +850,8 @@ msgid ""
msgstr ""
"Если ваше изменение носит потенциально чувствительный характер, например, "
"если вы не уверены в вопросах авторского права, регулирующих его дальнейшее "
-"распространение, то вам следует отправить его напрямую по адресу {core-"
-"email}, а не подавать как отчёт об ошибке. Письмо на {core-email} достигает "
+"распространение, то вам следует отправить его напрямую по адресу {core-email}"
+", а не подавать как отчёт об ошибке. Письмо на {core-email} достигает "
"гораздо меньшей группы людей, которые выполняют большую часть повседневной "
"работы над FreeBSD. Обратите внимание, что эта группа также _очень занята_, "
"поэтому вам следует писать им только в случае действительной необходимости."
@@ -901,9 +901,9 @@ msgid ""
msgstr ""
"При работе с большими объемами кода неизбежно возникает деликатная тема "
"авторских прав. FreeBSD предпочитает свободные лицензии, такие как BSD или "
-"ISC. Копилефтные лицензии, например GPLv2, иногда допускаются. Полный список "
-"можно найти на странице link:https://www.FreeBSD.org/internal/software-"
-"license/[политики лицензирования основной команды]."
+"ISC. Коплефтные лицензии, например GPLv2, иногда допускаются. Полный список "
+"можно найти на странице link:https://www.FreeBSD.org/internal/"
+"software-license/[политики лицензирования основной команды]."
#. type: Title ===
#: documentation/content/en/articles/contributing/_index.adoc:275
@@ -972,9 +972,8 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:299
msgid ""
-"The FreeBSD Foundation is also able to accept https://"
-"www.freebsdfoundation.org/donate/[online donations] through various payment "
-"options."
+"The FreeBSD Foundation is also able to accept https://www.freebsdfoundation."
+"org/donate/[online donations] through various payment options."
msgstr ""
"Фонд FreeBSD также принимает https://www.freebsdfoundation.org/donate/"
"[онлайн-пожертвования] через различные варианты оплаты."
@@ -982,14 +981,14 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:302
msgid ""
-"More information about the FreeBSD Foundation can be found in https://"
-"people.FreeBSD.org/~jdp/foundation/announcement.html[The FreeBSD Foundation "
-"-- an Introduction]. To contact the Foundation by email, write to "
-"mailto:info@FreeBSDFoundation.org[info@FreeBSDFoundation.org]."
+"More information about the FreeBSD Foundation can be found in https://people."
+"FreeBSD.org/~jdp/foundation/announcement.html[The FreeBSD Foundation -- an "
+"Introduction]. To contact the Foundation by email, write to mailto:"
+"info@FreeBSDFoundation.org[info@FreeBSDFoundation.org]."
msgstr ""
-"Дополнительная информация о Фонде FreeBSD доступна по ссылке https://"
-"people.FreeBSD.org/~jdp/foundation/announcement.html[Фонд FreeBSD — "
-"введение]. Чтобы связаться с Фондом по электронной почте, напишите на "
+"Дополнительная информация о Фонде FreeBSD доступна по ссылке https://people."
+"FreeBSD.org/~jdp/foundation/announcement.html[Фонд FreeBSD — введение]. "
+"Чтобы связаться с Фондом по электронной почте, напишите на "
"mailto:info@FreeBSDFoundation.org[info@FreeBSDFoundation.org]."
#. type: Title ====
@@ -1052,19 +1051,17 @@ msgid ""
msgstr ""
"Неподдерживаемые порты имеют параметр `MAINTAINER`, установленный в "
"`ports@FreeBSD.org`. Многие неподдерживаемые порты могут иметь ожидающие "
-"обновления, это можно увидеть на https://portscout.freebsd.org/"
-"ports@freebsd.org.html[сканере дистрибутивных файлов портов FreeBSD]."
+"обновления, это можно увидеть на https://portscout.freebsd.org/ports@freebsd."
+"org.html[сканере дистрибутивных файлов портов FreeBSD]."
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:325
msgid ""
-"On https://portsfallout.com/fallout?"
-"port=&maintainer=ports%40FreeBSD.org[PortsFallout] can be seen a list of "
-"unmaintained ports with errors."
+"On https://portsfallout.com/fallout?port=&maintainer=ports%40FreeBSD."
+"org[PortsFallout] can be seen a list of unmaintained ports with errors."
msgstr ""
-"На https://portsfallout.com/fallout?"
-"port=&maintainer=ports%40FreeBSD.org[PortsFallout] можно увидеть список "
-"неподдерживаемых портов с ошибками."
+"На https://portsfallout.com/fallout?port=&maintainer=ports%40FreeBSD."
+"org[PortsFallout] можно увидеть список неподдерживаемых портов с ошибками."
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:328
@@ -1082,19 +1079,17 @@ msgstr ""
msgid ""
"You can find out whether or not a port has dependencies or secondary ports "
"by looking at a primary index of ports called [.filename]#INDEX#. (The name "
-"of the file varies by release of FreeBSD; for instance, "
-"[.filename]#INDEX-13#.) Some ports have conditional dependencies that are "
-"not included in a default [.filename]#INDEX# build. We expect you to be "
-"able to recognize such ports by looking through other ports' "
-"[.filename]#Makefile#'s."
+"of the file varies by release of FreeBSD; for instance, [."
+"filename]#INDEX-13#.) Some ports have conditional dependencies that are not "
+"included in a default [.filename]#INDEX# build. We expect you to be able to "
+"recognize such ports by looking through other ports' [.filename]#Makefile#'s."
msgstr ""
"Вы можете узнать, есть ли у порта зависимости или вторичные порты, посмотрев "
"в основной индекс портов под названием [.filename]#INDEX#. (Имя файла может "
-"различаться в зависимости от версии FreeBSD; например, "
-"[.filename]#INDEX-13#.) Некоторые порты имеют условные зависимости, которые "
-"не включены в стандартную сборку [.filename]#INDEX#. Мы ожидаем, что вы "
-"сможете распознать такие порты, просмотрев [.filename]#Makefile# других "
-"портов."
+"различаться в зависимости от версии FreeBSD; например, [."
+"filename]#INDEX-13#.) Некоторые порты имеют условные зависимости, которые не "
+"включены в стандартную сборку [.filename]#INDEX#. Мы ожидаем, что вы сможете "
+"распознать такие порты, просмотрев [.filename]#Makefile# других портов."
#. type: Title ====
#: documentation/content/en/articles/contributing/_index.adoc:333
@@ -1111,9 +1106,9 @@ msgid ""
"you can comfortably handle._"
msgstr ""
"Убедитесь, что вы понимаете раздел crossref:contributing[maintain-port, "
-"Задача для сопровождающих портов]. Также прочитайте extref:{porters-handbook}"
-"[Руководство FreeBSD по созданию портов]. _Пожалуйста, не берите на себя "
-"больше, чем вам комфортно выполнять._"
+"Задача для сопровождающих портов]. Также прочитайте extref:{porters-"
+"handbook}[Руководство FreeBSD по созданию портов]. _Пожалуйста, не берите на "
+"себя больше, чем вам комфортно выполнять._"
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:344
@@ -1200,15 +1195,8 @@ msgstr "Как сопровождающему, вам потребуется у
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:367
-#, fuzzy
-#| msgid ""
-#| "*New software versions and updates.* New versions and updates of existing "
-#| "ported software become available all the time, and these need to be "
-#| "incorporated into the Ports Collection to provide up-to-date software.\n"
-msgid ""
-"*New software versions and updates.* New versions and updates of existing "
-"ported software become available all the time, and these need to be "
-"incorporated into the Ports Collection to provide up-to-date software."
+#, no-wrap
+msgid "*New software versions and updates.* New versions and updates of existing ported software become available all the time, and these need to be incorporated into the Ports Collection to provide up-to-date software.\n"
msgstr ""
"*Новые версии программного обеспечения и обновления.* Новые версии и "
"обновления существующего портированного программного обеспечения появляются "
@@ -1217,15 +1205,8 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:369
-#, fuzzy
-#| msgid ""
-#| "*Changes to dependencies.* If significant changes are made to the "
-#| "dependencies of your port, it may need to be updated so that it will "
-#| "continue to work correctly.\n"
-msgid ""
-"*Changes to dependencies.* If significant changes are made to the "
-"dependencies of your port, it may need to be updated so that it will "
-"continue to work correctly."
+#, no-wrap
+msgid "*Changes to dependencies.* If significant changes are made to the dependencies of your port, it may need to be updated so that it will continue to work correctly.\n"
msgstr ""
"*Изменения в зависимостях.* Если в зависимостях вашего порта были внесены "
"значительные изменения, возможно, его потребуется обновить, чтобы он "
@@ -1233,15 +1214,8 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:371
-#, fuzzy
-#| msgid ""
-#| "*Changes affecting dependent ports.* If other ports depend on a port that "
-#| "you maintain, changes to your port may require coordination with other "
-#| "maintainers.\n"
-msgid ""
-"*Changes affecting dependent ports.* If other ports depend on a port that "
-"you maintain, changes to your port may require coordination with other "
-"maintainers."
+#, no-wrap
+msgid "*Changes affecting dependent ports.* If other ports depend on a port that you maintain, changes to your port may require coordination with other maintainers.\n"
msgstr ""
"*Изменения, затрагивающие зависимые порты.* Если другие порты зависят от "
"порта, который вы поддерживаете, изменения в вашем порте могут потребовать "
@@ -1249,19 +1223,10 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:374
-#, fuzzy
-#| msgid ""
-#| "*Interaction with other users, maintainers and developers.* Part of being "
-#| "a maintainer is taking on a support role.\n"
-#| "You are not expected to provide general support (but we welcome it if you "
-#| "choose to do so). What you should provide is a point of coordination for "
-#| "FreeBSD-specific issues regarding your ports.\n"
-msgid ""
-"*Interaction with other users, maintainers and developers.* Part of being a "
-"maintainer is taking on a support role. You are not expected to provide "
-"general support (but we welcome it if you choose to do so). What you should "
-"provide is a point of coordination for FreeBSD-specific issues regarding "
-"your ports."
+#, no-wrap
+msgid ""
+"*Interaction with other users, maintainers and developers.* Part of being a maintainer is taking on a support role.\n"
+"You are not expected to provide general support (but we welcome it if you choose to do so). What you should provide is a point of coordination for FreeBSD-specific issues regarding your ports.\n"
msgstr ""
"*Взаимодействие с другими пользователями, сопровождающими и разработчиками.* "
"Часть обязанностей сопровождающего включает в себя поддержку.\n"
@@ -1271,19 +1236,11 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:378
-#, fuzzy
-#| msgid ""
-#| "*Bug hunting.* A port may be affected by bugs which are specific to "
-#| "FreeBSD.\n"
-#| "You will need to investigate, find, and fix these bugs when they are "
-#| "reported.\n"
-#| "Thoroughly testing a port to identify problems before they make their way "
-#| "into the Ports Collection is even better.\n"
-msgid ""
-"*Bug hunting.* A port may be affected by bugs which are specific to "
-"FreeBSD. You will need to investigate, find, and fix these bugs when they "
-"are reported. Thoroughly testing a port to identify problems before they "
-"make their way into the Ports Collection is even better."
+#, no-wrap
+msgid ""
+"*Bug hunting.* A port may be affected by bugs which are specific to FreeBSD.\n"
+"You will need to investigate, find, and fix these bugs when they are reported.\n"
+"Thoroughly testing a port to identify problems before they make their way into the Ports Collection is even better.\n"
msgstr ""
"*Поиск ошибок.* Порт может быть подвержен ошибкам, специфичным для FreeBSD.\n"
"Вам потребуется исследовать, находить и исправлять эти ошибки при их "
@@ -1293,18 +1250,10 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:381
-#, fuzzy
-#| msgid ""
-#| "*Changes to ports infrastructure and policy.* Occasionally the systems "
-#| "that are used to build ports and packages are updated or a new "
-#| "recommendation affecting the infrastructure is made.\n"
-#| "You should be aware of these changes in case your ports are affected and "
-#| "require updating.\n"
-msgid ""
-"*Changes to ports infrastructure and policy.* Occasionally the systems that "
-"are used to build ports and packages are updated or a new recommendation "
-"affecting the infrastructure is made. You should be aware of these changes "
-"in case your ports are affected and require updating."
+#, no-wrap
+msgid ""
+"*Changes to ports infrastructure and policy.* Occasionally the systems that are used to build ports and packages are updated or a new recommendation affecting the infrastructure is made.\n"
+"You should be aware of these changes in case your ports are affected and require updating.\n"
msgstr ""
"*Изменения в инфраструктуре и политике портов.* Иногда обновляются системы, "
"используемые для сборки портов и пакетов, или появляются новые рекомендации, "
@@ -1314,15 +1263,10 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:384
-#, fuzzy
-#| msgid ""
-#| "*Changes to the base system.* FreeBSD is under constant development.\n"
-#| "Changes to software, libraries, the kernel or even policy changes can "
-#| "cause flow-on change requirements to ports.\n"
+#, no-wrap
msgid ""
-"*Changes to the base system.* FreeBSD is under constant development. "
-"Changes to software, libraries, the kernel or even policy changes can cause "
-"flow-on change requirements to ports."
+"*Changes to the base system.* FreeBSD is under constant development.\n"
+"Changes to software, libraries, the kernel or even policy changes can cause flow-on change requirements to ports.\n"
msgstr ""
"*Изменения в базовой системе.* FreeBSD находится в постоянной разработке.\n"
"Изменения в программном обеспечении, библиотеках, ядре или даже изменения "
@@ -1432,9 +1376,9 @@ msgstr ""
#: documentation/content/en/articles/contributing/_index.adoc:418
msgid ""
"Make sure your port's dependencies are complete. The recommended way of "
-"doing this is by installing your own ports tinderbox. See "
-"crossref:contributing[resources, Resources for ports maintainers and "
-"contributors] for more information."
+"doing this is by installing your own ports tinderbox. See crossref:"
+"contributing[resources, Resources for ports maintainers and contributors] "
+"for more information."
msgstr ""
"Убедитесь, что зависимости вашего порта полные. Рекомендуемый способ сделать "
"это — установить собственный tinderbox для портов. Дополнительную информацию "
@@ -1453,9 +1397,9 @@ msgstr ""
#. type: delimited block = 4
#: documentation/content/en/articles/contributing/_index.adoc:422
msgid ""
-"Verify your port using man:portlint[1] as a guide. See "
-"crossref:contributing[resources, Resources for ports maintainers and "
-"contributors] for important information about using portlint."
+"Verify your port using man:portlint[1] as a guide. See crossref:"
+"contributing[resources, Resources for ports maintainers and contributors] "
+"for important information about using portlint."
msgstr ""
"Проверьте ваш порт, используя man:portlint[1] в качестве помощника. См. "
"crossref:contributing[resources, Ресурсы для сопровождающих и участников "
@@ -1475,8 +1419,8 @@ msgstr ""
"портах. Если это так, согласуйте изменения с их сопровождающими. Это "
"особенно важно, если ваше обновление изменяет версию разделяемой библиотеки; "
"в этом случае, как минимум, зависимые порты должны получить увеличение "
-"`PORTREVISION`, чтобы автоматизированные инструменты, такие как "
-"package:ports-mgmt/poudriere[], могли их обновить."
+"`PORTREVISION`, чтобы автоматизированные инструменты, такие как package"
+":ports-mgmt/poudriere[], могли их обновить."
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:427
@@ -1510,7 +1454,7 @@ msgstr ""
"используйте man:git-format-patch[1] или man:diff[1] `-ruN`. Таким образом, "
"коммиттеры смогут гораздо проще увидеть, какие именно изменения были "
"внесены. Раздел extref:{porters-handbook}[Обновление, port-upgrading] в "
-"Руководстве портера содержит дополнительную информацию."
+"Руководстве FreeBSD по созданию портов содержит дополнительную информацию."
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:438
@@ -1527,8 +1471,8 @@ msgid ""
msgstr ""
"На каком-то этапе коммиттер рассмотрит ваш PR. Это может занять минуты, а "
"может и одну-две недели — так что проявите терпение. Если это займет больше "
-"времени, обратитесь за помощью в почтовые рассылки ({freebsd-ports}), IRC: "
-"#bsdports на EFNet или #freebsd-ports на Libera, например."
+"времени, обратитесь за помощью в почтовые рассылки ({freebsd-ports}), IRC: #"
+"bsdports на EFNet или #freebsd-ports на Libera, например."
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:443
@@ -1585,8 +1529,8 @@ msgid ""
"release of each stable branch (since the ABIs are not supposed to change) "
"but if you can run the branch, that is even better."
msgstr ""
-"FreeBSD гарантирует работоспособность Коллекции портов только в ветках `-"
-"STABLE`. Теоретически можно обойтись использованием последних выпусков "
+"FreeBSD гарантирует работоспособность Коллекции портов только в ветках "
+"`-STABLE`. Теоретически можно обойтись использованием последних выпусков "
"каждой стабильной ветки (поскольку ABI не должны меняться), но если есть "
"возможность использовать саму ветку, это ещё лучше."
@@ -1599,8 +1543,8 @@ msgid ""
"architecture running native. It is completely fair to ask for help if you "
"do not have one of these machines."
msgstr ""
-"Поскольку большинство установок FreeBSD работают на PC-совместимых машинах "
-"(так называемая архитектура `i386`), мы ожидаем, что порт будет работать на "
+"Поскольку большинство установок FreeBSD работают на PC-совместимых машинах ("
+"так называемая архитектура `i386`), мы ожидаем, что порт будет работать на "
"этой архитектуре. Мы предпочитаем, чтобы порты также работали на архитектуре "
"`amd64` в нативном режиме. Совершенно допустимо попросить о помощи, если у "
"вас нет одной из таких машин."
@@ -1643,9 +1587,9 @@ msgid ""
"portscout.FreeBSD.org[distfiles scanner] to see if any of the port which are "
"failing to build are out of date."
msgstr ""
-"Проверьте свою почту на наличие писем от `pkg-fallout@FreeBSD.org` и http://"
-"portscout.FreeBSD.org[сканера distfiles], чтобы узнать, не устарели ли какие-"
-"либо порты, которые не собираются."
+"Проверьте свою почту на наличие писем от `pkg-fallout@FreeBSD.org` и "
+"http://portscout.FreeBSD.org[сканера distfiles], чтобы узнать, не устарели "
+"ли какие-либо порты, которые не собираются."
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:478
@@ -1676,8 +1620,8 @@ msgstr "Логи сборки"
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:485
msgid ""
-"The commands and options used to build the port (including options set in "
-"[.filename]#/etc/make.conf#)"
+"The commands and options used to build the port (including options set in [."
+"filename]#/etc/make.conf#)"
msgstr ""
"Команды и параметры, используемые для сборки порта (включая параметры, "
"установленные в [.filename]#/etc/make.conf#)"
@@ -1686,8 +1630,7 @@ msgstr ""
#: documentation/content/en/articles/contributing/_index.adoc:486
msgid ""
"A list of packages installed on their system as shown by man:pkg-info[8]"
-msgstr ""
-"Список пакетов, установленных в системе, как показано в man:pkg-info[8]"
+msgstr "Список пакетов, установленных в системе, как показано в man:pkg-info[8]"
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:487
@@ -1799,9 +1742,9 @@ msgid ""
"search/[Problem Report database]. Bugs may also be reported directly to you "
"by users."
msgstr ""
-"Ошибки могут быть сообщены вам по электронной почте через https://"
-"bugs.FreeBSD.org/search/[базу данных отчетов о проблемах]. Также "
-"пользователи могут сообщать об ошибках напрямую вам."
+"Ошибки могут быть сообщены вам по электронной почте через https://bugs."
+"FreeBSD.org/search/[базу данных отчетов о проблемах]. Также пользователи "
+"могут сообщать об ошибках напрямую вам."
#. type: Plain text
#: documentation/content/en/articles/contributing/_index.adoc:524
@@ -2018,8 +1961,8 @@ msgid ""
"for you in the future :-)."
msgstr ""
"Если вы сможете дать им почувствовать, что их вклад ценится (а так и должно "
-"быть), у вас будет больше шансов убедить их сделать для вас больше в "
-"будущем :-)."
+"быть), у вас будет больше шансов убедить их сделать для вас больше в будущем "
+":-)."
#. type: Title ===
#: documentation/content/en/articles/contributing/_index.adoc:582
@@ -2161,11 +2104,11 @@ msgid ""
"on your own ports or use it to find ports that need their `MASTER_SITES` "
"updated."
msgstr ""
-"Сканер дистрибутивных файлов портов FreeBSD (portscout) http://"
-"portscout.FreeBSD.org[FreeBSD Ports distfile scanner (portscout)] может "
-"показать вам порты, для которых дистрибутивные файлы недоступны для "
-"загрузки. Вы можете проверить свои собственные порты или использовать его "
-"для поиска портов, которым требуется обновление `MASTER_SITES`."
+"Сканер дистрибутивных файлов портов FreeBSD (portscout) http://portscout."
+"FreeBSD.org[FreeBSD Ports distfile scanner (portscout)] может показать вам "
+"порты, для которых дистрибутивные файлы недоступны для загрузки. Вы можете "
+"проверить свои собственные порты или использовать его для поиска портов, "
+"которым требуется обновление `MASTER_SITES`."
#. type: delimited block = 4
#: documentation/content/en/articles/contributing/_index.adoc:628
@@ -2193,8 +2136,8 @@ msgstr ""
"соответствия вашего порта многим важным стилистическим и функциональным "
"рекомендациям. portlint — это простое эвристическое приложение, поэтому его "
"следует использовать __только в качестве ориентира__. Если portlint "
-"предлагает изменения, которые кажутся необоснованными, обратитесь к extref:"
-"{porters-handbook}[Руководству портировщика] или попросите совета."
+"предлагает изменения, которые кажутся необоснованными, обратитесь к extref"
+":{porters-handbook}[Руководству портировщика] или попросите совета."
#. type: delimited block = 4
#: documentation/content/en/articles/contributing/_index.adoc:637
@@ -2205,8 +2148,8 @@ msgid ""
"ports-bugs} and the {svn-ports-head} may also be of interest."
msgstr ""
"{freebsd-ports} предназначен для общих обсуждений, связанных с портами. Это "
-"хорошее место для поиска помощи. Вы можете link:https://lists.freebsd.org/"
-"[subscribe, читать и искать в архивах списка]. Также может быть полезно "
+"хорошее место для поиска помощи. Вы можете link:https://lists.freebsd.org/["
+"subscribe, читать и искать в архивах списка]. Также может быть полезно "
"ознакомиться с архивами {freebsd-ports-bugs} и {svn-ports-head}."
#. type: delimited block = 4
diff --git a/documentation/content/ru/articles/contributors/_index.adoc b/documentation/content/ru/articles/contributors/_index.adoc
index 47929df034..9b05ab3cc7 100644
--- a/documentation/content/ru/articles/contributors/_index.adoc
+++ b/documentation/content/ru/articles/contributors/_index.adoc
@@ -60,9 +60,7 @@ endif::[]
[.abstract-title]
Аннотация
-В этой статье перечислены люди и организации, внесшие вклад в FreeBSD. Чтобы
-увидеть текущий список коммиттеров FreeBSD, можно ознакомиться со следующим
-разделом: crossref:contributors[staff-committers, список].
+В этой статье перечислены люди и организации, внесшие вклад в FreeBSD. Чтобы увидеть текущий список коммиттеров FreeBSD, можно ознакомиться со следующим разделом: crossref:contributors[staff-committers, список].
'''
@@ -71,11 +69,7 @@ toc::[]
[[staff-committers]]
== Разработчики FreeBSD
-Этот список, включающий всех членов Основной Команды (Core Team), содержит
-имена всех, у кого есть права на коммит в одном или нескольких из трёх
-деревьев исходников (doc, ports и src). Текущий состав основной команды
-можно посмотреть на
-link:https://www.freebsd.org/administration/#t-core[странице администрации].
+Этот список, включающий всех членов Основной Команды (Core Team), содержит имена всех, у кого есть права на коммит в одном или нескольких из трёх деревьев исходников (doc, ports и src). Текущий состав основной команды можно посмотреть на link:https://www.freebsd.org/administration/#t-core[странице администрации].
(в алфавитном порядке по фамилии):
@@ -84,8 +78,7 @@ include::{include-contrib-committers}[]
[[contrib-corealumni]]
== Бывшие участники основной команды (Core Team)
-Следующие люди были членами основной команды FreeBSD в указанные периоды. Мы
-благодарим их за прошлые усилия на благо проекта FreeBSD.
+Следующие люди были членами основной команды FreeBSD в указанные периоды. Мы благодарим их за прошлые усилия на благо проекта FreeBSD.
_В приблизительном обратном хронологическом порядке:_
@@ -94,8 +87,7 @@ include::{include-contrib-corealumni}[]
[[contrib-develalumni]]
== Бывшие участники команды разработчиков
-Следующие люди были членами команды разработчиков FreeBSD в указанные
-периоды. Мы благодарим их за прошлые усилия на благо проекта FreeBSD.
+Следующие люди были членами команды разработчиков FreeBSD в указанные периоды. Мы благодарим их за прошлые усилия на благо проекта FreeBSD.
_В приблизительном обратном хронологическом порядке:_
@@ -104,8 +96,7 @@ include::{include-contrib-develalumni}[]
[[contrib-portmgralumni]]
== Команда управления портами: бывшие участники
-Следующие люди были членами команды portmgr FreeBSD в указанные периоды. Мы
-благодарим их за прошлые усилия на службе проекта FreeBSD.
+Следующие люди были членами команды portmgr FreeBSD в указанные периоды. Мы благодарим их за прошлые усилия на службе проекта FreeBSD.
_В приблизительном обратном хронологическом порядке:_
@@ -114,8 +105,7 @@ include::{include-contrib-portmgralumni}[]
[[contrib-develinmemoriam]]
== Команда разработчиков: Памяти ушедших
-В течение многих лет существования проекта FreeBSD, к сожалению, некоторые
-из наших разработчиков ушли из жизни. Вот несколько воспоминаний.
+В течение многих лет существования проекта FreeBSD, к сожалению, некоторые из наших разработчиков ушли из жизни. Вот несколько воспоминаний.
_В приблизительном обратном хронологическом порядке их ухода:_
@@ -124,16 +114,9 @@ include::{include-path}contrib-develinmemoriam.adoc[]
[[contrib-derived]]
== Участники разработки производного программного обеспечения
-Это программное обеспечение изначально было получено из релиза 386BSD 0.1
-Уильяма Ф. Джолитца, хотя почти ни один из оригинальных фрагментов кода,
-специфичных для 386BSD, не сохранился. Данное программное обеспечение было
-практически полностью переработано на основе релиза 4.4BSD-Lite,
-предоставленного Исследовательской группой компьютерных наук (CSRG)
-Калифорнийского университета в Беркли и связанными с ней академическими
-участниками.
+Это программное обеспечение изначально было получено из релиза 386BSD 0.1 Уильяма Ф. Джолитца, хотя почти ни один из оригинальных фрагментов кода, специфичных для 386BSD, не сохранился. Данное программное обеспечение было практически полностью переработано на основе релиза 4.4BSD-Lite, предоставленного Исследовательской группой компьютерных наук (CSRG) Калифорнийского университета в Беркли и связанными с ней академическими участниками.
-В FreeBSD также включены части NetBSD и OpenBSD, поэтому мы хотели бы
-поблагодарить всех участников разработки NetBSD и OpenBSD за их труд.
+В FreeBSD также включены части NetBSD и OpenBSD, поэтому мы хотели бы поблагодарить всех участников разработки NetBSD и OpenBSD за их труд.
[[contrib-additional]]
== Дополнительные участники проекта FreeBSD
@@ -152,13 +135,9 @@ include::{include-contrib-386bsd}[]
[[donors]]
== Галерея доноров
-Фонд FreeBSD благодарит
-https://freebsdfoundation.org/our-donors/donors/[финансовых доноров и
-доноров оборудования].
+Фонд FreeBSD благодарит https://freebsdfoundation.org/our-donors/donors/[финансовых доноров и доноров оборудования].
-https://www.freebsd.org/donations/[FreeBSD Donations Liaison] включает
-https://www.freebsd.org/donations/donors/[список пожертвованного
-оборудования].
+https://www.freebsd.org/donations/[FreeBSD Donations Liaison] включает https://www.freebsd.org/donations/donors/[список пожертвованного оборудования].
Проект FreeBSD благодарит всех предоставивших помощь!
@@ -169,29 +148,19 @@ https://www.freebsd.org/donations/donors/[список пожертвованн
=== Участники проекта центрального сервера
-Следующие частные лица и компании сделали возможным для проекта FreeBSD
-создание нового центрального серверного оборудования, которое в определённый
-момент заменило `freefall.FreeBSD.org`, пожертвовав следующие компоненты:
-
-* {mbarkah} и его работодатель, http://www.hemi.com/[Hemisphere Online],
- пожертвовали процессор _Pentium Pro (P6) 200 МГц_.
-* http://www.asacomputers.com/[ASA Computers] подарили _материнскую плату Tyan
- 1662_.
-* Джо МакГакин <mailto:joe@via.net[joe@via.net]> из http://www.via.net/[ViaNet
- Communications] пожертвовал _контроллер Ethernet от Kingston_.
-* Джек О'Нил <mailto:jack@diamond.xtalwind.net[jack@diamond.xtalwind.net]>
- пожертвовал _SCSI-контроллер NCR 53C875_.
-* Ульф Циммерманн <mailto:ulf@Alameda.net[ulf@Alameda.net]> из
- http://www.Alameda.net/[Alameda Networks] пожертвовал _128 МБ памяти_, _4 ГБ
- жёсткого диска и корпус_.
+Следующие частные лица и компании сделали возможным для проекта FreeBSD создание нового центрального серверного оборудования, которое в определённый момент заменило `freefall.FreeBSD.org`, пожертвовав следующие компоненты:
+
+* {mbarkah} и его работодатель, http://www.hemi.com/[Hemisphere Online], пожертвовали процессор _Pentium Pro (P6) 200 МГц_.
+* http://www.asacomputers.com/[ASA Computers] подарили _материнскую плату Tyan 1662_.
+* Джо МакГакин <mailto:joe@via.net[joe@via.net]> из http://www.via.net/[ViaNet Communications] пожертвовал _контроллер Ethernet от Kingston_.
+* Джек О'Нил <mailto:jack@diamond.xtalwind.net[jack@diamond.xtalwind.net]> пожертвовал _SCSI-контроллер NCR 53C875_.
+* Ульф Циммерманн <mailto:ulf@Alameda.net[ulf@Alameda.net]> из http://www.Alameda.net/[Alameda Networks] пожертвовал _128 МБ памяти_, _4 ГБ жёсткого диска и корпус_.
=== Прямое финансирование
-Следующие частные лица и компании щедро внесли прямые финансовые вклады в
-проект:
+Следующие частные лица и компании щедро внесли прямые финансовые вклады в проект:
-* Annelise Anderson
- <mailto:andrsn@hoover.stanford.edu[andrsn@hoover.stanford.edu]>.
+* Annelise Anderson <mailto:andrsn@hoover.stanford.edu[andrsn@hoover.stanford.edu]>.
* {dillon}.
* http://www.bluemountain.com/[Blue Mountain Arts].
* http://www.epilogue.com/[Epilogue Technology Corporation].
@@ -202,82 +171,35 @@ https://www.freebsd.org/donations/donors/[список пожертвованн
* Josef C. Grosch <mailto:joeg@truenorth.org[joeg@truenorth.org]>.
* Robert T. Morris.
* {chuckr}.
-* Кеннет П. Стокс <mailto:ken@stox.sa.enteract.com[ken@stox.sa.enteract.com]>
- из http://www.imagescape.com/[Imaginary Landscape, LLC.].
+* Кеннет П. Стокс <mailto:ken@stox.sa.enteract.com[ken@stox.sa.enteract.com]> из http://www.imagescape.com/[Imaginary Landscape, LLC.].
* Dmitry S. Kohmanyuk <mailto:dk@dog.farm.org[dk@dog.farm.org]>.
-* http://www.cdrom.co.jp/[Laser5] из Японии (часть прибыли от продаж их
- различных FreeBSD CDROM идет на поддержку проекта).
-* http://www.mmjp.or.jp/fuki/[Fuki Shuppan Publishing Co.] пожертвовала часть
- прибыли от книги _Hajimete no FreeBSD_ (FreeBSD, начало работы) проектам
- FreeBSD и XFree86.
-* http://www.ascii.co.jp/[ASCII Corp.] пожертвовала часть прибыли от
- нескольких книг, связанных с FreeBSD, проекту FreeBSD.
-* http://www.yokogawa.co.jp/[Yokogawa Electric Corp] щедро предоставила
- значительное финансирование проекту FreeBSD.
+* http://www.cdrom.co.jp/[Laser5] из Японии (часть прибыли от продаж их различных FreeBSD CDROM идет на поддержку проекта).
+* http://www.mmjp.or.jp/fuki/[Fuki Shuppan Publishing Co.] пожертвовала часть прибыли от книги _Hajimete no FreeBSD_ (FreeBSD, начало работы) проектам FreeBSD и XFree86.
+* http://www.ascii.co.jp/[ASCII Corp.] пожертвовала часть прибыли от нескольких книг, связанных с FreeBSD, проекту FreeBSD.
+* http://www.yokogawa.co.jp/[Yokogawa Electric Corp] щедро предоставила значительное финансирование проекту FreeBSD.
* http://www.buffnet.net/[BuffNET].
* http://www.pacificsolutions.com/[Pacific Solutions].
-* http://www.siemens.de/[Siemens AG] via Andre Albsmeier
- <mailto:andre.albsmeier@mchp.siemens.de[andre.albsmeier@mchp.siemens.de]>.
+* http://www.siemens.de/[Siemens AG] via Andre Albsmeier <mailto:andre.albsmeier@mchp.siemens.de[andre.albsmeier@mchp.siemens.de]>.
* Chris Silva <mailto:ras@interaccess.com[ras@interaccess.com]>.
=== Участники разработки аппаратного обеспечения
-Следующие частные лица и компании любезно предоставили оборудование для
-тестирования и разработки/поддержки драйверов устройств:
-
-* BSDi за предоставление систем Pentium P5-90 и 486/DX2-66 EISA/VL, которые
- используются в нашей разработке, не говоря уже о сетевом доступе и других
- пожертвованиях аппаратных ресурсов.
-* http://www.compaq.com[Compaq] пожертвовал FreeBSD Project разнообразные
- системы Alpha. Среди множества щедрых пожертвований — 4 AlphaStation DS10,
- AlphaServer DS20, AlphaServer 2100, AlphaServer 4100, 8 персональных рабочих
- станций с частотой 500 МГц, 4 персональные рабочие станции с частотой 433
- МГц и многое другое! Эти машины используются для сборки релизов, создания
- пакетов, разработки SMP и общей разработки архитектуры Alpha.
-* TRW Financial Systems, Inc. предоставила 130 ПК, три файловых сервера по 68
- ГБ, двенадцать сетей Ethernet, два маршрутизатора и коммутатор ATM для
- отладки кода бездисковой системы
-* Дермот МакДоннелл предоставил привод CDROM Toshiba XM3401B, который в
- настоящее время используется в _freefall_.
-* Чак Роби <mailto:chuckr@glue.umd.edu[chuckr@glue.umd.edu]> предоставил свой
- потоковый накопитель на гибких дисках для экспериментальной работы.
-* Ларри Альтной <mailto:larry@alr.com[larry@alr.com],> и {wilko} предоставили
- стримеры Wangtek и Archive QIC-02 для улучшения драйвера [.filename]#wt#.
-* Эрнст Винтер (http://berklix.org/ewinter/[Умер]) предоставил проекту
- дисковод на 2,88 МБ. Надеемся, это усилит внимание к необходимости
- переписать драйвер для дискет.
-* http://www.tekram.com/[Tekram Technologies] предоставили по одному
- экземпляру своих SCSI-адаптеров DC-390, DC-390U и DC-390F FAST и ULTRA для
- регрессионного тестирования драйверов NCR и AMD с их картами. Также их стоит
- похвалить за предоставление исходных кодов драйверов для свободных
- операционных систем на их FTP-сервере
- link:ftp://ftp.tekram.com/scsi/FreeBSD/[ftp://ftp.tekram.com/scsi/FreeBSD/].
-* Ларри М. Аугустин предоставил не только SCSI-карту Symbios Sym8751S, но и
- набор технической документации, включая руководство по предстоящему чипу
- Sym53c895 с поддержкой Ultra-2 и LVD, а также последнюю версию руководства
- по программированию с информацией о безопасном использовании расширенных
- функций новейших SCSI-чипов Symbios. Большое спасибо!
-* {kuku} пожертвовал FX120 12-скоростной Mitsumi CD-ROM привод для разработки
- драйвера IDE CD-ROM.
-* Mike Tancsa <mailto:mike@sentex.ca[mike@sentex.ca]> пожертвовал четыре
- различные PCI-карты ATM для расширения поддержки этих карт, а также для
- помощи в разработке стека netatm ATM.
+Следующие частные лица и компании любезно предоставили оборудование для тестирования и разработки/поддержки драйверов устройств:
+
+* BSDi за предоставление систем Pentium P5-90 и 486/DX2-66 EISA/VL, которые используются в нашей разработке, не говоря уже о сетевом доступе и других пожертвованиях аппаратных ресурсов.
+* http://www.compaq.com[Compaq] пожертвовал FreeBSD Project разнообразные системы Alpha. Среди множества щедрых пожертвований — 4 AlphaStation DS10, AlphaServer DS20, AlphaServer 2100, AlphaServer 4100, 8 персональных рабочих станций с частотой 500 МГц, 4 персональные рабочие станции с частотой 433 МГц и многое другое! Эти машины используются для сборки релизов, создания пакетов, разработки SMP и общей разработки архитектуры Alpha.
+* TRW Financial Systems, Inc. предоставила 130 ПК, три файловых сервера по 68 ГБ, двенадцать сетей Ethernet, два маршрутизатора и коммутатор ATM для отладки кода бездисковой системы
+* Дермот МакДоннелл предоставил привод CDROM Toshiba XM3401B, который в настоящее время используется в _freefall_.
+* Чак Роби <mailto:chuckr@glue.umd.edu[chuckr@glue.umd.edu]> предоставил свой потоковый накопитель на гибких дисках для экспериментальной работы.
+* Ларри Альтной <mailto:larry@alr.com[larry@alr.com],> и {wilko} предоставили стримеры Wangtek и Archive QIC-02 для улучшения драйвера [.filename]#wt#.
+* Эрнст Винтер (http://berklix.org/ewinter/[Умер]) предоставил проекту дисковод на 2,88 МБ. Надеемся, это усилит внимание к необходимости переписать драйвер для дискет.
+* http://www.tekram.com/[Tekram Technologies] предоставили по одному экземпляру своих SCSI-адаптеров DC-390, DC-390U и DC-390F FAST и ULTRA для регрессионного тестирования драйверов NCR и AMD с их картами. Также их стоит похвалить за предоставление исходных кодов драйверов для свободных операционных систем на их FTP-сервере link:ftp://ftp.tekram.com/scsi/FreeBSD/[ftp://ftp.tekram.com/scsi/FreeBSD/].
+* Ларри М. Аугустин предоставил не только SCSI-карту Symbios Sym8751S, но и набор технической документации, включая руководство по предстоящему чипу Sym53c895 с поддержкой Ultra-2 и LVD, а также последнюю версию руководства по программированию с информацией о безопасном использовании расширенных функций новейших SCSI-чипов Symbios. Большое спасибо!
+* {kuku} пожертвовал FX120 12-скоростной Mitsumi CD-ROM привод для разработки драйвера IDE CD-ROM.
+* Mike Tancsa <mailto:mike@sentex.ca[mike@sentex.ca]> пожертвовал четыре различные PCI-карты ATM для расширения поддержки этих карт, а также для помощи в разработке стека netatm ATM.
=== Особые участники
-* http://www.osd.bsdi.com/[BSDi] (ранее Walnut Creek CDROM) пожертвовали
- больше, чем мы можем выразить (подробности см. в разделе 'О проекте FreeBSD'
- extref:{handbook}[FreeBSD Handbook]). В частности, мы хотели бы
- поблагодарить их за первоначальное оборудование, использованное для
- `freefall.FreeBSD.org`, нашей основной машины разработки, и для
- `thud.FreeBSD.org`, тестовой и сборочной системы. Мы также благодарны им за
- финансирование различных участников на протяжении многих лет и
- предоставление неограниченного доступа к их T1-подключению к Интернету.
-* Компания http://www.interface-business.de/[interface business GmbH, Дрезден]
- терпеливо поддерживала {joerg}, который часто отдавал предпочтение работе с
- FreeBSD вместо оплачиваемой работы и использовал их (довольно дорогое)
- интернет-подключение EUnet, когда его личное соединение становилось слишком
- медленным или ненадежным для работы.
-* http://www.bsdi.com/[Berkeley Software Design, Inc.] предоставила свой код
- эмулятора DOS для остального мира BSD, который используется в команде
- `doscmd`.
+* http://www.osd.bsdi.com/[BSDi] (ранее Walnut Creek CDROM) пожертвовали больше, чем мы можем выразить (подробности см. в разделе 'О проекте FreeBSD' extref:{handbook}[FreeBSD Handbook]). В частности, мы хотели бы поблагодарить их за первоначальное оборудование, использованное для `freefall.FreeBSD.org`, нашей основной машины разработки, и для `thud.FreeBSD.org`, тестовой и сборочной системы. Мы также благодарны им за финансирование различных участников на протяжении многих лет и предоставление неограниченного доступа к их T1-подключению к Интернету.
+* Компания http://www.interface-business.de/[interface business GmbH, Дрезден] терпеливо поддерживала {joerg}, который часто отдавал предпочтение работе с FreeBSD вместо оплачиваемой работы и использовал их (довольно дорогое) интернет-подключение EUnet, когда его личное соединение становилось слишком медленным или ненадежным для работы.
+* http://www.bsdi.com/[Berkeley Software Design, Inc.] предоставила свой код эмулятора DOS для остального мира BSD, который используется в команде `doscmd`.
diff --git a/documentation/content/ru/articles/contributors/_index.po b/documentation/content/ru/articles/contributors/_index.po
index d8e9eed000..8127fae338 100644
--- a/documentation/content/ru/articles/contributors/_index.po
+++ b/documentation/content/ru/articles/contributors/_index.po
@@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-09-22 20:54+0300\n"
+"POT-Creation-Date: 2024-09-14 14:59-0300\n"
"PO-Revision-Date: 2025-08-11 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
@@ -18,7 +18,7 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/articles/contributors/_index.adoc:1
#, no-wrap
msgid "A list of organizations and individuals who have contributed to FreeBSD"
@@ -70,8 +70,8 @@ msgstr ""
"Этот список, включающий всех членов Основной Команды (Core Team), содержит "
"имена всех, у кого есть права на коммит в одном или нескольких из трёх "
"деревьев исходников (doc, ports и src). Текущий состав основной команды "
-"можно посмотреть на link:https://www.freebsd.org/administration/#t-"
-"core[странице администрации]."
+"можно посмотреть на link:https://www.freebsd.org/administration/#t-core["
+"странице администрации]."
#. type: Plain text
#: documentation/content/en/articles/contributors/_index.adoc:78
@@ -216,8 +216,8 @@ msgid ""
"The FreeBSD Foundation thanks https://freebsdfoundation.org/our-donors/"
"donors/[financial and in-kind donors]."
msgstr ""
-"Фонд FreeBSD благодарит https://freebsdfoundation.org/our-donors/donors/"
-"[финансовых доноров и доноров оборудования]."
+"Фонд FreeBSD благодарит https://freebsdfoundation.org/our-donors/donors/["
+"финансовых доноров и доноров оборудования]."
#. type: Plain text
#: documentation/content/en/articles/contributors/_index.adoc:149
@@ -251,8 +251,8 @@ msgstr "Участники проекта центрального сервер
#: documentation/content/en/articles/contributors/_index.adoc:160
msgid ""
"The following individuals and businesses made it possible for the FreeBSD "
-"Project to build a new central server machine, which has replaced "
-"`freefall.FreeBSD.org` at one point, by donating the following items:"
+"Project to build a new central server machine, which has replaced `freefall."
+"FreeBSD.org` at one point, by donating the following items:"
msgstr ""
"Следующие частные лица и компании сделали возможным для проекта FreeBSD "
"создание нового центрального серверного оборудования, которое в определённый "
@@ -297,13 +297,13 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/contributors/_index.adoc:166
msgid ""
-"Ulf Zimmermann <mailto:ulf@Alameda.net[ulf@Alameda.net]> of http://"
-"www.Alameda.net/[Alameda Networks] donated _128MB of memory_, a _4 Gb disk "
-"drive and the case_."
+"Ulf Zimmermann <mailto:ulf@Alameda.net[ulf@Alameda.net]> of http://www."
+"Alameda.net/[Alameda Networks] donated _128MB of memory_, a _4 Gb disk drive "
+"and the case_."
msgstr ""
-"Ульф Циммерманн <mailto:ulf@Alameda.net[ulf@Alameda.net]> из http://"
-"www.Alameda.net/[Alameda Networks] пожертвовал _128 МБ памяти_, _4 ГБ "
-"жёсткого диска и корпус_."
+"Ульф Циммерманн <mailto:ulf@Alameda.net[ulf@Alameda.net]> из http://www."
+"Alameda.net/[Alameda Networks] пожертвовал _128 МБ памяти_, _4 ГБ жёсткого "
+"диска и корпус_."
#. type: Title ===
#: documentation/content/en/articles/contributors/_index.adoc:167
@@ -323,11 +323,11 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/contributors/_index.adoc:172
msgid ""
-"Annelise Anderson "
-"<mailto:andrsn@hoover.stanford.edu[andrsn@hoover.stanford.edu]>."
+"Annelise Anderson <mailto:andrsn@hoover.stanford.edu[andrsn@hoover.stanford."
+"edu]>."
msgstr ""
-"Annelise Anderson "
-"<mailto:andrsn@hoover.stanford.edu[andrsn@hoover.stanford.edu]>."
+"Annelise Anderson <mailto:andrsn@hoover.stanford.edu[andrsn@hoover.stanford."
+"edu]>."
#. type: Plain text
#: documentation/content/en/articles/contributors/_index.adoc:173
@@ -446,11 +446,11 @@ msgstr "http://www.pacificsolutions.com/[Pacific Solutions]."
#. type: Plain text
#: documentation/content/en/articles/contributors/_index.adoc:191
msgid ""
-"http://www.siemens.de/[Siemens AG] via Andre Albsmeier "
-"<mailto:andre.albsmeier@mchp.siemens.de[andre.albsmeier@mchp.siemens.de]>."
+"http://www.siemens.de/[Siemens AG] via Andre Albsmeier <mailto:andre."
+"albsmeier@mchp.siemens.de[andre.albsmeier@mchp.siemens.de]>."
msgstr ""
-"http://www.siemens.de/[Siemens AG] via Andre Albsmeier "
-"<mailto:andre.albsmeier@mchp.siemens.de[andre.albsmeier@mchp.siemens.de]>."
+"http://www.siemens.de/[Siemens AG] via Andre Albsmeier <mailto:andre."
+"albsmeier@mchp.siemens.de[andre.albsmeier@mchp.siemens.de]>."
#. type: Plain text
#: documentation/content/en/articles/contributors/_index.adoc:192
@@ -556,8 +556,8 @@ msgid ""
"DC-390U and DC-390F FAST and ULTRA SCSI host adapter cards for regression "
"testing of the NCR and AMD drivers with their cards. They are also to be "
"applauded for making driver sources for free operating systems available "
-"from their FTP server link:ftp://ftp.tekram.com/scsi/FreeBSD/[ftp://"
-"ftp.tekram.com/scsi/FreeBSD/]."
+"from their FTP server link:ftp://ftp.tekram.com/scsi/FreeBSD/[ftp://ftp."
+"tekram.com/scsi/FreeBSD/]."
msgstr ""
"http://www.tekram.com/[Tekram Technologies] предоставили по одному "
"экземпляру своих SCSI-адаптеров DC-390, DC-390U и DC-390F FAST и ULTRA для "
@@ -613,20 +613,20 @@ msgid ""
"http://www.osd.bsdi.com/[BSDi] (formerly Walnut Creek CDROM) has donated "
"almost more than we can say (see the 'About the FreeBSD Project' section of "
"the extref:{handbook}[FreeBSD Handbook] for more details). In particular, we "
-"would like to thank them for the original hardware used for "
-"`freefall.FreeBSD.org`, our primary development machine, and for "
-"`thud.FreeBSD.org`, a testing and build box. We are also indebted to them "
-"for funding various contributors over the years and providing us with "
-"unrestricted use of their T1 connection to the Internet."
+"would like to thank them for the original hardware used for `freefall."
+"FreeBSD.org`, our primary development machine, and for `thud.FreeBSD.org`, a "
+"testing and build box. We are also indebted to them for funding various "
+"contributors over the years and providing us with unrestricted use of their "
+"T1 connection to the Internet."
msgstr ""
"http://www.osd.bsdi.com/[BSDi] (ранее Walnut Creek CDROM) пожертвовали "
"больше, чем мы можем выразить (подробности см. в разделе 'О проекте FreeBSD' "
"extref:{handbook}[FreeBSD Handbook]). В частности, мы хотели бы "
-"поблагодарить их за первоначальное оборудование, использованное для "
-"`freefall.FreeBSD.org`, нашей основной машины разработки, и для "
-"`thud.FreeBSD.org`, тестовой и сборочной системы. Мы также благодарны им за "
-"финансирование различных участников на протяжении многих лет и "
-"предоставление неограниченного доступа к их T1-подключению к Интернету."
+"поблагодарить их за первоначальное оборудование, использованное для `freefall"
+".FreeBSD.org`, нашей основной машины разработки, и для `thud.FreeBSD.org`, "
+"тестовой и сборочной системы. Мы также благодарны им за финансирование "
+"различных участников на протяжении многих лет и предоставление "
+"неограниченного доступа к их T1-подключению к Интернету."
#. type: Plain text
#: documentation/content/en/articles/contributors/_index.adoc:213
diff --git a/documentation/content/ru/articles/contributors/contrib-develinmemoriam.adoc b/documentation/content/ru/articles/contributors/contrib-develinmemoriam.adoc
index 83f5904632..70014c9511 100644
--- a/documentation/content/ru/articles/contributors/contrib-develinmemoriam.adoc
+++ b/documentation/content/ru/articles/contributors/contrib-develinmemoriam.adoc
@@ -1,181 +1,81 @@
* Майк Карелс (2016 - 2024; RIP 2024)
+
-Майк Карелс, изначально аспирант по микробиологии в Калифорнийском
-университете в Беркли (UCB), проявил интерес к компьютерам в соседней
-лаборатории, что привело к полной смене его карьеры. В начале 1980-х он
-присоединился к Исследовательской группе компьютерных систем (CSRG) в
-UCB. Там его вклад стал ключевым в разработке и улучшении реализации
-TCP/UDP/IP в BSD Unix, включая API интерфейса сокетов — один из наиболее
-широко используемых интерфейсов программирования приложений в истории
-Интернета.
-+
-В течение следующих нескольких лет он продолжал помогать в подготовке
-выпусков Berkeley Software Distribution для 4.3BSD, 4.3BSD-Tahoe,
-4.3BSD-Reno, Networking Release 1 и Networking Release 2. В это время он был
-одним из авторов книги "The Design and Implementation of the 4.3BSD Unix
-Operating System" — важного труда в области компьютеров и операционных
-систем, опубликованного в 1989 году.
-+
-После ухода из CSRG он стал одним из основателей BSD Incorporated (BSDi),
-одного из первых поставщиков программного обеспечения BSD Unix в исходных и
-бинарных форматах. Майк оставался верен своему делу, несмотря на
-многочисленные организационные изменения в Walnut Creek CDROM, Wind River
-Systems, Secure Computing, McAfee, Intel Security и Forcepoint.
-+
-В 1994 году, по случаю 25-летия Unix, ассоциация USENIX удостоила Майка
-включения в Колоду карт Unix — набор игральных карт с изображениями пионеров
-раннего сообщества Unix. Он значится как Семёрка пик.
-+
-Он также участвовал в проекте FreeBSD и внес значительный вклад в его
-развитие на протяжении многих лет, включая дополнения к подсистеме sysctl и
-фреймворку Mandatory Access Control (MAC), в итоге получив право на коммиты
-в src. После выхода на пенсию он активно помогал с инженерингом выпусков
-FreeBSD и был избран в состав основной команды незадолго до своей внезапной
-кончины по пути домой с конференции BSDCan 2024. Всего годом ранее он
-представил увлекательный ретроспективный доклад о своей работе с BSD на
-BSDCan 2023, который можно посмотреть на YouTube:
-https://www.youtube.com/watch?v=XSziyKlG1ws.
-+
-Майк запомнился как выдающийся инженер-программист, терпеливый, скромный и
-отзывчивый к тем, кому требовалась помощь. Он наслаждался музыкой,
-фотографией и природой, а также проводил время с семьёй. Страница памяти
-Майка доступна по адресу
-https://www.gearty-delmore.com/obituaries/michael-mike-karels.
+Майк Карелс, изначально аспирант по микробиологии в Калифорнийском университете в Беркли (UCB), проявил интерес к компьютерам в соседней лаборатории, что привело к полной смене его карьеры. В начале 1980-х он присоединился к Исследовательской группе компьютерных систем (CSRG) в UCB. Там его вклад стал ключевым в разработке и улучшении реализации TCP/UDP/IP в BSD Unix, включая API интерфейса сокетов — один из наиболее широко используемых интерфейсов программирования приложений в истории Интернета.
++
+В течение следующих нескольких лет он продолжал помогать в подготовке выпусков Berkeley Software Distribution для 4.3BSD, 4.3BSD-Tahoe, 4.3BSD-Reno, Networking Release 1 и Networking Release 2. В это время он был одним из авторов книги "The Design and Implementation of the 4.3BSD Unix Operating System" — важного труда в области компьютеров и операционных систем, опубликованного в 1989 году.
++
+После ухода из CSRG он стал одним из основателей BSD Incorporated (BSDi), одного из первых поставщиков программного обеспечения BSD Unix в исходных и бинарных форматах. Майк оставался верен своему делу, несмотря на многочисленные организационные изменения в Walnut Creek CDROM, Wind River Systems, Secure Computing, McAfee, Intel Security и Forcepoint.
++
+В 1994 году, по случаю 25-летия Unix, ассоциация USENIX удостоила Майка включения в Колоду карт Unix — набор игральных карт с изображениями пионеров раннего сообщества Unix. Он значится как Семёрка пик.
++
+Он также участвовал в проекте FreeBSD и внес значительный вклад в его развитие на протяжении многих лет, включая дополнения к подсистеме sysctl и фреймворку Mandatory Access Control (MAC), в итоге получив право на коммиты в src. После выхода на пенсию он активно помогал с управлением выпусками FreeBSD и был избран в состав основной команды незадолго до своей внезапной кончины по пути домой с конференции BSDCan 2024. Всего годом ранее он представил увлекательный ретроспективный доклад о своей работе с BSD на BSDCan 2023, который можно посмотреть на YouTube: https://www.youtube.com/watch?v=XSziyKlG1ws.
++
+Майк запомнился как выдающийся инженер-программист, терпеливый, скромный и отзывчивый к тем, кому требовалась помощь. Он наслаждался музыкой, фотографией и природой, а также проводил время с семьёй. Страница памяти Майка доступна по адресу https://www.gearty-delmore.com/obituaries/michael-mike-karels.
* Ханс Петтер Селаски (2010 - 2023; RIP 2023)
+
-Сообщество FreeBSD вспоминает Ханса Петтера Селаски, который скончался в
-Лиллесанде, Норвегия, 23 июня 2023 года в возрасте 41 года. Ханс был
-невероятно талантливым и добрым человеком, внесшим множество ценных вкладов
-в FreeBSD. Он наиболее известен за переработку и поддержку стека USB и
-пакета webcamd, который обеспечивает современные телеконференции в
-FreeBSD. В последнее время он работал в Mellanox (ныне Nvidia), поддерживая
-их серию высокоскоростных сетевых карт ConnectX в FreeBSD. Работа Ханса
-включала значительный вклад в фреймворк TLS ядра, а также поддержку оффлоада
-отправки и приема kTLS на сетевых картах в драйвере mce(4).
-+
-Одним из примеров улучшения была его идея сортировки входящих TCP-пакетов с
-использованием предоставленных NIC идентификаторов потоков RSS, чтобы
-представить LRO все пакеты из одного TCP-соединения подряд. Эта идея была
-ключевой для возможности Netflix обслуживать 100 Гбит/с видеотрафика с одной
-машины.
-+
-Вне FreeBSD, у Ханса были увлечения музыкой и математикой. Он активно
-участвовал в жизни своей церкви и помогал команде, занимающейся звуком. Он
-был любящим и заботливым дядей для своих племянников и племянниц. Он любил
-животных, особенно своего кота Пумбу.
-+
-Более полная версия воспоминаний доступна по ссылке:
-link:https://forums.freebsd.org/threads/in-memoriam-hans-petter-william-sirevag-selasky.89697/[на
-этой странице форума FreeBSD].
+Сообщество FreeBSD вспоминает Ханса Петтера Селаски, который скончался в Лиллесанде, Норвегия, 23 июня 2023 года в возрасте 41 года. Ханс был невероятно талантливым и добрым человеком, внесшим множество ценных вкладов в FreeBSD. Он наиболее известен за переработку и поддержку стека USB и пакета webcamd, который обеспечивает современные телеконференции в FreeBSD. В последнее время он работал в Mellanox (ныне Nvidia), поддерживая их серию высокоскоростных сетевых карт ConnectX в FreeBSD. Работа Ханса включала значительный вклад в фреймворк TLS ядра, а также поддержку оффлоада отправки и приема kTLS на сетевых картах в драйвере mce(4).
++
+Одним из примеров улучшения была его идея сортировки входящих TCP-пакетов с использованием предоставленных NIC идентификаторов потоков RSS, чтобы представить LRO все пакеты из одного TCP-соединения подряд. Эта идея была ключевой для возможности Netflix обслуживать 100 Гбит/с видеотрафика с одной машины.
++
+Вне FreeBSD, у Ханса были увлечения музыкой и математикой. Он активно участвовал в жизни своей церкви и помогал команде, занимающейся звуком. Он был любящим и заботливым дядей для своих племянников и племянниц. Он любил животных, особенно своего кота Пумбу.
++
+Более полная версия воспоминаний доступна по ссылке: link:https://forums.freebsd.org/threads/in-memoriam-hans-petter-william-sirevag-selasky.89697/[на этой странице форума FreeBSD].
* Брюс Д. Эванс (1991 - 2019; RIP 2019)
+
Брюс был гигантом программирования, для которого FreeBSD стал домом.
+
-До FreeBSD и Linux была Minix, игрушечная «unix», написанная Энди
-Таненбаумом, выпущенная в 1987 году, продававшаяся с полными исходниками на
-трёх дискетах за $99.
+До FreeBSD и Linux была Minix, игрушечная «unix», написанная Энди Таненбаумом, выпущенная в 1987 году, продававшаяся с полными исходниками на трёх дискетах за $99.
+
Брюс портировал Minix на i386 около 1989 года.
+
-Линус Торвальдс использовал Minix/386 для разработки собственного ядра, и
-Брюс был первым, кого он поблагодарил в анонсе релиза.
+Линус Торвальдс использовал Minix/386 для разработки собственного ядра, и Брюс был первым, кого он поблагодарил в анонсе релиза.
+
-Когда Билл Джолитц выпустил 386BSD 0.1 в 1992 году, Брюс был указан как
-участник.
+Когда Билл Джолитц выпустил 386BSD 0.1 в 1992 году, Брюс был указан как участник.
+
-Брюс был одним из основателей проекта FreeBSD и входил в состав core.0, но
-он никогда не был пристрастным, и на протяжении многих лет множество других
-проектов получали пользу от его патчей, советов и мудрости.
+Брюс был одним из основателей проекта FreeBSD и входил в состав core.0, но он никогда не был пристрастным, и на протяжении многих лет множество других проектов получали пользу от его патчей, советов и мудрости.
+
-Рецензии кода от Брюса были трех видов: "мягкие", "брюсифицированные" и
-"брюсификация", но они никогда не были личными: всегда речь шла только о
-коде, ошибках, небрежном мышлении, упущенном историческом контексте,
-неоднозначных стандартах — и о нарушениях style(9).
+Рецензии кода от Брюса были трех видов: "мягкие", "брюсифицированные" и "брюсификация", но они никогда не были личными: всегда речь шла только о коде, ошибках, небрежном мышлении, упущенном историческом контексте, неоднозначных стандартах — и о нарушениях style(9).
+
-Поскольку Брюс провёл больше рецензий кода, чем кто-либо в истории проекта
-FreeBSD, журналы коммитов скрывают истинный масштаб его влияния, пока вы не
-обратите внимание на «Submitted by», «Reviewed by» и «Pointed out by».
+Поскольку Брюс провёл больше рецензий кода, чем кто-либо в истории проекта FreeBSD, журналы коммитов скрывают истинный масштаб его влияния, пока вы не обратите внимание на «Submitted by», «Reviewed by» и «Pointed out by».
+
Глухой на ухо, Брюс не посещал конференции.
+
-Заметным исключением стал BSDcon в 1999 году в Калифорнии, где его коллеги
-по основной команде встретили его фразой "Мы недостойны!" в стиле "Мир
-Уэйна".
+Заметным исключением стал BSDcon в 1999 году в Калифорнии, где его коллеги по основной команде встретили его фразой "Мы недостойны!" в стиле "Мир Уэйна".
+
Двадцать лет спустя мы всё ещё не достойны.
* Курт Лидл (2015 - 2019; RIP 2019)
+
-Курт впервые познакомился с BSD, когда это был ещё проект в Университете
-Калифорнии в Беркли. Вскоре после того, как в Мэриленде стали доступны
-персонализированные номерные знаки, он получил «BSDWZRD».
+Курт впервые познакомился с BSD, когда это был ещё проект в Университете Калифорнии в Беркли. Вскоре после того, как в Мэриленде стали доступны персонализированные номерные знаки, он получил «BSDWZRD».
+
-Он начал вносить вклад в FreeBSD вскоре после создания проекта. Он стал
-коммиттером исходного кода FreeBSD в октябре 2015 года.
+Он начал вносить вклад в FreeBSD вскоре после создания проекта. Он стал коммиттером исходного кода FreeBSD в октябре 2015 года.
+
-Наиболее известным проектом Курта в FreeBSD был man:blacklistd[8], который
-блокирует и освобождает порты по требованию для защиты от злоупотреблений
-типа DoS. Он также внес множество других исправлений ошибок и улучшений в
-DTrace, загрузчики и другие компоненты инфраструктуры FreeBSD.
+Наиболее известным проектом Курта в FreeBSD был man:blacklistd[8], который блокирует и освобождает порты по требованию для защиты от злоупотреблений типа DoS. Он также внес множество других исправлений ошибок и улучшений в DTrace, загрузчики и другие компоненты инфраструктуры FreeBSD.
+
-Предыдущие работы включали игру XTank, авторство в RFC 2516
-https://tools.ietf.org/html/rfc2516["Метод передачи PPP через Ethernet
-(PPPoE)"], а также доклад на конференции USENIX
-https://www.usenix.org/conference/usenix-winter-1994-technical-conference/drinking-firehose-multicast-usenet-news["Пить
-из пожарного шланга: Multicast USENET News"].
+Предыдущие работы включали игру XTank, авторство в RFC 2516 https://tools.ietf.org/html/rfc2516["Метод передачи PPP через Ethernet (PPPoE)"], а также доклад на конференции USENIX https://www.usenix.org/conference/usenix-winter-1994-technical-conference/drinking-firehose-multicast-usenet-news["Пить из пожарного шланга: Multicast USENET News"].
* Фрэнк Дурда IV (1995 - 2003; RIP 2018)
+
-Фрэнк участвовал в проекте с самых ранних дней, внося код в линейку 1.x,
-прежде чем стал коммиттером.
+Фрэнк участвовал в проекте с самых ранних дней, внося код в линейку 1.x, прежде чем стал коммиттером.
* Андрей А. Чернов (1993 - 2017; RIP 2017)
+
-Вклад Андрея в FreeBSD невозможно переоценить. Участвуя в проекте долгое
-время, он затронул практически все области.
+Вклад Андрея в FreeBSD невозможно переоценить. Участвуя в проекте долгое время, он затронул практически все области.
* Юрген Лок (2006 - 2015; RIP 2015)
+
-Юрген внес множество вкладов в FreeBSD, включая работу над libvirt,
-графическим стеком и QEMU. Вклад Юргена и его готовность помочь были высоко
-оценены людьми по всему миру. Эта работа продолжает улучшать жизнь тысяч
-людей каждый день.
+Юрген внес множество вкладов в FreeBSD, включая работу над libvirt, графическим стеком и QEMU. Вклад Юргена и его готовность помочь были высоко оценены людьми по всему миру. Эта работа продолжает улучшать жизнь тысяч людей каждый день.
* {alexbl} (2006 - 2011; RIP 2012)
+
-http://www.legacy.com/obituaries/sfgate/obituary.aspx?pid=159801494[Александр]
-был наиболее известен как крупный вкладчик в порты Python для FreeBSD, один
-из основателей {python}, а также своей работой над XMMS2.
+http://www.legacy.com/obituaries/sfgate/obituary.aspx?pid=159801494[Александр] был наиболее известен как крупный вкладчик в порты Python для FreeBSD, один из основателей {python}, а также своей работой над XMMS2.
* {jb} (1997 - 2009; RIP 2009)
+
-http://hub.opensolaris.org/bin/view/Community+Group+ogb/In+Memoriam[Джон]
-внес значительный вклад в FreeBSD, наиболее известным из которых является
-импорт кода man:dtrace[1]. Уникальное чувство юмора Джона и его
-прямолинейность либо раздражали окружающих, либо быстро делали его
-друзьями. В конце жизни он переехал в сельскую местность и пытался жить с
-минимальным воздействием на планету, продолжая при этом работать в сфере
-высоких технологий.
+http://hub.opensolaris.org/bin/view/Community+Group+ogb/In+Memoriam[Джон] внес значительный вклад в FreeBSD, наиболее известным из которых является импорт кода man:dtrace[1]. Уникальное чувство юмора Джона и его прямолинейность либо раздражали окружающих, либо быстро делали его друзьями. В конце жизни он переехал в сельскую местность и пытался жить с минимальным воздействием на планету, продолжая при этом работать в сфере высоких технологий.
* {jmz} (1994 - 2009; RIP 2009)
+
-http://www.obs-besancon.fr/article.php3?id_article=323[Жан-Марк] был
-астрофизиком, внесшим значительный вклад в моделирование атмосфер как
-планет, так и комет в http://www.obs-besancon.fr/[Обсерватории Безансона] в
-Безансоне, Франция. Там он участвовал в разработке и создании триканального
-спектрометра Vega, который изучал комету Галлея. Он также долгое время был
-участником разработки FreeBSD.
+http://www.obs-besancon.fr/article.php3?id_article=323[Жан-Марк] был астрофизиком, внесшим значительный вклад в моделирование атмосфер как планет, так и комет в http://www.obs-besancon.fr/[Обсерватории Безансона] в Безансоне, Франция. Там он участвовал в разработке и создании триканального спектрометра Vega, который изучал комету Галлея. Он также долгое время был участником разработки FreeBSD.
* {itojun} (1997 - 2001; RIP 2008)
+
-Известный всем как http://astralblue.livejournal.com/350702.html[itojun],
-Дзюн-итиро Хагино был ведущим исследователем в http://www.kame.net/[проекте
-KAME], целью которого было предоставление технологий IPv6 и IPsec в свободно
-распространяемой форме. Большая часть этого кода была включена в
-FreeBSD. Без его усилий состояние IPv6 в Интернете было бы совсем другим.
+Известный всем как http://astralblue.livejournal.com/350702.html[itojun], Дзюн-итиро Хагино был ведущим исследователем в http://www.kame.net/[проекте KAME], целью которого было предоставление технологий IPv6 и IPsec в свободно распространяемой форме. Большая часть этого кода была включена в FreeBSD. Без его усилий состояние IPv6 в Интернете было бы совсем другим.
* {cg} (1999 - 2005; RIP 2005)
+
-http://www.dbsi.org/cam/[Кэмерон] был уникальным человеком, который внёс
-вклад в проект, несмотря на серьёзные физические ограничения. Он отвечал за
-полную переработку нашей звуковой системы в конце 1990-х. Многие из тех, кто
-с ним переписывался, даже не догадывались о его ограниченной подвижности
-благодаря его жизнерадостному духу и готовности помогать другим.
+http://www.dbsi.org/cam/[Кэмерон] был уникальным человеком, который внёс вклад в проект, несмотря на серьёзные физические ограничения. Он отвечал за полную переработку нашей звуковой системы в конце 1990-х. Многие из тех, кто с ним переписывался, даже не догадывались о его ограниченной подвижности благодаря его жизнерадостному духу и готовности помогать другим.
* {alane} (2002 - 2003; RIP 2003)
+
-http://freebsd.kde.org/memoriam/alane.php[Алан] был одним из основных
-участников группы KDE на FreeBSD. Кроме того, он поддерживал множество
-других сложных и трудоёмких портов, таких как autoconf, CUPS и python. Путь
-Алана не был лёгким, но его страсть к FreeBSD и преданность высокому
-качеству программирования завоевали ему множество друзей.
+http://freebsd.kde.org/memoriam/alane.php[Алан] был одним из основных участников группы KDE на FreeBSD. Кроме того, он поддерживал множество других сложных и трудоёмких портов, таких как autoconf, CUPS и python. Путь Алана не был лёгким, но его страсть к FreeBSD и преданность высокому качеству программирования завоевали ему множество друзей.
diff --git a/documentation/content/ru/articles/contributors/contrib-develinmemoriam.po b/documentation/content/ru/articles/contributors/contrib-develinmemoriam.po
index c00bb8d5f2..9106cb2571 100644
--- a/documentation/content/ru/articles/contributors/contrib-develinmemoriam.po
+++ b/documentation/content/ru/articles/contributors/contrib-develinmemoriam.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
"POT-Creation-Date: 2025-03-28 20:31-0400\n"
-"PO-Revision-Date: 2025-09-05 04:45+0000\n"
+"PO-Revision-Date: 2025-10-29 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/articlescontributorscontrib-develinmemoriam/ru/>\n"
@@ -103,7 +103,7 @@ msgstr ""
"Он также участвовал в проекте FreeBSD и внес значительный вклад в его "
"развитие на протяжении многих лет, включая дополнения к подсистеме sysctl и "
"фреймворку Mandatory Access Control (MAC), в итоге получив право на коммиты "
-"в src. После выхода на пенсию он активно помогал с инженерингом выпусков "
+"в src. После выхода на пенсию он активно помогал с управлением выпусками "
"FreeBSD и был избран в состав основной команды незадолго до своей внезапной "
"кончины по пути домой с конференции BSDCan 2024. Всего годом ранее он "
"представил увлекательный ретроспективный доклад о своей работе с BSD на "
diff --git a/documentation/content/ru/articles/explaining-bsd/_index.adoc b/documentation/content/ru/articles/explaining-bsd/_index.adoc
index b40a42288f..58234dedf0 100644
--- a/documentation/content/ru/articles/explaining-bsd/_index.adoc
+++ b/documentation/content/ru/articles/explaining-bsd/_index.adoc
@@ -111,7 +111,7 @@ __Некоторые из них базируются на коде GNU, а не
Огромное число людей со всего мира участвуют в совершенствовании BSD. Все они разделены на три группы:
-* _Контрибуторы_ пишут код или документацию. Они не могут добавлять или изменять код непосредственно в дереве исходников проекта. Это привилегия особым образом зарегистрированных разработчиков, или __коммиттеров (committers)__, которые просматривают и тестируют присылаемый им код и включают его в дерево.
+* _Контрибьюторы_ пишут код или документацию. Они не могут добавлять или изменять код непосредственно в дереве исходников проекта. Это привилегия особым образом зарегистрированных разработчиков, или __коммиттеров (committers)__, которые просматривают и тестируют присылаемый им код и включают его в дерево.
* _Коммиттеры_ являются разработчиками, которые имеют доступ на запись в дерево исходных кодов проекта. Чтобы стать коммиттером, человек должен проявить себя в той области, в которой он хочет работать.
+
Каждый коммиттер по своему собственному усмотрению решает, нужно ли ему подтверждение правильности планируемых изменений от других разработчиков или нет. В общем случае опытный коммиттер может вносить очевидно выгодные изменения ни с кем не советуясь. К примеру, коммиттер проекта документации может исправлять опечатки или грамматические ошибки в документах без предварительного согласования. Напротив, далеко идущие или просто сложные изменения настоятельно рекомендуется представлять к обсуждению перед окончательным внесением в дерево. Бывают крайние случаи, когда член Core Team, выполняющий функцию архитектора проекта, может санкционировать немедленную отмену или _откат_ каких-то изменений в дереве. Все коммиттеры обязательно получают уведомление о каждом изменении в дереве по электронной почте, так что их невозможно сохранить в тайне.
diff --git a/documentation/content/ru/articles/explaining-bsd/_index.po b/documentation/content/ru/articles/explaining-bsd/_index.po
index c5938f02f5..1eb428c949 100644
--- a/documentation/content/ru/articles/explaining-bsd/_index.po
+++ b/documentation/content/ru/articles/explaining-bsd/_index.po
@@ -5,8 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-10-01 00:44+0300\n"
-"PO-Revision-Date: 2025-07-05 04:45+0000\n"
+"POT-Creation-Date: 2023-09-09 18:13-0300\n"
+"PO-Revision-Date: 2025-10-30 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/articlesexplaining-bsd_index/ru/>\n"
@@ -18,7 +18,7 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/articles/explaining-bsd/_index.adoc:1
#, no-wrap
msgid "Brief explanation about BSD"
@@ -260,8 +260,8 @@ msgstr ""
"цельной операционной системой: около 20% кода ядра отсутствовало. Один из "
"членов CSRG, William F. Jolitz, дописал недостающий код и опубликовал "
"результат в начале 1992 года под именем __386BSD__. В то же самое время "
-"другая группа бывших членов CSRG организовала коммерческую компанию http://"
-"www.bsdi.com/[Berkeley Software Design Inc.] и выпустила бета-версию "
+"другая группа бывших членов CSRG организовала коммерческую компанию "
+"http://www.bsdi.com/[Berkeley Software Design Inc.] и выпустила бета-версию "
"операционной системы http://www.bsdi.com/[BSD/386], которая базировалась на "
"том же самом коде. Позже это название было изменено на BSD/OS."
@@ -275,9 +275,9 @@ msgid ""
"people started early in the year, and the first version of FreeBSD was not "
"ready until the end of the year. In the meantime, the code base had "
"diverged sufficiently to make it difficult to merge. In addition, the "
-"projects had different aims, as we will see below. In 1996, http://"
-"www.OpenBSD.org/[OpenBSD] split off from NetBSD, and in 2003, http://"
-"www.dragonflybsd.org/[DragonFlyBSD] split off from FreeBSD."
+"projects had different aims, as we will see below. In 1996, http://www."
+"OpenBSD.org/[OpenBSD] split off from NetBSD, and in 2003, http://www."
+"dragonflybsd.org/[DragonFlyBSD] split off from FreeBSD."
msgstr ""
"386BSD так никогда и не стала полноценной операционной системой. Зато в 1993 "
"году из неё выделились два проекта: http://www.NetBSD.org/[NetBSD] и "
@@ -287,8 +287,8 @@ msgstr ""
"версия FreeBSD была готова только к его концу. Время шло, и технические "
"различия возрастали. Вдобавок проекты поставили перед собой разные цели, как "
"будет показано ниже. В 1996 году от NetBSD отделился ещё один проект - "
-"http://www.OpenBSD.org/[OpenBSD], а в 2003 году от FreeBSD отделилась http://"
-"www.dragonflybsd.org/[DragonFlyBSD]."
+"http://www.OpenBSD.org/[OpenBSD], а в 2003 году от FreeBSD отделилась "
+"http://www.dragonflybsd.org/[DragonFlyBSD]."
#. type: Title ==
#: documentation/content/en/articles/explaining-bsd/_index.adoc:113
@@ -416,8 +416,8 @@ msgid ""
"of any version."
msgstr ""
"Ядра BSD используют Open Source модель разработки. Каждый проект "
-"поддерживает публично доступное _дерево исходников_ с помощью http://"
-"www.cvshome.org/[Concurrent Versions System] (CVS). Это дерево содержит "
+"поддерживает публично доступное _дерево исходников_ с помощью http://www."
+"cvshome.org/[Concurrent Versions System] (CVS). Это дерево содержит "
"абсолютно весь исходный код проекта, а также документацию и вспомогательные "
"файлы. CVS позволяет пользователям получить копию дерева любой версии "
"системы."
@@ -439,7 +439,7 @@ msgid ""
"system, it must be reviewed and checked in by a registered developer, known "
"as a __committer__."
msgstr ""
-"_Контрибуторы_ пишут код или документацию. Они не могут добавлять или "
+"_Контрибьюторы_ пишут код или документацию. Они не могут добавлять или "
"изменять код непосредственно в дереве исходников проекта. Это привилегия "
"особым образом зарегистрированных разработчиков, или __коммиттеров "
"(committers)__, которые просматривают и тестируют присылаемый им код и "
@@ -685,14 +685,14 @@ msgstr ""
#: documentation/content/en/articles/explaining-bsd/_index.adoc:190
msgid ""
"FreeBSD aims for high performance and ease of use by end users, and is a "
-"favourite of web content providers. It runs on a link:https://"
-"www.FreeBSD.org/platforms/[number of platforms] and has significantly more "
-"users than the other projects."
+"favourite of web content providers. It runs on a link:https://www.FreeBSD."
+"org/platforms/[number of platforms] and has significantly more users than "
+"the other projects."
msgstr ""
"проект FreeBSD нацелен на повышение производительности и простоту в "
"использовании конечными пользователями. FreeBSD очень ценят в среде web-"
-"хостеров. Эта ОС работает на link:https://www.FreeBSD.org/platforms/"
-"[нескольких аппаратных платформах], число пользователей FreeBSD значительно "
+"хостеров. Эта ОС работает на link:https://www.FreeBSD.org/platforms/["
+"нескольких аппаратных платформах], число пользователей FreeBSD значительно "
"превышает число пользователей других проектов."
#. type: Plain text
@@ -703,10 +703,10 @@ msgid ""
"space missions. It is a particularly good choice for running on old non-"
"Intel(R) hardware."
msgstr ""
-"проект NetBSD ставит целью максимальную мобильность (или переносимость) "
-"кода: девиз \"конечно NetBSD работает на этом\". NetBSD поддерживает машины "
-"от крошечных палмтопов до огромных серверов и использовалась NASA в "
-"космических миссиях. Это хороший выбор для старой не-Intel(R) аппаратуры."
+"проект NetBSD ставит целью максимальную мобильность (или переносимость) кода:"
+" девиз \"конечно NetBSD работает на этом\". NetBSD поддерживает машины от "
+"крошечных палмтопов до огромных серверов и использовалась NASA в космических "
+"миссиях. Это хороший выбор для старой не-Intel(R) аппаратуры."
#. type: Plain text
#: documentation/content/en/articles/explaining-bsd/_index.adoc:192
@@ -804,15 +804,15 @@ msgid ""
"restrictive: binary-only distributions are allowed. This is particularly "
"attractive for embedded applications."
msgstr ""
-"Linux распространяется на условиях лицензии http://www.fsf.org/copyleft/"
-"gpl.html[GNU General Public License] (GPL). Эта лицензия имеет целью "
-"уничтожить программное обеспечение с закрытым исходным кодом. В частности, "
-"любое ПО, базирующееся на продукте, выпущенном на условиях лицензии GPL, "
-"тоже должно поставляться с исходными кодами по первому требованию. http://"
-"www.opensource.org/licenses/bsd-license.html[Лицензия BSD] не накладывает "
-"таких жёстких ограничений: разрешается распространение программного "
-"обеспечения в двоичном виде (binary-only). Этот факт привлекает "
-"разработчиков встроенных (embedded) приложений."
+"Linux распространяется на условиях лицензии http://www.fsf.org/copyleft/gpl."
+"html[GNU General Public License] (GPL). Эта лицензия имеет целью уничтожить "
+"программное обеспечение с закрытым исходным кодом. В частности, любое ПО, "
+"базирующееся на продукте, выпущенном на условиях лицензии GPL, тоже должно "
+"поставляться с исходными кодами по первому требованию. http://www.opensource."
+"org/licenses/bsd-license.html[Лицензия BSD] не накладывает таких жёстких "
+"ограничений: разрешается распространение программного обеспечения в двоичном "
+"виде (binary-only). Этот факт привлекает разработчиков встроенных (embedded) "
+"приложений."
#. type: Title ===
#: documentation/content/en/articles/explaining-bsd/_index.adoc:206
@@ -945,7 +945,9 @@ msgstr ""
#: documentation/content/en/articles/explaining-bsd/_index.adoc:229
#, no-wrap
msgid "Who provides support, service, and training for BSD?"
-msgstr "Кто предоставляет техническую поддержку, обслуживание и обучение для систем BSD?"
+msgstr ""
+"Кто предоставляет техническую поддержку, обслуживание и обучение для систем "
+"BSD?"
#. type: Plain text
#: documentation/content/en/articles/explaining-bsd/_index.adoc:232
@@ -959,12 +961,12 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/explaining-bsd/_index.adoc:233
msgid ""
-"In addition, each of the projects has a list of consultants for hire: "
-"link:https://www.FreeBSD.org/commercial/consult_bycat/[FreeBSD], http://"
-"www.netbsd.org/gallery/consultants.html[NetBSD], and http://www.openbsd.org/"
+"In addition, each of the projects has a list of consultants for hire: link:"
+"https://www.FreeBSD.org/commercial/consult_bycat/[FreeBSD], http://www."
+"netbsd.org/gallery/consultants.html[NetBSD], and http://www.openbsd.org/"
"support.html[OpenBSD]."
msgstr ""
"Кроме того, каждый из проектов постоянно обновляет список консультантов, "
"которые оказывают поддержку за отдельную плату: link:https://www.FreeBSD.org/"
-"commercial/consult_bycat/[FreeBSD], http://www.NetBSD.org/gallery/"
-"consultants.html[NetBSD] и http://www.OpenBSD.org/support.html[OpenBSD]."
+"commercial/consult_bycat/[FreeBSD], http://www.NetBSD.org/gallery/consultants"
+".html[NetBSD] и http://www.OpenBSD.org/support.html[OpenBSD]."
diff --git a/documentation/content/ru/articles/filtering-bridges/_index.adoc b/documentation/content/ru/articles/filtering-bridges/_index.adoc
index eb58330257..384b3570aa 100644
--- a/documentation/content/ru/articles/filtering-bridges/_index.adoc
+++ b/documentation/content/ru/articles/filtering-bridges/_index.adoc
@@ -82,7 +82,7 @@ options IPFIREWALL
options IPFIREWALL_VERBOSE
....
-Первая строка компилирует поддержку моста, вторая — межсетевой экран, а третья — функции логирования межсетевого экрана.
+Первая строка компилирует поддержку моста, вторая — межсетевой экран, а третья — функции журналирования межсетевого экрана.
Теперь необходимо собрать и установить новое ядро. Подробные инструкции можно найти в разделе extref:{handbook}[Сборка и установка пользовательского ядра, kernelconfig-building] руководства FreeBSD.
@@ -111,7 +111,7 @@ firewall_quiet="YES"
firewall_logging="YES"
....
-Первая строка включит межсетевой экран (и загрузит модуль [.filename]#ipfw.ko#, если он не встроен в ядро), вторая настроит его в режиме `open` (как описано в [.filename]#/etc/rc.firewall#), третья отключит отображение загрузки правил, а четвёртая включит поддержку логирования.
+Первая строка включит межсетевой экран (и загрузит модуль [.filename]#ipfw.ko#, если он не встроен в ядро), вторая настроит его в режиме `open` (как описано в [.filename]#/etc/rc.firewall#), третья отключит отображение загрузки правил, а четвёртая включит поддержку журналирования.
О конфигурации сетевых интерфейсов: наиболее распространённый способ — назначить IP только одной из сетевых карт, но мост будет работать одинаково, даже если оба интерфейса или ни один из них не имеют настроенного IP. В последнем случае (без IP) машина с мостом останется более скрытой, так как будет недоступна из сети: для её настройки потребуется войти с консоли или через третий сетевой интерфейс, отделённый от моста. Иногда во время запуска системы некоторым программам требуется доступ к сети, например, для разрешения доменных имён: в этом случае необходимо назначить IP внешнему интерфейсу (тому, который подключён к интернету, где находится DNS-сервер), так как мост будет активирован в конце процедуры запуска. Это означает, что интерфейс [.filename]#fxp0# (в нашем случае) должен быть указан в разделе ifconfig файла [.filename]#/etc/rc.conf#, тогда как [.filename]#xl0# — нет. Назначение IP обеим сетевым картам не имеет особого смысла, за исключением случаев, когда во время запуска приложения должны получать доступ к сервисам на обоих сегментах Ethernet.
diff --git a/documentation/content/ru/articles/filtering-bridges/_index.po b/documentation/content/ru/articles/filtering-bridges/_index.po
index 5ba8d2a7b8..225877e2c2 100644
--- a/documentation/content/ru/articles/filtering-bridges/_index.po
+++ b/documentation/content/ru/articles/filtering-bridges/_index.po
@@ -5,8 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-09-23 18:56+0300\n"
-"PO-Revision-Date: 2025-09-23 04:45+0000\n"
+"POT-Creation-Date: 2024-01-17 20:35-0300\n"
+"PO-Revision-Date: 2025-09-26 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/articlesfiltering-bridges_index/ru/>\n"
@@ -18,11 +18,13 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/articles/filtering-bridges/_index.adoc:1
#, no-wrap
msgid "Configuring firewalls and filtering on FreeBSD hosts acting as bridges rather than routers"
-msgstr "Настройка межсетевых экранов и фильтрации на хостах FreeBSD, выступающих в роли мостов, а не маршрутизаторов"
+msgstr ""
+"Настройка межсетевых экранов и фильтрации на хостах FreeBSD, выступающих в "
+"роли мостов, а не маршрутизаторов"
#. type: Title =
#: documentation/content/en/articles/filtering-bridges/_index.adoc:1
@@ -200,7 +202,7 @@ msgid ""
"firewall and the third one is the logging functions of the firewall."
msgstr ""
"Первая строка компилирует поддержку моста, вторая — межсетевой экран, а "
-"третья — функции логирования межсетевого экрана."
+"третья — функции журналирования межсетевого экрана."
#. type: Plain text
#: documentation/content/en/articles/filtering-bridges/_index.adoc:100
@@ -226,8 +228,8 @@ msgid ""
"thing to do now is add the following row to [.filename]#/boot/loader.conf#:"
msgstr ""
"Если вы выбрали использование нового и более простого метода установки, "
-"единственное, что нужно сделать сейчас, это добавить следующую строку в "
-"[.filename]#/boot/loader.conf#:"
+"единственное, что нужно сделать сейчас, это добавить следующую строку в [."
+"filename]#/boot/loader.conf#:"
#. type: delimited block . 4
#: documentation/content/en/articles/filtering-bridges/_index.adoc:109
@@ -266,8 +268,8 @@ msgid ""
"configuration will avoid you to remain isolated from the network). Put "
"these lines in [.filename]#/etc/rc.conf#:"
msgstr ""
-"Прежде чем перезагрузиться для загрузки нового ядра или необходимых модулей "
-"(в соответствии с выбранным ранее методом установки), необходимо внести "
+"Прежде чем перезагрузиться для загрузки нового ядра или необходимых модулей ("
+"в соответствии с выбранным ранее методом установки), необходимо внести "
"некоторые изменения в конфигурационный файл [.filename]#/etc/rc.conf#. "
"Правило по умолчанию для межсетевого экрана — отклонять все IP-пакеты. "
"Изначально мы настроим `открытый` межсетевой экран, чтобы проверить его "
@@ -292,16 +294,16 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/filtering-bridges/_index.adoc:131
msgid ""
-"The first row will enable the firewall (and will load the module "
-"[.filename]#ipfw.ko# if it is not compiled in the kernel), the second one to "
+"The first row will enable the firewall (and will load the module [."
+"filename]#ipfw.ko# if it is not compiled in the kernel), the second one to "
"set up it in `open` mode (as explained in [.filename]#/etc/rc.firewall#), "
"the third one to not show rules loading and the fourth one to enable logging "
"support."
msgstr ""
-"Первая строка включит межсетевой экран (и загрузит модуль "
-"[.filename]#ipfw.ko#, если он не встроен в ядро), вторая настроит его в "
-"режиме `open` (как описано в [.filename]#/etc/rc.firewall#), третья отключит "
-"отображение загрузки правил, а четвёртая включит поддержку логирования."
+"Первая строка включит межсетевой экран (и загрузит модуль [.filename]#ipfw."
+"ko#, если он не встроен в ядро), вторая настроит его в режиме `open` (как "
+"описано в [.filename]#/etc/rc.firewall#), третья отключит отображение "
+"загрузки правил, а четвёртая включит поддержку журналирования."
#. type: Plain text
#: documentation/content/en/articles/filtering-bridges/_index.adoc:137
@@ -317,8 +319,8 @@ msgid ""
"interface (the one connected to Internet, where DNS server resides), since "
"the bridge will be activated at the end of the startup procedure. It means "
"that the [.filename]#fxp0# interface (in our case) must be mentioned in the "
-"ifconfig section of the [.filename]#/etc/rc.conf# file, while the "
-"[.filename]#xl0# is not. Assigning an IP to both the network cards does not "
+"ifconfig section of the [.filename]#/etc/rc.conf# file, while the [."
+"filename]#xl0# is not. Assigning an IP to both the network cards does not "
"make much sense, unless, during the start procedure, applications should "
"access to services on both Ethernet segments."
msgstr ""
@@ -357,8 +359,8 @@ msgstr ""
"Чтобы обеспечить связь между двумя хостами, разделёнными мостом, необходимо, "
"чтобы мост передавал ARP-пакеты. Этот протокол не включён в уровень IP, так "
"как он существует только при работе IP поверх Ethernet. Межсетевой экран "
-"FreeBSD фильтрует исключительно на уровне IP, поэтому все не-IP пакеты "
-"(включая ARP) будут передаваться без фильтрации, даже если межсетевой экран "
+"FreeBSD фильтрует исключительно на уровне IP, поэтому все не-IP пакеты ("
+"включая ARP) будут передаваться без фильтрации, даже если межсетевой экран "
"настроен на запрет всего."
#. type: Plain text
@@ -395,9 +397,9 @@ msgid ""
"commands (having the shrewdness to replace the names of the two network "
"interfaces [.filename]#fxp0# and [.filename]#xl0# with your own ones):"
msgstr ""
-"На этом этапе, чтобы включить мост, необходимо выполнить следующие команды "
-"(с учётом замены имён двух сетевых интерфейсов [.filename]#fxp0# и "
-"[.filename]#xl0# на ваши собственные):"
+"На этом этапе, чтобы включить мост, необходимо выполнить следующие команды ("
+"с учётом замены имён двух сетевых интерфейсов [.filename]#fxp0# и [."
+"filename]#xl0# на ваши собственные):"
#. type: delimited block . 4
#: documentation/content/en/articles/filtering-bridges/_index.adoc:159
@@ -472,8 +474,8 @@ msgstr ""
"фильтруемых мостом, можно использовать только команды `pass` или `drop`. "
"Более сложные действия, такие как `divert`, `forward` или `reject`, "
"недоступны. Такие опции всё ещё можно использовать, но только для трафика, "
-"направленного на саму машину моста или исходящего от неё (если у неё есть IP-"
-"адрес)."
+"направленного на саму машину моста или исходящего от неё (если у неё есть "
+"IP-адрес)."
#. type: Plain text
#: documentation/content/en/articles/filtering-bridges/_index.adoc:185
@@ -509,12 +511,12 @@ msgid ""
"Let's look at an example setup. Note first that at the top of [.filename]#/"
"etc/rc.firewall# there are already standard rules for the loopback interface "
"[.filename]#lo0#, so we should not have to care for them anymore. Custom "
-"rules should be put in a separate file (say [.filename]#/etc/"
-"rc.firewall.local#) and loaded at system startup, by modifying the row of "
-"[.filename]#/etc/rc.conf# where we defined the `open` firewall:"
+"rules should be put in a separate file (say [.filename]#/etc/rc.firewall."
+"local#) and loaded at system startup, by modifying the row of [.filename]#/"
+"etc/rc.conf# where we defined the `open` firewall:"
msgstr ""
-"Рассмотрим пример настройки. Обратите внимание, что в начале файла "
-"[.filename]#/etc/rc.firewall# уже есть стандартные правила для loopback-"
+"Рассмотрим пример настройки. Обратите внимание, что в начале файла [."
+"filename]#/etc/rc.firewall# уже есть стандартные правила для loopback-"
"интерфейса (интерфейса обратной петли) [.filename]#lo0#, поэтому нам не "
"нужно о них заботиться. Пользовательские правила следует поместить в "
"отдельный файл (например, [.filename]#/etc/rc.firewall.local#) и загружать "
diff --git a/documentation/content/ru/articles/freebsd-releng/_index.adoc b/documentation/content/ru/articles/freebsd-releng/_index.adoc
index d02aebc780..d26b1ef841 100644
--- a/documentation/content/ru/articles/freebsd-releng/_index.adoc
+++ b/documentation/content/ru/articles/freebsd-releng/_index.adoc
@@ -73,30 +73,17 @@ toc::[]
[[introduction]]
== Введение в процесс разработки релизов FreeBSD
-Разработка FreeBSD следует очень специфичному рабочему процессу. В общем
-случае все изменения в базовой системе FreeBSD вносятся в ветку
-{branchHead}, которая отражает вершину дерева исходного кода.
+Разработка FreeBSD следует очень специфичному рабочему процессу. В общем случае все изменения в базовой системе FreeBSD вносятся в ветку {branchHead}, которая отражает вершину дерева исходного кода.
-После достаточного периода тестирования изменения могут быть объединены в
-ветки {branchStable}. Минимальный срок по умолчанию перед объединением в
-ветки {branchStable} составляет три (3) дня.
+После достаточного периода тестирования изменения могут быть объединены в ветки {branchStable}. Минимальный срок по умолчанию перед объединением в ветки {branchStable} составляет три (3) дня.
-Хотя общее правило предписывает выждать минимум три дня перед слиянием из
-{branchHead}, существуют особые обстоятельства, при которых может
-потребоваться немедленное слияние, например, критическое исправление
-безопасности или исправление ошибки, напрямую блокирующей процесс сборки
-выпуска.
+Хотя общее правило предписывает выждать минимум три дня перед слиянием из {branchHead}, существуют особые обстоятельства, при которых может потребоваться немедленное слияние, например, критическое исправление безопасности или исправление ошибки, напрямую блокирующей процесс сборки выпуска.
-Через несколько месяцев, когда количество изменений в ветке {branchStable}
-значительно увеличилось, наступает время выпуска следующей версии
-FreeBSD. Исторически такие выпуски называются релизами "с точкой".
+Через несколько месяцев, когда количество изменений в ветке {branchStable} значительно увеличилось, наступает время выпуска следующей версии FreeBSD. Исторически такие выпуски называются релизами "с точкой".
-Между выпусками из ветвей {branchStable}, примерно каждые два (2) года,
-выпуск будет создаваться напрямую из {branchHead}. Исторически такие выпуски
-назывались выпуском «точка-ноль (dot-zero)».
+Между выпусками из ветвей {branchStable}, примерно каждые два (2) года, выпуск будет создаваться напрямую из {branchHead}. Исторически такие выпуски назывались выпуском «точка-ноль (dot-zero)».
-Эта статья освещает рабочий процесс и обязанности команды {teamRe} как для
-выпуска "точка-ноль", так и для "промежуточных" выпусков.
+Эта статья освещает рабочий процесс и обязанности команды {teamRe} как для выпуска "точка-ноль", так и для "промежуточных" выпусков.
Следующие разделы этой статьи описывают:
@@ -107,8 +94,7 @@ crossref:freebsd-releng[releng-website, Изменения на веб-сайт
Изменения на веб-сайте в течение цикла выпуска
crossref:freebsd-releng[releng-terms, Терминология выпуска релизов]::
-Терминология и общая информация, такие как "мягкая заморозка кода (code
-slush)" и "заморозка кода (code freeze)", используемые в этом документе.
+Терминология и общая информация, такие как "мягкая заморозка кода (code slush)" и "заморозка кода (code freeze)", используемые в этом документе.
crossref:freebsd-releng[releng-head, Выпуск релиза от {branchHead}]::
Процесс Release Engineering для релиза "точка-ноль".
@@ -117,8 +103,7 @@ crossref:freebsd-releng[releng-stable, Выпуск релиза от {branchSta
Процесс Release Engineering для "точечного" выпуска.
crossref:freebsd-releng[releng-building, Создание установочных носителей FreeBSD]::
-Информация, относящаяся к конкретным процедурам создания установочного
-носителя.
+Информация, относящаяся к конкретным процедурам создания установочного носителя.
crossref:freebsd-releng[releng-mirrors, Публикация установочных носителей FreeBSD на зеркалах проекта]::
Процедуры публикации установочного носителя.
@@ -129,9 +114,7 @@ crossref:freebsd-releng[releng-wrapup, Завершение цикла выпу
[[releng-prep]]
== Общая информация и подготовка
-Примерно за два месяца до начала цикла выпуска команда {teamRe} определяет
-график выпуска. График включает в себя различные этапы цикла выпуска, такие
-как даты заморозки, даты ветвления и даты сборки. Например:
+Примерно за два месяца до начала цикла выпуска команда {teamRe} определяет график выпуска. График включает в себя различные этапы цикла выпуска, такие как даты заморозки, даты ветвления и даты сборки. Например:
[.informaltable]
[cols="1,1", frame="none", options="header"]
@@ -206,157 +189,95 @@ crossref:freebsd-releng[releng-wrapup, Завершение цикла выпу
====
. Мягкая заморозка дерева `doc/` координируется командой {teamDoceng}.
-. Используемая квартальная ветка Ports определяется по дате запланированной
- окончательной сборки `RC`. Новая квартальная ветка создаётся в первый день
- квартала, поэтому этот показатель следует учитывать, принимая во внимание
- этапы цикла выпуска. Квартальная ветка создаётся командой {teamPortmgr}.
+. Используемая квартальная ветка Ports определяется по дате запланированной окончательной сборки `RC`. Новая квартальная ветка создаётся в первый день квартала, поэтому этот показатель следует учитывать, принимая во внимание этапы цикла выпуска. Квартальная ветка создаётся командой {teamPortmgr}.
. Для дерева исходного кода `doc/` tag делается командой {teamDoceng}.
-. Окончательная сборка пакета Ports выполняется командой {teamPortmgr} после
- финальной (или ожидаемой финальной) сборки `RC`.
+. Окончательная сборка пакета Ports выполняется командой {teamPortmgr} после финальной (или ожидаемой финальной) сборки `RC`.
[NOTE]
====
-Если выпуск создаётся из существующей ветки {branchStable}, дату заморозки
-KBI можно исключить, так как KBI уже считается замороженным в устоявшихся
-ветках {branchStable}.
+Если выпуск создаётся из существующей ветки {branchStable}, дату заморозки KBI можно исключить, так как KBI уже считается замороженным в устоявшихся ветках {branchStable}.
====
-При написании графика цикла выпуска необходимо учитывать ряд факторов,
-особенно этапы, на которые целевая дата зависит от предопределенных этапов,
-от которых существует зависимость. Например, тег выпуска коллекции портов
-берется из активной квартальной ветки на момент последнего `RC`. Это
-частично определяет, какая квартальная ветка используется, когда может быть
-создан тег выпуска и какая версия дерева портов используется для финальной
-сборки `RELEASE`.
+При написании графика цикла выпуска необходимо учитывать ряд факторов, особенно этапы, на которые целевая дата зависит от предопределенных этапов, от которых существует зависимость. Например, тег выпуска коллекции портов берется из активной квартальной ветки на момент последнего `RC`. Это частично определяет, какая квартальная ветка используется, когда может быть создан тег выпуска и какая версия дерева портов используется для финальной сборки `RELEASE`.
-После общего согласования расписания команда {teamRe} отправляет расписание
-разработчикам FreeBSD по электронной почте.
+После общего согласования расписания команда {teamRe} отправляет расписание разработчикам FreeBSD по электронной почте.
-Вполне типично, что многие разработчики сообщают команде {teamRe} о
-различных работах в процессе выполнения. В некоторых случаях может быть
-запрошено продление для работы в процессе, а в других случаях может быть
-сделан запрос на "общее одобрение" для определенного подмножества дерева.
+Вполне типично, что многие разработчики сообщают команде {teamRe} о различных работах в процессе выполнения. В некоторых случаях может быть запрошено продление для работы в процессе, а в других случаях может быть сделан запрос на "общее одобрение" для определенного подмножества дерева.
-При таких запросах важно убедиться, что обсуждаются сроки (даже если они
-приблизительные). Для общих одобрений следует четко указать
-продолжительность действия такого одобрения. Например, разработчик FreeBSD
-может запросить общее одобрение с начала периода мягкой заморозки кода до
-начала сборок `RC`.
+При таких запросах важно убедиться, что обсуждаются сроки (даже если они приблизительные). Для общих одобрений следует четко указать продолжительность действия такого одобрения. Например, разработчик FreeBSD может запросить общее одобрение с начала периода мягкой заморозки кода до начала сборок `RC`.
[NOTE]
====
-Для отслеживания общих одобрений команда {teamRe} использует внутренний
-репозиторий, в котором ведется журнал таких запросов. В нем указывается
-область, на которую распространяется общее одобрение, автор(ы), срок
-действия одобрения и причина его выдачи. Например, может быть предоставлено
-общее одобрение для [.filename]#release/doc/# всем членам {teamRe} до
-финального `RC` для обновления примечаний к выпуску и другой связанной с
-выпуском документации.
+Для отслеживания общих одобрений команда {teamRe} использует внутренний репозиторий, в котором ведется журнал таких запросов. В нем указывается область, на которую распространяется общее одобрение, автор(ы), срок действия одобрения и причина его выдачи. Например, может быть предоставлено общее одобрение для [.filename]#release/doc/# всем членам {teamRe} до финального `RC` для обновления примечаний к выпуску и другой связанной с выпуском документации.
====
[NOTE]
====
-Команда {teamRe} также использует этот репозиторий для отслеживания
-ожидающих одобрения запросов, полученных непосредственно перед началом
-различных сборок во время цикла выпуска, при этом Инженер по выпускам
-указывает срок отсечки с помощью электронного письма разработчикам FreeBSD.
+Команда {teamRe} также использует этот репозиторий для отслеживания ожидающих одобрения запросов, полученных непосредственно перед началом различных сборок во время цикла выпуска, при этом Инженер по выпускам указывает срок отсечки с помощью электронного письма разработчикам FreeBSD.
====
-В зависимости от рассматриваемого набора кода и общего влияния этого набора
-кода на FreeBSD в целом, такие запросы могут быть одобрены или отклонены
-командой {teamRe}.
+В зависимости от рассматриваемого набора кода и общего влияния этого набора кода на FreeBSD в целом, такие запросы могут быть одобрены или отклонены командой {teamRe}.
-То же самое относится к расширениям для незавершённых работ. Например,
-незавершённая работа над новым драйвером устройства, который в остальном
-изолирован от остального дерева, может получить расширение. Однако новый
-планировщик может оказаться неосуществимым, особенно если такие значительные
-изменения отсутствуют в другой ветке.
+То же самое относится к расширениям для незавершённых работ. Например, незавершённая работа над новым драйвером устройства, который в остальном изолирован от остального дерева, может получить расширение. Однако новый планировщик может оказаться неосуществимым, особенно если такие значительные изменения отсутствуют в другой ветке.
-Расписание также добавляется на сайт проекта в репозитории `doc/`, в файле
-[.filename]#~/website/content/en/releases/{branchRevision}R/schedule.adoc#.
-Этот файл постоянно обновляется по мере прохождения цикла выпуска.
+Расписание также добавляется на сайт проекта в репозитории `doc/`, в файле [.filename]#~/website/content/en/releases/{branchRevision}R/schedule.adoc#. Этот файл постоянно обновляется по мере прохождения цикла выпуска.
[NOTE]
====
-В большинстве случаев файл [.filename]#schedule.adoc# можно скопировать из
-предыдущего релиза и обновить соответствующим образом.
+В большинстве случаев файл [.filename]#schedule.adoc# можно скопировать из предыдущего релиза и обновить соответствующим образом.
====
-В дополнение к добавлению [.filename]#schedule.adoc# на веб-сайт, файл
-[.filename]#~/shared/releases.adoc# также обновляется, чтобы добавить ссылку
-на расписание на различные подстраницы, а также включить ссылку на
-расписание на главной странице веб-сайта проекта.
+В дополнение к добавлению [.filename]#schedule.adoc# на веб-сайт, файл [.filename]#~/shared/releases.adoc# также обновляется, чтобы добавить ссылку на расписание на различные подстраницы, а также включить ссылку на расписание на главной странице веб-сайта проекта.
-Расписание также доступно по ссылке из файла
-[.filename]#~/website/content/en/releng/_index.adoc#.
+Расписание также доступно по ссылке из файла [.filename]#~/website/content/en/releng/_index.adoc#.
-Примерно за месяц до запланированной "мягкой заморозки кода" команда
-{teamRe} отправляет напоминание разработчикам FreeBSD.
+Примерно за месяц до запланированной "мягкой заморозки кода" команда {teamRe} отправляет напоминание разработчикам FreeBSD.
[[releng-terms]]
== Терминология выпуска релизов
-В этом разделе описана часть терминологии, используемой в остальной части
-данного документа.
+В этом разделе описана часть терминологии, используемой в остальной части данного документа.
[[releng-terms-code-slush]]
=== Мягкая заморозка кода
-Хотя мягкая заморозка кода не является полной заморозкой дерева, команда
-{teamRe} просит отдавать приоритет исправлению ошибок в существующей кодовой
-базе перед добавлением новых функций.
+Хотя мягкая заморозка кода не является полной заморозкой дерева, команда {teamRe} просит отдавать приоритет исправлению ошибок в существующей кодовой базе перед добавлением новых функций.
Мягкая заморозка кода не требует подтверждений коммитов в ветку.
[[releng-terms-code-freeze]]
=== Заморозка кода
-Замораживание кода означает момент времени, когда все коммиты в ветку
-требуют явного одобрения от {teamRe}.
+Замораживание кода означает момент времени, когда все коммиты в ветку требуют явного одобрения от {teamRe}.
-Репозиторий FreeBSD Git содержит несколько хуков для выполнения проверок
-перед тем, как изменения будут зафиксированы в дереве. Один из этих хуков
-проверяет, требуются ли специальные разрешения для фиксации изменений в
-определённой ветке.
+Репозиторий FreeBSD Git содержит несколько хуков для выполнения проверок перед тем, как изменения будут зафиксированы в дереве. Один из этих хуков проверяет, требуются ли специальные разрешения для фиксации изменений в определённой ветке.
-Для обеспечения утверждения коммитов командой {teamRe}, команда Release
-Engineering должна утверждать любые изменения в ветке. В этом случае журнал
-коммитов должен содержать строку `Approved by: re (логин)`, где "логин" —
-это идентификатор утверждающего.
+Для обеспечения утверждения коммитов командой {teamRe}, команда Release Engineering должна утверждать любые изменения в ветке. В этом случае журнал коммитов должен содержать строку `Approved by: re (логин)`, где "логин" — это идентификатор утверждающего.
[NOTE]
====
-Во время заморозки кода участники проекта FreeBSD должны следовать
-link:https://wiki.freebsd.org/Releng/ChangeRequestGuidelines[Рекомендациям
-по запросам изменений].
+Во время заморозки кода участники проекта FreeBSD должны следовать link:https://wiki.freebsd.org/Releng/ChangeRequestGuidelines[Рекомендациям по запросам изменений].
====
[[releng-terms-kbi-freeze]]
=== Замораживание KBI/KPI
-KBI/KPI стабильность подразумевает, что вызов функции в двух разных релизах
-программного обеспечения, реализующего эту функцию, приводит к одинаковому
-конечному состоянию. Вызывающая сторона, будь то процесс, поток или функция,
-ожидает, что функция будет работать определённым образом, в противном случае
-стабильность KBI/KPI на ветке нарушается.
+KBI/KPI стабильность подразумевает, что вызов функции в двух разных релизах программного обеспечения, реализующего эту функцию, приводит к одинаковому конечному состоянию. Вызывающая сторона, будь то процесс, поток или функция, ожидает, что функция будет работать определённым образом, в противном случае стабильность KBI/KPI на ветке нарушается.
[[releng-website]]
== Изменения на веб-сайте в течение цикла выпуска
-Этот раздел описывает изменения на веб-сайте, которые должны происходить по
-мере развития цикла выпуска.
+Этот раздел описывает изменения на веб-сайте, которые должны происходить по мере развития цикла выпуска.
[NOTE]
====
-Файлы, указанные в этом разделе, относятся к ветке `{branchHead}`
-репозитория `doc`.
+Файлы, указанные в этом разделе, относятся к ветке `{branchHead}` репозитория `doc`.
====
[[releng-website-prerelease]]
=== Изменения на веб-сайте перед началом цикла выпуска
-Когда график цикла выпуска становится доступным, эти файлы необходимо
-обновить, чтобы включить различные функции на веб-сайте проекта FreeBSD:
+Когда график цикла выпуска становится доступным, эти файлы необходимо обновить, чтобы включить различные функции на веб-сайте проекта FreeBSD:
[.informaltable]
[cols="1,1", frame="none", options="header"]
@@ -375,10 +296,7 @@ KBI/KPI стабильность подразумевает, что вызов
[[releng-website-beta-rc]]
=== Изменения на веб-сайте в период `BETA` или `RC`
-При переходе от `PRERELEASE` к `BETA` эти файлы необходимо обновить, чтобы
-включить блок "Help Test (Помогите протестировать)" на странице
-загрузки. Все файлы указаны относительно [.filename]#head/# в репозитории
-`doc`:
+При переходе от `PRERELEASE` к `BETA` эти файлы необходимо обновить, чтобы включить блок "Help Test (Помогите протестировать)" на странице загрузки. Все файлы указаны относительно [.filename]#head/# в репозитории `doc`:
[.informaltable]
[cols="1,1", frame="none", options="header"]
@@ -399,58 +317,40 @@ KBI/KPI стабильность подразумевает, что вызов
|Добавьте новую `BETA`, `RC` или финальную `RELEASE` в шаблон
|===
-После создания ветки {branchRelengx} необходимо добавить различные
-документы, связанные с выпуском, в репозиторий `doc/`.
+После создания ветки {branchRelengx} необходимо добавить различные документы, связанные с выпуском, в репозиторий `doc/`.
[NOTE]
====
-Соответствующие документы, связанные с выпусками, находятся в репозитории
-[.filename]#doc# для FreeBSD 12.x и более поздних версий.
+Соответствующие документы, связанные с выпусками, находятся в репозитории [.filename]#doc# для FreeBSD 12.x и более поздних версий.
====
[[releng-ports-beta-rc]]
=== Изменения в портах во время `BETA`, `RC` и финального `RELEASE`
-Для каждой сборки в течение цикла выпуска файлы `MANIFEST`, содержащие
-`SHA256` для различных наборов дистрибутива, таких как `base.txz`,
-`kernel.txz` и других, добавляются в порт
-package:misc/freebsd-release-manifests[]. Это позволяет другим утилитам,
-кроме , таким как package:ports-mgmt/poudriere[], безопасно использовать эти
-наборы дистрибутива, предоставляя механизм для проверки контрольных сумм.
+Для каждой сборки в течение цикла выпуска файлы `MANIFEST`, содержащие `SHA256` для различных наборов дистрибутива, таких как `base.txz`, `kernel.txz` и других, добавляются в порт package:misc/freebsd-release-manifests[]. Это позволяет другим утилитам, кроме , таким как package:ports-mgmt/poudriere[], безопасно использовать эти наборы дистрибутива, предоставляя механизм для проверки контрольных сумм.
[[releng-head]]
== Выпуск релиза от {branchHead}
-Этот раздел описывает общие процедуры цикла выпуска FreeBSD из ветки
-{branchHead}.
+Этот раздел описывает общие процедуры цикла выпуска FreeBSD из ветки {branchHead}.
[[releng-head-builds-alpha]]
=== FreeBSD "`ALPHA`" сборки
-Начиная с цикла выпуска FreeBSD 10.0-RELEASE, было введено понятие сборок
-"`ALPHA`". В отличие от сборок `BETA` и `RC`, сборки `ALPHA` не включены в
-график выпуска FreeBSD.
+Начиная с цикла выпуска FreeBSD 10.0-RELEASE, было введено понятие сборок "`ALPHA`". В отличие от сборок `BETA` и `RC`, сборки `ALPHA` не включены в график выпуска FreeBSD.
-Идея сборок `ALPHA` заключается в предоставлении регулярных сборок FreeBSD
-до создания ветки {branchStable}.
+Идея сборок `ALPHA` заключается в предоставлении регулярных сборок FreeBSD до создания ветки {branchStable}.
Снимки состояния `ALPHA` FreeBSD должны собираться примерно раз в неделю.
-Для первой сборки `ALPHA` значение `BRANCH` в
-[.filename]#sys/conf/newvers.sh# необходимо изменить с `CURRENT` на
-`ALPHA1`. Для последующих сборок `ALPHA` увеличивайте каждое значение
-`ALPHA__N__` на единицу.
+Для первой сборки `ALPHA` значение `BRANCH` в [.filename]#sys/conf/newvers.sh# необходимо изменить с `CURRENT` на `ALPHA1`. Для последующих сборок `ALPHA` увеличивайте каждое значение `ALPHA__N__` на единицу.
-См. crossref:freebsd-releng[releng-building, Сборка установочных носителей
-FreeBSD] для получения информации о сборке образов `ALPHA`.
+См. crossref:freebsd-releng[releng-building, Сборка установочных носителей FreeBSD] для получения информации о сборке образов `ALPHA`.
[[releng-head-branching]]
=== Создание ветки {branchStablex}
-При создании ветки {branchStable} необходимо внести несколько изменений как
-в новой ветке {branchStable}, так и в ветке {branchHead}. Указанные файлы
-относятся к корню репозитория. Чтобы создать новую ветку {branchStablex} в
-Git:
+При создании ветки {branchStable} необходимо внести несколько изменений как в новой ветке {branchStable}, так и в ветке {branchHead}. Указанные файлы относятся к корню репозитория. Чтобы создать новую ветку {branchStablex} в Git:
[NOTE]
====
@@ -559,15 +459,12 @@ a|
[[releng-stable]]
== Выпуск релиза от {branchStable}
-Этот раздел описывает общие процедуры цикла выпуска FreeBSD из установленной
-ветки {branchStable}.
+Этот раздел описывает общие процедуры цикла выпуска FreeBSD из установленной ветки {branchStable}.
[[releng-stable-slush]]
=== Мягкая заморозка кода ветки `stable` FreeBSD
-В рамках подготовки к заморозке кода в ветке `stable` необходимо обновить
-несколько файлов, чтобы отразить официальное начало цикла выпуска. Эти файлы
-находятся в корневом каталоге ветки stable:
+В рамках подготовки к заморозке кода в ветке `stable` необходимо обновить несколько файлов, чтобы отразить официальное начало цикла выпуска. Эти файлы находятся в корневом каталоге ветки stable:
[.informaltable]
[cols="1,1", frame="none", options="header"]
@@ -591,36 +488,21 @@ a|
[[releng-stable-builds-beta]]
=== Сборки FreeBSD `BETA`
-После периода мягкой заморозки следующая фаза цикла выпуска — это заморозка
-кода. На этом этапе все коммиты в стабильную ветку требуют явного одобрения
-от {teamRe}. Это контролируется {git-admin-email}, который управляет
-репозиторием.
+После периода мягкой заморозки следующая фаза цикла выпуска — это заморозка кода. На этом этапе все коммиты в стабильную ветку требуют явного одобрения от {teamRe}. Это контролируется {git-admin-email}, который управляет репозиторием.
[NOTE]
====
-Существует два общих исключения, когда не требуется подтверждение коммита во
-время цикла выпуска. Первое — любые изменения, которые необходимо
-закоммитить инженеру выпуска для продолжения ежедневной работы цикла
-выпуска. Второе — исправления безопасности, которые могут возникнуть во
-время цикла выпуска.
+Существует два общих исключения, когда не требуется подтверждение коммита во время цикла выпуска. Первое — любые изменения, которые необходимо закоммитить инженеру выпуска для продолжения ежедневной работы цикла выпуска. Второе — исправления безопасности, которые могут возникнуть во время цикла выпуска.
====
-После вступления в силу заморозки кода следующая сборка из ветки помечается
-как `BETA1`. Это делается путём изменения значения `BRANCH` в файле
-[.filename]#sys/conf/newvers.sh# с `PRERELEASE` на `BETA1`.
+После вступления в силу заморозки кода следующая сборка из ветки помечается как `BETA1`. Это делается путём изменения значения `BRANCH` в файле [.filename]#sys/conf/newvers.sh# с `PRERELEASE` на `BETA1`.
-После этого начинается первая сборка `BETA`. Последующие сборки `BETA` не
-требуют обновления каких-либо файлов, кроме
-[.filename]#sys/conf/newvers.sh#, с увеличением номера сборки `BETA`.
+После этого начинается первая сборка `BETA`. Последующие сборки `BETA` не требуют обновления каких-либо файлов, кроме [.filename]#sys/conf/newvers.sh#, с увеличением номера сборки `BETA`.
[[releng-stable-branching]]
=== Создание ветки {branchRelengx}
-Когда первая сборка `RC` (Release Candidate) готова к началу, создается
-ветка {branchReleng}. Это многоэтапный процесс, который должен выполняться в
-определенном порядке, чтобы избежать аномалий, таких как пересечения
-значений `__FreeBSD_version`, например. Указанные ниже пути относятся к
-корню репозитория. Порядок коммитов и что нужно изменить:
+Когда первая сборка `RC` (Release Candidate) готова к началу, создается ветка {branchReleng}. Это многоэтапный процесс, который должен выполняться в определенном порядке, чтобы избежать аномалий, таких как пересечения значений `__FreeBSD_version`, например. Указанные ниже пути относятся к корню репозитория. Порядок коммитов и что нужно изменить:
[NOTE]
====
@@ -660,8 +542,7 @@ a|
|Обновите `__FreeBSD_version`
|===
-Затем {git-admin-email} добавляет новых утверждающих для ветки releng, как
-это было сделано для ветки stable.
+Затем {git-admin-email} добавляет новых утверждающих для ветки releng, как это было сделано для ветки stable.
[source, shell, subs="attributes"]
....
@@ -669,53 +550,32 @@ a|
% git commit
....
-Теперь, когда существуют два новых значения `__FreeBSD_version`, также
-обновите файл
-[.filename]#~/documentation/content/en/books/porters-handbook/versions/chapter.adoc#
-в репозитории проекта документации.
+Теперь, когда существуют два новых значения `__FreeBSD_version`, также обновите файл [.filename]#~/documentation/content/en/books/porters-handbook/versions/chapter.adoc# в репозитории проекта документации.
-После завершения первой сборки `RC` и её тестирования ветку {branchStable}
-можно «разморозить» с помощью {git-admin-email}.
+После завершения первой сборки `RC` и её тестирования ветку {branchStable} можно «разморозить» с помощью {git-admin-email}.
-После появления первой версии `RC` необходимо отправить письмо команде
-{teamBugmeister}, чтобы добавить новую версию FreeBSD `-RELEASE` в список
-`versions`, доступный в выпадающем меню трекера ошибок.
+После появления первой версии `RC` необходимо отправить письмо команде {teamBugmeister}, чтобы добавить новую версию FreeBSD `-RELEASE` в список `versions`, доступный в выпадающем меню трекера ошибок.
[[releng-building]]
== Создание установочных носителей FreeBSD
-Этот раздел описывает общие процедуры создания снимков разработки и выпусков
-FreeBSD.
+Этот раздел описывает общие процедуры создания снимков разработки и выпусков FreeBSD.
[[releng-build-scripts]]
=== Скрипты сборки релизов
-До выхода FreeBSD 9.0-RELEASE файл [.filename]#src/release/Makefile# был
-обновлен для поддержки , а скрипт
-[.filename]#src/release/generate-release.sh# был добавлен в качестве обертки
-для автоматизации вызова целей.
+До выхода FreeBSD 9.0-RELEASE файл [.filename]#src/release/Makefile# был обновлен для поддержки , а скрипт [.filename]#src/release/generate-release.sh# был добавлен в качестве обертки для автоматизации вызова целей.
-До выхода FreeBSD 9.2-RELEASE был представлен
-[.filename]#src/release/release.sh#, который, основываясь на
-[.filename]#src/release/generate-release.sh#, включал поддержку указания
-конфигурационных файлов для переопределения различных опций и переменных
-окружения. Поддержка конфигурационных файлов обеспечила возможность
-кросс-сборки каждого архитектурного варианта для релиза путем указания
-отдельного конфигурационного файла для каждого вызова.
+До выхода FreeBSD 9.2-RELEASE был представлен [.filename]#src/release/release.sh#, который, основываясь на [.filename]#src/release/generate-release.sh#, включал поддержку указания конфигурационных файлов для переопределения различных опций и переменных окружения. Поддержка конфигурационных файлов обеспечила возможность кросс-сборки каждого архитектурного варианта для релиза путем указания отдельного конфигурационного файла для каждого вызова.
-В качестве краткого примера использования
-[.filename]#src/release/release.sh# для сборки одного релиза в
-[.filename]#/scratch#:
+В качестве краткого примера использования [.filename]#src/release/release.sh# для сборки одного релиза в [.filename]#/scratch#:
[source, shell, subs="attributes"]
....
# /bin/sh /usr/src/release/release.sh
....
-В качестве краткого примера использования
-[.filename]#src/release/release.sh# для сборки единого кросс-собранного
-выпуска с использованием другого целевого каталога, создайте
-пользовательский [.filename]#release.conf#, содержащий:
+В качестве краткого примера использования [.filename]#src/release/release.sh# для сборки единого кросс-собранного выпуска с использованием другого целевого каталога, создайте пользовательский [.filename]#release.conf#, содержащий:
[.programlisting, subs="attributes"]
....
@@ -733,18 +593,12 @@ KERNEL="GENERIC64"
# /bin/sh /usr/src/release/release.sh -c $HOME/release.conf
....
-См. [.filename]#src/release/release.conf.sample# для получения
-дополнительных сведений и примеров использования.
+См. [.filename]#src/release/release.conf.sample# для получения дополнительных сведений и примеров использования.
[[releng-build-release]]
=== Сборка релизов FreeBSD
-В течение цикла выпуска копии файлов [.filename]#CHECKSUM.SHA512# и
-[.filename]#CHECKSUM.SHA256# для каждой архитектуры сохраняются во
-внутреннем репозитории {teamRe}, а также включаются в различные рассылки с
-объявлениями. Каждый файл [.filename]#MANIFEST#, содержащий хеши
-[.filename]#base.txz#, [.filename]#kernel.txz# и других, также добавляется в
-пакет package:misc/freebsd-release-manifests[] в Коллекции портов.
+В течение цикла выпуска копии файлов [.filename]#CHECKSUM.SHA512# и [.filename]#CHECKSUM.SHA256# для каждой архитектуры сохраняются во внутреннем репозитории {teamRe}, а также включаются в различные рассылки с объявлениями. Каждый файл [.filename]#MANIFEST#, содержащий хеши [.filename]#base.txz#, [.filename]#kernel.txz# и других, также добавляется в пакет package:misc/freebsd-release-manifests[] в Коллекции портов.
В подготовке к сборке выпуска необходимо обновить несколько файлов:
@@ -764,10 +618,7 @@ KERNEL="GENERIC64"
|Замените `__FreeBSD_version` на значение из [.filename]#sys/sys/param.h#
|===
-После сборки окончательного `RELEASE`, ветка {branchRelengx} помечается как
-{tagReleasex}, используя ревизию, из которой был собран
-`RELEASE`. Аналогично созданию веток {branchStablex} и {branchRelengx}, это
-делается с помощью `git tag`. Из корня репозитория:
+После сборки окончательного `RELEASE`, ветка {branchRelengx} помечается как {tagReleasex}, используя ревизию, из которой был собран `RELEASE`. Аналогично созданию веток {branchStablex} и {branchRelengx}, это делается с помощью `git tag`. Из корня репозитория:
[NOTE]
====
@@ -782,73 +633,47 @@ KERNEL="GENERIC64"
[[releng-mirrors]]
== Публикация установочных носителей FreeBSD на зеркалах проекта
-Этот раздел описывает процедуру публикации снимков разработки FreeBSD и
-выпусков на зеркала Проекта.
+Этот раздел описывает процедуру публикации снимков разработки FreeBSD и выпусков на зеркала Проекта.
[[releng-mirrors-staging]]
=== Подготовка образов установочных носителей FreeBSD
-Этап подготовки (staging) снимков и выпусков FreeBSD — это двухэтапный
-процесс:
+Этап подготовки (staging) снимков и выпусков FreeBSD — это двухэтапный процесс:
* Создание структуры каталогов, соответствующей иерархии на `ftp-master`
+
-Если `EVERYTHINGISFINE` определено в конфигурационных файлах сборки,
-[.filename]#main.conf# в случае скриптов сборки, упомянутых выше, это
-происходит автоматически после завершения сборки, создавая структуру
-каталогов в [.filename]#${DESTDIR}/R/ftp-stage# с путями, соответствующими
-ожидаемым на `ftp-master`. Это эквивалентно выполнению следующего в
-директории:
+Если `EVERYTHINGISFINE` определено в конфигурационных файлах сборки, [.filename]#main.conf# в случае скриптов сборки, упомянутых выше, это происходит автоматически после завершения сборки, создавая структуру каталогов в [.filename]#${DESTDIR}/R/ftp-stage# с путями, соответствующими ожидаемым на `ftp-master`. Это эквивалентно выполнению следующего в директории:
+
[source, shell, subs="attributes"]
....
# make -C /usr/src/release -f Makefile.mirrors EVERYTHINGISFINE=1 ftp-stage
....
+
-После сборки каждой архитектуры скрипт [.filename]#thermite.sh# выполнит
-синхронизацию [.filename]#${DESTDIR}/R/ftp-stage# с билда в директории
-[.filename]#/snap/ftp/snapshots# или [.filename]#/snap/ftp/releases# на
-хосте сборки, соответственно.
-* Копирование файлов в промежуточный каталог на `ftp-master` перед
- перемещением файлов в [.filename]#pub/# для начала распространения на
- зеркала Проекта
+После сборки каждой архитектуры скрипт [.filename]#thermite.sh# выполнит синхронизацию [.filename]#${DESTDIR}/R/ftp-stage# с билда в директории [.filename]#/snap/ftp/snapshots# или [.filename]#/snap/ftp/releases# на хосте сборки, соответственно.
+* Копирование файлов в промежуточный каталог на `ftp-master` перед перемещением файлов в [.filename]#pub/# для начала распространения на зеркала Проекта
+
-После завершения всех сборок каталог [.filename]#/snap/ftp/snapshots# (или
-[.filename]#/snap/ftp/releases# для релиза) опрашивается `ftp-master`-ом с
-использованием rsync для передачи в [.filename]#/archive/tmp/snapshots# или
-[.filename]#/archive/tmp/releases#, соответственно.
+После завершения всех сборок каталог [.filename]#/snap/ftp/snapshots# (или [.filename]#/snap/ftp/releases# для релиза) опрашивается `ftp-master`-ом с использованием rsync для передачи в [.filename]#/archive/tmp/snapshots# или [.filename]#/archive/tmp/releases#, соответственно.
+
[NOTE]
====
-На `ftp-master` в инфраструктуре проекта FreeBSD этот шаг требует доступа
-уровня `root`, так как он должен выполняться от имени пользователя
-`archive`.
+На `ftp-master` в инфраструктуре проекта FreeBSD этот шаг требует доступа уровня `root`, так как он должен выполняться от имени пользователя `archive`.
====
[[releng-mirrors-publishing]]
=== Публикация установочных носителей FreeBSD
-Как только образы размещены в [.filename]#/archive/tmp/#, они готовы к
-публикации путем размещения в [.filename]#/archive/pub/FreeBSD#. Для
-уменьшения времени распространения используются жесткие ссылки из
-[.filename]#/archive/tmp# в [.filename]#/archive/pub/FreeBSD#.
+Как только образы размещены в [.filename]#/archive/tmp/#, они готовы к публикации путем размещения в [.filename]#/archive/pub/FreeBSD#. Для уменьшения времени распространения используются жесткие ссылки из [.filename]#/archive/tmp# в [.filename]#/archive/pub/FreeBSD#.
[NOTE]
====
-Для эффективной работы и [.filename]#/archive/tmp#, и
-[.filename]#/archive/pub# должны находиться в одной логической файловой
-системе.
+Для эффективной работы и [.filename]#/archive/tmp#, и [.filename]#/archive/pub# должны находиться в одной логической файловой системе.
====
-Однако есть оговорка: после этого необходимо использовать rsync для
-исправления символических ссылок в
-[.filename]#pub/FreeBSD/snapshots/ISO-IMAGES#, которые будут заменены на
-жёсткие ссылки, что увеличит время распространения.
+Однако есть оговорка: после этого необходимо использовать rsync для исправления символических ссылок в [.filename]#pub/FreeBSD/snapshots/ISO-IMAGES#, которые будут заменены на жёсткие ссылки, что увеличит время распространения.
[NOTE]
====
-Как и на этапе подготовки, это требует доступа уровня `root`, так как данный
-шаг должен быть выполнен от имени пользователя `archive`.
+Как и на этапе подготовки, это требует доступа уровня `root`, так как данный шаг должен быть выполнен от имени пользователя `archive`.
====
Как пользователь `archive`:
@@ -870,52 +695,33 @@ KERNEL="GENERIC64"
[[releng-wrapup-en]]
=== Уведомления об исправлениях после выпуска
-По мере приближения цикла выпуска к завершению часто появляются несколько
-кандидатов в EN (Errata Notice — уведомления об ошибках) для устранения
-проблем, обнаруженных на поздних этапах цикла. После выпуска {teamRe} и
-{teamSecteam} пересматривают изменения, которые не были одобрены до
-финального выпуска, и, в зависимости от масштаба рассматриваемого изменения,
-могут выпустить EN.
+По мере приближения цикла выпуска к завершению часто появляются несколько кандидатов в EN (Errata Notice — уведомления об ошибках) для устранения проблем, обнаруженных на поздних этапах цикла. После выпуска {teamRe} и {teamSecteam} пересматривают изменения, которые не были одобрены до финального выпуска, и, в зависимости от масштаба рассматриваемого изменения, могут выпустить EN.
[NOTE]
====
Фактический процесс выпуска EN обрабатывается командой {teamSecteam}.
====
-Для запроса уведомления об ошибке после завершения цикла выпуска разработчик
-должен заполнить https://www.freebsd.org/security/errata-template.txt[шаблон
-уведомления об ошибке], в частности разделы `Предыстория`, `Описание
-проблемы`, `Последствия` и, если применимо, `Обходное решение`.
+Для запроса уведомления об ошибке после завершения цикла выпуска разработчик должен заполнить https://www.freebsd.org/security/errata-template.txt[шаблон уведомления об ошибке], в частности разделы `Предыстория`, `Описание проблемы`, `Последствия` и, если применимо, `Обходное решение`.
-Заполненный шаблон уведомления об ошибке следует отправить по электронной
-почте вместе с патчем для ветки {branchReleng} или списком ревизий из ветки
-{branchStable}.
+Заполненный шаблон уведомления об ошибке следует отправить по электронной почте вместе с патчем для ветки {branchReleng} или списком ревизий из ветки {branchStable}.
-Для запросов на уведомления об ошибках (Errata Notice), поступающих сразу
-после выпуска, запрос следует отправлять по электронной почте как в
-{teamRe}, так и в {teamSecteam}. После того как ветка {branchReleng}
-передана {teamSecteam}, как описано в
-crossref:freebsd-releng[releng-wrapup-handoff, Передача {teamSecteam}],
-запросы на уведомления об ошибках следует направлять в {teamSecteam}.
+Для запросов на уведомления об ошибках (Errata Notice), поступающих сразу после выпуска, запрос следует отправлять по электронной почте как в {teamRe}, так и в {teamSecteam}. После того как ветка {branchReleng} передана {teamSecteam}, как описано в crossref:freebsd-releng[releng-wrapup-handoff, Передача {teamSecteam}], запросы на уведомления об ошибках следует направлять в {teamSecteam}.
[[releng-wrapup-handoff]]
=== Передача в {teamSecteam}
-Примерно через две недели после выпуска релиза инженер по релизам обновляет
-репозиторий Git, изменяя утверждающего с команды инженеров по релизам на
-офицера безопасности для ветки `{branchRelengx}`.
+Примерно через две недели после выпуска релиза инженер по релизам обновляет репозиторий Git, изменяя утверждающего с команды инженеров по релизам на офицера безопасности для ветки `{branchRelengx}`.
[[releng-eol]]
== Конец срока поддержки выпуска
-Этот раздел описывает файлы, связанные с веб-сайтом, которые необходимо
-обновить, когда выпуск достигает EoL (End-of-Life).
+Этот раздел описывает файлы, связанные с веб-сайтом, которые необходимо обновить, когда выпуск достигает EoL (End-of-Life).
[[releng-eol-website]]
=== Обновления веб-сайта для прекращения поддержки
-Когда выпуск достигает конца жизненного цикла, ссылки на этот выпуск должны
-быть удалены и/или обновлены на веб-сайте:
+Когда выпуск достигает конца жизненного цикла, ссылки на этот выпуск должны быть удалены и/или обновлены на веб-сайте:
[.informaltable]
[cols="1,1", frame="none", options="header"]
diff --git a/documentation/content/ru/articles/freebsd-releng/_index.po b/documentation/content/ru/articles/freebsd-releng/_index.po
index 5b923d0260..4fd7e04a54 100644
--- a/documentation/content/ru/articles/freebsd-releng/_index.po
+++ b/documentation/content/ru/articles/freebsd-releng/_index.po
@@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-09-22 22:37+0300\n"
+"POT-Creation-Date: 2024-12-29 08:30-0500\n"
"PO-Revision-Date: 2025-08-08 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
@@ -18,11 +18,16 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/articles/freebsd-releng/_index.adoc:1
#, no-wrap
msgid "Describes the approach used by the FreeBSD release engineering team to make production quality releases of the FreeBSD Operating System. It describes the tools available for those interested in producing customized FreeBSD releases for corporate rollouts or commercial productization"
-msgstr "Описывает подход, используемый командой разработки релизов FreeBSD для создания релизов операционной системы FreeBSD производственного качества. В нем описаны инструменты, доступные тем, кто заинтересован в создании настраиваемых релизов FreeBSD для корпоративного внедрения или коммерческой продуктивизации"
+msgstr ""
+"Описывает подход, используемый командой разработки релизов FreeBSD для "
+"создания релизов операционной системы FreeBSD производственного качества. В "
+"нем описаны инструменты, доступные тем, кто заинтересован в создании "
+"настраиваемых релизов FreeBSD для корпоративного внедрения или коммерческой "
+"продуктивизации"
#. type: Title =
#: documentation/content/en/articles/freebsd-releng/_index.adoc:1
@@ -62,8 +67,8 @@ msgid ""
"which reflects the top of the source tree."
msgstr ""
"Разработка FreeBSD следует очень специфичному рабочему процессу. В общем "
-"случае все изменения в базовой системе FreeBSD вносятся в ветку "
-"{branchHead}, которая отражает вершину дерева исходного кода."
+"случае все изменения в базовой системе FreeBSD вносятся в ветку {branchHead}"
+", которая отражает вершину дерева исходного кода."
#. type: Plain text
#: documentation/content/en/articles/freebsd-releng/_index.adoc:78
@@ -142,7 +147,9 @@ msgstr "Общая информация и подготовка перед на
#: documentation/content/en/articles/freebsd-releng/_index.adoc:94
#, no-wrap
msgid "crossref:freebsd-releng[releng-website, Website Changes During the Release Cycle]"
-msgstr "crossref:freebsd-releng[releng-website, Изменения на веб-сайте в течение цикла выпуска]"
+msgstr ""
+"crossref:freebsd-releng[releng-website, Изменения на веб-сайте в течение "
+"цикла выпуска]"
#. type: Title ==
#: documentation/content/en/articles/freebsd-releng/_index.adoc:96
@@ -192,7 +199,9 @@ msgstr "Процесс Release Engineering для \"точечного\" вып
#: documentation/content/en/articles/freebsd-releng/_index.adoc:106
#, no-wrap
msgid "crossref:freebsd-releng[releng-building, Building FreeBSD Installation Media]"
-msgstr "crossref:freebsd-releng[releng-building, Создание установочных носителей FreeBSD]"
+msgstr ""
+"crossref:freebsd-releng[releng-building, Создание установочных носителей "
+"FreeBSD]"
#. type: Plain text
#: documentation/content/en/articles/freebsd-releng/_index.adoc:108
@@ -206,7 +215,9 @@ msgstr ""
#: documentation/content/en/articles/freebsd-releng/_index.adoc:109
#, no-wrap
msgid "crossref:freebsd-releng[releng-mirrors, Publishing FreeBSD Installation Media to Project Mirrors]"
-msgstr "crossref:freebsd-releng[releng-mirrors, Публикация установочных носителей FreeBSD на зеркалах проекта]"
+msgstr ""
+"crossref:freebsd-releng[releng-mirrors, Публикация установочных носителей "
+"FreeBSD на зеркалах проекта]"
#. type: Plain text
#: documentation/content/en/articles/freebsd-releng/_index.adoc:111
@@ -635,12 +646,11 @@ msgstr ""
#: documentation/content/en/articles/freebsd-releng/_index.adoc:235
msgid ""
"The schedule is also added to the Project website, in the `doc/` repository, "
-"in [.filename]#~/website/content/en/releases/{branchRevision}R/"
-"schedule.adoc#. This file is continuously updated as the release cycle "
-"progresses."
+"in [.filename]#~/website/content/en/releases/{branchRevision}R/schedule."
+"adoc#. This file is continuously updated as the release cycle progresses."
msgstr ""
-"Расписание также добавляется на сайт проекта в репозитории `doc/`, в файле "
-"[.filename]#~/website/content/en/releases/{branchRevision}R/schedule.adoc#. "
+"Расписание также добавляется на сайт проекта в репозитории `doc/`, в файле [."
+"filename]#~/website/content/en/releases/{branchRevision}R/schedule.adoc#. "
"Этот файл постоянно обновляется по мере прохождения цикла выпуска."
#. type: delimited block = 4
@@ -655,13 +665,13 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/freebsd-releng/_index.adoc:242
msgid ""
-"In addition to adding [.filename]#schedule.adoc# to the website, "
-"[.filename]#~/shared/releases.adoc# is also updated to add the link to the "
+"In addition to adding [.filename]#schedule.adoc# to the website, [."
+"filename]#~/shared/releases.adoc# is also updated to add the link to the "
"schedule to various subpages, as well as enabling the link to the schedule "
"on the Project website index page."
msgstr ""
-"В дополнение к добавлению [.filename]#schedule.adoc# на веб-сайт, файл "
-"[.filename]#~/shared/releases.adoc# также обновляется, чтобы добавить ссылку "
+"В дополнение к добавлению [.filename]#schedule.adoc# на веб-сайт, файл [."
+"filename]#~/shared/releases.adoc# также обновляется, чтобы добавить ссылку "
"на расписание на различные подстраницы, а также включить ссылку на "
"расписание на главной странице веб-сайта проекта."
@@ -763,8 +773,8 @@ msgstr ""
#. type: delimited block = 4
#: documentation/content/en/articles/freebsd-releng/_index.adoc:272
msgid ""
-"During the code freeze, FreeBSD committers are urged to follow the "
-"link:https://wiki.freebsd.org/Releng/ChangeRequestGuidelines[Change Request "
+"During the code freeze, FreeBSD committers are urged to follow the link:"
+"https://wiki.freebsd.org/Releng/ChangeRequestGuidelines[Change Request "
"Guidelines]."
msgstr ""
"Во время заморозки кода участники проекта FreeBSD должны следовать "
@@ -941,8 +951,8 @@ msgid ""
"The relevant release-related documents exist in the [.filename]#doc# "
"repository for FreeBSD 12.x and later."
msgstr ""
-"Соответствующие документы, связанные с выпусками, находятся в репозитории "
-"[.filename]#doc# для FreeBSD 12.x и более поздних версий."
+"Соответствующие документы, связанные с выпусками, находятся в репозитории [."
+"filename]#doc# для FreeBSD 12.x и более поздних версий."
#. type: Title ===
#: documentation/content/en/articles/freebsd-releng/_index.adoc:341
@@ -961,11 +971,11 @@ msgid ""
"the checksums can be verified."
msgstr ""
"Для каждой сборки в течение цикла выпуска файлы `MANIFEST`, содержащие "
-"`SHA256` для различных наборов дистрибутива, таких как `base.txz`, "
-"`kernel.txz` и других, добавляются в порт package:misc/freebsd-release-"
-"manifests[]. Это позволяет другим утилитам, кроме , таким как package:ports-"
-"mgmt/poudriere[], безопасно использовать эти наборы дистрибутива, "
-"предоставляя механизм для проверки контрольных сумм."
+"`SHA256` для различных наборов дистрибутива, таких как `base.txz`, `kernel."
+"txz` и других, добавляются в порт package:misc/freebsd-release-manifests[]. "
+"Это позволяет другим утилитам, кроме , таким как package:ports-mgmt/"
+"poudriere[], безопасно использовать эти наборы дистрибутива, предоставляя "
+"механизм для проверки контрольных сумм."
#. type: Title ==
#: documentation/content/en/articles/freebsd-releng/_index.adoc:347
@@ -995,8 +1005,8 @@ msgid ""
"builds was introduced. Unlike the `BETA` and `RC` builds, `ALPHA` builds "
"are not included in the FreeBSD Release schedule."
msgstr ""
-"Начиная с цикла выпуска FreeBSD 10.0-RELEASE, было введено понятие сборок "
-"\"`ALPHA`\". В отличие от сборок `BETA` и `RC`, сборки `ALPHA` не включены в "
+"Начиная с цикла выпуска FreeBSD 10.0-RELEASE, было введено понятие сборок \""
+"`ALPHA`\". В отличие от сборок `BETA` и `RC`, сборки `ALPHA` не включены в "
"график выпуска FreeBSD."
#. type: Plain text
@@ -1021,9 +1031,9 @@ msgid ""
"newvers.sh# needs to be changed from `CURRENT` to `ALPHA1`. For subsequent "
"`ALPHA` builds, increment each `ALPHA__N__` value by one."
msgstr ""
-"Для первой сборки `ALPHA` значение `BRANCH` в [.filename]#sys/conf/"
-"newvers.sh# необходимо изменить с `CURRENT` на `ALPHA1`. Для последующих "
-"сборок `ALPHA` увеличивайте каждое значение `ALPHA__N__` на единицу."
+"Для первой сборки `ALPHA` значение `BRANCH` в [.filename]#sys/conf/newvers."
+"sh# необходимо изменить с `CURRENT` на `ALPHA1`. Для последующих сборок "
+"`ALPHA` увеличивайте каждое значение `ALPHA__N__` на единицу."
#. type: Plain text
#: documentation/content/en/articles/freebsd-releng/_index.adoc:365
@@ -1205,13 +1215,17 @@ msgstr "[.filename]#share/mk/src.opts.mk#"
#: documentation/content/en/articles/freebsd-releng/_index.adoc:428
#, no-wrap
msgid "Move `REPRODUCIBLE_BUILD` from `\\__DEFAULT_NO_OPTIONS` to `__DEFAULT_YES_OPTIONS`"
-msgstr "Переместите `REPRODUCIBLE_BUILD` из `\\__DEFAULT_NO_OPTIONS` в `__DEFAULT_YES_OPTIONS`"
+msgstr ""
+"Переместите `REPRODUCIBLE_BUILD` из `\\__DEFAULT_NO_OPTIONS` в "
+"`__DEFAULT_YES_OPTIONS`"
#. type: Table
#: documentation/content/en/articles/freebsd-releng/_index.adoc:431
#, no-wrap
msgid "Move `LLVM_ASSERTIONS` from `\\__DEFAULT_YES_OPTIONS` to `__DEFAULT_NO_OPTIONS`"
-msgstr "Переместите `LLVM_ASSERTIONS` из `\\__DEFAULT_YES_OPTIONS` в `__DEFAULT_NO_OPTIONS`"
+msgstr ""
+"Переместите `LLVM_ASSERTIONS` из `\\__DEFAULT_YES_OPTIONS` в "
+"`__DEFAULT_NO_OPTIONS`"
#. type: Table
#: documentation/content/en/articles/freebsd-releng/_index.adoc:432
@@ -1223,7 +1237,9 @@ msgstr "[.filename]#libexec/rc/rc.conf#"
#: documentation/content/en/articles/freebsd-releng/_index.adoc:434
#, no-wrap
msgid "Set `dumpdev` from `AUTO` to `NO` (it is configurable via for those that want it enabled by default)"
-msgstr "Установите `dumpdev` с `AUTO` на `NO` (это настраивается для тех, кто хочет включить его по умолчанию)"
+msgstr ""
+"Установите `dumpdev` с `AUTO` на `NO` (это настраивается для тех, кто хочет "
+"включить его по умолчанию)"
#. type: Table
#: documentation/content/en/articles/freebsd-releng/_index.adoc:435
@@ -1254,7 +1270,9 @@ msgstr "Обновите версию FreeBSD"
#: documentation/content/en/articles/freebsd-releng/_index.adoc:452
#, no-wrap
msgid "Update the `BRANCH` value to reflect `CURRENT`, and increment `REVISION`"
-msgstr "Обновите значение `BRANCH`, чтобы оно соответствовало `CURRENT`, и увеличьте `REVISION`"
+msgstr ""
+"Обновите значение `BRANCH`, чтобы оно соответствовало `CURRENT`, и увеличьте "
+"`REVISION`"
#. type: Table
#: documentation/content/en/articles/freebsd-releng/_index.adoc:453
@@ -1444,8 +1462,8 @@ msgid ""
"conf/newvers.sh# from `PRERELEASE` to `BETA1`."
msgstr ""
"После вступления в силу заморозки кода следующая сборка из ветки помечается "
-"как `BETA1`. Это делается путём изменения значения `BRANCH` в файле "
-"[.filename]#sys/conf/newvers.sh# с `PRERELEASE` на `BETA1`."
+"как `BETA1`. Это делается путём изменения значения `BRANCH` в файле [."
+"filename]#sys/conf/newvers.sh# с `PRERELEASE` на `BETA1`."
#. type: Plain text
#: documentation/content/en/articles/freebsd-releng/_index.adoc:525
@@ -1455,8 +1473,8 @@ msgid ""
"conf/newvers.sh#, incrementing the `BETA` build number."
msgstr ""
"После этого начинается первая сборка `BETA`. Последующие сборки `BETA` не "
-"требуют обновления каких-либо файлов, кроме [.filename]#sys/conf/"
-"newvers.sh#, с увеличением номера сборки `BETA`."
+"требуют обновления каких-либо файлов, кроме [.filename]#sys/conf/newvers.sh#"
+", с увеличением номера сборки `BETA`."
#. type: Title ===
#: documentation/content/en/articles/freebsd-releng/_index.adoc:527
@@ -1507,7 +1525,9 @@ msgstr "[.filename]#sys/conf/kern.opts.mk#"
#: documentation/content/en/articles/freebsd-releng/_index.adoc:559
#, no-wrap
msgid "Move `REPRODUCIBLE_BUILD` from `__DEFAULT_NO_OPTIONS` to `__DEFAULT_YES_OPTIONS`"
-msgstr "Переместите `REPRODUCIBLE_BUILD` из `__DEFAULT_NO_OPTIONS` в `__DEFAULT_YES_OPTIONS`"
+msgstr ""
+"Переместите `REPRODUCIBLE_BUILD` из `__DEFAULT_NO_OPTIONS` в "
+"`__DEFAULT_YES_OPTIONS`"
#. type: Table
#: documentation/content/en/articles/freebsd-releng/_index.adoc:560
@@ -1520,7 +1540,9 @@ msgstr "[.filename]#etc/pkg/FreeBSD.conf#"
#: documentation/content/en/articles/freebsd-releng/_index.adoc:565
#, no-wrap
msgid "Replace `latest` with `quarterly` as the default package repository location"
-msgstr "Замените `latest` на `quarterly` в качестве расположения репозитория пакетов по умолчанию"
+msgstr ""
+"Замените `latest` на `quarterly` в качестве расположения репозитория пакетов "
+"по умолчанию"
#. type: Table
#: documentation/content/en/articles/freebsd-releng/_index.adoc:563
@@ -1613,26 +1635,25 @@ msgid ""
"introduced as a wrapper to automate invoking the targets."
msgstr ""
"До выхода FreeBSD 9.0-RELEASE файл [.filename]#src/release/Makefile# был "
-"обновлен для поддержки , а скрипт [.filename]#src/release/generate-"
-"release.sh# был добавлен в качестве обертки для автоматизации вызова целей."
+"обновлен для поддержки , а скрипт [.filename]#src/release/generate-release."
+"sh# был добавлен в качестве обертки для автоматизации вызова целей."
#. type: Plain text
#: documentation/content/en/articles/freebsd-releng/_index.adoc:598
msgid ""
"Prior to FreeBSD 9.2-RELEASE, [.filename]#src/release/release.sh# was "
-"introduced, which heavily based on [.filename]#src/release/generate-"
-"release.sh# included support to specify configuration files to override "
-"various options and environment variables. Support for configuration files "
-"provided support for cross building each architecture for a release by "
-"specifying a separate configuration file for each invocation."
+"introduced, which heavily based on [.filename]#src/release/generate-release."
+"sh# included support to specify configuration files to override various "
+"options and environment variables. Support for configuration files provided "
+"support for cross building each architecture for a release by specifying a "
+"separate configuration file for each invocation."
msgstr ""
-"До выхода FreeBSD 9.2-RELEASE был представлен [.filename]#src/release/"
-"release.sh#, который, основываясь на [.filename]#src/release/generate-"
-"release.sh#, включал поддержку указания конфигурационных файлов для "
-"переопределения различных опций и переменных окружения. Поддержка "
-"конфигурационных файлов обеспечила возможность кросс-сборки каждого "
-"архитектурного варианта для релиза путем указания отдельного "
-"конфигурационного файла для каждого вызова."
+"До выхода FreeBSD 9.2-RELEASE был представлен [.filename]#src/release/release"
+".sh#, который, основываясь на [.filename]#src/release/generate-release.sh#, "
+"включал поддержку указания конфигурационных файлов для переопределения "
+"различных опций и переменных окружения. Поддержка конфигурационных файлов "
+"обеспечила возможность кросс-сборки каждого архитектурного варианта для "
+"релиза путем указания отдельного конфигурационного файла для каждого вызова."
#. type: Plain text
#: documentation/content/en/articles/freebsd-releng/_index.adoc:600
@@ -1640,8 +1661,8 @@ msgid ""
"As a brief example of using [.filename]#src/release/release.sh# to build a "
"single release in [.filename]#/scratch#:"
msgstr ""
-"В качестве краткого примера использования [.filename]#src/release/"
-"release.sh# для сборки одного релиза в [.filename]#/scratch#:"
+"В качестве краткого примера использования [.filename]#src/release/release.sh#"
+" для сборки одного релиза в [.filename]#/scratch#:"
#. type: delimited block . 4
#: documentation/content/en/articles/freebsd-releng/_index.adoc:604
@@ -1656,10 +1677,10 @@ msgid ""
"single, cross-built release using a different target directory, create a "
"custom [.filename]#release.conf# containing:"
msgstr ""
-"В качестве краткого примера использования [.filename]#src/release/"
-"release.sh# для сборки единого кросс-собранного выпуска с использованием "
-"другого целевого каталога, создайте пользовательский "
-"[.filename]#release.conf#, содержащий:"
+"В качестве краткого примера использования [.filename]#src/release/release.sh#"
+" для сборки единого кросс-собранного выпуска с использованием другого "
+"целевого каталога, создайте пользовательский [.filename]#release.conf#, "
+"содержащий:"
#. type: delimited block . 4
#: documentation/content/en/articles/freebsd-releng/_index.adoc:615
@@ -1706,18 +1727,18 @@ msgstr "Сборка релизов FreeBSD"
#. type: Plain text
#: documentation/content/en/articles/freebsd-releng/_index.adoc:631
msgid ""
-"During the release cycle, a copy of [.filename]#CHECKSUM.SHA512# and "
-"[.filename]#CHECKSUM.SHA256# for each architecture are stored in the "
-"{teamRe} internal repository in addition to being included in the various "
-"announcement emails. Each [.filename]#MANIFEST# containing the hashes of "
-"[.filename]#base.txz#, [.filename]#kernel.txz#, etc. are added to "
-"package:misc/freebsd-release-manifests[] in the Ports Collection, as well."
-msgstr ""
-"В течение цикла выпуска копии файлов [.filename]#CHECKSUM.SHA512# и "
-"[.filename]#CHECKSUM.SHA256# для каждой архитектуры сохраняются во "
-"внутреннем репозитории {teamRe}, а также включаются в различные рассылки с "
-"объявлениями. Каждый файл [.filename]#MANIFEST#, содержащий хеши "
-"[.filename]#base.txz#, [.filename]#kernel.txz# и других, также добавляется в "
+"During the release cycle, a copy of [.filename]#CHECKSUM.SHA512# and [."
+"filename]#CHECKSUM.SHA256# for each architecture are stored in the {teamRe} "
+"internal repository in addition to being included in the various "
+"announcement emails. Each [.filename]#MANIFEST# containing the hashes of [."
+"filename]#base.txz#, [.filename]#kernel.txz#, etc. are added to package:misc/"
+"freebsd-release-manifests[] in the Ports Collection, as well."
+msgstr ""
+"В течение цикла выпуска копии файлов [.filename]#CHECKSUM.SHA512# и [."
+"filename]#CHECKSUM.SHA256# для каждой архитектуры сохраняются во внутреннем "
+"репозитории {teamRe}, а также включаются в различные рассылки с "
+"объявлениями. Каждый файл [.filename]#MANIFEST#, содержащий хеши [."
+"filename]#base.txz#, [.filename]#kernel.txz# и других, также добавляется в "
"пакет package:misc/freebsd-release-manifests[] в Коллекции портов."
#. type: Plain text
@@ -1747,7 +1768,8 @@ msgstr "[.filename]#lib/csu/common/crtbrand.S#"
#: documentation/content/en/articles/freebsd-releng/_index.adoc:648
#, no-wrap
msgid "Replace `__FreeBSD_version` with the value in [.filename]#sys/sys/param.h#"
-msgstr "Замените `__FreeBSD_version` на значение из [.filename]#sys/sys/param.h#"
+msgstr ""
+"Замените `__FreeBSD_version` на значение из [.filename]#sys/sys/param.h#"
#. type: Plain text
#: documentation/content/en/articles/freebsd-releng/_index.adoc:653
@@ -1809,15 +1831,15 @@ msgstr "Создание структуры каталогов, соответс
#. type: Plain text
#: documentation/content/en/articles/freebsd-releng/_index.adoc:678
msgid ""
-"If `EVERYTHINGISFINE` is defined in the build configuration files, "
-"[.filename]#main.conf# in the case of the build scripts referenced above, "
-"this happens automatically in the after the build is complete, creating the "
+"If `EVERYTHINGISFINE` is defined in the build configuration files, [."
+"filename]#main.conf# in the case of the build scripts referenced above, this "
+"happens automatically in the after the build is complete, creating the "
"directory structure in [.filename]#${DESTDIR}/R/ftp-stage# with a path "
"structure matching what is expected on `ftp-master`. This is equivalent to "
"running the following in the directly:"
msgstr ""
-"Если `EVERYTHINGISFINE` определено в конфигурационных файлах сборки, "
-"[.filename]#main.conf# в случае скриптов сборки, упомянутых выше, это "
+"Если `EVERYTHINGISFINE` определено в конфигурационных файлах сборки, [."
+"filename]#main.conf# в случае скриптов сборки, упомянутых выше, это "
"происходит автоматически после завершения сборки, создавая структуру "
"каталогов в [.filename]#${DESTDIR}/R/ftp-stage# с путями, соответствующими "
"ожидаемым на `ftp-master`. Это эквивалентно выполнению следующего в "
@@ -1827,20 +1849,21 @@ msgstr ""
#: documentation/content/en/articles/freebsd-releng/_index.adoc:682
#, no-wrap
msgid "# make -C /usr/src/release -f Makefile.mirrors EVERYTHINGISFINE=1 ftp-stage\n"
-msgstr "# make -C /usr/src/release -f Makefile.mirrors EVERYTHINGISFINE=1 ftp-stage\n"
+msgstr ""
+"# make -C /usr/src/release -f Makefile.mirrors EVERYTHINGISFINE=1 ftp-stage\n"
#. type: Plain text
#: documentation/content/en/articles/freebsd-releng/_index.adoc:685
msgid ""
-"After each architecture is built, [.filename]#thermite.sh# will rsync the "
-"[.filename]#${DESTDIR}/R/ftp-stage# from the build to [.filename]#/snap/ftp/"
+"After each architecture is built, [.filename]#thermite.sh# will rsync the [."
+"filename]#${DESTDIR}/R/ftp-stage# from the build to [.filename]#/snap/ftp/"
"snapshots# or [.filename]#/snap/ftp/releases# on the build host, "
"respectively."
msgstr ""
"После сборки каждой архитектуры скрипт [.filename]#thermite.sh# выполнит "
-"синхронизацию [.filename]#${DESTDIR}/R/ftp-stage# с билда в директории "
-"[.filename]#/snap/ftp/snapshots# или [.filename]#/snap/ftp/releases# на "
-"хосте сборки, соответственно."
+"синхронизацию [.filename]#${DESTDIR}/R/ftp-stage# с билда в директории [."
+"filename]#/snap/ftp/snapshots# или [.filename]#/snap/ftp/releases# на хосте "
+"сборки, соответственно."
#. type: Plain text
#: documentation/content/en/articles/freebsd-releng/_index.adoc:686
@@ -1855,15 +1878,15 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/freebsd-releng/_index.adoc:688
msgid ""
-"Once all builds have finished, [.filename]#/snap/ftp/snapshots#, or "
-"[.filename]#/snap/ftp/releases# for a release, is polled by `ftp-master` "
-"using rsync to [.filename]#/archive/tmp/snapshots# or [.filename]#/archive/"
-"tmp/releases#, respectively."
+"Once all builds have finished, [.filename]#/snap/ftp/snapshots#, or [."
+"filename]#/snap/ftp/releases# for a release, is polled by `ftp-master` using "
+"rsync to [.filename]#/archive/tmp/snapshots# or [.filename]#/archive/tmp/"
+"releases#, respectively."
msgstr ""
-"После завершения всех сборок каталог [.filename]#/snap/ftp/snapshots# (или "
-"[.filename]#/snap/ftp/releases# для релиза) опрашивается `ftp-master`-ом с "
-"использованием rsync для передачи в [.filename]#/archive/tmp/snapshots# или "
-"[.filename]#/archive/tmp/releases#, соответственно."
+"После завершения всех сборок каталог [.filename]#/snap/ftp/snapshots# (или [."
+"filename]#/snap/ftp/releases# для релиза) опрашивается `ftp-master`-ом с "
+"использованием rsync для передачи в [.filename]#/archive/tmp/snapshots# или ["
+".filename]#/archive/tmp/releases#, соответственно."
#. type: delimited block = 4
#: documentation/content/en/articles/freebsd-releng/_index.adoc:692
@@ -1890,8 +1913,8 @@ msgid ""
msgstr ""
"Как только образы размещены в [.filename]#/archive/tmp/#, они готовы к "
"публикации путем размещения в [.filename]#/archive/pub/FreeBSD#. Для "
-"уменьшения времени распространения используются жесткие ссылки из "
-"[.filename]#/archive/tmp# в [.filename]#/archive/pub/FreeBSD#."
+"уменьшения времени распространения используются жесткие ссылки из [."
+"filename]#/archive/tmp# в [.filename]#/archive/pub/FreeBSD#."
#. type: delimited block = 4
#: documentation/content/en/articles/freebsd-releng/_index.adoc:703
@@ -1938,7 +1961,8 @@ msgid ""
msgstr ""
"% cd /archive/tmp/snapshots\n"
"% pax -r -w -l . /archive/pub/FreeBSD/snapshots\n"
-"% /usr/local/bin/rsync -avH /archive/tmp/snapshots/* /archive/pub/FreeBSD/snapshots/\n"
+"% /usr/local/bin/rsync -avH /archive/tmp/snapshots/* /archive/pub/FreeBSD/"
+"snapshots/\n"
#. type: Plain text
#: documentation/content/en/articles/freebsd-releng/_index.adoc:722
@@ -1987,9 +2011,9 @@ msgstr "Фактический процесс выпуска EN обрабаты
#: documentation/content/en/articles/freebsd-releng/_index.adoc:740
msgid ""
"To request an Errata Notice after a release cycle has completed, a developer "
-"should fill out the https://www.freebsd.org/security/errata-"
-"template.txt[Errata Notice template], in particular the `Background`, "
-"`Problem Description`, `Impact`, and if applicable, `Workaround` sections."
+"should fill out the https://www.freebsd.org/security/errata-template."
+"txt[Errata Notice template], in particular the `Background`, `Problem "
+"Description`, `Impact`, and if applicable, `Workaround` sections."
msgstr ""
"Для запроса уведомления об ошибке после завершения цикла выпуска разработчик "
"должен заполнить https://www.freebsd.org/security/errata-template.txt[шаблон "
@@ -2017,10 +2041,10 @@ msgid ""
"{teamSecteam}], Errata Notice requests should be sent to the {teamSecteam}."
msgstr ""
"Для запросов на уведомления об ошибках (Errata Notice), поступающих сразу "
-"после выпуска, запрос следует отправлять по электронной почте как в "
-"{teamRe}, так и в {teamSecteam}. После того как ветка {branchReleng} "
-"передана {teamSecteam}, как описано в crossref:freebsd-releng[releng-wrapup-"
-"handoff, Передача {teamSecteam}], запросы на уведомления об ошибках следует "
+"после выпуска, запрос следует отправлять по электронной почте как в {teamRe}"
+", так и в {teamSecteam}. После того как ветка {branchReleng} передана "
+"{teamSecteam}, как описано в crossref:freebsd-releng[releng-wrapup-handoff, "
+"Передача {teamSecteam}], запросы на уведомления об ошибках следует "
"направлять в {teamSecteam}."
#. type: Title ===
@@ -2099,7 +2123,9 @@ msgstr "[.filename]#~/website/content/en/releases/_index.adoc#"
#: documentation/content/en/articles/freebsd-releng/_index.adoc:774
#, no-wrap
msgid "Move the `u-relXXX-*` variables from the supported release list to the Legacy Releases list."
-msgstr "Переместите переменные `u-relXXX-*` из списка поддерживаемых выпусков в список Устаревших выпусков."
+msgstr ""
+"Переместите переменные `u-relXXX-*` из списка поддерживаемых выпусков в "
+"список Устаревших выпусков."
#. type: Table
#: documentation/content/en/articles/freebsd-releng/_index.adoc:775
@@ -2111,7 +2137,9 @@ msgstr "[.filename]#~/website/content/en/releng/_index.adoc#"
#: documentation/content/en/articles/freebsd-releng/_index.adoc:777
#, no-wrap
msgid "Update the appropriate releng branch to reflect the branch is no longer supported."
-msgstr "Обновите соответствующую ветку releng, чтобы отразить, что ветка больше не поддерживается."
+msgstr ""
+"Обновите соответствующую ветку releng, чтобы отразить, что ветка больше не "
+"поддерживается."
#. type: Table
#: documentation/content/en/articles/freebsd-releng/_index.adoc:778
diff --git a/documentation/content/ru/articles/freebsd-status-report-process/_index.adoc b/documentation/content/ru/articles/freebsd-status-report-process/_index.adoc
index 483c34855b..649aad240f 100644
--- a/documentation/content/ru/articles/freebsd-status-report-process/_index.adoc
+++ b/documentation/content/ru/articles/freebsd-status-report-process/_index.adoc
@@ -22,134 +22,78 @@ trademarks: ["freebsd", "git", "github", "general"]
toc::[]
-Отчеты о состоянии FreeBSD публикуются ежеквартально и предоставляют широкой
-общественности обзор происходящего в проекте. Они часто дополняются
-специальными отчетами с встреч разработчиков. Поскольку это одна из самых
-заметных форм коммуникации, они очень важны.
+Отчеты о состоянии FreeBSD публикуются ежеквартально и предоставляют широкой общественности обзор происходящего в проекте. Они часто дополняются специальными отчетами с встреч разработчиков. Поскольку это одна из самых заметных форм коммуникации, они очень важны.
-На протяжении этого документа, а также в других материалах, связанных с
-отчётами о состоянии FreeBSD, выражение _отчёт о состоянии_ используется как
-для обозначения документа, публикуемого ежеквартально, так и для отдельных
-записей, содержащихся в нём.
+На протяжении этого документа, а также в других материалах, связанных с отчётами о состоянии FreeBSD, выражение _отчёт о состоянии_ используется как для обозначения документа, публикуемого ежеквартально, так и для отдельных записей, содержащихся в нём.
== Инструкции для авторов
-Этот раздел содержит рекомендации по написанию записей в отчетах о
-состоянии. Также приведены инструкции по отправке ваших записей.
+Этот раздел содержит рекомендации по написанию записей в отчетах о состоянии. Также приведены инструкции по отправке ваших записей.
-_Не беспокойтесь, если вы не являетесь носителем английского языка. Команда
-mailto:status@FreeBSD.org[status team] проверит ваши записи на орфографию и
-грамматику и исправит их за вас._
+_Не беспокойтесь, если вы не являетесь носителем английского языка. Команда mailto:status@FreeBSD.org[status team] проверит ваши записи на орфографию и грамматику и исправит их за вас._
=== Представьте свою работу
_Не предполагайте, что человек, читающий отчёт, знает о вашем проекте._
-Отчеты о состоянии имеют широкое распространение. Они часто становятся
-одними из главных новостей на веб-сайте FreeBSD и являются одним из первых
-материалов, которые прочитают люди, желающие узнать немного о том, что такое
-FreeBSD. Рассмотрим следующий пример:
+Отчеты о состоянии имеют широкое распространение. Они часто становятся одними из главных новостей на веб-сайте FreeBSD и являются одним из первых материалов, которые прочитают люди, желающие узнать немного о том, что такое FreeBSD. Рассмотрим следующий пример:
....
abc(4) support was added, including frobnicator compatibility.
....
-Читающий это, если он знаком с руководствами UNIX, поймет, что `abc(4)` —
-это какое-то устройство. Но почему это должно волновать читателя? Что это за
-устройство? Сравните с этой версией:
+Читающий это, если он знаком с руководствами UNIX, поймет, что `abc(4)` — это какое-то устройство. Но почему это должно волновать читателя? Что это за устройство? Сравните с этой версией:
....
A new driver, abc(4), was added to the tree, bringing support for
Yoyodyne's range of Frobnicator network interfaces.
....
-Теперь читатель знает, что `abc` — это драйвер сетевого интерфейса. Даже
-если они не используют продукты Yoyodyne, вы сообщили, что поддержка сетевых
-устройств в FreeBSD улучшается.
+Теперь читатель знает, что `abc` — это драйвер сетевого интерфейса. Даже если они не используют продукты Yoyodyne, вы сообщили, что поддержка сетевых устройств в FreeBSD улучшается.
=== Покажите важность вашей работы
-_Отчеты о состоянии нужны не только для того, чтобы сообщать всем о
-выполненных задачах, но и для объяснения причин их выполнения._
+_Отчеты о состоянии нужны не только для того, чтобы сообщать всем о выполненных задачах, но и для объяснения причин их выполнения._
-Продолжим предыдущий пример. Почему интересно, что мы теперь поддерживаем
-карты Yoyodyne Frobnicator? Они широко распространены? Они используются в
-каком-то конкретном популярном устройстве? Они применяются в определенной
-нише, где FreeBSD имеет (или хотела бы иметь) присутствие? Это самые быстрые
-сетевые карты на планете? В отчетах о состоянии часто встречаются такие
-фразы:
+Продолжим предыдущий пример. Почему интересно, что мы теперь поддерживаем карты Yoyodyne Frobnicator? Они широко распространены? Они используются в каком-то конкретном популярном устройстве? Они применяются в определенной нише, где FreeBSD имеет (или хотела бы иметь) присутствие? Это самые быстрые сетевые карты на планете? В отчетах о состоянии часто встречаются такие фразы:
....
We imported Cyberdyne Systems T800 into the tree.
....
-И затем они останавливаются. Возможно, читатель — ярый поклонник Cyberdyne и
-знает, какие захватывающие новые функции предлагает T800. Это
-маловероятно. Гораздо вероятнее, что они смутно слышали о том, что вы
-импортировали (особенно в дерево портов: помните, что там есть ещё более 35
-000 других элементов...). Перечислите некоторые новые функции или
-исправления ошибок. Объясните, почему хорошо, что у нас появилась новая
-версия.
+И затем они останавливаются. Возможно, читатель — ярый поклонник Cyberdyne и знает, какие захватывающие новые функции предлагает T800. Это маловероятно. Гораздо вероятнее, что они смутно слышали о том, что вы импортировали (особенно в дерево портов: помните, что там есть ещё более 35 000 других элементов...). Перечислите некоторые новые функции или исправления ошибок. Объясните, почему хорошо, что у нас появилась новая версия.
=== Расскажите нам что-то новое
_Не используйте повторно одни и те же пункты отчёта о состоянии._
-Имейте в виду, что отчеты о состоянии — это не просто отчеты о состоянии
-проекта, это отчеты об изменении состояния проекта. Если проект
-продолжается, уделите пару предложений его представлению, но затем
-сосредоточьтесь в отчете на новой работе. Какой прогресс был достигнут с
-момента последнего отчета? Что осталось сделать? Когда он, вероятно, будет
-завершен (или, если "завершение" не совсем применимо, когда он будет готов
-для более широкого использования, тестирования, развертывания в производстве
-и так далее)?
+Имейте в виду, что отчеты о состоянии — это не просто отчеты о состоянии проекта, это отчеты об изменении состояния проекта. Если проект продолжается, уделите пару предложений его представлению, но затем сосредоточьтесь в отчете на новой работе. Какой прогресс был достигнут с момента последнего отчета? Что осталось сделать? Когда он, вероятно, будет завершен (или, если "завершение" не совсем применимо, когда он будет готов для более широкого использования, тестирования, развертывания в производстве и так далее)?
=== Спонсорство
_Не забывайте о ваших спонсорах._
-Если вы или ваш проект получили спонсорскую поддержку, стипендию от
-кого-либо или вы уже работали подрядчиком или сотрудником компании,
-пожалуйста, укажите это. Спонсоры всегда ценят, когда их благодарят за
-финансирование, но также им выгодно показать, что они активно поддерживают
-Проект таким образом. И последнее, но не менее важное: это помогает FreeBSD
-узнать больше о своих важных потребителях.
+Если вы или ваш проект получили спонсорскую поддержку, стипендию от кого-либо или вы уже работали подрядчиком или сотрудником компании, пожалуйста, укажите это. Спонсоры всегда ценят, когда их благодарят за финансирование, но также им выгодно показать, что они активно поддерживают Проект таким образом. И последнее, но не менее важное: это помогает FreeBSD узнать больше о своих важных потребителях.
=== Открытые вопросы
_Если требуется помощь, укажите это явно!_
-Нужна ли помощь с чем-то? Есть ли задачи, которые могут выполнить другие
-люди? Существует два способа использования раздела открытых пунктов в отчете
-о состоянии: для запроса помощи или для быстрого обзора объема оставшейся
-работы. Если над проектом уже работает достаточное количество людей или он
-находится в таком состоянии, что добавление новых участников не ускорит его,
-то лучше использовать второй вариант. Укажите крупные рабочие задачи,
-которые находятся в процессе выполнения, и, возможно, обозначьте, кто над
-каждой из них работает.
+Нужна ли помощь с чем-то? Есть ли задачи, которые могут выполнить другие люди? Существует два способа использования раздела открытых пунктов в отчете о состоянии: для запроса помощи или для быстрого обзора объема оставшейся работы. Если над проектом уже работает достаточное количество людей или он находится в таком состоянии, что добавление новых участников не ускорит его, то лучше использовать второй вариант. Укажите крупные рабочие задачи, которые находятся в процессе выполнения, и, возможно, обозначьте, кто над каждой из них работает.
-Перечислите задачи с достаточной детализацией, чтобы люди могли понять,
-смогут ли они их выполнить, и предложите им связаться с вами.
+Перечислите задачи с достаточной детализацией, чтобы люди могли понять, смогут ли они их выполнить, и предложите им связаться с вами.
=== Представьте ваш отчёт
Доступны следующие методы для отправки ваших отчетов:
-* отправить ссылку link:https://reviews.freebsd.org/[Phabricator review] и
- добавить группу _status_ в список рецензентов. Вы должны разместить свои
- отчёты в соответствующем подкаталоге `doc/website/content/en/status/`
- (создайте его, если он отсутствует);
+* отправить ссылку link:https://reviews.freebsd.org/[Phabricator review] и добавить группу _status_ в список рецензентов. Вы должны разместить свои отчёты в соответствующем подкаталоге `doc/website/content/en/status/` (создайте его, если он отсутствует);
-* отправить запрос на включение изменений (pull request) в репозиторий
- документации через link:https://github.com/freebsd/freebsd-doc[его зеркало
- на GitHub]. Вы должны размещать свои отчёты в соответствующем подкаталоге
- `doc/website/content/en/status` (создайте его, если он отсутствует);
+* отправить запрос на включение изменений (pull request) в репозиторий документации через link:https://github.com/freebsd/freebsd-doc[его зеркало на GitHub]. Вы должны размещать свои отчёты в соответствующем подкаталоге `doc/website/content/en/status` (создайте его, если он отсутствует);
-* отправить письмо на адрес status-submissions@FreeBSD.org, приложив ваш
- отчет.
+* отправить письмо на адрес status-submissions@FreeBSD.org, приложив ваш отчет.
-Доступен link:https://www.FreeBSD.org/status/report-sample.adoc[шаблон
-отчёта в формате AsciiDoc].
+Доступен link:https://www.FreeBSD.org/status/report-sample.adoc[шаблон отчёта в формате AsciiDoc].
== Инструкции для редакторов
@@ -180,29 +124,11 @@ _Если требуется помощь, укажите это явно!_
=== Сроки
-Отчеты всегда принимаются командой статуса, но основной процесс сбора
-происходит в последний месяц каждого квартала, то есть в марте, июне,
-сентябре и декабре. В эти месяцы будут отправляться явные запросы на
-статусные отчеты. Месяцы январь, апрель, июль и октябрь посвящены сбору
-отчетов, представленных в предыдущем квартале; это может включать ожидание
-запоздавших отправлений. Публикация статусных отчетов происходит в те же
-месяцы, как только отчеты будут готовы.
-
-Все отправленные отчёты могут быть продлены по ссылке
-link:mailto:status-submissions@FreeBSD.org[электронной почте команды
-статуса] вплоть до продлённого срока, который составляет 8 дней после
-окончания квартала. Записи от
-link:https://www.freebsd.org/administration/#t-portmgr[команды управления
-портами] по умолчанию используют продлённый заголовок из-за пересечения
-отчётов о статусе и квартальных веток портов.
-
-Проверка представленных отчетов людьми, не входящими в команду статуса,
-должна быть в основном завершена к середине января/апреля/июля/октября (срок
-для сторонней отложенной проверки). То есть, за исключением опечаток или
-других незначительных правок, команда статуса должна быть готова начать сбор
-представленных материалов вскоре после 15-го числа. Отметим, что это не
-полный заморозка, и команда статуса все еще может принимать проверки в этот
-период.
+Отчеты всегда принимаются командой статуса, но основной процесс сбора происходит в последний месяц каждого квартала, то есть в марте, июне, сентябре и декабре. В эти месяцы будут отправляться явные запросы на статусные отчеты. Месяцы январь, апрель, июль и октябрь посвящены сбору отчетов, представленных в предыдущем квартале; это может включать ожидание запоздавших отправлений. Публикация статусных отчетов происходит в те же месяцы, как только отчеты будут готовы.
+
+Все отправленные отчёты могут быть продлены по ссылке link:mailto:status-submissions@FreeBSD.org[электронной почте команды статуса] вплоть до продлённого срока, который составляет 8 дней после окончания квартала. Записи от link:https://www.freebsd.org/administration/#t-portmgr[команды управления портами] по умолчанию используют продлённый заголовок из-за пересечения отчётов о статусе и квартальных веток портов.
+
+Проверка представленных отчетов людьми, не входящими в команду статуса, должна быть в основном завершена к середине января/апреля/июля/октября (срок для сторонней отложенной проверки). То есть, за исключением опечаток или других незначительных правок, команда статуса должна быть готова начать сбор представленных материалов вскоре после 15-го числа. Отметим, что это не полный заморозка, и команда статуса все еще может принимать проверки в этот период.
[cols="1,2,2,2,2"]
|===
@@ -249,30 +175,17 @@ link:https://www.freebsd.org/administration/#t-portmgr[команды управ
Запросы отчетов о состоянии отправляются следующим получателям:
-* link:https://lists.freebsd.org/subscription/freebsd-status-calls[почтовая
- рассылка freebsd-status-calls@FreeBSD.org];
-* всем авторам последних отчетов о состоянии (у них могут быть обновления или
- дополнительные улучшения);
+* link:https://lists.freebsd.org/subscription/freebsd-status-calls[почтовая рассылка freebsd-status-calls@FreeBSD.org];
+* всем авторам последних отчетов о состоянии (у них могут быть обновления или дополнительные улучшения);
* и, в зависимости от времени года,
** Различные организаторы конференций:
*** link:mailto:secretary@asiabsdcon.org[AsiaBSDCon] в марте (первый квартал);
*** link:mailto:info@bsdcan.org[BSDCan] в мае (второй квартал);
** Различные участники конференции:
- *** ЕвроBSDcon в сентябре - октябре (третий-четвертый квартал); организация
- ЕвроBSDcon не заинтересована в написании отчетов для FreeBSD — по крайней
- мере, не была заинтересована в октябре 2019 года: причина в том, что
- конференция не ориентирована конкретно на FreeBSD. Следовательно, отчеты об
- этом мероприятии следует запрашивать у участников сообщества FreeBSD,
- которые присутствовали на нем.
- ** Google Summer of Code: link:mailto:soc-students@FreeBSD.org[студенты] и их
- link:mailto:soc-mentors@FreeBSD.org[наставники].
-
-Самый простой способ отправки запросов на отчеты о состоянии — использовать
-скрипт
-link:https://cgit.freebsd.org/doc/tree/tools/sendcalls/sendcalls[[.filename]#sendcalls#
-на Perl] из каталога [.filename]#tools/sendcalls# git репозитория
-документации. Скрипт автоматически отправляет запросы всем указанным
-получателям. Его также можно использовать через задание cron, например:
+ *** ЕвроBSDcon в сентябре - октябре (третий-четвертый квартал); организация ЕвроBSDcon не заинтересована в написании отчетов для FreeBSD — по крайней мере, не была заинтересована в октябре 2019 года: причина в том, что конференция не ориентирована конкретно на FreeBSD. Следовательно, отчеты об этом мероприятии следует запрашивать у участников сообщества FreeBSD, которые присутствовали на нем.
+ ** Google Summer of Code: link:mailto:soc-students@FreeBSD.org[студенты] и их link:mailto:soc-mentors@FreeBSD.org[наставники].
+
+Самый простой способ отправки запросов на отчеты о состоянии — использовать скрипт link:https://cgit.freebsd.org/doc/tree/tools/sendcalls/sendcalls[[.filename]#sendcalls# на Perl] из каталога [.filename]#tools/sendcalls# git репозитория документации. Скрипт автоматически отправляет запросы всем указанным получателям. Его также можно использовать через задание cron, например:
....
0 0 1,15,24 3,6,9,12 * cd ~/doc/tools/sendcalls && git pull && ./sendcalls -s 'Lorenzo Salvadore'
@@ -280,46 +193,26 @@ link:https://cgit.freebsd.org/doc/tree/tools/sendcalls/sendcalls[[.filename]#sen
[IMPORTANT]
====
-Если вы отвечаете за рассылку запросов отчетов о состоянии и используете
-задание cron, пожалуйста, запускайте его на freefall и подписывайте своим
-именем, чтобы в случае возникновения проблем можно было определить, кто
-настроил задание cron. Также, в качестве дополнительной меры
-предосторожности, обновите приведенный выше пример, указав свое имя.
+Если вы отвечаете за рассылку запросов отчетов о состоянии и используете задание cron, пожалуйста, запускайте его на freefall и подписывайте своим именем, чтобы в случае возникновения проблем можно было определить, кто настроил задание cron. Также, в качестве дополнительной меры предосторожности, обновите приведенный выше пример, указав свое имя.
====
-Также может быть полезно объявить сбор отчетов на форумах, как это
-link:https://forums.freebsd.org/threads/call-for-freebsd-2014q4-october-december-status-reports.49812/[делалось
-ранее].
+Также может быть полезно объявить сбор отчетов на форумах, как это link:https://forums.freebsd.org/threads/call-for-freebsd-2014q4-october-december-status-reports.49812/[делалось ранее].
=== Построение отчета
-Отправленные отчеты проверяются и объединяются в соответствующем подкаталоге
-[.filename]#doc/website/content/en/status/# по мере поступления. Пока отчеты
-обновляются, люди вне команды статуса также могут просматривать отдельные
-записи и предлагать исправления.
+Отправленные отчеты проверяются и объединяются в соответствующем подкаталоге [.filename]#doc/website/content/en/status/# по мере поступления. Пока отчеты обновляются, люди вне команды статуса также могут просматривать отдельные записи и предлагать исправления.
-Обычно последним шагом в процессе проверки содержания является написание
-введения в файле с названием [.filename]#intro.adoc#: хорошее введение можно
-написать только после того, как собраны все отчеты. По возможности, полезно
-попросить разных людей написать введение, чтобы добавить разнообразия:
-разные люди привнесут разные точки зрения и помогут сохранить его свежим.
+Обычно последним шагом в процессе проверки содержания является написание введения в файле с названием [.filename]#intro.adoc#: хорошее введение можно написать только после того, как собраны все отчеты. По возможности, полезно попросить разных людей написать введение, чтобы добавить разнообразия: разные люди привнесут разные точки зрения и помогут сохранить его свежим.
-После того как все отчеты и введение готовы, необходимо создать файл
-[.filename]#_index.adoc#: это файл, в котором отчеты распределяются по
-различным категориям и сортируются.
+После того как все отчеты и введение готовы, необходимо создать файл [.filename]#_index.adoc#: это файл, в котором отчеты распределяются по различным категориям и сортируются.
=== Публикация отчета
Когда все файлы отчета о состоянии готовы, пришло время опубликовать его.
-Сначала редактируется файл
-[.filename]#doc/website/content/en/status/_index.adoc#: обновляется
-следующая дата отчёта и добавляется ссылка на новый отчёт. Затем изменения
-отправляются в репозиторий, и команда статуса проверяет, что всё работает
-как ожидалось.
+Сначала редактируется файл [.filename]#doc/website/content/en/status/_index.adoc#: обновляется следующая дата отчёта и добавляется ссылка на новый отчёт. Затем изменения отправляются в репозиторий, и команда статуса проверяет, что всё работает как ожидалось.
-Затем запись новости для главной страницы сайта добавляется в
-[.filename]#doc/website/data/ru/news/news.toml#.
+Затем запись новости для главной страницы сайта добавляется в [.filename]#doc/website/data/ru/news/news.toml#.
Вот пример записи новостей:
....
@@ -329,40 +222,24 @@ title = "October-December 2020 Status Report"
description = "The <a href=\"https://www.FreeBSD.org/status/report-2020-10-2020-12.html\">October to December 2020 Status Report</a> is now available with 42 entries."
....
-После создания HTML-версии отчёта и её публикации в сети используется
-man:w3m[1] для преобразования веб-сайта в простой текст, например:
+После создания HTML-версии отчёта и её публикации в сети используется man:w3m[1] для преобразования веб-сайта в простой текст, например:
....
% w3m -cols 80 -dump https://www.FreeBSD.org/status/report-2021-01-2021-03/ > /tmp/report-2021-01-2021-03.txt
....
-man:w3m[1] имеет полную поддержку юникода. Опция `-dump` просто выводит
-текстовое представление HTML-кода, из которого затем можно удалить несколько
-элементов, а `-cols` гарантирует, что всё будет перенесено на 80 колонок.
+man:w3m[1] имеет полную поддержку Юникода. Опция `-dump` просто выводит текстовое представление HTML-кода, из которого затем можно удалить несколько элементов, а `-cols` гарантирует, что всё будет перенесено на 80 колонок.
Ссылка на сформированный отчет добавляется между введением и первой записью.
-Переключив способ доставки (отчёт должен быть в тексте письма, а не в
-приложении) и убедившись, что его кодировка в UTF-8, вы получаете
-окончательно готовый к отправке отчёт.
+Переключив способ доставки (отчёт должен быть в тексте письма, а не в приложении) и убедившись, что его кодировка в UTF-8, вы получаете окончательно готовый к отправке отчёт.
-Отправляются два письма, оба с темой в формате `FreeBSD Status Report -
-<First/Second/Third/Fourth> Quarter <year>`:
+Отправляются два письма, оба с темой в формате `FreeBSD Status Report - <First/Second/Third/Fourth> Quarter <year>`:
-* одно для
- link:https://lists.freebsd.org/subscription/freebsd-announce[freebsd-announce@FreeBSD.org];
+* одно для link:https://lists.freebsd.org/subscription/freebsd-announce[freebsd-announce@FreeBSD.org];
[IMPORTANT]
====
-Это письмо должно быть одобрено, поэтому если вы отвечаете за отправку этого
-письма, убедитесь, что кто-то сделает это одобрение (напишите
-link:mailto:postmaster@FreeBSD.org[постмастеру], если одобрение займет много
-времени).
+Это письмо должно быть одобрено, поэтому если вы отвечаете за отправку этого письма, убедитесь, что кто-то сделает это одобрение (напишите link:mailto:postmaster@FreeBSD.org[постмастеру], если одобрение займет много времени).
====
-* одно на
- link:https://lists.freebsd.org/subscription/freebsd-hackers[freebsd-hackers@FreeBSD.org],
- которому добавьте
- link:https://lists.freebsd.org/subscription/freebsd-current[freebsd-current@FreeBSD.org]
- и
- link:https://lists.freebsd.org/subscription/freebsd-stable[freebsd-stable@FreeBSD.org]
- в копию (CC) и `developers@FreeBSD.org` в скрытую копию (BCC).
+* одно на link:https://lists.freebsd.org/subscription/freebsd-hackers[freebsd-hackers@FreeBSD.org], которому добавьте link:https://lists.freebsd.org/subscription/freebsd-current[freebsd-current@FreeBSD.org] и link:https://lists.freebsd.org/subscription/freebsd-stable[freebsd-stable@FreeBSD.org] в копию (CC) и `developers@FreeBSD.org` в скрытую копию (BCC).
diff --git a/documentation/content/ru/articles/freebsd-status-report-process/_index.po b/documentation/content/ru/articles/freebsd-status-report-process/_index.po
index 6d02cf0295..3ae73c4e83 100644
--- a/documentation/content/ru/articles/freebsd-status-report-process/_index.po
+++ b/documentation/content/ru/articles/freebsd-status-report-process/_index.po
@@ -5,8 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-09-22 21:02+0300\n"
-"PO-Revision-Date: 2025-08-02 04:45+0000\n"
+"POT-Creation-Date: 2025-05-01 19:56-0300\n"
+"PO-Revision-Date: 2025-10-29 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/articlesfreebsd-status-report-process_index/ru/>\n"
@@ -18,7 +18,7 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:1
#, no-wrap
msgid "Instructions for both writers and editors of status reports"
@@ -98,8 +98,7 @@ msgstr "Представьте свою работу"
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:40
msgid ""
"_Do not assume that the person reading the report knows about your project._"
-msgstr ""
-"_Не предполагайте, что человек, читающий отчёт, знает о вашем проекте._"
+msgstr "_Не предполагайте, что человек, читающий отчёт, знает о вашем проекте._"
#. type: Plain text
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:44
@@ -201,8 +200,8 @@ msgid ""
msgstr ""
"И затем они останавливаются. Возможно, читатель — ярый поклонник Cyberdyne и "
"знает, какие захватывающие новые функции предлагает T800. Это маловероятно. "
-"Гораздо вероятнее, что они смутно слышали о том, что вы импортировали "
-"(особенно в дерево портов: помните, что там есть ещё более 35 000 других "
+"Гораздо вероятнее, что они смутно слышали о том, что вы импортировали ("
+"особенно в дерево портов: помните, что там есть ещё более 35 000 других "
"элементов...). Перечислите некоторые новые функции или исправления ошибок. "
"Объясните, почему хорошо, что у нас появилась новая версия."
@@ -326,8 +325,8 @@ msgid ""
msgstr ""
"отправить ссылку link:https://reviews.freebsd.org/[Phabricator review] и "
"добавить группу _status_ в список рецензентов. Вы должны разместить свои "
-"отчёты в соответствующем подкаталоге `doc/website/content/en/status/` "
-"(создайте его, если он отсутствует);"
+"отчёты в соответствующем подкаталоге `doc/website/content/en/status/` ("
+"создайте его, если он отсутствует);"
#. type: Plain text
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:124
@@ -339,8 +338,8 @@ msgid ""
msgstr ""
"отправить запрос на включение изменений (pull request) в репозиторий "
"документации через link:https://github.com/freebsd/freebsd-doc[его зеркало "
-"на GitHub]. Вы должны размещать свои отчёты в соответствующем подкаталоге "
-"`doc/website/content/en/status` (создайте его, если он отсутствует);"
+"на GitHub]. Вы должны размещать свои отчёты в соответствующем подкаталоге `"
+"doc/website/content/en/status` (создайте его, если он отсутствует);"
#. type: Plain text
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:126
@@ -384,13 +383,17 @@ msgstr "link:https://www.FreeBSD.org/status/[https://www.FreeBSD.org/status/]"
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:141
#, no-wrap
msgid "Status reports archived GitHub repository (was used for reports from 2017Q4 to 2022Q4):"
-msgstr "Отчеты о статусе архивированного репозитория GitHub (использовались для отчетов с 2017Q4 по 2022Q4):"
+msgstr ""
+"Отчеты о статусе архивированного репозитория GitHub (использовались для "
+"отчетов с 2017Q4 по 2022Q4):"
#. type: Table
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:143
#, no-wrap
msgid "link:https://www.github.com/freebsd/freebsd-quarterly[https://github.com/freebsd/freebsd-quarterly]"
-msgstr "link:https://www.github.com/freebsd/freebsd-quarterly[https://github.com/freebsd/freebsd-quarterly]"
+msgstr ""
+"link:https://www.github.com/freebsd/freebsd-quarterly[https://github.com/"
+"freebsd/freebsd-quarterly]"
#. type: Table
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:144
@@ -414,7 +417,8 @@ msgstr "Адрес электронной почты для отправки о
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:149
#, no-wrap
msgid "link:mailto:status-submissions@FreeBSD.org[status-submissions@FreeBSD.org]"
-msgstr "link:mailto:status-submissions@FreeBSD.org[status-submissions@FreeBSD.org]"
+msgstr ""
+"link:mailto:status-submissions@FreeBSD.org[status-submissions@FreeBSD.org]"
#. type: Table
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:150
@@ -426,7 +430,9 @@ msgstr "Список рассылки для получения запросов
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:152
#, no-wrap
msgid "link:https://lists.freebsd.org/subscription/freebsd-status-calls[freebsd-status-calls@FreeBSD.org]"
-msgstr "link:https://lists.freebsd.org/subscription/freebsd-status-calls[freebsd-status-calls@FreeBSD.org]"
+msgstr ""
+"link:https://lists.freebsd.org/subscription/freebsd-status-calls[freebsd-"
+"status-calls@FreeBSD.org]"
#. type: Table
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:153
@@ -438,7 +444,9 @@ msgstr "Страница команды статуса в Phabricator"
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:154
#, no-wrap
msgid "link:https://reviews.freebsd.org/project/profile/88/[https://reviews.freebsd.org/project/88/]"
-msgstr "link:https://reviews.freebsd.org/project/profile/88/[https://reviews.freebsd.org/project/88/]"
+msgstr ""
+"link:https://reviews.freebsd.org/project/profile/88/[https://reviews.freebsd."
+"org/project/88/]"
#. type: Title ===
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:156
@@ -795,17 +803,19 @@ msgid ""
"recipients. It can also be used through a cron job, for example:"
msgstr ""
"Самый простой способ отправки запросов на отчеты о состоянии — использовать "
-"скрипт link:https://cgit.freebsd.org/doc/tree/tools/sendcalls/"
-"sendcalls[[.filename]#sendcalls# на Perl] из каталога [.filename]#tools/"
-"sendcalls# git репозитория документации. Скрипт автоматически отправляет "
-"запросы всем указанным получателям. Его также можно использовать через "
-"задание cron, например:"
+"скрипт link:https://cgit.freebsd.org/doc/tree/tools/sendcalls/sendcalls[[."
+"filename]#sendcalls# на Perl] из каталога [.filename]#tools/sendcalls# git "
+"репозитория документации. Скрипт автоматически отправляет запросы всем "
+"указанным получателям. Его также можно использовать через задание cron, "
+"например:"
#. type: delimited block . 4
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:233
#, no-wrap
msgid "0 0 1,15,24 3,6,9,12 * cd ~/doc/tools/sendcalls && git pull && ./sendcalls -s 'Lorenzo Salvadore'\n"
-msgstr "0 0 1,15,24 3,6,9,12 * cd ~/doc/tools/sendcalls && git pull && ./sendcalls -s 'Lorenzo Salvadore'\n"
+msgstr ""
+"0 0 1,15,24 3,6,9,12 * cd ~/doc/tools/sendcalls && "
+"git pull && ./sendcalls -s 'Lorenzo Salvadore'\n"
#. type: delimited block = 4
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:239
@@ -875,8 +885,8 @@ msgid ""
"[.filename]#_index.adoc# file needs to be created: this is the file in which "
"the reports are distributed into the various categories and sorted."
msgstr ""
-"После того как все отчеты и введение готовы, необходимо создать файл "
-"[.filename]#_index.adoc#: это файл, в котором отчеты распределяются по "
+"После того как все отчеты и введение готовы, необходимо создать файл [."
+"filename]#_index.adoc#: это файл, в котором отчеты распределяются по "
"различным категориям и сортируются."
#. type: Title ===
@@ -900,9 +910,9 @@ msgid ""
"is then pushed on the repository and the status team checks that everythings "
"works as expected."
msgstr ""
-"Сначала редактируется файл [.filename]#doc/website/content/en/status/"
-"_index.adoc#: обновляется следующая дата отчёта и добавляется ссылка на "
-"новый отчёт. Затем изменения отправляются в репозиторий, и команда статуса "
+"Сначала редактируется файл [.filename]#doc/website/content/en/status/_index."
+"adoc#: обновляется следующая дата отчёта и добавляется ссылка на новый "
+"отчёт. Затем изменения отправляются в репозиторий, и команда статуса "
"проверяет, что всё работает как ожидалось."
#. type: Plain text
@@ -911,8 +921,8 @@ msgid ""
"Then the news entry for the main website page is added to [.filename]#doc/"
"website/data/en/news/news.toml#."
msgstr ""
-"Затем запись новости для главной страницы сайта добавляется в "
-"[.filename]#doc/website/data/ru/news/news.toml#."
+"Затем запись новости для главной страницы сайта добавляется в [.filename]#"
+"doc/website/data/ru/news/news.toml#."
#. type: Plain text
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:263
@@ -931,7 +941,9 @@ msgstr ""
"[[news]]\n"
"date = \"2021-01-16\"\n"
"title = \"October-December 2020 Status Report\"\n"
-"description = \"The <a href=\\\"https://www.FreeBSD.org/status/report-2020-10-2020-12.html\\\">October to December 2020 Status Report</a> is now available with 42 entries.\"\n"
+"description = \"The <a href=\\\"https://www.FreeBSD.org/status/"
+"report-2020-10-2020-12.html\\\">October to December 2020 Status Report</a> "
+"is now available with 42 entries.\"\n"
#. type: Plain text
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:271
@@ -946,7 +958,9 @@ msgstr ""
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:273
#, no-wrap
msgid "% w3m -cols 80 -dump https://www.FreeBSD.org/status/report-2021-01-2021-03/ > /tmp/report-2021-01-2021-03.txt\n"
-msgstr "% w3m -cols 80 -dump https://www.FreeBSD.org/status/report-2021-01-2021-03/ > /tmp/report-2021-01-2021-03.txt\n"
+msgstr ""
+"% w3m -cols 80 -dump https://www.FreeBSD.org/status/report-2021-01-2021-03/ "
+"> /tmp/report-2021-01-2021-03.txt\n"
#. type: Plain text
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:276
@@ -955,7 +969,7 @@ msgid ""
"rendering of the HTML code that can then have a few elements snipped, while "
"`-cols` ensures that everything is wrapped to 80 columns."
msgstr ""
-"man:w3m[1] имеет полную поддержку юникода. Опция `-dump` просто выводит "
+"man:w3m[1] имеет полную поддержку Юникода. Опция `-dump` просто выводит "
"текстовое представление HTML-кода, из которого затем можно удалить несколько "
"элементов, а `-cols` гарантирует, что всё будет перенесено на 80 колонок."
@@ -983,8 +997,8 @@ msgid ""
"Two emails are sent, both with subject in the format `FreeBSD Status Report "
"- <First/Second/Third/Fourth> Quarter <year>`:"
msgstr ""
-"Отправляются два письма, оба с темой в формате `FreeBSD Status Report - "
-"<First/Second/Third/Fourth> Quarter <year>`:"
+"Отправляются два письма, оба с темой в формате `FreeBSD Status Report - <"
+"First/Second/Third/Fourth> Quarter <year>`:"
#. type: Plain text
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:284
@@ -992,8 +1006,8 @@ msgid ""
"one to link:https://lists.freebsd.org/subscription/freebsd-announce[freebsd-"
"announce@FreeBSD.org];"
msgstr ""
-"одно для link:https://lists.freebsd.org/subscription/freebsd-"
-"announce[freebsd-announce@FreeBSD.org];"
+"одно для link:https://lists.freebsd.org/subscription/freebsd-announce"
+"[freebsd-announce@FreeBSD.org];"
#. type: delimited block = 4
#: documentation/content/en/articles/freebsd-status-report-process/_index.adoc:288
@@ -1018,6 +1032,7 @@ msgid ""
msgstr ""
"одно на link:https://lists.freebsd.org/subscription/freebsd-hackers[freebsd-"
"hackers@FreeBSD.org], которому добавьте link:https://lists.freebsd.org/"
-"subscription/freebsd-current[freebsd-current@FreeBSD.org] и link:https://"
-"lists.freebsd.org/subscription/freebsd-stable[freebsd-stable@FreeBSD.org] в "
-"копию (CC) и `developers@FreeBSD.org` в скрытую копию (BCC)."
+"subscription/freebsd-current[freebsd-current@FreeBSD.org] и "
+"link:https://lists.freebsd.org/subscription/freebsd-stable[freebsd-"
+"stable@FreeBSD.org] в копию (CC) и `developers@FreeBSD.org` в скрытую копию "
+"(BCC)."
diff --git a/documentation/content/ru/articles/gjournal-desktop/_index.adoc b/documentation/content/ru/articles/gjournal-desktop/_index.adoc
index 835a0489ec..7851477951 100644
--- a/documentation/content/ru/articles/gjournal-desktop/_index.adoc
+++ b/documentation/content/ru/articles/gjournal-desktop/_index.adoc
@@ -43,7 +43,7 @@ endif::[]
[.abstract-title]
Аннотация
-Журналируемая файловая система использует лог для записи всех транзакций, происходящих в файловой системе, который также сохраняет ее целостность в случае краха системы или пропадания питания. Несмотря на то, что всё еще возможна потеря несохранённых изменений файлов, журналирование почти полностью исключает возможность повреждения структуры файловой системы, вызванное непредвиденным остановом работы. Журналирование также сокращает до минимума время, необходимое для проверки файловой системы после отказа. Несмотря на то, что в используемой FreeBSD файловой системе UFS нет поддержки журналирования, новый класс системы GEOM в FreeBSD 7._X_ может быть использован для ведения независимого от файловой системы журналирования. Эта статья объясняет, как реализовать журналирование UFS для типичного настольного компьютера.
+Журналируемая файловая система использует журнал для записи всех транзакций, происходящих в файловой системе, который также сохраняет ее целостность в случае краха системы или пропадания питания. Несмотря на то, что всё еще возможна потеря несохранённых изменений файлов, журналирование почти полностью исключает возможность повреждения структуры файловой системы, вызванное непредвиденным остановом работы. Журналирование также сокращает до минимума время, необходимое для проверки файловой системы после отказа. Несмотря на то, что в используемой FreeBSD файловой системе UFS нет поддержки журналирования, новый класс системы GEOM в FreeBSD 7._X_ может быть использован для ведения независимого от файловой системы журналирования. Эта статья объясняет, как реализовать журналирование UFS для типичного настольного компьютера.
'''
diff --git a/documentation/content/ru/articles/gjournal-desktop/_index.po b/documentation/content/ru/articles/gjournal-desktop/_index.po
index 7ba3ff77c7..63cb74a06d 100644
--- a/documentation/content/ru/articles/gjournal-desktop/_index.po
+++ b/documentation/content/ru/articles/gjournal-desktop/_index.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
"POT-Creation-Date: 2024-12-29 08:30-0500\n"
-"PO-Revision-Date: 2025-07-05 04:45+0000\n"
+"PO-Revision-Date: 2025-09-26 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/articlesgjournal-desktop_index/ru/>\n"
@@ -45,7 +45,7 @@ msgid ""
"This article explains how to implement UFS journaling on a typical desktop "
"PC scenario."
msgstr ""
-"Журналируемая файловая система использует лог для записи всех транзакций, "
+"Журналируемая файловая система использует журнал для записи всех транзакций, "
"происходящих в файловой системе, который также сохраняет ее целостность в "
"случае краха системы или пропадания питания. Несмотря на то, что всё еще "
"возможна потеря несохранённых изменений файлов, журналирование почти "
diff --git a/documentation/content/ru/articles/leap-seconds/_index.adoc b/documentation/content/ru/articles/leap-seconds/_index.adoc
index 438e79d1f5..0d6e27a483 100644
--- a/documentation/content/ru/articles/leap-seconds/_index.adoc
+++ b/documentation/content/ru/articles/leap-seconds/_index.adoc
@@ -42,90 +42,51 @@ toc::[]
[[leapseconds-definition]]
== Введение
-_Секунда координации_ (високосная секунда) — это односекундная
-корректировка, вносимая в определённые моменты года в UTC для синхронизации
-атомных шкал времени с вариациями вращения Земли. В этой статье описано, как
-FreeBSD взаимодействует с секундами координации.
+_Секунда координации_ (високосная секунда) — это односекундная корректировка, вносимая в определённые моменты года в UTC для синхронизации атомных шкал времени с вариациями вращения Земли. В этой статье описано, как FreeBSD взаимодействует с секундами координации.
-На момент написания следующая високосная секунда будет добавлена 2015-Jun-30
-23:59:60 UTC. Эта високосная секунда выпадет на рабочий день для Северной и
-Южной Америки, а также для региона Азии/Тихоокеанского региона.
+На момент написания следующая високосная секунда будет добавлена 2015-Jun-30 23:59:60 UTC. Эта високосная секунда выпадет на рабочий день для Северной и Южной Америки, а также для региона Азии/Тихоокеанского региона.
-Секунды координации объявляются
-https://www.iers.org/IERS/EN/Home/home_node.html[IERS] в
-https://datacenter.iers.org/data/latestVersion/16_BULLETIN_C16.txt[Бюллетене
-C].
+Секунды координации объявляются https://www.iers.org/IERS/EN/Home/home_node.html[IERS] в https://datacenter.iers.org/data/latestVersion/16_BULLETIN_C16.txt[Бюллетене C].
-Стандартное поведение високосной секунды описано в
-https://datatracker.ietf.org/doc/html/rfc7164#section-3[RFC 7164]. Также
-см. man:time2posix[3].
+Стандартное поведение високосной секунды описано в https://datatracker.ietf.org/doc/html/rfc7164#section-3[RFC 7164]. Также см. man:time2posix[3].
[[leapseconds-posix]]
== Обработка високосных секунд по умолчанию в FreeBSD
-Самый простой способ обработки високосных секунд — использование правил
-времени POSIX, которые FreeBSD использует по умолчанию, в сочетании с
-extref:{handbook}[NTP, network-ntp]. Когда man:ntpd[8] работает и время
-синхронизировано с вышестоящими серверами NTP, которые корректно
-обрабатывают високосные секунды, високосная секунда приведёт к
-автоматическому повтору последней секунды дня в системном времени. Другие
-корректировки не требуются.
+Самый простой способ обработки високосных секунд — использование правил времени POSIX, которые FreeBSD использует по умолчанию, в сочетании с extref:{handbook}[NTP, network-ntp]. Когда man:ntpd[8] работает и время синхронизировано с вышестоящими серверами NTP, которые корректно обрабатывают високосные секунды, високосная секунда приведёт к автоматическому повтору последней секунды дня в системном времени. Другие корректировки не требуются.
-Если вышестоящие серверы NTP не обрабатывают високосные секунды корректно,
-man:ntpd[8] изменит время на одну секунду после того, как ошибочный
-вышестоящий сервер заметит это и изменит своё время.
+Если вышестоящие серверы NTP не обрабатывают високосные секунды корректно, man:ntpd[8] изменит время на одну секунду после того, как ошибочный вышестоящий сервер заметит это и изменит своё время.
-Если NTP не используется, после високосной секунды потребуется ручная
-корректировка системных часов.
+Если NTP не используется, после високосной секунды потребуется ручная корректировка системных часов.
[[leapseconds-cautions]]
== Предупреждения
-Високосные секунды добавляются одновременно по всему миру: в полночь по
-UTC. В Японии это середина утра, в Тихоокеанском регионе — середина дня, в
-Америке — поздний вечер, а в Европе — ночь.
+Високосные секунды добавляются одновременно по всему миру: в полночь по UTC. В Японии это середина утра, в Тихоокеанском регионе — середина дня, в Америке — поздний вечер, а в Европе — ночь.
-Мы полагаем и ожидаем, что FreeBSD, при условии предоставления корректного и
-стабильного сервиса NTP, будет работать как задумано во время этой секунды
-координации, как это происходило во время предыдущих.
+Мы полагаем и ожидаем, что FreeBSD, при условии предоставления корректного и стабильного сервиса NTP, будет работать как задумано во время этой секунды координации, как это происходило во время предыдущих.
-Однако мы предупреждаем, что практически ни одно приложение никогда не
-запрашивало у ядра информацию о високосных секундах. Наш опыт показывает,
-что, как и задумано, високосные секунды по сути являются повторением
-секунды, предшествующей високосной, и это становится неожиданностью для
-большинства программистов.
+Однако мы предупреждаем, что практически ни одно приложение никогда не запрашивало у ядра информацию о високосных секундах. Наш опыт показывает, что, как и задумано, високосные секунды по сути являются повторением секунды, предшествующей високосной, и это становится неожиданностью для большинства программистов.
-Другие операционные системы и компьютеры могут обрабатывать високосную
-секунду иначе, чем FreeBSD, а системы без корректной и стабильной службы NTP
-вообще не будут знать о високосных секундах.
+Другие операционные системы и компьютеры могут обрабатывать високосную секунду иначе, чем FreeBSD, а системы без корректной и стабильной службы NTP вообще не будут знать о високосных секундах.
-Нередко компьютеры выходят из строя из-за високосных секунд, и опыт показал,
-что значительная часть всех публичных NTP-серверов может обрабатывать и
-объявлять високосную секунду неправильно.
+Нередко компьютеры выходят из строя из-за високосных секунд, и опыт показал, что значительная часть всех публичных NTP-серверов может обрабатывать и объявлять високосную секунду неправильно.
-Пожалуйста, постарайтесь убедиться, что из-за секунды координации не
-произойдет ничего ужасного.
+Пожалуйста, постарайтесь убедиться, что из-за секунды координации не произойдет ничего ужасного.
[[leapseconds-testing]]
== Тестирование
-Возможно проверить, будет ли использована секунда координации. Из-за
-особенностей NTP, проверка может работать до 24 часов до введения секунды
-координации. Некоторые крупные источники эталонных часов объявляют о
-секундах координации всего за час до события. Запрос к демону NTP:
+Возможно проверить, будет ли использована секунда координации. Из-за особенностей NTP, проверка может работать до 24 часов до введения секунды координации. Некоторые крупные источники эталонных часов объявляют о секундах координации всего за час до события. Запрос к демону NTP:
[source, shell]
....
% ntpq -c 'rv 0 leap'
....
-Вывод, включающий `leap_add_sec`, указывает на корректную поддержку секунды
-координации. До 24 часов перед наступлением секунды координации или после её
-прохождения будет отображаться `leap_none`.
+Вывод, включающий `leap_add_sec`, указывает на корректную поддержку секунды координации. До 24 часов перед наступлением секунды координации или после её прохождения будет отображаться `leap_none`.
[[leapseconds-conclusion]]
== Заключение
-На практике секунды координации обычно не представляют проблемы в
-FreeBSD. Мы надеемся, что этот обзор поможет прояснить, чего ожидать и как
-сделать обработку секунды координации более гладкой.
+На практике секунды координации обычно не представляют проблемы в FreeBSD. Мы надеемся, что этот обзор поможет прояснить, чего ожидать и как сделать обработку секунды координации более гладкой.
diff --git a/documentation/content/ru/articles/leap-seconds/_index.po b/documentation/content/ru/articles/leap-seconds/_index.po
index 8a1952b384..f730bbfc51 100644
--- a/documentation/content/ru/articles/leap-seconds/_index.po
+++ b/documentation/content/ru/articles/leap-seconds/_index.po
@@ -5,8 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-09-22 22:32+0300\n"
-"PO-Revision-Date: 2025-09-16 04:45+0000\n"
+"POT-Creation-Date: 2022-02-01 09:21-0300\n"
+"PO-Revision-Date: 2025-09-23 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/articlesleap-seconds_index/ru/>\n"
@@ -18,11 +18,12 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/articles/leap-seconds/_index.adoc:1
#, no-wrap
msgid "A short description of how leap seconds are handled on FreeBSD"
-msgstr "Краткое описание обработки високосных секунд (секунд координации) в FreeBSD"
+msgstr ""
+"Краткое описание обработки високосных секунд (секунд координации) в FreeBSD"
#. type: Title =
#: documentation/content/en/articles/leap-seconds/_index.adoc:1
@@ -68,13 +69,13 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/leap-seconds/_index.adoc:52
msgid ""
-"Leap seconds are announced by https://www.iers.org/IERS/EN/Home/"
-"home_node.html[IERS] on https://datacenter.iers.org/data/latestVersion/"
-"16_BULLETIN_C16.txt[Bulletin C]."
+"Leap seconds are announced by https://www.iers.org/IERS/EN/Home/home_node."
+"html[IERS] on https://datacenter.iers.org/data/latestVersion/16_BULLETIN_C16."
+"txt[Bulletin C]."
msgstr ""
-"Секунды координации объявляются https://www.iers.org/IERS/EN/Home/"
-"home_node.html[IERS] в https://datacenter.iers.org/data/latestVersion/"
-"16_BULLETIN_C16.txt[Бюллетене C]."
+"Секунды координации объявляются https://www.iers.org/IERS/EN/Home/home_node."
+"html[IERS] в https://datacenter.iers.org/data/latestVersion/16_BULLETIN_C16."
+"txt[Бюллетене C]."
#. type: Plain text
#: documentation/content/en/articles/leap-seconds/_index.adoc:55
@@ -82,9 +83,8 @@ msgid ""
"Standard leap second behavior is described in https://datatracker.ietf.org/"
"doc/html/rfc7164#section-3[RFC 7164]. Also see man:time2posix[3]."
msgstr ""
-"Стандартное поведение високосной секунды описано в https://"
-"datatracker.ietf.org/doc/html/rfc7164#section-3[RFC 7164]. Также см. "
-"man:time2posix[3]."
+"Стандартное поведение високосной секунды описано в https://datatracker.ietf."
+"org/doc/html/rfc7164#section-3[RFC 7164]. Также см. man:time2posix[3]."
#. type: Title ==
#: documentation/content/en/articles/leap-seconds/_index.adoc:57
@@ -103,8 +103,8 @@ msgid ""
"adjustments are necessary."
msgstr ""
"Самый простой способ обработки високосных секунд — использование правил "
-"времени POSIX, которые FreeBSD использует по умолчанию, в сочетании с extref:"
-"{handbook}[NTP, network-ntp]. Когда man:ntpd[8] работает и время "
+"времени POSIX, которые FreeBSD использует по умолчанию, в сочетании с "
+"extref:{handbook}[NTP, network-ntp]. Когда man:ntpd[8] работает и время "
"синхронизировано с вышестоящими серверами NTP, которые корректно "
"обрабатывают високосные секунды, високосная секунда приведёт к "
"автоматическому повтору последней секунды дня в системном времени. Другие "
@@ -113,9 +113,9 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/leap-seconds/_index.adoc:64
msgid ""
-"If the upstream NTP servers do not handle leap seconds correctly, "
-"man:ntpd[8] will step the time by one second after the errant upstream "
-"server has noticed and stepped itself."
+"If the upstream NTP servers do not handle leap seconds correctly, man:"
+"ntpd[8] will step the time by one second after the errant upstream server "
+"has noticed and stepped itself."
msgstr ""
"Если вышестоящие серверы NTP не обрабатывают високосные секунды корректно, "
"man:ntpd[8] изменит время на одну секунду после того, как ошибочный "
diff --git a/documentation/content/ru/articles/license-guide/_index.adoc b/documentation/content/ru/articles/license-guide/_index.adoc
index d36b20a8db..920a7fccfb 100644
--- a/documentation/content/ru/articles/license-guide/_index.adoc
+++ b/documentation/content/ru/articles/license-guide/_index.adoc
@@ -46,15 +46,9 @@ toc::[]
[[pref-license]]
== Предпочтительная лицензия для новых файлов
-Оставшаяся часть этого раздела предназначена для того, чтобы помочь вам
-разобраться. Как правило, если сомневаетесь, спрашивайте. Получить совет
-гораздо проще, чем исправлять дерево исходного кода. Проект FreeBSD
-использует как явные лицензии (где дословный текст лицензии воспроизводится
-в каждом файле), так и отделённые лицензии (где тег в файле указывает
-лицензию, как описано в этом документе).
+Оставшаяся часть этого раздела предназначена для того, чтобы помочь вам разобраться. Как правило, если сомневаетесь, спрашивайте. Получить совет гораздо проще, чем исправлять дерево исходного кода. Проект FreeBSD использует как явные лицензии (где дословный текст лицензии воспроизводится в каждом файле), так и отделённые лицензии (где тег в файле указывает лицензию, как описано в этом документе).
-Проект FreeBSD использует следующий текст в качестве предпочтительной
-лицензии:
+Проект FreeBSD использует следующий текст в качестве предпочтительной лицензии:
[.programlisting]
....
@@ -65,136 +59,55 @@ toc::[]
*/
....
-Проект FreeBSD не разрешает использование «рекламного условия»footnote:[прим
-перев: требование указания первоначального автора при всех изменениях кода]
-в новом коде. Из-за большого числа участников проекта FreeBSD соблюдение
-этого условия стало затруднительным для многих коммерческих
-поставщиков. Если у вас есть код в дереве с рекламным условием, пожалуйста,
-рассмотрите возможность перехода на лицензию без него. Новые вклады в
-FreeBSD должны использовать лицензию BSD-2-Clause.
-
-Проект FreeBSD не поощряет полностью новые лицензии и вариации стандартных
-лицензий. Новые лицензии требуют одобрения {core-email} для размещения в
-основном репозитории. В прошлом нестандартные лицензии вызывали больше
-проблем, чем стандартные. Плохая проработка нестандартных лицензий часто
-приводит к непредвиденным последствиям, поэтому они вряд ли будут одобрены
-{core-email}. Проект FreeBSD стандартизируется на лицензии BSD-2-Clause, как
-опубликовано SPDX.
-
-В дополнение, политика проекта требует, чтобы код, лицензированный под
-некоторыми не-BSD лицензиями, размещался в определённых разделах
-репозитория. Для некоторых лицензий компиляция должна быть условной или
-отключена по умолчанию. Например, код в статической части ядра GENERIC
-должен быть лицензирован под BSD или аналогичными лицензиями. Программное
-обеспечение под лицензиями GPL, APSL, CDDL и т.п. не должно компилироваться
-в статическое ядро GENERIC. Однако код с такими лицензиями может
-использоваться в предварительно скомпилированных модулях.
-
-Разработчикам напоминают, что в открытом исходном коде правильное понимание
-«открытости» так же важно, как и правильное понимание «исходного
-кода». Неправильное обращение с интеллектуальной собственностью имеет
-серьёзные последствия. Любые вопросы или опасения следует немедленно
-направлять по адресу {core-email}.
+Проект FreeBSD не разрешает использование «рекламного условия»footnote:[прим перев: требование указания первоначального автора при всех изменениях кода] в новом коде. Из-за большого числа участников проекта FreeBSD соблюдение этого условия стало затруднительным для многих коммерческих поставщиков. Если у вас есть код в дереве с рекламным условием, пожалуйста, рассмотрите возможность перехода на лицензию без него. Новые вклады в FreeBSD должны использовать лицензию BSD-2-Clause.
+
+Проект FreeBSD не поощряет полностью новые лицензии и вариации стандартных лицензий. Новые лицензии требуют одобрения {core-email} для размещения в основном репозитории. В прошлом нестандартные лицензии вызывали больше проблем, чем стандартные. Плохая проработка нестандартных лицензий часто приводит к непредвиденным последствиям, поэтому они вряд ли будут одобрены {core-email}. Проект FreeBSD стандартизируется на лицензии BSD-2-Clause, как опубликовано SPDX.
+
+В дополнение, политика проекта требует, чтобы код, лицензированный под некоторыми не-BSD лицензиями, размещался в определённых разделах репозитория. Для некоторых лицензий компиляция должна быть условной или отключена по умолчанию. Например, код в статической части ядра GENERIC должен быть лицензирован под BSD или аналогичными лицензиями. Программное обеспечение под лицензиями GPL, APSL, CDDL и т.п. не должно компилироваться в статическое ядро GENERIC. Однако код с такими лицензиями может использоваться в предварительно скомпилированных модулях.
+
+Разработчикам напоминают, что в открытом исходном коде правильное понимание «открытости» так же важно, как и правильное понимание «исходного кода». Неправильное обращение с интеллектуальной собственностью имеет серьёзные последствия. Любые вопросы или опасения следует немедленно направлять по адресу {core-email}.
[[license-policy]]
== Политика лицензирования программного обеспечения
-В следующих разделах подробно изложены политики лицензирования программного
-обеспечения проекта. В основном мы ожидаем, что разработчики прочитают,
-поймут и будут использовать разделы выше, чтобы применять соответствующие
-лицензии к своим вкладам. Остальная часть этого документа подробно описывает
-философскую основу политик, а также сами политики. Как всегда, если текст
-ниже вызывает затруднения или вам нужна помощь в применении этих политик,
-пожалуйста, обратитесь к {core-email}.
+В следующих разделах подробно изложены политики лицензирования программного обеспечения проекта. В основном мы ожидаем, что разработчики прочитают, поймут и будут использовать разделы выше, чтобы применять соответствующие лицензии к своим вкладам. Остальная часть этого документа подробно описывает философскую основу политик, а также сами политики. Как всегда, если текст ниже вызывает затруднения или вам нужна помощь в применении этих политик, пожалуйста, обратитесь к {core-email}.
=== Руководящие принципы
-Проект FreeBSD ставит своей целью создание полноценной операционной системы
-под лицензией BSD, позволяющей пользователям системы создавать производные
-продукты без ограничений или дополнительных лицензионных обязательств. Мы
-приветствуем и высоко ценим вклад в виде изменений и дополнений под
-лицензией BSD с двумя пунктами, а также призываем другие проекты с открытым
-исходным кодом принимать эту лицензию. Использование лицензии BSD является
-ключевым для поощрения внедрения передовых технологий операционных систем и
-во многих значимых случаях играло решающую роль в широком распространении
-новых технологий.
-
-Мы, однако, признаем, что существуют веские причины для включения в исходное
-дерево FreeBSD программного обеспечения с другими лицензиями.
-
-Мы требуем, чтобы программное обеспечение, лицензированное под некоторыми
-не-BSD лицензиями, было тщательно изолировано в дереве исходного кода, чтобы
-оно не могло загрязнять компоненты, доступные только под BSD. Такое
-осторожное управление способствует ясности лицензирования и облегчает
-создание производных продуктов, доступных только под BSD.
-
-Если не сделано специального исключения, существующие компоненты с лицензией
-BSD не могут быть заменены на программное обеспечение с более
-ограничительной лицензией. Мы призываем разработчиков FreeBSD и сторонних
-разработчиков стремиться к перелицензированию, двойному лицензированию или
-перереализации критических компонентов под лицензией BSD. Это облегчит их
-более полную интеграцию в операционную систему FreeBSD.
+Проект FreeBSD ставит своей целью создание полноценной операционной системы под лицензией BSD, позволяющей пользователям системы создавать производные продукты без ограничений или дополнительных лицензионных обязательств. Мы приветствуем и высоко ценим вклад в виде изменений и дополнений под лицензией BSD с двумя пунктами, а также призываем другие проекты с открытым исходным кодом принимать эту лицензию. Использование лицензии BSD является ключевым для поощрения внедрения передовых технологий операционных систем и во многих значимых случаях играло решающую роль в широком распространении новых технологий.
+
+Мы, однако, признаем, что существуют веские причины для включения в исходное дерево FreeBSD программного обеспечения с другими лицензиями.
+
+Мы требуем, чтобы программное обеспечение, лицензированное под некоторыми не-BSD лицензиями, было тщательно изолировано в дереве исходного кода, чтобы оно не могло загрязнять компоненты, доступные только под BSD. Такое осторожное управление способствует ясности лицензирования и облегчает создание производных продуктов, доступных только под BSD.
+
+Если не сделано специального исключения, существующие компоненты с лицензией BSD не могут быть заменены на программное обеспечение с более ограничительной лицензией. Мы призываем разработчиков FreeBSD и сторонних разработчиков стремиться к перелицензированию, двойному лицензированию или перереализации критических компонентов под лицензией BSD. Это облегчит их более полную интеграцию в операционную систему FreeBSD.
=== Политика
-* Импорт нового программного обеспечения, лицензированного под любыми
- лицензиями, кроме лицензии BSD и подобных лицензий BSD (как определено
- ниже), требует предварительного одобрения от FreeBSD Core Team. Запросы на
- импорт должны включать:
-** Список новых возможностей или исправлений ошибок, которые содержит новая
- версия или патчи, вместе с доказательствами того, что эти возможности нужны
- нашим пользователям. Идеальными формами доказательств являются PR (запросы
- на включение изменений) или ссылки на обсуждения в почтовых рассылках.
-** Этот процесс должен использоваться для всех импортов программного
- обеспечения, а не только для тех, которые требуют проверки Core Team. Сам
- факт существования новой версии не является оправданием для импорта
- программного обеспечения в исходные коды или порты.
-** Список ветвей FreeBSD, которые могут быть затронуты. Расширение области
- применения требует нового запроса и одобрения от основной команды FreeBSD.
-
-* Лицензия Apache 2.0 допустима для использования в некоторых
- случаях. Основная команда должна одобрить импорт новых компонентов,
- лицензированных по лицензии Apache, или изменение лицензии существующих
- компонентов на лицензию Apache.
+* Импорт нового программного обеспечения, лицензированного под любыми лицензиями, кроме лицензии BSD и подобных лицензий BSD (как определено ниже), требует предварительного одобрения от FreeBSD Core Team. Запросы на импорт должны включать:
+** Список новых возможностей или исправлений ошибок, которые содержит новая версия или патчи, вместе с доказательствами того, что эти возможности нужны нашим пользователям. Идеальными формами доказательств являются PR (запросы на включение изменений) или ссылки на обсуждения в почтовых рассылках.
+** Этот процесс должен использоваться для всех импортов программного обеспечения, а не только для тех, которые требуют проверки Core Team. Сам факт существования новой версии не является оправданием для импорта программного обеспечения в исходные коды или порты.
+** Список ветвей FreeBSD, которые могут быть затронуты. Расширение области применения требует нового запроса и одобрения от основной команды FreeBSD.
+
+* Лицензия Apache 2.0 допустима для использования в некоторых случаях. Основная команда должна одобрить импорт новых компонентов, лицензированных по лицензии Apache, или изменение лицензии существующих компонентов на лицензию Apache.
** Данная лицензия одобрена для следующих компонентов:
*** Инструментарий LLVM и (с исключениями LLVM) компоненты времени выполнения.
-* Лицензия BSD+Patent License допустима для использования в некоторых
- случаях. Основная команда (Core Team) должна одобрить импорт новых
- компонентов, лицензированных по BSD+Patent License, или изменение лицензии
- существующих компонентов на BSD+Patent License.
+* Лицензия BSD+Patent License допустима для использования в некоторых случаях. Основная команда (Core Team) должна одобрить импорт новых компонентов, лицензированных по BSD+Patent License, или изменение лицензии существующих компонентов на BSD+Patent License.
** Данная лицензия одобрена для следующих компонентов:
*** Код, основанный на EDK2, связанный с функциональностью UEFI
-* Общая лицензия на разработку и распространение (CDDL) допустима для
- использования в некоторых случаях. Основная команда должна одобрить импорт
- новых компонентов с лицензией CDDL или изменение лицензии существующих
- компонентов на CDDL.
+* Общая лицензия на разработку и распространение (CDDL) допустима для использования в некоторых случаях. Основная команда должна одобрить импорт новых компонентов с лицензией CDDL или изменение лицензии существующих компонентов на CDDL.
** Данная лицензия одобрена для следующих компонентов:
*** DTrace
*** Файловая система ZFS, включая поддержку в ядре и пользовательские утилиты
-* Исторически фраза "All Rights Reserved." включалась во все уведомления об
- авторских правах. Все релизы BSD содержали её, чтобы соответствовать
- требованиям
- https://en.wikipedia.org/wiki/Buenos_Aires_Convention[Буэнос-Айресской
- конвенции 1910 года] в Америке. После ратификации
- https://en.wikipedia.org/wiki/Berne_Convention[Бернской конвенции] в 2000
- году Никарагуа, Буэнос-Айресская конвенция — и эта фраза — устарели. В связи
- с этим проект FreeBSD рекомендует опускать эту фразу в новом коде и
- призывает текущих правообладателей удалить её. В 2018 году проект обновил
- свои шаблоны, убрав её.
-* Изначально многие элементы в дереве FreeBSD были помечены лицензией
- BSD-2-Clause-FreeBSD. Однако SPDX объявил эту лицензию устаревшей как
- вариант, и текст устаревшего тега в SPDX отличается от стандартной лицензии
- FreeBSD настолько, что его не следует использовать. Проводится проверка его
- текущего использования.
+* Исторически фраза "All Rights Reserved." включалась во все уведомления об авторских правах. Все релизы BSD содержали её, чтобы соответствовать требованиям https://en.wikipedia.org/wiki/Buenos_Aires_Convention[Буэнос-Айресской конвенции 1910 года] в Америке. После ратификации https://en.wikipedia.org/wiki/Berne_Convention[Бернской конвенции] в 2000 году Никарагуа, Буэнос-Айресская конвенция — и эта фраза — устарели. В связи с этим проект FreeBSD рекомендует опускать эту фразу в новом коде и призывает текущих правообладателей удалить её. В 2018 году проект обновил свои шаблоны, убрав её.
+* Изначально многие элементы в дереве FreeBSD были помечены лицензией BSD-2-Clause-FreeBSD. Однако SPDX объявил эту лицензию устаревшей как вариант, и текст устаревшего тега в SPDX отличается от стандартной лицензии FreeBSD настолько, что его не следует использовать. Проводится проверка его текущего использования.
==== Допустимые лицензии
-Следующие лицензии считаются допустимыми лицензиями в стиле BSD для целей
-данной Политики. Отклонения или использование любых других лицензий должны
-быть согласованы с основной командой (Core Team) FreeBSD:
+Следующие лицензии считаются допустимыми лицензиями в стиле BSD для целей данной Политики. Отклонения или использование любых других лицензий должны быть согласованы с основной командой (Core Team) FreeBSD:
* Версия лицензии BSD с 2 пунктами
@@ -238,210 +151,77 @@ BSD не могут быть заменены на программное обе
....
== Лицензия набора программного обеспечения (Software Collection License)
-Проект FreeBSD лицензирует свою подборку программного обеспечения, как
-описано в [.filename]#COPYRIGHT#, по лицензии BSD-2-Clause. Данная лицензия
-не заменяет лицензии отдельных файлов, которые описаны ниже. Файлы, не
-имеющие явной лицензии, распространяются по лицензии BSD-2-Clause.
+Проект FreeBSD лицензирует свою подборку программного обеспечения, как описано в [.filename]#COPYRIGHT#, по лицензии BSD-2-Clause. Данная лицензия не заменяет лицензии отдельных файлов, которые описаны ниже. Файлы, не имеющие явной лицензии, распространяются по лицензии BSD-2-Clause.
== Расположение файла лицензии
-Для соответствия стандарту https://reuse.software/[REUSE Software] насколько
-это возможно, все файлы лицензий будут храниться в каталоге
-[.filename]#LICENSES/# репозитория. В этом корневом каталоге есть три
-подкаталога. Подкаталог [.filename]#LICENSES/text/# содержит в отдельном
-виде тексты всех лицензий, разрешённых в комплекте программного обеспечения
-FreeBSD. Эти файлы сохраняются с использованием идентификатора
-SPDX-License-Identifier с добавлением .txt. Подкаталог
-[.filename]#LICENSES/exceptions/# содержит тексты всех исключений,
-разрешённых в отдельном виде в комплекте программного обеспечения
-FreeBSD. Эти файлы сохраняются с использованием идентификатора исключения с
-добавлением .txt. Подкаталог [.filename]#LICENSES/other/# содержит в
-отдельном виде файлы лицензий, упомянутые в выражениях
-SPDX-License-Identifier, но не разрешённые в качестве отдельных
-лицензий. Все такие файлы должны присутствовать в комплекте программного
-обеспечения FreeBSD хотя бы один раз и должны быть удалены, когда удаляется
-последний файл, ссылающийся на них. Лицензии, для которых нет подходящего
-соответствия в SPDX, должны находиться в [.filename]#LICENSES/other/# и
-иметь имя файла, начинающееся с LicenseRef-, за которым следует уникальная
-строка идентификатора. В настоящее время такие файлы не выявлены, но если
-они появятся, их полный список будет приведён здесь.
-
-Проект FreeBSD в настоящее время не использует файлы `DEP5`, описанные в
-стандарте `REUSE Software`. Проект FreeBSD ещё не пометил все файлы в дереве
-в соответствии с этим стандартом, как описано далее в этом документе. Проект
-FreeBSD пока не включил эти файлы в свои репозитории, поскольку данная
-политика ещё находится в процессе разработки.
+Для соответствия стандарту https://reuse.software/[REUSE Software] насколько это возможно, все файлы лицензий будут храниться в каталоге [.filename]#LICENSES/# репозитория. В этом корневом каталоге есть три подкаталога. Подкаталог [.filename]#LICENSES/text/# содержит в отдельном виде тексты всех лицензий, разрешённых в комплекте программного обеспечения FreeBSD. Эти файлы сохраняются с использованием идентификатора SPDX-License-Identifier с добавлением .txt. Подкаталог [.filename]#LICENSES/exceptions/# содержит тексты всех исключений, разрешённых в отдельном виде в комплекте программного обеспечения FreeBSD. Эти файлы сохраняются с использованием идентификатора исключения с добавлением .txt. Подкаталог [.filename]#LICENSES/other/# содержит в отдельном виде файлы лицензий, упомянутые в выражениях SPDX-License-Identifier, но не разрешённые в качестве отдельных лицензий. Все такие файлы должны присутствовать в комплекте программного обеспечения FreeBSD хотя бы один раз и должны быть удалены, когда удаляется последний файл, ссылающийся на них. Лицензии, для которых нет подходящего соответствия в SPDX, должны находиться в [.filename]#LICENSES/other/# и иметь имя файла, начинающееся с LicenseRef-, за которым следует уникальная строка идентификатора. В настоящее время такие файлы не выявлены, но если они появятся, их полный список будет приведён здесь.
+
+Проект FreeBSD в настоящее время не использует файлы `DEP5`, описанные в стандарте `REUSE Software`. Проект FreeBSD ещё не пометил все файлы в дереве в соответствии с этим стандартом, как описано далее в этом документе. Проект FreeBSD пока не включил эти файлы в свои репозитории, поскольку данная политика ещё находится в процессе разработки.
[[individual-files]]
== Лицензии индивидуальных файлов
-Каждый отдельный файл в комплекте программного обеспечения FreeBSD имеет
-собственное авторское право и лицензию. Способ их обозначения варьируется и
-описан в этом разделе.
-
-Уведомление об авторских правах указывает, кто заявляет о законных авторских
-правах на файл. Они предоставляются проектом по принципу наилучших
-усилий. Поскольку авторские права могут быть юридически переданы, текущий
-правообладатель может отличаться от указанного в файле.
-
-Лицензия — это юридический документ между автором и пользователями
-программного обеспечения, который предоставляет разрешение на использование
-защищённых авторским правом частей программного обеспечения на определённых
-условиях, изложенных в лицензии. В коллекции программного обеспечения
-FreeBSD лицензии могут быть выражены одним из двух способов. Лицензии могут
-быть явно указаны в файле. Когда лицензионное разрешение явно указано в
-файле, этот файл может использоваться, копироваться и изменяться в
-соответствии с данной лицензией. Лицензии также могут быть выражены
-косвенно, когда текст лицензии находится в другом месте. Для этой цели
-проект использует идентификаторы лицензий Software Package Data Exchange
-(SPDX), как описано в следующих подразделах. Идентификаторы лицензий SPDX
-управляются рабочей группой SPDX в Linux Foundation и были согласованы
-партнёрами по отрасли, поставщиками инструментов и юридическими
-командами. Для получения дополнительной информации см. https://spdx.org/ и
-следующие разделы о том, как проект FreeBSD их использует.
-
-Сущности, которые вносят исправления и улучшения в комплект программного
-обеспечения без явного лицензирования, соглашаются лицензировать эти
-изменения на условиях, применимых к изменённым файлам. Политика проекта, в
-соответствии с отраслевой практикой, включает уведомление об авторских
-правах только от значительных участников для файлов в коллекции.
+Каждый отдельный файл в комплекте программного обеспечения FreeBSD имеет собственное авторское право и лицензию. Способ их обозначения варьируется и описан в этом разделе.
+
+Уведомление об авторских правах указывает, кто заявляет о законных авторских правах на файл. Они предоставляются проектом по принципу наилучших усилий. Поскольку авторские права могут быть юридически переданы, текущий правообладатель может отличаться от указанного в файле.
+
+Лицензия — это юридический документ между автором и пользователями программного обеспечения, который предоставляет разрешение на использование защищённых авторским правом частей программного обеспечения на определённых условиях, изложенных в лицензии. В коллекции программного обеспечения FreeBSD лицензии могут быть выражены одним из двух способов. Лицензии могут быть явно указаны в файле. Когда лицензионное разрешение явно указано в файле, этот файл может использоваться, копироваться и изменяться в соответствии с данной лицензией. Лицензии также могут быть выражены косвенно, когда текст лицензии находится в другом месте. Для этой цели проект использует идентификаторы лицензий Software Package Data Exchange (SPDX), как описано в следующих подразделах. Идентификаторы лицензий SPDX управляются рабочей группой SPDX в Linux Foundation и были согласованы партнёрами по отрасли, поставщиками инструментов и юридическими командами. Для получения дополнительной информации см. https://spdx.org/ и следующие разделы о том, как проект FreeBSD их использует.
+
+Сущности, которые вносят исправления и улучшения в комплект программного обеспечения без явного лицензирования, соглашаются лицензировать эти изменения на условиях, применимых к изменённым файлам. Политика проекта, в соответствии с отраслевой практикой, включает уведомление об авторских правах только от значительных участников для файлов в коллекции.
В комплекте программного обеспечения FreeBSD существует четыре типа файлов:
. Файлы, содержащие только явное уведомление об авторских правах и лицензию.
-. Файлы, содержащие как явное уведомление об авторских правах и лицензии, так
- и тег SPDX-License-Identifier.
-. Файлы, содержащие только уведомление об авторских правах и тег
- SPDX-License-Identifier, но без явного указания лицензии.
-. Файлы, в которых отсутствует какое-либо указание на авторские права или
- лицензию.
+. Файлы, содержащие как явное уведомление об авторских правах и лицензии, так и тег SPDX-License-Identifier.
+. Файлы, содержащие только уведомление об авторских правах и тег SPDX-License-Identifier, но без явного указания лицензии.
+. Файлы, в которых отсутствует какое-либо указание на авторские права или лицензию.
=== Только авторские права и лицензия
-Многие файлы в коллекции программного обеспечения FreeBSD содержат как
-уведомление об авторских правах, так и явную лицензию в самом файле. В таких
-случаях применяется лицензия, указанная в файле.
+Многие файлы в коллекции программного обеспечения FreeBSD содержат как уведомление об авторских правах, так и явную лицензию в самом файле. В таких случаях применяется лицензия, указанная в файле.
=== Авторские права и лицензия с выражением SPDX-License-Identifier
-Некоторые файлы в коллекции программного обеспечения FreeBSD содержат
-заявление об авторских правах, тег SPDX-License-Identifier и явную
-лицензию. Явная лицензия имеет приоритет над тегом
-SPDX-License-Identifier. Тег SPDX-License-Identifier представляет собой
-наилучшую попытку проекта охарактеризовать лицензию, но является лишь
-информационным полем для автоматизированных
-инструментов. См. crossref:license-guide[expressions,Выражения
-SPDX-License-Identifier] для интерпретации выражения.
+Некоторые файлы в коллекции программного обеспечения FreeBSD содержат заявление об авторских правах, тег SPDX-License-Identifier и явную лицензию. Явная лицензия имеет приоритет над тегом SPDX-License-Identifier. Тег SPDX-License-Identifier представляет собой наилучшую попытку проекта охарактеризовать лицензию, но является лишь информационным полем для автоматизированных инструментов. См. crossref:license-guide[expressions,Выражения SPDX-License-Identifier] для интерпретации выражения.
=== Только уведомление об авторских правах и выражение SPDX-License-Identifier.
-Некоторые файлы в дереве содержат отдельные лицензии. Эти файлы содержат
-только уведомление об авторских правах и выражение SPDX-License-Identifier,
-но не содержат явной лицензии. См. crossref:license-guide[expressions,
-Выражения SPDX-License-Identifier] для интерпретации выражения. Примечание:
-выражения, разрешенные для отдельных лицензий проектом, являются
-подмножеством выражений, используемых в информационных целях или
-определенных стандартом.
-
-Лицензия для файлов, содержащих только SPDX-License-Identifier, должна
-толковаться как
-
-. Начните лицензию с уведомления об авторских правах из файла. Включите всех
- правообладателей.
-. Для каждого подвыражения скопируйте текст лицензии из
- [.filename]#LICENSE/text/`id`.txt#. Если присутствуют исключения, добавьте
- их из [.filename]#src/share/license/exceptions/`id`.txt#. Выражения
- SPDX-License-Identifier должны интерпретироваться в соответствии со
- стандартом SPDX.
-
-Где `id` — это короткий идентификатор лицензии SPDX из столбца `Identifier`
-на страницах https://spdx.org/licenses/[Идентификаторы SPDX] или
-https://spdx.org/licenses/exceptions-index.html[исключения лицензий]. Если в
-каталоге [.filename]#LICENSE/# нет файла, то такая лицензия или исключение
-не могут быть указаны как отдельная лицензия в этом разделе.
-
-При чтении текста лицензии, отделенного от файла, необходимо учитывать ряд
-аспектов, чтобы отделенная лицензия имела смысл.
-
-. Любая ссылка на уведомление об авторских правах должна относиться к
- уведомлению, составленному из лицензированного файла, а не из любого
- уведомления об авторских правах в самом тексте файла лицензии. Многие файлы
- SPDX содержат примеры уведомлений об авторских правах, которые понимаются
- исключительно как образцы.
-. Когда в тексте лицензии упоминаются названия организаций, они должны
- интерпретироваться как относящиеся к списку всех правообладателей, указанных
- в уведомлениях об авторских правах лицензированного файла. Например,
- лицензия BSD-4-clause содержит фразу "Этот продукт включает программное
- обеспечение, разработанное организацией". Фраза 'организацией' должна быть
- заменена на правообладателей.
-. Когда SPDX предлагает варианты лицензии, подразумевается, что лицензия в
- файле [.filename]#LICENSE/# представляет точную версию выбранной
- лицензии. Стандарт SPDX существует для сопоставления семейств лицензий, и
- эти варианты помогают сопоставлять похожие лицензии, которые организация
- SPDX считает юридически идентичными.
-
-Для лицензий с небольшими вариациями в тексте SPDX предоставляет
-рекомендации по их сопоставлению. Эти рекомендации здесь не
-актуальны. Участники, желающие использовать вариант лицензии SPDX, который
-не содержится дословно в [.filename]#LICENSE/#, не могут использовать
-отдельный вариант и должны явно указать лицензию.
+Некоторые файлы в дереве содержат отдельные лицензии. Эти файлы содержат только уведомление об авторских правах и выражение SPDX-License-Identifier, но не содержат явной лицензии. См. crossref:license-guide[expressions, Выражения SPDX-License-Identifier] для интерпретации выражения. Примечание: выражения, разрешенные для отдельных лицензий проектом, являются подмножеством выражений, используемых в информационных целях или определенных стандартом.
+
+Лицензия для файлов, содержащих только SPDX-License-Identifier, должна толковаться как
+
+. Начните лицензию с уведомления об авторских правах из файла. Включите всех правообладателей.
+. Для каждого подвыражения скопируйте текст лицензии из [.filename]#LICENSE/text/`id`.txt#. Если присутствуют исключения, добавьте их из [.filename]#src/share/license/exceptions/`id`.txt#. Выражения SPDX-License-Identifier должны интерпретироваться в соответствии со стандартом SPDX.
+
+Где `id` — это короткий идентификатор лицензии SPDX из столбца `Identifier` на страницах https://spdx.org/licenses/[Идентификаторы SPDX] или https://spdx.org/licenses/exceptions-index.html[исключения лицензий]. Если в каталоге [.filename]#LICENSE/# нет файла, то такая лицензия или исключение не могут быть указаны как отдельная лицензия в этом разделе.
+
+При чтении текста лицензии, отделенного от файла, необходимо учитывать ряд аспектов, чтобы отделенная лицензия имела смысл.
+
+. Любая ссылка на уведомление об авторских правах должна относиться к уведомлению, составленному из лицензированного файла, а не из любого уведомления об авторских правах в самом тексте файла лицензии. Многие файлы SPDX содержат примеры уведомлений об авторских правах, которые понимаются исключительно как образцы.
+. Когда в тексте лицензии упоминаются названия организаций, они должны интерпретироваться как относящиеся к списку всех правообладателей, указанных в уведомлениях об авторских правах лицензированного файла. Например, лицензия BSD-4-clause содержит фразу "Этот продукт включает программное обеспечение, разработанное организацией". Фраза 'организацией' должна быть заменена на правообладателей.
+. Когда SPDX предлагает варианты лицензии, подразумевается, что лицензия в файле [.filename]#LICENSE/# представляет точную версию выбранной лицензии. Стандарт SPDX существует для сопоставления семейств лицензий, и эти варианты помогают сопоставлять похожие лицензии, которые организация SPDX считает юридически идентичными.
+
+Для лицензий с небольшими вариациями в тексте SPDX предоставляет рекомендации по их сопоставлению. Эти рекомендации здесь не актуальны. Участники, желающие использовать вариант лицензии SPDX, который не содержится дословно в [.filename]#LICENSE/#, не могут использовать отдельный вариант и должны явно указать лицензию.
=== Файлы без указания авторских прав или любой лицензионной отметки
-Некоторые файлы не могут содержать подходящих комментариев. В таких случаях
-лицензия может быть найдена в [.filename]#file.ext.license#. Например, файл
-с именем [.filename]#foo.jpg# может иметь лицензию в
-[.filename]#foo.jpg.license#, следуя соглашениям REUSE Software.
+Некоторые файлы не могут содержать подходящих комментариев. В таких случаях лицензия может быть найдена в [.filename]#file.ext.license#. Например, файл с именем [.filename]#foo.jpg# может иметь лицензию в [.filename]#foo.jpg.license#, следуя соглашениям REUSE Software.
-Файлы, созданные проектом, в которых отсутствует уведомление об авторских
-правах, считаются подпадающими под общие положения об авторских правах и
-лицензировании в файле [.filename]#COPYRIGHT#. Это означает, что либо файл
-представляет собой простое изложение фактов, не охраняемых законом об
-авторских правах, либо его содержание настолько тривиально, что не требует
-оформления явной лицензии.
+Файлы, созданные проектом, в которых отсутствует уведомление об авторских правах, считаются подпадающими под общие положения об авторских правах и лицензировании в файле [.filename]#COPYRIGHT#. Это означает, что либо файл представляет собой простое изложение фактов, не охраняемых законом об авторских правах, либо его содержание настолько тривиально, что не требует оформления явной лицензии.
-Файлы, которые не имеют маркировки и содержат значительное количество
-материала, защищенного авторским правом, или которые автор считает
-неправильно промаркированными, должны быть доведены до сведения основной
-команды (Core Team) FreeBSD. Проект FreeBSD строго придерживается политики
-соблюдения всех соответствующих лицензий.
+Файлы, которые не имеют маркировки и содержат значительное количество материала, защищенного авторским правом, или которые автор считает неправильно промаркированными, должны быть доведены до сведения основной команды (Core Team) FreeBSD. Проект FreeBSD строго придерживается политики соблюдения всех соответствующих лицензий.
-В будущем все подобные файлы будут явно помечены или следовать соглашению
-REUSE Software о файлах с расширением [.filename]#.license#.
+В будущем все подобные файлы будут явно помечены или следовать соглашению REUSE Software о файлах с расширением [.filename]#.license#.
[[expressions]]
=== Выражения SPDX-License-Identifier
-'SPDX License expression' используется в двух контекстах в коллекции
-программного обеспечения FreeBSD. Во-первых, его полная форма применяется
-для файлов, которые содержат явные заявления о лицензии внутри файла, а
-также обобщающее выражение SPDX-License-Identifier. В этом контексте может
-быть использована вся мощь этих выражений. Во-вторых, в ограниченной форме,
-описанной выше, оно используется для обозначения фактической лицензии для
-данного файла. Во втором контексте проектом разрешено только подмножество
-этого выражения.
-
-`Лицензионные под-выражения SPDX` — это либо короткий идентификатор лицензии
-из https://spdx.org/licenses/[Список лицензий SPDX], либо комбинация двух
-таких идентификаторов, разделённых "WITH", если применяется
-https://spdx.org/licenses/exceptions-index.html[исключение из
-лицензии]. Если применяются несколько лицензий, выражение состоит из
-подвыражений, разделённых ключевыми словами "AND", "OR" и окружённых
-символами "(", ")". Полное описание выражений доступно в
-https://spdx.github.io/spdx-spec/appendix-IV-SPDX-license-expressions/[спецификации]
-и имеет приоритет в случае противоречий с упрощённым изложением этого
-раздела.
-
-Некоторые идентификаторы лицензий, такие как [L]GPL, предоставляют
-возможность использовать только указанную версию или любую более позднюю
-версию. SPDX определяет суффикс `-or-later` для обозначения этой версии
-лицензии или более поздней версии. Суффикс `-only` означает только указанную
-версию файла. Существует старая конвенция, согласно которой отсутствие
-суффикса (что означает то же, что и новый суффикс '-only', но люди путают
-это с `-or-later`). Кроме того, добавление суффикса `+` подразумевало
-значение `-or-later`. В новых файлах FreeBSD не следует использовать эти две
-конвенции. Старые файлы, использующие эту конвенцию, следует преобразовать
-соответствующим образом.
+'SPDX License expression' используется в двух контекстах в коллекции программного обеспечения FreeBSD. Во-первых, его полная форма применяется для файлов, которые содержат явные заявления о лицензии внутри файла, а также обобщающее выражение SPDX-License-Identifier. В этом контексте может быть использована вся мощь этих выражений. Во-вторых, в ограниченной форме, описанной выше, оно используется для обозначения фактической лицензии для данного файла. Во втором контексте проектом разрешено только подмножество этого выражения.
+
+`Лицензионные под-выражения SPDX` — это либо короткий идентификатор лицензии из https://spdx.org/licenses/[Список лицензий SPDX], либо комбинация двух таких идентификаторов, разделённых "WITH", если применяется https://spdx.org/licenses/exceptions-index.html[исключение из лицензии]. Если применяются несколько лицензий, выражение состоит из подвыражений, разделённых ключевыми словами "AND", "OR" и окружённых символами "(", ")". Полное описание выражений доступно в https://spdx.github.io/spdx-spec/appendix-IV-SPDX-license-expressions/[спецификации] и имеет приоритет в случае противоречий с упрощённым изложением этого раздела.
+
+Некоторые идентификаторы лицензий, такие как [L]GPL, предоставляют возможность использовать только указанную версию или любую более позднюю версию. SPDX определяет суффикс `-or-later` для обозначения этой версии лицензии или более поздней версии. Суффикс `-only` означает только указанную версию файла. Существует старая конвенция, согласно которой отсутствие суффикса (что означает то же, что и новый суффикс '-only', но люди путают это с `-or-later`). Кроме того, добавление суффикса `+` подразумевало значение `-or-later`. В новых файлах FreeBSD не следует использовать эти две конвенции. Старые файлы, использующие эту конвенцию, следует преобразовать соответствующим образом.
[.programlisting]
....
@@ -449,30 +229,23 @@ https://spdx.github.io/spdx-spec/appendix-IV-SPDX-license-expressions/[спец
// SPDX-License-Identifier: LGPL-2.1-or-later
....
-`WITH` следует использовать, когда требуется модификатор лицензии. В проекте
-FreeBSD ряд файлов из LLVM имеют исключение из лицензии Apache 2.0:
+`WITH` следует использовать, когда требуется модификатор лицензии. В проекте FreeBSD ряд файлов из LLVM имеют исключение из лицензии Apache 2.0:
[.programlisting]
....
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
....
-https://spdx.org/licenses/exceptions-index.html[Теги исключений] управляются
-SPDX. Исключения лицензий могут применяться только к определённым лицензиям,
-как указано в исключении.
+https://spdx.org/licenses/exceptions-index.html[Теги исключений] управляются SPDX. Исключения лицензий могут применяться только к определённым лицензиям, как указано в исключении.
-`OR` следует использовать, если файл предлагает выбор лицензии и одна
-лицензия выбрана. Например, некоторые файлы `dtsi` доступны под двойными
-лицензиями:
+`OR` следует использовать, если файл предлагает выбор лицензии и одна лицензия выбрана. Например, некоторые файлы `dtsi` доступны под двойными лицензиями:
[.programlisting]
....
// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
....
-`AND` следует использовать, если файл имеет несколько лицензий, условия
-которых применяются к использованию файла. Например, если код был
-заимствован из нескольких проектов, каждый со своей собственной лицензией:
+`AND` следует использовать, если файл имеет несколько лицензий, условия которых применяются к использованию файла. Например, если код был заимствован из нескольких проектов, каждый со своей собственной лицензией:
[.programlisting]
....
diff --git a/documentation/content/ru/articles/license-guide/_index.po b/documentation/content/ru/articles/license-guide/_index.po
index 46d19f93b4..94b548d4e6 100644
--- a/documentation/content/ru/articles/license-guide/_index.po
+++ b/documentation/content/ru/articles/license-guide/_index.po
@@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-09-22 18:52+0300\n"
+"POT-Creation-Date: 2025-05-01 19:56-0300\n"
"PO-Revision-Date: 2025-08-05 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
@@ -18,7 +18,7 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: title
+#. type: YAML Front Matter: title
#: documentation/content/en/articles/license-guide/_index.adoc:1
#, no-wrap
msgid "FreeBSD Licensing Policy"
@@ -259,9 +259,9 @@ msgid ""
"of the FreeBSD Core Team. Requests for import must include:"
msgstr ""
"Импорт нового программного обеспечения, лицензированного под любыми "
-"лицензиями, кроме лицензии BSD и подобных лицензий BSD (как определено "
-"ниже), требует предварительного одобрения от FreeBSD Core Team. Запросы на "
-"импорт должны включать:"
+"лицензиями, кроме лицензии BSD и подобных лицензий BSD (как определено ниже)"
+", требует предварительного одобрения от FreeBSD Core Team. Запросы на импорт "
+"должны включать:"
#. type: Plain text
#: documentation/content/en/articles/license-guide/_index.adoc:114
@@ -377,8 +377,8 @@ msgstr ""
"Исторически фраза \"All Rights Reserved.\" включалась во все уведомления об "
"авторских правах. Все релизы BSD содержали её, чтобы соответствовать "
"требованиям https://en.wikipedia.org/wiki/Buenos_Aires_Convention[Буэнос-"
-"Айресской конвенции 1910 года] в Америке. После ратификации https://"
-"en.wikipedia.org/wiki/Berne_Convention[Бернской конвенции] в 2000 году "
+"Айресской конвенции 1910 года] в Америке. После ратификации https://en."
+"wikipedia.org/wiki/Berne_Convention[Бернской конвенции] в 2000 году "
"Никарагуа, Буэнос-Айресская конвенция — и эта фраза — устарели. В связи с "
"этим проект FreeBSD рекомендует опускать эту фразу в новом коде и призывает "
"текущих правообладателей удалить её. В 2018 году проект обновил свои "
@@ -392,8 +392,8 @@ msgid ""
"text of the obsolete tag differs enough from the standard FreeBSD license "
"that it shouldn't be used. A review of its current use is ongoing."
msgstr ""
-"Изначально многие элементы в дереве FreeBSD были помечены лицензией BSD-2-"
-"Clause-FreeBSD. Однако SPDX объявил эту лицензию устаревшей как вариант, и "
+"Изначально многие элементы в дереве FreeBSD были помечены лицензией BSD-2"
+"-Clause-FreeBSD. Однако SPDX объявил эту лицензию устаревшей как вариант, и "
"текст устаревшего тега в SPDX отличается от стандартной лицензии FreeBSD "
"настолько, что его не следует использовать. Проводится проверка его текущего "
"использования."
@@ -532,25 +532,24 @@ msgid ""
"been identified, but if they are, a full list will appear here."
msgstr ""
"Для соответствия стандарту https://reuse.software/[REUSE Software] насколько "
-"это возможно, все файлы лицензий будут храниться в каталоге "
-"[.filename]#LICENSES/# репозитория. В этом корневом каталоге есть три "
-"подкаталога. Подкаталог [.filename]#LICENSES/text/# содержит в отдельном "
-"виде тексты всех лицензий, разрешённых в комплекте программного обеспечения "
-"FreeBSD. Эти файлы сохраняются с использованием идентификатора SPDX-License-"
-"Identifier с добавлением .txt. Подкаталог [.filename]#LICENSES/exceptions/# "
-"содержит тексты всех исключений, разрешённых в отдельном виде в комплекте "
+"это возможно, все файлы лицензий будут храниться в каталоге [.filename]#"
+"LICENSES/# репозитория. В этом корневом каталоге есть три подкаталога. "
+"Подкаталог [.filename]#LICENSES/text/# содержит в отдельном виде тексты всех "
+"лицензий, разрешённых в комплекте программного обеспечения FreeBSD. Эти "
+"файлы сохраняются с использованием идентификатора SPDX-License-Identifier с "
+"добавлением .txt. Подкаталог [.filename]#LICENSES/exceptions/# содержит "
+"тексты всех исключений, разрешённых в отдельном виде в комплекте "
"программного обеспечения FreeBSD. Эти файлы сохраняются с использованием "
-"идентификатора исключения с добавлением .txt. Подкаталог "
-"[.filename]#LICENSES/other/# содержит в отдельном виде файлы лицензий, "
-"упомянутые в выражениях SPDX-License-Identifier, но не разрешённые в "
-"качестве отдельных лицензий. Все такие файлы должны присутствовать в "
-"комплекте программного обеспечения FreeBSD хотя бы один раз и должны быть "
-"удалены, когда удаляется последний файл, ссылающийся на них. Лицензии, для "
-"которых нет подходящего соответствия в SPDX, должны находиться в "
-"[.filename]#LICENSES/other/# и иметь имя файла, начинающееся с LicenseRef-, "
-"за которым следует уникальная строка идентификатора. В настоящее время такие "
-"файлы не выявлены, но если они появятся, их полный список будет приведён "
-"здесь."
+"идентификатора исключения с добавлением .txt. Подкаталог [.filename]#"
+"LICENSES/other/# содержит в отдельном виде файлы лицензий, упомянутые в "
+"выражениях SPDX-License-Identifier, но не разрешённые в качестве отдельных "
+"лицензий. Все такие файлы должны присутствовать в комплекте программного "
+"обеспечения FreeBSD хотя бы один раз и должны быть удалены, когда удаляется "
+"последний файл, ссылающийся на них. Лицензии, для которых нет подходящего "
+"соответствия в SPDX, должны находиться в [.filename]#LICENSES/other/# и "
+"иметь имя файла, начинающееся с LicenseRef-, за которым следует уникальная "
+"строка идентификатора. В настоящее время такие файлы не выявлены, но если "
+"они появятся, их полный список будет приведён здесь."
#. type: Plain text
#: documentation/content/en/articles/license-guide/_index.adoc:211
@@ -722,15 +721,15 @@ msgstr ""
"Явная лицензия имеет приоритет над тегом SPDX-License-Identifier. Тег SPDX-"
"License-Identifier представляет собой наилучшую попытку проекта "
"охарактеризовать лицензию, но является лишь информационным полем для "
-"автоматизированных инструментов. См. crossref:license-"
-"guide[expressions,Выражения SPDX-License-Identifier] для интерпретации "
-"выражения."
+"автоматизированных инструментов. См. crossref:license-guide["
+"expressions,Выражения SPDX-License-Identifier] для интерпретации выражения."
#. type: Title ===
#: documentation/content/en/articles/license-guide/_index.adoc:253
#, no-wrap
msgid "Only Copyright and SPDX-License-Identifier expression."
-msgstr "Только уведомление об авторских правах и выражение SPDX-License-Identifier."
+msgstr ""
+"Только уведомление об авторских правах и выражение SPDX-License-Identifier."
#. type: Plain text
#: documentation/content/en/articles/license-guide/_index.adoc:259
@@ -791,10 +790,10 @@ msgid ""
"a detached license under this section."
msgstr ""
"Где `id` — это короткий идентификатор лицензии SPDX из столбца `Identifier` "
-"на страницах https://spdx.org/licenses/[Идентификаторы SPDX] или https://"
-"spdx.org/licenses/exceptions-index.html[исключения лицензий]. Если в "
-"каталоге [.filename]#LICENSE/# нет файла, то такая лицензия или исключение "
-"не могут быть указаны как отдельная лицензия в этом разделе."
+"на страницах https://spdx.org/licenses/[Идентификаторы SPDX] или https://spdx"
+".org/licenses/exceptions-index.html[исключения лицензий]. Если в каталоге [."
+"filename]#LICENSE/# нет файла, то такая лицензия или исключение не могут "
+"быть указаны как отдельная лицензия в этом разделе."
#. type: Plain text
#: documentation/content/en/articles/license-guide/_index.adoc:272
@@ -882,8 +881,8 @@ msgid ""
msgstr ""
"Некоторые файлы не могут содержать подходящих комментариев. В таких случаях "
"лицензия может быть найдена в [.filename]#file.ext.license#. Например, файл "
-"с именем [.filename]#foo.jpg# может иметь лицензию в "
-"[.filename]#foo.jpg.license#, следуя соглашениям REUSE Software."
+"с именем [.filename]#foo.jpg# может иметь лицензию в [.filename]#foo.jpg."
+"license#, следуя соглашениям REUSE Software."
#. type: Plain text
#: documentation/content/en/articles/license-guide/_index.adoc:293
@@ -965,11 +964,11 @@ msgid ""
msgstr ""
"`Лицензионные под-выражения SPDX` — это либо короткий идентификатор лицензии "
"из https://spdx.org/licenses/[Список лицензий SPDX], либо комбинация двух "
-"таких идентификаторов, разделённых \"WITH\", если применяется https://"
-"spdx.org/licenses/exceptions-index.html[исключение из лицензии]. Если "
-"применяются несколько лицензий, выражение состоит из подвыражений, "
-"разделённых ключевыми словами \"AND\", \"OR\" и окружённых символами \"(\", "
-"\")\". Полное описание выражений доступно в https://spdx.github.io/spdx-spec/"
+"таких идентификаторов, разделённых \"WITH\", если применяется https://spdx."
+"org/licenses/exceptions-index.html[исключение из лицензии]. Если применяются "
+"несколько лицензий, выражение состоит из подвыражений, разделённых ключевыми "
+"словами \"AND\", \"OR\" и окружённых символами \"(\", \")\". Полное описание "
+"выражений доступно в https://spdx.github.io/spdx-spec/"
"appendix-IV-SPDX-license-expressions/[спецификации] и имеет приоритет в "
"случае противоречий с упрощённым изложением этого раздела."
diff --git a/documentation/content/ru/articles/linux-emulation/_index.adoc b/documentation/content/ru/articles/linux-emulation/_index.adoc
index 9d60209b00..322804579b 100644
--- a/documentation/content/ru/articles/linux-emulation/_index.adoc
+++ b/documentation/content/ru/articles/linux-emulation/_index.adoc
@@ -443,9 +443,9 @@ if (__predict_true(p->p_sysent != &elf_Linux(R)_sysvec))
* `fhold` - ссылается на обработчик файла
[[md]]
-== Слой эмуляции Linux(R) - машинно-зависимая часть
+== Слой эмуляции Linux(R) - машинозависимая часть
-В этом разделе рассматривается реализация слоя эмуляции Linux(R) в операционной системе FreeBSD. Сначала описывается машинно-зависимая часть, рассказывающая о том, как и где реализовано взаимодействие между пользовательским пространством и ядром. Рассматриваются системные вызовы, сигналы, ptrace, ловушки и исправление стека. Эта часть посвящена архитектуре i386, но написана в общем виде, поэтому другие архитектуры не должны сильно отличаться. Следующая часть — машинно-независимая часть Linuxulator. Этот раздел охватывает только i386 и обработку ELF. A.OUT устарел и не поддерживается.
+В этом разделе рассматривается реализация слоя эмуляции Linux(R) в операционной системе FreeBSD. Сначала описывается машинозависимая часть, рассказывающая о том, как и где реализовано взаимодействие между пользовательским пространством и ядром. Рассматриваются системные вызовы, сигналы, ptrace, ловушки и исправление стека. Эта часть посвящена архитектуре i386, но написана в общем виде, поэтому другие архитектуры не должны сильно отличаться. Следующая часть — машинонезависимая часть Linuxulator. Этот раздел охватывает только i386 и обработку ELF. A.OUT устарел и не поддерживается.
[[syscall-handling]]
=== Обработка системных вызовов
@@ -576,9 +576,9 @@ translate_traps(int signal, int trap_code)
Эмуляционный слой Linux(R) на i386 также поддерживает бинарные файлы Linux(R) в формате A.OUT. Почти всё, что описано в предыдущих разделах, должно быть реализовано для поддержки A.OUT (кроме перевода ловушек и отправки сигналов). Поддержка бинарных файлов A.OUT больше не поддерживается, в частности, эмуляция 2.6 с ними не работает, но это не вызывает никаких проблем, так как linux-base в портах, вероятно, вообще не поддерживает бинарные файлы A.OUT. Эта поддержка, скорее всего, будет удалена в будущем. Большая часть кода, необходимого для загрузки бинарных файлов Linux(R) A.OUT, находится в файле [.filename]#imgact_linux.c#.
[[mi]]
-== Слой эмуляции Linux(R) - машино-независимая часть
+== Слой эмуляции Linux(R) - машинонезависимая часть
-В этом разделе рассматривается машинно-независимая часть Linuxulator. Он охватывает инфраструктуру эмуляции, необходимую для эмуляции Linux(R) 2.6, реализацию thread local storage (TLS) (на i386) и фьютексы. Затем мы кратко обсуждаем некоторые системные вызовы.
+В этом разделе рассматривается машинонезависимая часть Linuxulator. Он охватывает инфраструктуру эмуляции, необходимую для эмуляции Linux(R) 2.6, реализацию thread local storage (TLS) (на i386) и фьютексы. Затем мы кратко обсуждаем некоторые системные вызовы.
[[nptl-desc]]
=== Описание NPTL
@@ -713,7 +713,7 @@ mov %edx,%gs:0x10
[[tls-i386]]
===== i386
-Загрузка TLS для текущего потока происходит путем вызова `set_thread_area`, тогда как загрузка TLS для второго процесса в `clone` выполняется в отдельном блоке в `clone`. Эти две функции очень похожи. Единственное различие заключается в фактической загрузке сегмента GDT, которая происходит при следующем переключении контекста для вновь созданного процесса, в то время как `set_thread_area` должен загрузить его напрямую. Код в основном делает следующее. Он копирует дескриптор сегмента в формате Linux(R) из пользовательского пространства. Код проверяет номер дескриптора, но поскольку он различается между FreeBSD и Linux(R), мы немного имитируем его. Мы поддерживаем только индексы 6, 3 и -1. Число 6 — это оригинальный номер Linux(R), 3 — оригинальный номер FreeBSD, а -1 означает авто-выбор. Затем мы устанавливаем номер дескриптора на константу 3 и копируем его обратно в пользовательское пространство. Мы полагаемся на то, что процесс в пользовательском пространстве использует номер из дескриптора, но это работает в большинстве случаев (никогда не встречалось ситуации, когда это не срабатывало), так как процесс в пользовательском пространстве обычно передает 1. Затем мы преобразуем дескриптор из формата Linux(R) в машинно-зависимую форму (т.е. независимую от операционной системы) и копируем его в дескриптор сегмента, определенный FreeBSD. Наконец, мы можем загрузить его. Мы назначаем дескриптор PCB потока (блок управления процессом) и загружаем сегмент `%gs` с помощью `load_gs`. Эта загрузка должна выполняться в критической секции, чтобы ничто не могло нас прервать. Случай `CLONE_SETTLS` работает точно так же, только загрузка с помощью `load_gs` не выполняется. Сегмент, используемый для этого (сегмент номер 3), разделяется между процессами FreeBSD и Linux(R), поэтому слой эмуляции Linux(R) не добавляет накладных расходов по сравнению с обычным FreeBSD.
+Загрузка TLS для текущего потока происходит путем вызова `set_thread_area`, тогда как загрузка TLS для второго процесса в `clone` выполняется в отдельном блоке в `clone`. Эти две функции очень похожи. Единственное различие заключается в фактической загрузке сегмента GDT, которая происходит при следующем переключении контекста для вновь созданного процесса, в то время как `set_thread_area` должен загрузить его напрямую. Код в основном делает следующее. Он копирует дескриптор сегмента в формате Linux(R) из пользовательского пространства. Код проверяет номер дескриптора, но поскольку он различается между FreeBSD и Linux(R), мы немного имитируем его. Мы поддерживаем только индексы 6, 3 и -1. Число 6 — это оригинальный номер Linux(R), 3 — оригинальный номер FreeBSD, а -1 означает авто-выбор. Затем мы устанавливаем номер дескриптора на константу 3 и копируем его обратно в пользовательское пространство. Мы полагаемся на то, что процесс в пользовательском пространстве использует номер из дескриптора, но это работает в большинстве случаев (никогда не встречалось ситуации, когда это не срабатывало), так как процесс в пользовательском пространстве обычно передает 1. Затем мы преобразуем дескриптор из формата Linux(R) в машинозависимую форму (т.е. независимую от операционной системы) и копируем его в дескриптор сегмента, определенный FreeBSD. Наконец, мы можем загрузить его. Мы назначаем дескриптор PCB потока (блок управления процессом) и загружаем сегмент `%gs` с помощью `load_gs`. Эта загрузка должна выполняться в критической секции, чтобы ничто не могло нас прервать. Случай `CLONE_SETTLS` работает точно так же, только загрузка с помощью `load_gs` не выполняется. Сегмент, используемый для этого (сегмент номер 3), разделяется между процессами FreeBSD и Linux(R), поэтому слой эмуляции Linux(R) не добавляет накладных расходов по сравнению с обычным FreeBSD.
[[tls-amd64]]
===== amd64
diff --git a/documentation/content/ru/articles/linux-emulation/_index.po b/documentation/content/ru/articles/linux-emulation/_index.po
index 0296103bc0..cb02ba5937 100644
--- a/documentation/content/ru/articles/linux-emulation/_index.po
+++ b/documentation/content/ru/articles/linux-emulation/_index.po
@@ -5,8 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-10-13 23:41+0300\n"
-"PO-Revision-Date: 2025-10-03 04:45+0000\n"
+"POT-Creation-Date: 2024-01-17 20:35-0300\n"
+"PO-Revision-Date: 2025-10-29 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/articleslinux-emulation_index/ru/>\n"
@@ -18,13 +18,14 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/articles/linux-emulation/_index.adoc:1
#, no-wrap
msgid "A technical description about the internals of the Linux emulation layer in FreeBSD"
-msgstr "Техническое описание внутреннего устройства слоя эмуляции Linux в FreeBSD"
+msgstr ""
+"Техническое описание внутреннего устройства слоя эмуляции Linux в FreeBSD"
-#. type: Yaml Front Matter Hash Value: title
+#. type: YAML Front Matter: title
#: documentation/content/en/articles/linux-emulation/_index.adoc:1
#, no-wrap
msgid "Linux® emulation in FreeBSD"
@@ -36,12 +37,12 @@ msgstr "Эмуляция Linux® в FreeBSD"
msgid "Linux(R) emulation in FreeBSD"
msgstr "Эмуляция Linux(R) в FreeBSD"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:44
msgid "Abstract"
msgstr "Аннотация"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:54
msgid ""
"This masters thesis deals with updating the Linux(R) emulation layer (the so "
@@ -58,8 +59,8 @@ msgid ""
"We, the emulation development team, are working on making the Linux(R) 2.6 "
"emulation the default emulation layer in FreeBSD."
msgstr ""
-"Эта магистерская диссертация посвящена обновлению слоя эмуляции Linux(R) "
-"(так называемого _Linuxulator_). Задача состояла в обновлении слоя для "
+"Эта магистерская диссертация посвящена обновлению слоя эмуляции Linux(R) ("
+"так называемого _Linuxulator_). Задача состояла в обновлении слоя для "
"соответствия функциональности Linux(R) 2.6. В качестве эталонной реализации "
"было выбрано ядро Linux(R) 2.6.16. Концепция основана на реализации NetBSD. "
"Большая часть работы была выполнена летом 2006 года в рамках программы "
@@ -73,7 +74,7 @@ msgstr ""
"разработчиков эмуляции, работаем над тем, чтобы сделать эмуляцию Linux(R) "
"2.6 стандартным слоем эмуляции в FreeBSD."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:56
msgid "'''"
msgstr "'''"
@@ -84,7 +85,7 @@ msgstr "'''"
msgid "Introduction"
msgstr "Введение"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:67
msgid ""
"In the last few years the open source UNIX(R) based operating systems "
@@ -111,7 +112,7 @@ msgstr ""
"пользователей. Это приводит к ситуации, когда для Linux(R) доступно "
"множество проприетарных программ, которые не поддерживают FreeBSD."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:69
msgid ""
"Naturally, a need for the ability to run Linux(R) binaries on a FreeBSD "
@@ -122,7 +123,7 @@ msgstr ""
"бинарников в системе FreeBSD, и именно этому посвящена данная работа: "
"эмуляции ядра Linux(R) в операционной системе FreeBSD."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:72
msgid ""
"During the Summer of 2006 Google Inc. sponsored a project which focused on "
@@ -141,7 +142,7 @@ msgstr ""
msgid "A look inside..."
msgstr "Взгляд изнутри..."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:80
msgid ""
"In this section we are going to describe every operating system in "
@@ -163,7 +164,7 @@ msgstr ""
msgid "What is UNIX(R)"
msgstr "Что такое UNIX(R)"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:94
msgid ""
"UNIX(R) is an operating system with a long history that has influenced "
@@ -194,8 +195,8 @@ msgstr ""
"идеи были использованы многими другими операционными системами по всему "
"миру, образовав так называемые UNIX(R)-подобные операционные системы. В наши "
"дни наиболее влиятельными из них являются Linux(R), Solaris и, возможно (в "
-"некоторой степени), FreeBSD. Существуют корпоративные производные UNIX(R) "
-"(AIX, HP-UX и т. д.), но они всё больше мигрируют на упомянутые системы. "
+"некоторой степени), FreeBSD. Существуют корпоративные производные UNIX(R) ("
+"AIX, HP-UX и т. д.), но они всё больше мигрируют на упомянутые системы. "
"Давайте подведём итог типичным характеристикам UNIX(R)."
#. type: Title ====
@@ -206,7 +207,7 @@ msgstr ""
msgid "Technical details"
msgstr "Технические детали"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:104
msgid ""
"Every running program constitutes a process that represents a state of the "
@@ -233,7 +234,7 @@ msgstr ""
msgid "Communication between kernel and user space process"
msgstr "Обмен данными между ядром и пользовательским процессом"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:114
msgid ""
"Common UNIX(R) API defines a syscall as a way to issue commands from a user "
@@ -255,7 +256,7 @@ msgstr ""
"различными способами (зависит от реализации). Системные вызовы являются "
"синхронными."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:118
msgid ""
"Another possible way to communicate is by using a _trap_. Traps occur "
@@ -264,8 +265,8 @@ msgid ""
"reaction like sending a _signal_ (division by zero)."
msgstr ""
"Еще один возможный способ взаимодействия — использование _прерывания_. "
-"Прерывания происходят асинхронно после возникновения определенного события "
-"(деление на ноль, ошибка страницы и т.д.). Прерывание может быть прозрачным "
+"Прерывания происходят асинхронно после возникновения определенного события ("
+"деление на ноль, ошибка страницы и т.д.). Прерывание может быть прозрачным "
"для процесса (ошибка страницы) или привести к реакции, например, отправке "
"_сигнала_ (деление на ноль)."
@@ -275,7 +276,7 @@ msgstr ""
msgid "Communication between processes"
msgstr "Обмен данными между процессами"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:125
msgid ""
"There are other APIs (System V IPC, shared memory etc.) but the single most "
@@ -296,7 +297,7 @@ msgstr ""
msgid "Process management"
msgstr "Управление процессами"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:137
msgid ""
"Kernel instances are processed first in the system (so called init). Every "
@@ -326,7 +327,7 @@ msgstr ""
msgid "Thread management"
msgstr "Управление потоками"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:145
msgid ""
"Traditional UNIX(R) does not define any API nor implementation for "
@@ -343,7 +344,7 @@ msgstr ""
"всей группы потоков в один процесс с управлением потоками в пользовательском "
"пространстве (потоки 1:N). Сравнение основных особенностей каждого подхода:"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:147
msgid "1:1 threading"
msgstr "Потоки 1:1"
@@ -372,7 +373,7 @@ msgstr "нет необходимости в обёртке системных
msgid "can utilize multiple CPUs"
msgstr "может использовать несколько процессоров"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:154
msgid "1:N threading"
msgstr "Потоки 1:N"
@@ -403,7 +404,7 @@ msgstr "не может использовать более одного CPU"
msgid "What is FreeBSD?"
msgstr "Что такое FreeBSD?"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:169
msgid ""
"The FreeBSD project is one of the oldest open source operating systems "
@@ -425,7 +426,7 @@ msgstr ""
"своё имя благодаря либеральной лицензии. Другая группа создала операционную "
"систему NetBSD с другими целями. Мы сосредоточимся на FreeBSD."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:174
msgid ""
"FreeBSD is a modern UNIX(R)-based operating system with all the features of "
@@ -445,42 +446,42 @@ msgstr ""
"UNIX(R)-подобных операционных систем. По состоянию на декабрь 2006 года и "
"разработку 7-CURRENT поддерживаются следующие функции эмуляции:"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:176
msgid "FreeBSD/i386 emulation on FreeBSD/amd64"
msgstr "Совместимость FreeBSD/i386 на FreeBSD/amd64"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:177
msgid "FreeBSD/i386 emulation on FreeBSD/ia64"
msgstr "FreeBSD/i386 эмуляция на FreeBSD/ia64"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:178
msgid "Linux(R)-emulation of Linux(R) operating system on FreeBSD"
msgstr "Эмуляция Linux(R) операционной системы Linux(R) на FreeBSD"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:179
msgid "NDIS-emulation of Windows networking drivers interface"
msgstr "NDIS-эмуляция интерфейса сетевых драйверов Windows"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:180
msgid "NetBSD-emulation of NetBSD operating system"
msgstr "NetBSD-эмуляция операционной системы NetBSD"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:181
msgid "PECoff-support for PECoff FreeBSD executables"
msgstr "Поддержка PECoff для исполняемых файлов FreeBSD в формате PECoff"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:182
msgid "SVR4-emulation of System V revision 4 UNIX(R)"
msgstr "Эмуляция SVR4 System V revision 4 UNIX(R)"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:185
msgid ""
"Actively developed emulations are the Linux(R) layer and various FreeBSD-on-"
@@ -491,7 +492,7 @@ msgstr ""
"FreeBSD-on-FreeBSD. Остальные в настоящее время не должны работать корректно "
"или быть пригодными к использованию."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:195
msgid ""
"FreeBSD is traditional flavor of UNIX(R) in the sense of dividing the run of "
@@ -518,7 +519,7 @@ msgstr ""
msgid "System entries"
msgstr "Системные записи"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:204
msgid ""
"FreeBSD has an abstraction called an execution class loader, which is a "
@@ -535,8 +536,8 @@ msgstr ""
"которая является прослойкой в системном вызове man:execve[2]. Она использует "
"структуру `sysentvec`, описывающую ABI исполняемого файла. Эта структура "
"содержит такие элементы, как таблицу преобразования errno, таблицу "
-"преобразования сигналов, различные функции для обработки системных вызовов "
-"(исправление стека, создание дампов памяти и т.д.). Каждый ABI, который ядро "
+"преобразования сигналов, различные функции для обработки системных вызовов ("
+"исправление стека, создание дампов памяти и т.д.). Каждый ABI, который ядро "
"FreeBSD поддерживает, должен определять эту структуру, так как она "
"используется в дальнейшем в коде обработки системных вызовов и в некоторых "
"других местах. Системные вызовы обрабатываются обработчиками прерываний, где "
@@ -550,7 +551,7 @@ msgstr ""
msgid "Syscalls"
msgstr "Системные вызовы"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:209
msgid ""
"Syscalls on FreeBSD are issued by executing interrupt `0x80` with register "
@@ -560,7 +561,7 @@ msgstr ""
"установленным в регистре `%eax` номером нужного системного вызова и "
"аргументами, переданными через стек."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:215
msgid ""
"When a process issues an interrupt `0x80`, the `int0x80` syscall trap "
@@ -602,7 +603,7 @@ msgstr ""
msgid "Traps"
msgstr "Ловушки (trap)"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:224
msgid ""
"Handling of traps in FreeBSD is similar to the handling of syscalls. "
@@ -629,7 +630,7 @@ msgstr ""
msgid "Exits"
msgstr "Выходы"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:230
msgid ""
"Exits from kernel to userspace happen using the assembler routine `doreti` "
@@ -648,7 +649,7 @@ msgstr ""
msgid "UNIX(R) primitives"
msgstr "Примитивы UNIX(R)"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:238
msgid ""
"FreeBSD operating system adheres to the traditional UNIX(R) scheme, where "
@@ -665,7 +666,7 @@ msgstr ""
"осуществляется с помощью линейного поиска в пространстве PID. Каждый поток в "
"процессе получает тот же номер PID в результате вызова man:getpid[2]."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:249
msgid ""
"There are currently two ways to implement threading in FreeBSD. The first "
@@ -700,7 +701,7 @@ msgstr ""
"обработка этого идентификатора внутренняя для библиотеки и не может быть "
"использована напрямую."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:257
msgid ""
"As stated previously there are two implementations of threading in FreeBSD. "
@@ -734,7 +735,7 @@ msgstr ""
msgid "What is Linux(R)"
msgstr "Что такое Linux(R)"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:263
msgid ""
"Linux(R) is a UNIX(R)-like kernel originally developed by Linus Torvalds, "
@@ -751,7 +752,7 @@ msgstr ""
"разработки, полной поддержкой оборудования и моделью организации по принципу "
"\"доброжелательного диктатора\"."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:267
msgid ""
"Linux(R) development started in 1991 as a hobbyist project at University of "
@@ -767,7 +768,7 @@ msgstr ""
"в общем, всё необходимое. Также присутствуют высокоуровневые функции, такие "
"как виртуализация и т. д."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:270
msgid ""
"As of 2006 Linux(R) seems to be the most widely used open source operating "
@@ -783,7 +784,7 @@ msgstr ""
"доступна только в бинарном виде, поэтому перекомпиляция для других "
"операционных систем невозможна."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:275
msgid ""
"Most of the Linux(R) development happens in a Git version control system. "
@@ -802,12 +803,12 @@ msgstr ""
"обозначает мажорную версию, в которую добавляются или изменяются функции, а "
"D — минорную версию, предназначенную только для исправления ошибок."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:277
msgid "More information can be obtained from [3]."
msgstr "Дополнительную информацию можно получить из [3]."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:286
msgid ""
"Linux(R) follows the traditional UNIX(R) scheme of dividing the run of a "
@@ -822,7 +823,7 @@ msgstr ""
"осуществляется только одним способом. Далее описание относится к Linux(R) "
"2.6 на архитектуре i386(TM). Эта информация взята из [2]."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:296
msgid ""
"Syscalls in Linux(R) are performed (in userspace) using `syscallX` macros "
@@ -849,37 +850,37 @@ msgstr ""
"предполагает передачу параметров системного вызова через регистры, как "
"показано здесь:"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:298
msgid "parameter -> `%ebx`"
msgstr "параметр -> `%ebx`"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:299
msgid "parameter -> `%ecx`"
msgstr "параметр -> `%ecx`"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:300
msgid "parameter -> `%edx`"
msgstr "параметр -> `%edx`"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:301
msgid "parameter -> `%esi`"
msgstr "параметр -> `%esi`"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:302
msgid "parameter -> `%edi`"
msgstr "параметр -> `%edi`"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:303
msgid "parameter -> `%ebp`"
msgstr "параметр -> `%ebp`"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:305
msgid ""
"There are some exceptions to this, where Linux(R) uses different calling "
@@ -888,18 +889,18 @@ msgstr ""
"Существуют некоторые исключения из этого правила, где Linux(R) использует "
"другие соглашения о вызовах (наиболее примечателен системный вызов `clone`)."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:310
msgid ""
"The trap handlers are introduced in [.filename]#arch/i386/kernel/traps.c# "
"and most of these handlers live in [.filename]#arch/i386/kernel/entry.S#, "
"where handling of the traps happens."
msgstr ""
-"Обработчики ловушек представлены в файле [.filename]#arch/i386/kernel/"
-"traps.c#, а большинство этих обработчиков находятся в [.filename]#arch/i386/"
-"kernel/entry.S#, где происходит обработка ловушек."
+"Обработчики ловушек представлены в файле [.filename]#arch/i386/kernel/traps."
+"c#, а большинство этих обработчиков находятся в [.filename]#arch/i386/kernel/"
+"entry.S#, где происходит обработка ловушек."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:316
msgid ""
"Return from the syscall is managed by syscall man:exit[3], which checks for "
@@ -915,13 +916,13 @@ msgstr ""
"восстанавливаются из стека, а процесс возвращается в пользовательское "
"пространство."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:327
msgid ""
"In the 2.6 version, the Linux(R) operating system redefined some of the "
"traditional UNIX(R) primitives, notably PID, TID and thread. PID is defined "
-"not to be unique for every process, so for some processes (threads) "
-"man:getppid[2] returns the same value. Unique identification of process is "
+"not to be unique for every process, so for some processes (threads) man:"
+"getppid[2] returns the same value. Unique identification of process is "
"provided by TID. This is because _NPTL_ (New POSIX(R) Thread Library) "
"defines threads to be normal processes (so called 1:1 threading). Spawning "
"a new process in Linux(R) 2.6 happens using the `clone` syscall (fork "
@@ -935,83 +936,83 @@ msgstr ""
"определяется не как уникальный для каждого процесса, поэтому для некоторых "
"процессов (потоков) man:getppid[2] возвращает одинаковое значение. "
"Уникальная идентификация процесса обеспечивается TID. Это связано с тем, что "
-"_NPTL_ (New POSIX(R) Thread Library) определяет потоки как обычные процессы "
-"(так называемая модель 1:1). Создание нового процесса в Linux(R) 2.6 "
+"_NPTL_ (New POSIX(R) Thread Library) определяет потоки как обычные процессы ("
+"так называемая модель 1:1). Создание нового процесса в Linux(R) 2.6 "
"происходит с использованием системного вызова `clone` (варианты fork "
"перереализованы с его использованием). Этот системный вызов clone определяет "
"набор флагов, которые влияют на поведение процесса клонирования в отношении "
"реализации потоков. Семантика немного размыта, так как нет единого флага, "
"указывающего системному вызову создать поток."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:329
msgid "Implemented clone flags are:"
msgstr "Реализованные флаги клонирования:"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:331
msgid "`CLONE_VM` - processes share their memory space"
msgstr "`CLONE_VM` - процессы разделяют общее адресное пространство"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:332
msgid "`CLONE_FS` - share umask, cwd and namespace"
msgstr ""
"`CLONE_FS` — совместно использовать umask, текущий рабочий каталог и "
"пространство имён"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:333
msgid "`CLONE_FILES` - share open files"
msgstr "`CLONE_FILES` - совместно использовать открытые файлы"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:334
msgid "`CLONE_SIGHAND` - share signal handlers and blocked signals"
msgstr ""
"`CLONE_SIGHAND` - разделять обработчики сигналов и заблокированные сигналы"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:335
msgid "`CLONE_PARENT` - share parent"
msgstr "`CLONE_PARENT` - использовать один процесс к качестве родительского"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:336
msgid "`CLONE_THREAD` - be thread (further explanation below)"
msgstr "`CLONE_THREAD` — быть потоком (дальнейшие пояснения ниже)"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:337
msgid "`CLONE_NEWNS` - new namespace"
msgstr "`CLONE_NEWNS` - новое пространство имен"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:338
msgid "`CLONE_SYSVSEM` - share SysV undo structures"
msgstr "`CLONE_SYSVSEM` - совместное использование структур отмены SysV"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:339
msgid "`CLONE_SETTLS` - setup TLS at supplied address"
msgstr "`CLONE_SETTLS` - настройка TLS по указанному адресу"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:340
msgid "`CLONE_PARENT_SETTID` - set TID in the parent"
msgstr "`CLONE_PARENT_SETTID` - установить TID в родителе"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:341
msgid "`CLONE_CHILD_CLEARTID` - clear TID in the child"
msgstr "`CLONE_CHILD_CLEARTID` - очистить TID в дочернем процессе"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:342
msgid "`CLONE_CHILD_SETTID` - set TID in the child"
msgstr "`CLONE_CHILD_SETTID` - установить TID в дочернем процессе"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:348
msgid ""
"`CLONE_PARENT` sets the real parent to the parent of the caller. This is "
@@ -1033,7 +1034,7 @@ msgstr ""
"флагов `CLONE_*_*TID` устанавливает/сбрасывает предоставленный пользователем "
"адрес в TID или 0."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:352
msgid ""
"As you can see the `CLONE_THREAD` does most of the work and does not seem to "
@@ -1052,7 +1053,7 @@ msgstr ""
"разделение, так как glibc не использует его, и только ручное использование "
"clone позволяет программисту получить доступ к этим возможностям."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:355
msgid ""
"For non-threaded programs the PID and TID are the same. For threaded "
@@ -1067,7 +1068,7 @@ msgstr ""
"родительский процесс общий для всех процессов, образующих эту поточную "
"программу."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:357
msgid ""
"The code that implements man:pthread_create[3] in NPTL defines the clone "
@@ -1271,8 +1272,8 @@ msgstr ""
msgid ""
"The same goes with the UNIX(R) API. Most programs can live with a very "
"limited set of syscalls working. Those syscalls tend to be the oldest ones "
-"(man:read[2]/man:write[2], man:fork[2] family, man:signal[3] handling, "
-"man:exit[3], man:socket[2] API) hence it is easy to emulate because their "
+"(man:read[2]/man:write[2], man:fork[2] family, man:signal[3] handling, man:"
+"exit[3], man:socket[2] API) hence it is easy to emulate because their "
"semantics is shared among all UNIX(R)es, which exist todays."
msgstr ""
"То же самое касается UNIX(R) API. Большинство программ могут работать с "
@@ -1485,10 +1486,10 @@ msgstr ""
"Атомарные операции реализуются через набор функций, выполняющих простые "
"арифметические действия над операндами в памяти атомарным образом по "
"отношению к внешним событиям (прерываниям, вытеснению и т. д.). Атомарные "
-"операции могут гарантировать атомарность только для небольших типов данных "
-"(порядка величины типа `.long` в архитектуре C), поэтому их следует редко "
-"использовать напрямую в конечном коде, разве что для очень простых операций "
-"(например, установки флага в битовой карте). На самом деле довольно просто и "
+"операции могут гарантировать атомарность только для небольших типов данных ("
+"порядка величины типа `.long` в архитектуре C), поэтому их следует редко "
+"использовать напрямую в конечном коде, разве что для очень простых операций ("
+"например, установки флага в битовой карте). На самом деле довольно просто и "
"часто можно допустить семантическую ошибку, полагаясь только на атомарные "
"операции (обычно называемые lock-less). Ядро FreeBSD предоставляет способ "
"выполнения атомарных операций в сочетании с барьерами памяти. Барьеры памяти "
@@ -1519,8 +1520,8 @@ msgid ""
"even something like a spin-mutex is deprecated. Using the refcount "
"interface for structures, where a mutex is already used is often wrong since "
"we should probably close the reference counter in some already protected "
-"paths. A manpage discussing refcount does not exist currently, just check "
-"[.filename]#sys/refcount.h# for an overview of the existing API."
+"paths. A manpage discussing refcount does not exist currently, just check [."
+"filename]#sys/refcount.h# for an overview of the existing API."
msgstr ""
"Счетчики ссылок (refcounts) — это интерфейсы для работы с подсчетом ссылок. "
"Они реализованы с использованием атомарных операций и предназначены для "
@@ -1672,8 +1673,8 @@ msgstr ""
"указанное рядом с типом блокировки), ему запрещено захватывать блокировки "
"более высоких уровней, так как это нарушит заданную семантику пути. "
"Например, если поток удерживает блокирующую блокировку (уровень 2), ему "
-"разрешено захватывать спин-блокировку (уровень 1), но не спящую блокировку "
-"(уровень 3), поскольку блокирующие блокировки предназначены для защиты более "
+"разрешено захватывать спин-блокировку (уровень 1), но не спящую блокировку ("
+"уровень 3), поскольку блокирующие блокировки предназначены для защиты более "
"коротких путей, чем спящие блокировки (однако эти правила не касаются "
"атомарных операций или барьеров планирования)."
@@ -1975,11 +1976,11 @@ msgstr "namei"
msgid ""
"The man:namei[9] routine is a central entry point to pathname lookup and "
"translation. It traverses the path point by point from the starting point "
-"to the end point using lookup function, which is internal to VFS. The "
-"man:namei[9] syscall can cope with symlinks, absolute and relative paths. "
-"When a path is looked up using man:namei[9] it is inputed to the name cache. "
-"This behavior can be suppressed. This routine is used all over the kernel "
-"and its performance is very critical."
+"to the end point using lookup function, which is internal to VFS. The man:"
+"namei[9] syscall can cope with symlinks, absolute and relative paths. When "
+"a path is looked up using man:namei[9] it is inputed to the name cache. This "
+"behavior can be suppressed. This routine is used all over the kernel and "
+"its performance is very critical."
msgstr ""
"Функция man:namei[9] является центральной точкой входа для поиска и "
"преобразования путей. Она проходит по пути шаг за шагом от начальной до "
@@ -2111,7 +2112,7 @@ msgstr "`fhold` - ссылается на обработчик файла"
#: documentation/content/en/articles/linux-emulation/_index.adoc:658
#, no-wrap
msgid "Linux(R) emulation layer -MD part"
-msgstr "Слой эмуляции Linux(R) - машинно-зависимая часть"
+msgstr "Слой эмуляции Linux(R) - машинозависимая часть"
#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:666
@@ -2126,12 +2127,12 @@ msgid ""
"is obsolete and untested."
msgstr ""
"В этом разделе рассматривается реализация слоя эмуляции Linux(R) в "
-"операционной системе FreeBSD. Сначала описывается машинно-зависимая часть, "
+"операционной системе FreeBSD. Сначала описывается машинозависимая часть, "
"рассказывающая о том, как и где реализовано взаимодействие между "
"пользовательским пространством и ядром. Рассматриваются системные вызовы, "
"сигналы, ptrace, ловушки и исправление стека. Эта часть посвящена "
"архитектуре i386, но написана в общем виде, поэтому другие архитектуры не "
-"должны сильно отличаться. Следующая часть — машинно-независимая часть "
+"должны сильно отличаться. Следующая часть — машинонезависимая часть "
"Linuxulator. Этот раздел охватывает только i386 и обработку ELF. A.OUT "
"устарел и не поддерживается."
@@ -2149,11 +2150,11 @@ msgid ""
"a Linux(R) process running on FreeBSD issues a syscall, the general syscall "
"routine calls linux prepsyscall routine for the Linux(R) ABI."
msgstr ""
-"Обработка системных вызовов в основном реализована в файле "
-"[.filename]#linux_sysvec.c#, который покрывает большинство процедур, "
-"указанных в структуре `sysentvec`. Когда процесс Linux(R), выполняющийся на "
-"FreeBSD, делает системный вызов, общая процедура обработки системных вызовов "
-"вызывает linux prepsyscall для ABI Linux(R)."
+"Обработка системных вызовов в основном реализована в файле [."
+"filename]#linux_sysvec.c#, который покрывает большинство процедур, указанных "
+"в структуре `sysentvec`. Когда процесс Linux(R), выполняющийся на FreeBSD, "
+"делает системный вызов, общая процедура обработки системных вызовов вызывает "
+"linux prepsyscall для ABI Linux(R)."
#. type: Title ====
#: documentation/content/en/articles/linux-emulation/_index.adoc:674
@@ -2175,11 +2176,10 @@ msgstr ""
"Linux(R) передает аргументы системных вызовов через регистры (поэтому на "
"i386 ограничено 6 параметрами), тогда как FreeBSD использует стек. "
"Подпрограмма Linux(R) `prepsyscall` должна копировать параметры из регистров "
-"в стек. Порядок регистров следующий: `%ebx`, `%ecx`, `%edx`, `%esi`, "
-"`%edi`, `%ebp`. Однако это верно только для _большинства_ системных "
-"вызовов. Некоторые (особенно `clone`) используют другой порядок, но это, к "
-"счастью, легко исправить, добавив фиктивный параметр в прототип "
-"`linux_clone`."
+"в стек. Порядок регистров следующий: `%ebx`, `%ecx`, `%edx`, `%esi`, `%edi`"
+", `%ebp`. Однако это верно только для _большинства_ системных вызовов. "
+"Некоторые (особенно `clone`) используют другой порядок, но это, к счастью, "
+"легко исправить, добавив фиктивный параметр в прототип `linux_clone`."
#. type: Title ====
#: documentation/content/en/articles/linux-emulation/_index.adoc:683
@@ -2239,14 +2239,14 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:708
msgid ""
-"From [.filename]#syscalls.master# a script generates three files: "
-"[.filename]#linux_syscall.h#, [.filename]#linux_proto.h# and "
-"[.filename]#linux_sysent.c#. The [.filename]#linux_syscall.h# contains "
+"From [.filename]#syscalls.master# a script generates three files: [."
+"filename]#linux_syscall.h#, [.filename]#linux_proto.h# and [."
+"filename]#linux_sysent.c#. The [.filename]#linux_syscall.h# contains "
"definitions of syscall names and their numerical value, e.g.:"
msgstr ""
-"Из файла [.filename]#syscalls.master# скрипт генерирует три файла: "
-"[.filename]#linux_syscall.h#, [.filename]#linux_proto.h# и "
-"[.filename]#linux_sysent.c#. Файл [.filename]#linux_syscall.h# содержит "
+"Из файла [.filename]#syscalls.master# скрипт генерирует три файла: [."
+"filename]#linux_syscall.h#, [.filename]#linux_proto.h# и [."
+"filename]#linux_sysent.c#. Файл [.filename]#linux_syscall.h# содержит "
"определения имен системных вызовов и их числовых значений, например:"
#. type: delimited block . 4
@@ -2304,7 +2304,8 @@ msgid ""
"{ AS(close_args), (sy_call_t *)close, AUE_CLOSE, NULL, 0, 0 }, /* 6 = close */\n"
msgstr ""
"{ 0, (sy_call_t *)linux_fork, AUE_FORK, NULL, 0, 0 }, /* 2 = linux_fork */\n"
-"{ AS(close_args), (sy_call_t *)close, AUE_CLOSE, NULL, 0, 0 }, /* 6 = close */\n"
+"{ AS(close_args), (sy_call_t *)close, AUE_CLOSE, NULL, 0, 0 }, /* 6 = close "
+"*/\n"
#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:737
@@ -2345,8 +2346,8 @@ msgstr ""
"Слой эмуляции Linux(R) не является полным, так как некоторые системные "
"вызовы реализованы неправильно, а некоторые не реализованы вовсе. В слое "
"эмуляции используется механизм для пометки нереализованных системных вызовов "
-"с помощью макроса `DUMMY`. Эти заглушки находятся в файле "
-"[.filename]#linux_dummy.c# в форме `DUMMY(syscall);`, которые затем "
+"с помощью макроса `DUMMY`. Эти заглушки находятся в файле [."
+"filename]#linux_dummy.c# в форме `DUMMY(syscall);`, которые затем "
"преобразуются в различные вспомогательные файлы системных вызовов, а их "
"реализация сводится к выводу сообщения о том, что данный системный вызов не "
"реализован. Прототип `UNIMPL` не используется, потому что мы хотим иметь "
@@ -2470,8 +2471,8 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:788
msgid ""
-"Linux(R) emulation in FreeBSD implements the man:ptrace[2] facility in "
-"[.filename]#linux_ptrace.c#. The routines for converting registers between "
+"Linux(R) emulation in FreeBSD implements the man:ptrace[2] facility in [."
+"filename]#linux_ptrace.c#. The routines for converting registers between "
"Linux(R) and FreeBSD and the actual man:ptrace[2] syscall emulation "
"syscall. The syscall is a long switch block that implements its counterpart "
"in FreeBSD for every man:ptrace[2] command. The man:ptrace[2] commands are "
@@ -2481,16 +2482,16 @@ msgid ""
"(native) man:ptrace[2] syscall, a copyout must be done to preserve Linux(R) "
"semantics."
msgstr ""
-"Эмуляция Linux(R) в FreeBSD реализует механизм man:ptrace[2] в файле "
-"[.filename]#linux_ptrace.c#. Функции для преобразования регистров между "
+"Эмуляция Linux(R) в FreeBSD реализует механизм man:ptrace[2] в файле [."
+"filename]#linux_ptrace.c#. Функции для преобразования регистров между "
"Linux(R) и FreeBSD и фактический системный вызов эмуляции man:ptrace[2]. "
"Системный вызов представляет собой длинный блок switch, который реализует "
-"свой аналог в FreeBSD для каждой команды man:ptrace[2]. Команды "
-"man:ptrace[2] в основном одинаковы между Linux(R) и FreeBSD, поэтому обычно "
-"требуется лишь небольшая модификация. Например, `PT_GETREGS` в Linux(R) "
-"работает с непосредственными данными, в то время как FreeBSD использует "
-"указатель на данные, поэтому после выполнения (нативного) системного вызова "
-"man:ptrace[2] необходимо выполнить copyout для сохранения семантики Linux(R)."
+"свой аналог в FreeBSD для каждой команды man:ptrace[2]. Команды man:ptrace[2]"
+" в основном одинаковы между Linux(R) и FreeBSD, поэтому обычно требуется "
+"лишь небольшая модификация. Например, `PT_GETREGS` в Linux(R) работает с "
+"непосредственными данными, в то время как FreeBSD использует указатель на "
+"данные, поэтому после выполнения (нативного) системного вызова man:ptrace[2] "
+"необходимо выполнить copyout для сохранения семантики Linux(R)."
#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:792
@@ -2617,24 +2618,24 @@ msgid ""
"especially the 2.6 emulation does not work with it but this does not cause "
"any problem, as the linux-base in ports probably do not support A.OUT "
"binaries at all. This support will probably be removed in future. Most of "
-"the stuff necessary for loading Linux(R) A.OUT binaries is in "
-"[.filename]#imgact_linux.c# file."
-msgstr ""
-"Эмуляционный слой Linux(R) на i386 также поддерживает бинарные файлы "
-"Linux(R) в формате A.OUT. Почти всё, что описано в предыдущих разделах, "
-"должно быть реализовано для поддержки A.OUT (кроме перевода ловушек и "
-"отправки сигналов). Поддержка бинарных файлов A.OUT больше не "
-"поддерживается, в частности, эмуляция 2.6 с ними не работает, но это не "
-"вызывает никаких проблем, так как linux-base в портах, вероятно, вообще не "
-"поддерживает бинарные файлы A.OUT. Эта поддержка, скорее всего, будет "
-"удалена в будущем. Большая часть кода, необходимого для загрузки бинарных "
-"файлов Linux(R) A.OUT, находится в файле [.filename]#imgact_linux.c#."
+"the stuff necessary for loading Linux(R) A.OUT binaries is in [."
+"filename]#imgact_linux.c# file."
+msgstr ""
+"Эмуляционный слой Linux(R) на i386 также поддерживает бинарные файлы Linux(R)"
+" в формате A.OUT. Почти всё, что описано в предыдущих разделах, должно быть "
+"реализовано для поддержки A.OUT (кроме перевода ловушек и отправки сигналов)"
+". Поддержка бинарных файлов A.OUT больше не поддерживается, в частности, "
+"эмуляция 2.6 с ними не работает, но это не вызывает никаких проблем, так как "
+"linux-base в портах, вероятно, вообще не поддерживает бинарные файлы A.OUT. "
+"Эта поддержка, скорее всего, будет удалена в будущем. Большая часть кода, "
+"необходимого для загрузки бинарных файлов Linux(R) A.OUT, находится в файле ["
+".filename]#imgact_linux.c#."
#. type: Title ==
#: documentation/content/en/articles/linux-emulation/_index.adoc:842
#, no-wrap
msgid "Linux(R) emulation layer -MI part"
-msgstr "Слой эмуляции Linux(R) - машино-независимая часть"
+msgstr "Слой эмуляции Linux(R) - машинонезависимая часть"
#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:847
@@ -2644,7 +2645,7 @@ msgid ""
"thread local storage (TLS) implementation (on i386) and futexes. Then we "
"talk briefly about some syscalls."
msgstr ""
-"В этом разделе рассматривается машинно-независимая часть Linuxulator. Он "
+"В этом разделе рассматривается машинонезависимая часть Linuxulator. Он "
"охватывает инфраструктуру эмуляции, необходимую для эмуляции Linux(R) 2.6, "
"реализацию thread local storage (TLS) (на i386) и фьютексы. Затем мы кратко "
"обсуждаем некоторые системные вызовы."
@@ -2738,27 +2739,27 @@ msgstr "Определение эмуляции 2.6 во время выполн
#: documentation/content/en/articles/linux-emulation/_index.adoc:883
msgid ""
"The Linux(R) emulation layer in FreeBSD supports runtime setting of the "
-"emulated version. This is done via man:sysctl[8], namely "
-"`compat.linux.osrelease`. Setting this man:sysctl[8] affects runtime "
-"behavior of the emulation layer. When set to 2.6.x it sets the value of "
-"`linux_use_linux26` while setting to something else keeps it unset. This "
-"variable (plus per-prison variables of the very same kind) determines "
-"whether 2.6 infrastructure (mainly PID mangling) is used in the code or "
-"not. The version setting is done system-wide and this affects all Linux(R) "
+"emulated version. This is done via man:sysctl[8], namely `compat.linux."
+"osrelease`. Setting this man:sysctl[8] affects runtime behavior of the "
+"emulation layer. When set to 2.6.x it sets the value of `linux_use_linux26` "
+"while setting to something else keeps it unset. This variable (plus per-"
+"prison variables of the very same kind) determines whether 2.6 "
+"infrastructure (mainly PID mangling) is used in the code or not. The "
+"version setting is done system-wide and this affects all Linux(R) "
"processes. The man:sysctl[8] should not be changed when running any "
"Linux(R) binary as it might harm things."
msgstr ""
"Слой эмуляции Linux(R) в FreeBSD поддерживает динамическую настройку "
-"эмулируемой версии. Это выполняется с помощью man:sysctl[8], а именно "
-"`compat.linux.osrelease`. Установка этого man:sysctl[8] влияет на поведение "
-"слоя эмуляции во время выполнения. При установке значения 2.6.x "
-"устанавливается переменная `linux_use_linux26`, а при установке другого "
-"значения она остаётся сброшенной. Эта переменная (а также аналогичные "
-"переменные для каждой клетки) определяет, используется ли в коде "
-"инфраструктура 2.6 (в основном, преобразование PID). Настройка версии "
-"применяется глобально для всей системы и влияет на все процессы Linux(R). Не "
-"следует изменять man:sysctl[8] во время выполнения любого бинарного файла "
-"Linux(R), так как это может привести к проблемам."
+"эмулируемой версии. Это выполняется с помощью man:sysctl[8], а именно `compat"
+".linux.osrelease`. Установка этого man:sysctl[8] влияет на поведение слоя "
+"эмуляции во время выполнения. При установке значения 2.6.x устанавливается "
+"переменная `linux_use_linux26`, а при установке другого значения она "
+"остаётся сброшенной. Эта переменная (а также аналогичные переменные для "
+"каждой клетки) определяет, используется ли в коде инфраструктура 2.6 (в "
+"основном, преобразование PID). Настройка версии применяется глобально для "
+"всей системы и влияет на все процессы Linux(R). Не следует изменять "
+"man:sysctl[8] во время выполнения любого бинарного файла Linux(R), так как "
+"это может привести к проблемам."
#. type: Title ====
#: documentation/content/en/articles/linux-emulation/_index.adoc:885
@@ -2776,8 +2777,8 @@ msgid ""
"other words a process. For single-threaded process the PID equals the TGID."
msgstr ""
"Семантика потоков в Linux(R) немного запутанная и использует совершенно "
-"другую терминологию по сравнению с FreeBSD. Процесс в Linux(R) состоит из "
-"`struct task`, включающей два поля идентификаторов — PID и TGID. PID — это "
+"другую терминологию по сравнению с FreeBSD. Процесс в Linux(R) состоит из `"
+"struct task`, включающей два поля идентификаторов — PID и TGID. PID — это "
"_не_ идентификатор процесса, а идентификатор потока. TGID идентифицирует "
"группу потоков, другими словами, процесс. Для однопоточного процесса PID "
"равен TGID."
@@ -2882,8 +2883,8 @@ msgid ""
msgstr ""
"PID используется для идентификации процесса FreeBSD, к которому присоединена "
"эта структура. `child_se_tid` и `child_clear_tid` используются для "
-"копирования адреса TID при завершении и создании процесса. Указатель "
-"`shared` указывает на структуру, разделяемую между потоками. Переменная "
+"копирования адреса TID при завершении и создании процесса. Указатель `shared`"
+" указывает на структуру, разделяемую между потоками. Переменная "
"`pdeath_signal` определяет сигнал завершения родительского процесса, а "
"указатель `threads` используется для связывания этой структуры со списком "
"потоков. Структура `linux_emuldata_shared` выглядит следующим образом:"
@@ -3005,8 +3006,8 @@ msgid ""
"The `clone` syscall is the way threads are created in Linux(R). The syscall "
"prototype looks like this:"
msgstr ""
-"`clone` — это системный вызов, с помощью которого создаются потоки в "
-"Linux(R). Прототип системного вызова выглядит следующим образом:"
+"`clone` — это системный вызов, с помощью которого создаются потоки в Linux(R)"
+". Прототип системного вызова выглядит следующим образом:"
#. type: delimited block . 4
#: documentation/content/en/articles/linux-emulation/_index.adoc:977
@@ -3072,10 +3073,10 @@ msgid ""
"the functionality later in the code. At this point we copy out the PID to "
"the address specified by `parent_tidptr`. The setting of process stack is "
"done by simply rewriting thread frame `%esp` register (`%rsp` on amd64). "
-"Next part is setting up TLS for the newly created process. After this "
-"man:vfork[2] semantics might be emulated and finally the newly created "
-"process is put on a run queue and copying out its PID to the parent process "
-"via `clone` return value is done."
+"Next part is setting up TLS for the newly created process. After this man:"
+"vfork[2] semantics might be emulated and finally the newly created process "
+"is put on a run queue and copying out its PID to the parent process via "
+"`clone` return value is done."
msgstr ""
"Системный вызов продолжает выполнение, устанавливая соответствующие флаги в "
"зависимости от переданных аргументов. Например, `CLONE_VM` преобразуется в "
@@ -3103,9 +3104,9 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:1004
msgid ""
-"The `clone` syscall is able and in fact is used for emulating classic "
-"man:fork[2] and man:vfork[2] syscalls. Newer glibc in a case of 2.6 kernel "
-"uses `clone` to implement man:fork[2] and man:vfork[2] syscalls."
+"The `clone` syscall is able and in fact is used for emulating classic man:"
+"fork[2] and man:vfork[2] syscalls. Newer glibc in a case of 2.6 kernel uses "
+"`clone` to implement man:fork[2] and man:vfork[2] syscalls."
msgstr ""
"Системный вызов `clone` способен и фактически используется для эмуляции "
"классических системных вызовов man:fork[2] и man:vfork[2]. Более новые "
@@ -3131,9 +3132,9 @@ msgid ""
msgstr ""
"Блокировка реализована на уровне подсистем, поскольку не ожидается высокой "
"конкуренции за эти ресурсы. Существует две блокировки: `emul_lock`, "
-"используемая для защиты манипуляций с `linux_emuldata`, и "
-"`emul_shared_lock`, используемая для манипуляций с `linux_emuldata_shared`. "
-"`emul_lock` представляет собой неспящий блокирующий мьютекс, в то время как "
+"используемая для защиты манипуляций с `linux_emuldata`, и `emul_shared_lock`"
+", используемая для манипуляций с `linux_emuldata_shared`. `emul_lock` "
+"представляет собой неспящий блокирующий мьютекс, в то время как "
"`emul_shared_lock` — это спящий блокирующий `sx_lock`. Благодаря блокировке "
"на уровне подсистем мы можем объединять некоторые блокировки, поэтому "
"em_find предлагает доступ без блокировки."
@@ -3165,30 +3166,30 @@ msgid ""
"their own data. Sometimes there is a need for process-wide data specific to "
"a given thread. Imagine a name of the thread in execution or something like "
"that. The traditional UNIX(R) threading API, pthreads provides a way to do "
-"it via man:pthread_key_create[3], man:pthread_setspecific[3] and "
-"man:pthread_getspecific[3] where a thread can create a key to the thread "
-"local data and using man:pthread_getspecific[3] or "
-"man:pthread_getspecific[3] to manipulate those data. You can easily see "
-"that this is not the most comfortable way this could be accomplished. So "
-"various producers of C/C++ compilers introduced a better way. They defined "
-"a new modifier keyword thread that specifies that a variable is thread "
-"specific. A new method of accessing such variables was developed as well "
-"(at least on i386). The pthreads method tends to be implemented in "
-"userspace as a trivial lookup table. The performance of such a solution is "
-"not very good. So the new method uses (on i386) segment registers to "
-"address a segment, where TLS area is stored so the actual accessing of a "
-"thread variable is just appending the segment register to the address thus "
-"addressing via it. The segment registers are usually `%gs` and `%fs` acting "
-"like segment selectors. Every thread has its own area where the thread "
-"local data are stored and the segment must be loaded on every context "
-"switch. This method is very fast and used almost exclusively in the whole "
-"i386 UNIX(R) world. Both FreeBSD and Linux(R) implement this approach and "
-"it yields very good results. The only drawback is the need to reload the "
-"segment on every context switch which can slowdown context switches. "
-"FreeBSD tries to avoid this overhead by using only 1 segment descriptor for "
-"this while Linux(R) uses 3. Interesting thing is that almost nothing uses "
-"more than 1 descriptor (only Wine seems to use 2) so Linux(R) pays this "
-"unnecessary price for context switches."
+"it via man:pthread_key_create[3], man:pthread_setspecific[3] and man:"
+"pthread_getspecific[3] where a thread can create a key to the thread local "
+"data and using man:pthread_getspecific[3] or man:pthread_getspecific[3] to "
+"manipulate those data. You can easily see that this is not the most "
+"comfortable way this could be accomplished. So various producers of C/C++ "
+"compilers introduced a better way. They defined a new modifier keyword "
+"thread that specifies that a variable is thread specific. A new method of "
+"accessing such variables was developed as well (at least on i386). The "
+"pthreads method tends to be implemented in userspace as a trivial lookup "
+"table. The performance of such a solution is not very good. So the new "
+"method uses (on i386) segment registers to address a segment, where TLS area "
+"is stored so the actual accessing of a thread variable is just appending the "
+"segment register to the address thus addressing via it. The segment "
+"registers are usually `%gs` and `%fs` acting like segment selectors. Every "
+"thread has its own area where the thread local data are stored and the "
+"segment must be loaded on every context switch. This method is very fast "
+"and used almost exclusively in the whole i386 UNIX(R) world. Both FreeBSD "
+"and Linux(R) implement this approach and it yields very good results. The "
+"only drawback is the need to reload the segment on every context switch "
+"which can slowdown context switches. FreeBSD tries to avoid this overhead "
+"by using only 1 segment descriptor for this while Linux(R) uses 3. "
+"Interesting thing is that almost nothing uses more than 1 descriptor (only "
+"Wine seems to use 2) so Linux(R) pays this unnecessary price for context "
+"switches."
msgstr ""
"В компьютерных науках потоки (threads) — это сущности внутри процесса, "
"которые могут планироваться независимо друг от друга. Потоки в процессе "
@@ -3220,8 +3221,8 @@ msgstr ""
"необходимость перезагружать сегмент при каждом переключении контекста, что "
"может замедлять переключения. FreeBSD пытается минимизировать эти накладные "
"расходы, используя только 1 дескриптор сегмента, в то время как Linux® "
-"использует 3. Интересно, что почти ничто не использует больше 1 дескриптора "
-"(только Wine, кажется, использует 2), поэтому Linux® платит эту "
+"использует 3. Интересно, что почти ничто не использует больше 1 дескриптора ("
+"только Wine, кажется, использует 2), поэтому Linux® платит эту "
"необязательную цену при переключении контекстов."
#. type: Title ====
@@ -3243,9 +3244,9 @@ msgstr ""
"Архитектура i386 реализует так называемые сегменты. Сегмент — это описание "
"области памяти. Он включает базовый адрес (начало) области памяти, её конец "
"(границу), тип, защиту и т.д. Доступ к памяти, описываемой сегментом, может "
-"осуществляться с использованием регистров селекторов сегментов (`%cs`, "
-"`%ds`, `%ss`, `%es`, `%fs`, `%gs`). Например, предположим, что у нас есть "
-"сегмент с базовым адресом 0x1234 и длиной, а также следующий код:"
+"осуществляться с использованием регистров селекторов сегментов (`%cs`, `%ds`"
+", `%ss`, `%es`, `%fs`, `%gs`). Например, предположим, что у нас есть сегмент "
+"с базовым адресом 0x1234 и длиной, а также следующий код:"
#. type: delimited block . 4
#: documentation/content/en/articles/linux-emulation/_index.adoc:1053
@@ -3293,8 +3294,8 @@ msgid ""
"entry. We exploit this in the emulation and in fact depend on it."
msgstr ""
"Существует два основных способа настройки TLS в Linux(R). Он может быть "
-"настроен при клонировании процесса с использованием системного вызова "
-"`clone` или с помощью вызова `set_thread_area`. Когда процесс передает флаг "
+"настроен при клонировании процесса с использованием системного вызова `clone`"
+" или с помощью вызова `set_thread_area`. Когда процесс передает флаг "
"`CLONE_SETTLS` в `clone`, ядро ожидает, что память, на которую указывает "
"регистр `%esi`, будет содержать пользовательское представление сегмента в "
"Linux(R), которое преобразуется в машинное представление сегмента и "
@@ -3360,16 +3361,16 @@ msgstr ""
"пользовательском пространстве использует номер из дескриптора, но это "
"работает в большинстве случаев (никогда не встречалось ситуации, когда это "
"не срабатывало), так как процесс в пользовательском пространстве обычно "
-"передает 1. Затем мы преобразуем дескриптор из формата Linux(R) в машинно-"
-"зависимую форму (т.е. независимую от операционной системы) и копируем его в "
-"дескриптор сегмента, определенный FreeBSD. Наконец, мы можем загрузить его. "
-"Мы назначаем дескриптор PCB потока (блок управления процессом) и загружаем "
-"сегмент `%gs` с помощью `load_gs`. Эта загрузка должна выполняться в "
-"критической секции, чтобы ничто не могло нас прервать. Случай `CLONE_SETTLS` "
-"работает точно так же, только загрузка с помощью `load_gs` не выполняется. "
-"Сегмент, используемый для этого (сегмент номер 3), разделяется между "
-"процессами FreeBSD и Linux(R), поэтому слой эмуляции Linux(R) не добавляет "
-"накладных расходов по сравнению с обычным FreeBSD."
+"передает 1. Затем мы преобразуем дескриптор из формата Linux(R) в "
+"машинозависимую форму (т.е. независимую от операционной системы) и копируем "
+"его в дескриптор сегмента, определенный FreeBSD. Наконец, мы можем загрузить "
+"его. Мы назначаем дескриптор PCB потока (блок управления процессом) и "
+"загружаем сегмент `%gs` с помощью `load_gs`. Эта загрузка должна выполняться "
+"в критической секции, чтобы ничто не могло нас прервать. Случай "
+"`CLONE_SETTLS` работает точно так же, только загрузка с помощью `load_gs` не "
+"выполняется. Сегмент, используемый для этого (сегмент номер 3), разделяется "
+"между процессами FreeBSD и Linux(R), поэтому слой эмуляции Linux(R) не "
+"добавляет накладных расходов по сравнению с обычным FreeBSD."
#. type: Title =====
#: documentation/content/en/articles/linux-emulation/_index.adoc:1097
@@ -3391,8 +3392,8 @@ msgstr ""
"Реализация amd64 аналогична реализации i386, но изначально не использовался "
"32-битный дескриптор сегмента для этой цели (поэтому даже нативные "
"пользователи 32-битного TLS не работали), поэтому нам пришлось добавить "
-"такой сегмент и реализовать его загрузку при каждом переключении контекста "
-"(когда установлен флаг, сигнализирующий о использовании 32-битного режима). "
+"такой сегмент и реализовать его загрузку при каждом переключении контекста ("
+"когда установлен флаг, сигнализирующий о использовании 32-битного режима). "
"Кроме этого, загрузка TLS точно такая же, только номера сегментов "
"отличаются, а формат дескриптора и загрузка немного различаются."
@@ -3537,7 +3538,9 @@ msgstr "Системный вызов futex выглядит следующим
#: documentation/content/en/articles/linux-emulation/_index.adoc:1150
#, no-wrap
msgid "int futex(void *uaddr, int op, int val, struct timespec *timeout, void *uaddr2, int val3);\n"
-msgstr "int futex(void *uaddr, int op, int val, struct timespec *timeout, void *uaddr2, int val3);\n"
+msgstr ""
+"int futex(void *uaddr, int op, int val, struct timespec *timeout, void *"
+"uaddr2, int val3);\n"
#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:1153
@@ -3869,9 +3872,9 @@ msgid ""
"futex. This cooperates with `futex_sleep`."
msgstr ""
"Пробуждение потока, ожидающего на фьютексе, выполняется в функции "
-"`futex_wake`. Сначала в этой функции мы имитируем странное поведение "
-"Linux(R), где пробуждаются N потоков для всех операций, за исключением того, "
-"что операции REQUEUE выполняются на N+1 потоках. Однако обычно это не имеет "
+"`futex_wake`. Сначала в этой функции мы имитируем странное поведение Linux(R)"
+", где пробуждаются N потоков для всех операций, за исключением того, что "
+"операции REQUEUE выполняются на N+1 потоках. Однако обычно это не имеет "
"значения, так как мы пробуждаем все потоки. Далее в функции в цикле мы "
"пробуждаем n потоков, после чего проверяем, есть ли новый фьютекс для "
"перестановки. Если есть, мы переставляем до n2 потоков на новый futex. Это "
@@ -3889,8 +3892,8 @@ msgid ""
"The `FUTEX_WAKE_OP` operation is quite complicated. First we obtain two "
"futexes at addresses `uaddr` and `uaddr2` then we perform the atomic "
"operation using `val3` and `uaddr2`. Then `val` waiters on the first futex "
-"is woken up and if the atomic operation condition holds we wake up `val2` "
-"(i.e. `timeout`) waiter on the second futex."
+"is woken up and if the atomic operation condition holds we wake up `val2` (i."
+"e. `timeout`) waiter on the second futex."
msgstr ""
"Операция `FUTEX_WAKE_OP` довольно сложна. Сначала мы получаем два фьютекса "
"по адресам `uaddr` и `uaddr2`, затем выполняем атомарную операцию с "
@@ -4022,7 +4025,8 @@ msgstr ""
"openat(123, /tmp/bah\\, flags, mode)\t/* opens /tmp/bah */\n"
"openat(123, bah\\, flags, mode)\t\t/* opens /tmp/foo/bah */\n"
"openat(AT_FDWCWD, bah\\, flags, mode)\t/* opens /tmp/bah */\n"
-"openat(stdio, bah\\, flags, mode)\t/* returns error because stdio is not a directory */\n"
+"openat(stdio, bah\\, flags, mode)\t/* returns error because stdio is not a "
+"directory */\n"
#. type: Plain text
#: documentation/content/en/articles/linux-emulation/_index.adoc:1331
@@ -4166,8 +4170,8 @@ msgstr ""
"обработчика. Существуют небольшие проблемы с этим подходом, поскольку "
"Linux(R) не всегда последовательно использует разделение на наборы, поэтому "
"иногда ioctls для другого набора оказываются внутри набора, к которому они "
-"не должны принадлежать (например, SCSI generic ioctls внутри набора cdrom и "
-"т.д.). В настоящее время FreeBSD реализует не так много ioctls Linux(R) (по "
+"не должны принадлежать (например, SCSI generic ioctls внутри набора cdrom и т"
+".д.). В настоящее время FreeBSD реализует не так много ioctls Linux(R) (по "
"сравнению с NetBSD, например), но планируется перенести их из NetBSD. "
"Тенденция такова, что ioctls Linux(R) используются даже в родных драйверах "
"FreeBSD для упрощения портирования приложений."
diff --git a/documentation/content/ru/articles/linux-users/_index.adoc b/documentation/content/ru/articles/linux-users/_index.adoc
index 26b7765144..46c2b04b67 100644
--- a/documentation/content/ru/articles/linux-users/_index.adoc
+++ b/documentation/content/ru/articles/linux-users/_index.adoc
@@ -43,8 +43,7 @@ endif::[]
[.abstract-title]
Аннотация
-Этот документ предназначен для быстрого ознакомления с основами FreeBSD
-пользователей Linux(R) среднего и продвинутого уровня.
+Этот документ предназначен для быстрого ознакомления с основами FreeBSD пользователей Linux(R) среднего и продвинутого уровня.
'''
@@ -53,44 +52,23 @@ toc::[]
[[intro]]
== Введение
-В этом документе освещаются некоторые технические различия между FreeBSD и
-Linux(R), чтобы пользователи Linux(R) среднего и продвинутого уровней могли
-быстро ознакомиться с основами FreeBSD.
+В этом документе освещаются некоторые технические различия между FreeBSD и Linux(R), чтобы пользователи Linux(R) среднего и продвинутого уровней могли быстро ознакомиться с основами FreeBSD.
-Этот документ предполагает, что FreeBSD уже установлена. Для получения
-помощи по процессу установки обратитесь к главе extref:{handbook}[Установка
-FreeBSD, bsdinstall] Руководства FreeBSD.
+Этот документ предполагает, что FreeBSD уже установлена. Для получения помощи по процессу установки обратитесь к главе extref:{handbook}[Установка FreeBSD, bsdinstall] Руководства FreeBSD.
[[shells]]
== Стандартная оболочка
-Пользователи Linux(R) часто удивляются, обнаружив, что Bash не является
-оболочкой по умолчанию в FreeBSD. На самом деле, Bash не включён в
-стандартную установку. Вместо этого используется совместимая с Bourne shell
-оболочка man:sh[1] в качестве оболочки пользователя по умолчанию. Оболочка
-root — это man:tcsh[1] по умолчанию в FreeBSD 13 и более ранних версиях и
-man:sh[1] в FreeBSD 14 и позднее. Оболочка man:sh[1] очень похожа на Bash,
-но имеет гораздо меньший набор возможностей. Как правило, скрипты,
-написанные для man:sh[1], будут работать в Bash, но обратное не всегда
-верно.
-
-Однако Bash и другие оболочки доступны для установки через
-extref:{handbook}[Коллекцию портов и пакетов FreeBSD, ports].
-
-После установки другой оболочки используйте man:chsh[1], чтобы изменить
-оболочку пользователя по умолчанию. Рекомендуется оставить оболочку
-пользователя `root` без изменений, поскольку оболочки, не входящие в базовую
-поставку, устанавливаются в [.filename]#/usr/local/bin#. В случае
-возникновения проблемы файловая система, в которой находится
-[.filename]#/usr/local/bin#, может быть не смонтирована. В такой ситуации у
-`root` не будет доступа к своей оболочке по умолчанию, что помешает ему
-войти в систему и устранить проблему.
+Пользователи Linux(R) часто удивляются, обнаружив, что Bash не является оболочкой по умолчанию в FreeBSD. На самом деле, Bash не включён в стандартную установку. Вместо этого используется совместимая с Bourne shell оболочка man:sh[1] в качестве оболочки пользователя по умолчанию. Оболочка root — это man:tcsh[1] по умолчанию в FreeBSD 13 и более ранних версиях и man:sh[1] в FreeBSD 14 и позднее. Оболочка man:sh[1] очень похожа на Bash, но имеет гораздо меньший набор возможностей. Как правило, скрипты, написанные для man:sh[1], будут работать в Bash, но обратное не всегда верно.
+
+Однако Bash и другие оболочки доступны для установки через extref:{handbook}[Коллекцию портов и пакетов FreeBSD, ports].
+
+После установки другой оболочки используйте man:chsh[1], чтобы изменить оболочку пользователя по умолчанию. Рекомендуется оставить оболочку пользователя `root` без изменений, поскольку оболочки, не входящие в базовую поставку, устанавливаются в [.filename]#/usr/local/bin#. В случае возникновения проблемы файловая система, в которой находится [.filename]#/usr/local/bin#, может быть не смонтирована. В такой ситуации у `root` не будет доступа к своей оболочке по умолчанию, что помешает ему войти в систему и устранить проблему.
[[software]]
== Пакеты и порты: установка программ в FreeBSD
-FreeBSD предоставляет два метода установки приложений: бинарные пакеты и
-скомпилированные порты. Каждый метод имеет свои преимущества:
+FreeBSD предоставляет два метода установки приложений: бинарные пакеты и скомпилированные порты. Каждый метод имеет свои преимущества:
.Бинарные пакеты
* Быстрая установка по сравнению с компиляцией крупных приложений.
@@ -101,49 +79,30 @@ FreeBSD предоставляет два метода установки при
* Возможность настройки параметров установки.
* Могут быть применены пользовательские патчи.
-Если установка приложения не требует дополнительной собственной настройки,
-достаточно установить пакет. Собирайте порт, если приложению требуется
-изменение параметров, заданных в пакетах по умолчанию. При необходимости
-собственный пакет можно собрать из портов с помощью `make package`.
+Если установка приложения не требует дополнительной собственной настройки, достаточно установить пакет. Собирайте порт, если приложению требуется изменение параметров, заданных в пакетах по умолчанию. При необходимости собственный пакет можно собрать из портов с помощью `make package`.
-Полный список всех доступных портов и пакетов можно найти
-https://ports.freebsd.org[здесь].
+Полный список всех доступных портов и пакетов можно найти https://ports.freebsd.org[здесь].
[[packages]]
=== Пакеты
-Пакеты — это предварительно скомпилированные приложения, эквиваленты файлов
-[.filename]#.deb# в системах на основе Debian/Ubuntu и файлов
-[.filename]#.rpm# в системах на основе Red Hat/Fedora. Пакеты
-устанавливаются с помощью `pkg`. Например, следующая команда устанавливает
-Apache 2.4:
+Пакеты — это предварительно скомпилированные приложения, эквиваленты файлов [.filename]#.deb# в системах на основе Debian/Ubuntu и файлов [.filename]#.rpm# в системах на основе Red Hat/Fedora. Пакеты устанавливаются с помощью `pkg`. Например, следующая команда устанавливает Apache 2.4:
[source, shell]
....
# pkg install apache24
....
-Для получения дополнительной информации о пакетах обратитесь к разделу 4.4
-Руководства FreeBSD: extref:{handbook}ports/[Использование pkg для
-управления бинарными пакетами, pkgng-intro].
+Для получения дополнительной информации о пакетах обратитесь к разделу 4.4 Руководства FreeBSD: extref:{handbook}ports/[Использование pkg для управления бинарными пакетами, pkgng-intro].
[[ports]]
=== Порты
-Коллекция портов FreeBSD — это набор [.filename]#Makefile# и патчей,
-специально адаптированных для установки приложений из исходного кода в
-FreeBSD. При установке порта система загрузит исходный код, применит
-необходимые патчи, скомпилирует код и установит приложение вместе с
-требуемыми зависимостями.
+Коллекция портов FreeBSD — это набор [.filename]#Makefile# и патчей, специально адаптированных для установки приложений из исходного кода в FreeBSD. При установке порта система загрузит исходный код, применит необходимые патчи, скомпилирует код и установит приложение вместе с требуемыми зависимостями.
-Коллекция портов, иногда называемая деревом портов, может быть установлена в
-[.filename]#/usr/ports# с помощью
-link:{handbook}mirrors/#git[Git]. Подробные инструкции по установке
-Коллекции портов можно найти в extref:{handbook}ports/[разделе 4.5.1,
-ports-using-installation-methods] Руководства FreeBSD.
+Коллекция портов, иногда называемая деревом портов, может быть установлена в [.filename]#/usr/ports# с помощью link:{handbook}mirrors/#git[Git]. Подробные инструкции по установке Коллекции портов можно найти в extref:{handbook}ports/[разделе 4.5.1, ports-using-installation-methods] Руководства FreeBSD.
-Для сборки порта перейдите в его каталог и запустите процесс сборки. В
-следующем примере устанавливается Apache 2.4 из коллекции портов:
+Для сборки порта перейдите в его каталог и запустите процесс сборки. В следующем примере устанавливается Apache 2.4 из коллекции портов:
[source, shell]
....
@@ -151,9 +110,7 @@ ports-using-installation-methods] Руководства FreeBSD.
# make install clean
....
-Преимущество использования портов для установки программного обеспечения
-заключается в возможности настройки параметров установки. В этом примере
-указано, что также должен быть установлен модуль mod_ldap:
+Преимущество использования портов для установки программного обеспечения заключается в возможности настройки параметров установки. В этом примере указано, что также должен быть установлен модуль mod_ldap:
[source, shell]
....
@@ -161,48 +118,20 @@ ports-using-installation-methods] Руководства FreeBSD.
# make WITH_LDAP="YES" install clean
....
-Обратитесь к extref:{handbook}ports/[Использование коллекции портов,
-ports-using] для получения дополнительной информации.
+Обратитесь к extref:{handbook}ports/[Использование коллекции портов, ports-using] для получения дополнительной информации.
[[startup]]
== Загрузка системы
-Многие дистрибутивы Linux(R) используют систему инициализации SysV, тогда
-как FreeBSD использует традиционный BSD-стиль man:init[8]. В BSD-стиле
-man:init[8] нет уровней запуска (run-levels), и файл
-[.filename]#/etc/inittab# отсутствует. Вместо этого запуск системы
-управляется сценариями man:rc[8]. При загрузке системы [.filename]#/etc/rc#
-читает [.filename]#/etc/rc.conf# и [.filename]#/etc/defaults/rc.conf#, чтобы
-определить, какие службы должны быть запущены. Указанные службы затем
-запускаются путем выполнения соответствующих сценариев инициализации,
-расположенных в [.filename]#/etc/rc.d/# и
-[.filename]#/usr/local/etc/rc.d/#. Эти сценарии аналогичны сценариям,
-расположенным в [.filename]#/etc/init.d/# в системах Linux(R).
-
-Скрипты, расположенные в [.filename]#/etc/rc.d/#, предназначены для
-приложений, входящих в "базовую" систему, таких как man:cron[8], man:sshd[8]
-и man:syslog[3]. Скрипты в [.filename]#/usr/local/etc/rc.d/# предназначены
-для пользовательских приложений, таких как Apache и Squid.
-
-Поскольку FreeBSD разрабатывается как полноценная операционная система,
-пользовательские приложения не считаются частью «базовой»
-системы. Пользовательские приложения обычно устанавливаются с помощью
-extref:{handbook}ports/[Пакетов или Портов, ports-using]. Чтобы отделить их
-от базовой системы, пользовательские приложения устанавливаются в
-[.filename]#/usr/local/#. Таким образом, исполняемые файлы пользовательских
-приложений находятся в [.filename]#/usr/local/bin/#, конфигурационные файлы
-— в [.filename]#/usr/local/etc/# и так далее.
-
-Сервисы включаются путем добавления соответствующей записи в файл
-[.filename]#/etc/rc.conf#. Системные параметры по умолчанию находятся в
-файле [.filename]#/etc/defaults/rc.conf#, а настройки по умолчанию
-переопределяются параметрами из файла [.filename]#/etc/rc.conf#. Подробнее о
-доступных параметрах можно узнать в man:rc.conf[5]. При установке
-дополнительных приложений ознакомьтесь с сообщением установки, чтобы
-определить, как включить связанные сервисы.
-
-Следующие записи в [.filename]#/etc/rc.conf# включают man:sshd[8],
-активируют Apache 2.4 и указывают, что Apache должен запускаться с SSL.
+Многие дистрибутивы Linux(R) используют систему инициализации SysV, тогда как FreeBSD использует традиционный BSD-стиль man:init[8]. В BSD-стиле man:init[8] нет уровней запуска (run-levels), и файл [.filename]#/etc/inittab# отсутствует. Вместо этого запуск системы управляется сценариями man:rc[8]. При загрузке системы [.filename]#/etc/rc# читает [.filename]#/etc/rc.conf# и [.filename]#/etc/defaults/rc.conf#, чтобы определить, какие службы должны быть запущены. Указанные службы затем запускаются путем выполнения соответствующих сценариев инициализации, расположенных в [.filename]#/etc/rc.d/# и [.filename]#/usr/local/etc/rc.d/#. Эти сценарии аналогичны сценариям, расположенным в [.filename]#/etc/init.d/# в системах Linux(R).
+
+Скрипты, расположенные в [.filename]#/etc/rc.d/#, предназначены для приложений, входящих в "базовую" систему, таких как man:cron[8], man:sshd[8] и man:syslog[3]. Скрипты в [.filename]#/usr/local/etc/rc.d/# предназначены для пользовательских приложений, таких как Apache и Squid.
+
+Поскольку FreeBSD разрабатывается как полноценная операционная система, пользовательские приложения не считаются частью «базовой» системы. Пользовательские приложения обычно устанавливаются с помощью extref:{handbook}ports/[Пакетов или Портов, ports-using]. Чтобы отделить их от базовой системы, пользовательские приложения устанавливаются в [.filename]#/usr/local/#. Таким образом, исполняемые файлы пользовательских приложений находятся в [.filename]#/usr/local/bin/#, конфигурационные файлы — в [.filename]#/usr/local/etc/# и так далее.
+
+Сервисы включаются путем добавления соответствующей записи в файл [.filename]#/etc/rc.conf#. Системные параметры по умолчанию находятся в файле [.filename]#/etc/defaults/rc.conf#, а настройки по умолчанию переопределяются параметрами из файла [.filename]#/etc/rc.conf#. Подробнее о доступных параметрах можно узнать в man:rc.conf[5]. При установке дополнительных приложений ознакомьтесь с сообщением установки, чтобы определить, как включить связанные сервисы.
+
+Следующие записи в [.filename]#/etc/rc.conf# включают man:sshd[8], активируют Apache 2.4 и указывают, что Apache должен запускаться с SSL.
[.programlisting]
....
@@ -213,8 +142,7 @@ apache24_enable="YES"
apache24_flags="-DSSL"
....
-После включения службы в [.filename]#/etc/rc.conf# её можно запустить без
-перезагрузки системы:
+После включения службы в [.filename]#/etc/rc.conf# её можно запустить без перезагрузки системы:
[source, shell]
....
@@ -222,8 +150,7 @@ apache24_flags="-DSSL"
# service apache24 start
....
-Если служба не была включена, её можно запустить из командной строки с
-помощью `onestart`:
+Если служба не была включена, её можно запустить из командной строки с помощью `onestart`:
[source, shell]
....
@@ -233,10 +160,7 @@ apache24_flags="-DSSL"
[[network]]
== Настройка сети
-Вместо общего идентификатора _ethX_, который используется в Linux(R) для
-обозначения сетевого интерфейса, FreeBSD использует имя драйвера с
-последующим числом. Следующий вывод из man:ifconfig[8] показывает два
-сетевых интерфейса Intel(R) Pro 1000 ([.filename]#em0# и [.filename]#em1#):
+Вместо общего идентификатора _ethX_, который используется в Linux(R) для обозначения сетевого интерфейса, FreeBSD использует имя драйвера с последующим числом. Следующий вывод из man:ifconfig[8] показывает два сетевых интерфейса Intel(R) Pro 1000 ([.filename]#em0# и [.filename]#em1#):
[source, shell]
....
@@ -255,10 +179,7 @@ em1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
status: active
....
-IP-адрес может быть назначен интерфейсу с помощью man:ifconfig[8]. Чтобы
-настройки сохранялись после перезагрузки, конфигурация IP должна быть
-указана в [.filename]#/etc/rc.conf#. Следующие записи в
-[.filename]#/etc/rc.conf# задают имя хоста, IP-адрес и шлюз по умолчанию:
+IP-адрес может быть назначен интерфейсу с помощью man:ifconfig[8]. Чтобы настройки сохранялись после перезагрузки, конфигурация IP должна быть указана в [.filename]#/etc/rc.conf#. Следующие записи в [.filename]#/etc/rc.conf# задают имя хоста, IP-адрес и шлюз по умолчанию:
[.programlisting]
....
@@ -278,17 +199,13 @@ ifconfig_em0="DHCP"
[[firewall]]
== Firewall
-FreeBSD не использует Linux(R) IPTABLES для своего межсетевого
-экрана. Вместо этого FreeBSD предлагает выбор из трёх межсетевых экранов на
-уровне ядра:
+FreeBSD не использует Linux(R) IPTABLES для своего межсетевого экрана. Вместо этого FreeBSD предлагает выбор из трёх межсетевых экранов на уровне ядра:
* extref:{handbook}[PF, firewalls-pf]
* extref:{handbook}[IPFILTER, firewalls-ipf]
* extref:{handbook}[IPFW, firewalls-ipfw]
-PF разработан проектом OpenBSD и портирован в FreeBSD. PF был создан как
-замена для IPFILTER, и его синтаксис схож с синтаксисом IPFILTER. PF может
-использоваться совместно с man:altq[4] для обеспечения функций QoS.
+PF разработан проектом OpenBSD и портирован в FreeBSD. PF был создан как замена для IPFILTER, и его синтаксис схож с синтаксисом IPFILTER. PF может использоваться совместно с man:altq[4] для обеспечения функций QoS.
Этот пример записи PF разрешает входящий SSH:
@@ -297,10 +214,7 @@ PF разработан проектом OpenBSD и портирован в Free
pass in on $ext_if inet proto tcp from any to ($ext_if) port 22
....
-IPFILTER — это приложение для межсетевого экрана, разработанное Дарреном
-Ридом. Оно не является специфичным для FreeBSD и было портировано на
-несколько операционных систем, включая NetBSD, OpenBSD, SunOS, HP/UX и
-Solaris.
+IPFILTER — это приложение для межсетевого экрана, разработанное Дарреном Ридом. Оно не является специфичным для FreeBSD и было портировано на несколько операционных систем, включая NetBSD, OpenBSD, SunOS, HP/UX и Solaris.
Синтаксис IPFILTER для разрешения входящего SSH:
@@ -309,10 +223,7 @@ Solaris.
pass in on $ext_if proto tcp from any to any port = 22
....
-IPFW — это межсетевой экран, разработанный и поддерживаемый FreeBSD. Он
-может быть использован совместно с man:dummynet[4] для обеспечения
-возможностей управления трафиком и имитации различных типов сетевых
-соединений.
+IPFW — это межсетевой экран, разработанный и поддерживаемый FreeBSD. Он может быть использован совместно с man:dummynet[4] для обеспечения возможностей управления трафиком и имитации различных типов сетевых соединений.
Синтаксис IPFW для разрешения входящего SSH будет следующим:
@@ -324,25 +235,15 @@ ipfw add allow tcp from any to me 22 in via $ext_if
[[updates]]
== Обновление FreeBSD
-Существует два метода обновления системы FreeBSD: из исходного кода или
-бинарные обновления.
+Существует два метода обновления системы FreeBSD: из исходного кода или бинарные обновления.
-Обновление из исходного кода — это наиболее сложный метод обновления, но он
-предоставляет наибольшую гибкость. Процесс включает синхронизацию локальной
-копии исходного кода FreeBSD с репозиторием FreeBSD Git. После того как
-локальный исходный код обновлён, можно скомпилировать новую версию ядра и
-пользовательского пространства.
+Обновление из исходного кода — это наиболее сложный метод обновления, но он предоставляет наибольшую гибкость. Процесс включает синхронизацию локальной копии исходного кода FreeBSD с репозиторием FreeBSD Git. После того как локальный исходный код обновлён, можно скомпилировать новую версию ядра и пользовательского пространства.
-Двоичные обновления аналогичны использованию `yum` или `apt-get` для
-обновления системы Linux(R). В FreeBSD, man:freebsd-update[8] может быть
-использован для получения и установки новых двоичных обновлений. Эти
-обновления могут быть запланированы с помощью man:cron[8].
+Двоичные обновления аналогичны использованию `yum` или `apt-get` для обновления системы Linux(R). В FreeBSD, man:freebsd-update[8] может быть использован для получения и установки новых двоичных обновлений. Эти обновления могут быть запланированы с помощью man:cron[8].
[NOTE]
====
-При использовании man:cron[8] для планирования обновлений используйте
-`freebsd-update cron` в man:crontab[1], чтобы снизить вероятность
-одновременного скачивания обновлений большим количеством машин:
+При использовании man:cron[8] для планирования обновлений используйте `freebsd-update cron` в man:crontab[1], чтобы снизить вероятность одновременного скачивания обновлений большим количеством машин:
[.programlisting]
....
@@ -351,20 +252,14 @@ ipfw add allow tcp from any to me 22 in via $ext_if
====
-Для получения дополнительной информации об обновлениях исходного кода и
-бинарных обновлениях обратитесь к extref:{handbook}cutting-edge/[главе об
-обновлениях, updating-upgrading-freebsdupdate] в Руководстве FreeBSD.
+Для получения дополнительной информации об обновлениях исходного кода и бинарных обновлениях обратитесь к extref:{handbook}cutting-edge/[главе об обновлениях, updating-upgrading-freebsdupdate] в Руководстве FreeBSD.
[[procfs]]
== procfs: ушёл, но не забыт
-В некоторых дистрибутивах Linux(R) можно посмотреть файл
-[.filename]#/proc/sys/net/ipv4/ip_forward#, чтобы определить, включена ли
-IP-маршрутизация. В FreeBSD вместо этого используется man:sysctl[8] для
-просмотра этого и других системных параметров.
+В некоторых дистрибутивах Linux(R) можно посмотреть файл [.filename]#/proc/sys/net/ipv4/ip_forward#, чтобы определить, включена ли IP-маршрутизация. В FreeBSD вместо этого используется man:sysctl[8] для просмотра этого и других системных параметров.
-Например, используйте следующую команду, чтобы определить, включена ли
-IP-переадресация в системе FreeBSD:
+Например, используйте следующую команду, чтобы определить, включена ли IP-переадресация в системе FreeBSD:
[source, shell]
....
@@ -379,16 +274,14 @@ net.inet.ip.forwarding: 0
% sysctl -a | more
....
-Если приложению требуется procfs, добавьте следующую запись в
-[.filename]#/etc/fstab#:
+Если приложению требуется procfs, добавьте следующую запись в [.filename]#/etc/fstab#:
[source, shell]
....
proc /proc procfs rw,noauto 0 0
....
-Добавление `noauto` предотвратит автоматическое монтирование
-[.filename]#/proc# при загрузке.
+Добавление `noauto` предотвратит автоматическое монтирование [.filename]#/proc# при загрузке.
Чтобы подключить файловую систему без перезагрузки:
@@ -441,6 +334,4 @@ proc /proc procfs rw,noauto 0 0
[[conclusion]]
== Заключение
-Этот документ предоставил обзор FreeBSD. Для более детального изучения этих
-тем, а также многих других, не рассмотренных в данном документе, обратитесь
-к extref:{handbook}[Руководству FreeBSD].
+Этот документ предоставил обзор FreeBSD. Для более детального изучения этих тем, а также многих других, не рассмотренных в данном документе, обратитесь к extref:{handbook}[Руководству FreeBSD].
diff --git a/documentation/content/ru/articles/linux-users/_index.po b/documentation/content/ru/articles/linux-users/_index.po
index a0bd6f4469..f431c57919 100644
--- a/documentation/content/ru/articles/linux-users/_index.po
+++ b/documentation/content/ru/articles/linux-users/_index.po
@@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-09-22 19:04+0300\n"
+"POT-Creation-Date: 2024-09-14 14:59-0300\n"
"PO-Revision-Date: 2025-08-06 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
@@ -18,13 +18,15 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/articles/linux-users/_index.adoc:1
#, no-wrap
msgid "This document is intended to quickly familiarize intermediate to advanced Linux® users with the basics of FreeBSD."
-msgstr "Этот документ предназначен для быстрого ознакомления с основами FreeBSD пользователей Linux® среднего и продвинутого уровня."
+msgstr ""
+"Этот документ предназначен для быстрого ознакомления с основами FreeBSD "
+"пользователей Linux® среднего и продвинутого уровня."
-#. type: Yaml Front Matter Hash Value: title
+#. type: YAML Front Matter: title
#: documentation/content/en/articles/linux-users/_index.adoc:1
#, no-wrap
msgid "FreeBSD Quickstart Guide for Linux® Users"
@@ -115,8 +117,8 @@ msgid ""
"However, Bash and other shells are available for installation using the "
"FreeBSD extref:{handbook}[Packages and Ports Collection, ports]."
msgstr ""
-"Однако Bash и другие оболочки доступны для установки через extref:{handbook}"
-"[Коллекцию портов и пакетов FreeBSD, ports]."
+"Однако Bash и другие оболочки доступны для установки через extref:{handbook}["
+"Коллекцию портов и пакетов FreeBSD, ports]."
#. type: Plain text
#: documentation/content/en/articles/linux-users/_index.adoc:75
@@ -210,8 +212,8 @@ msgid ""
"A complete list of all available ports and packages can be found https://"
"ports.freebsd.org[here]."
msgstr ""
-"Полный список всех доступных портов и пакетов можно найти https://"
-"ports.freebsd.org[здесь]."
+"Полный список всех доступных портов и пакетов можно найти https://ports."
+"freebsd.org[здесь]."
#. type: Title ===
#: documentation/content/en/articles/linux-users/_index.adoc:98
@@ -222,16 +224,15 @@ msgstr "Пакеты"
#. type: Plain text
#: documentation/content/en/articles/linux-users/_index.adoc:103
msgid ""
-"Packages are pre-compiled applications, the FreeBSD equivalents of "
-"[.filename]#.deb# files on Debian/Ubuntu based systems and [.filename]#.rpm# "
+"Packages are pre-compiled applications, the FreeBSD equivalents of [."
+"filename]#.deb# files on Debian/Ubuntu based systems and [.filename]#.rpm# "
"files on Red Hat/Fedora based systems. Packages are installed using `pkg`. "
"For example, the following command installs Apache 2.4:"
msgstr ""
-"Пакеты — это предварительно скомпилированные приложения, эквиваленты файлов "
-"[.filename]#.deb# в системах на основе Debian/Ubuntu и файлов "
-"[.filename]#.rpm# в системах на основе Red Hat/Fedora. Пакеты "
-"устанавливаются с помощью `pkg`. Например, следующая команда устанавливает "
-"Apache 2.4:"
+"Пакеты — это предварительно скомпилированные приложения, эквиваленты файлов ["
+".filename]#.deb# в системах на основе Debian/Ubuntu и файлов [.filename]#."
+"rpm# в системах на основе Red Hat/Fedora. Пакеты устанавливаются с помощью "
+"`pkg`. Например, следующая команда устанавливает Apache 2.4:"
#. type: delimited block . 4
#: documentation/content/en/articles/linux-users/_index.adoc:107
@@ -276,8 +277,8 @@ msgid ""
msgstr ""
"Коллекция портов, иногда называемая деревом портов, может быть установлена в "
"[.filename]#/usr/ports# с помощью link:{handbook}mirrors/#git[Git]. "
-"Подробные инструкции по установке Коллекции портов можно найти в extref:"
-"{handbook}ports/[разделе 4.5.1, ports-using-installation-methods] "
+"Подробные инструкции по установке Коллекции портов можно найти в "
+"extref:{handbook}ports/[разделе 4.5.1, ports-using-installation-methods] "
"Руководства FreeBSD."
#. type: Plain text
@@ -341,13 +342,13 @@ msgid ""
"Many Linux(R) distributions use the SysV init system, whereas FreeBSD uses "
"the traditional BSD-style man:init[8]. Under the BSD-style man:init[8], "
"there are no run-levels and [.filename]#/etc/inittab# does not exist. "
-"Instead, startup is controlled by man:rc[8] scripts. At system boot, "
-"[.filename]#/etc/rc# reads [.filename]#/etc/rc.conf# and [.filename]#/etc/"
+"Instead, startup is controlled by man:rc[8] scripts. At system boot, [."
+"filename]#/etc/rc# reads [.filename]#/etc/rc.conf# and [.filename]#/etc/"
"defaults/rc.conf# to determine which services are to be started. The "
"specified services are then started by running the corresponding service "
"initialization scripts located in [.filename]#/etc/rc.d/# and [.filename]#/"
-"usr/local/etc/rc.d/#. These scripts are similar to the scripts located in "
-"[.filename]#/etc/init.d/# on Linux(R) systems."
+"usr/local/etc/rc.d/#. These scripts are similar to the scripts located in [."
+"filename]#/etc/init.d/# on Linux(R) systems."
msgstr ""
"Многие дистрибутивы Linux(R) используют систему инициализации SysV, тогда "
"как FreeBSD использует традиционный BSD-стиль man:init[8]. В BSD-стиле "
@@ -356,8 +357,8 @@ msgstr ""
"man:rc[8]. При загрузке системы [.filename]#/etc/rc# читает [.filename]#/etc/"
"rc.conf# и [.filename]#/etc/defaults/rc.conf#, чтобы определить, какие "
"службы должны быть запущены. Указанные службы затем запускаются путем "
-"выполнения соответствующих сценариев инициализации, расположенных в "
-"[.filename]#/etc/rc.d/# и [.filename]#/usr/local/etc/rc.d/#. Эти сценарии "
+"выполнения соответствующих сценариев инициализации, расположенных в [."
+"filename]#/etc/rc.d/# и [.filename]#/usr/local/etc/rc.d/#. Эти сценарии "
"аналогичны сценариям, расположенным в [.filename]#/etc/init.d/# в системах "
"Linux(R)."
@@ -365,9 +366,9 @@ msgstr ""
#: documentation/content/en/articles/linux-users/_index.adoc:150
msgid ""
"The scripts found in [.filename]#/etc/rc.d/# are for applications that are "
-"part of the \"base\" system, such as man:cron[8], man:sshd[8], and "
-"man:syslog[3]. The scripts in [.filename]#/usr/local/etc/rc.d/# are for "
-"user-installed applications such as Apache and Squid."
+"part of the \"base\" system, such as man:cron[8], man:sshd[8], and man:"
+"syslog[3]. The scripts in [.filename]#/usr/local/etc/rc.d/# are for user-"
+"installed applications such as Apache and Squid."
msgstr ""
"Скрипты, расположенные в [.filename]#/etc/rc.d/#, предназначены для "
"приложений, входящих в \"базовую\" систему, таких как man:cron[8], "
@@ -388,31 +389,31 @@ msgid ""
msgstr ""
"Поскольку FreeBSD разрабатывается как полноценная операционная система, "
"пользовательские приложения не считаются частью «базовой» системы. "
-"Пользовательские приложения обычно устанавливаются с помощью extref:"
-"{handbook}ports/[Пакетов или Портов, ports-using]. Чтобы отделить их от "
-"базовой системы, пользовательские приложения устанавливаются в [.filename]#/"
-"usr/local/#. Таким образом, исполняемые файлы пользовательских приложений "
-"находятся в [.filename]#/usr/local/bin/#, конфигурационные файлы — в "
-"[.filename]#/usr/local/etc/# и так далее."
+"Пользовательские приложения обычно устанавливаются с помощью "
+"extref:{handbook}ports/[Пакетов или Портов, ports-using]. Чтобы отделить их "
+"от базовой системы, пользовательские приложения устанавливаются в [."
+"filename]#/usr/local/#. Таким образом, исполняемые файлы пользовательских "
+"приложений находятся в [.filename]#/usr/local/bin/#, конфигурационные файлы —"
+" в [.filename]#/usr/local/etc/# и так далее."
#. type: Plain text
#: documentation/content/en/articles/linux-users/_index.adoc:160
msgid ""
"Services are enabled by adding an entry for the service in [.filename]#/etc/"
-"rc.conf#. The system defaults are found in [.filename]#/etc/defaults/"
-"rc.conf# and these default settings are overridden by settings in "
-"[.filename]#/etc/rc.conf#. Refer to man:rc.conf[5] for more information "
-"about the available entries. When installing additional applications, "
-"review the application's install message to determine how to enable any "
-"associated services."
-msgstr ""
-"Сервисы включаются путем добавления соответствующей записи в файл "
-"[.filename]#/etc/rc.conf#. Системные параметры по умолчанию находятся в "
-"файле [.filename]#/etc/defaults/rc.conf#, а настройки по умолчанию "
-"переопределяются параметрами из файла [.filename]#/etc/rc.conf#. Подробнее о "
-"доступных параметрах можно узнать в man:rc.conf[5]. При установке "
-"дополнительных приложений ознакомьтесь с сообщением установки, чтобы "
-"определить, как включить связанные сервисы."
+"rc.conf#. The system defaults are found in [.filename]#/etc/defaults/rc."
+"conf# and these default settings are overridden by settings in [.filename]#/"
+"etc/rc.conf#. Refer to man:rc.conf[5] for more information about the "
+"available entries. When installing additional applications, review the "
+"application's install message to determine how to enable any associated "
+"services."
+msgstr ""
+"Сервисы включаются путем добавления соответствующей записи в файл [."
+"filename]#/etc/rc.conf#. Системные параметры по умолчанию находятся в файле ["
+".filename]#/etc/defaults/rc.conf#, а настройки по умолчанию переопределяются "
+"параметрами из файла [.filename]#/etc/rc.conf#. Подробнее о доступных "
+"параметрах можно узнать в man:rc.conf[5]. При установке дополнительных "
+"приложений ознакомьтесь с сообщением установки, чтобы определить, как "
+"включить связанные сервисы."
#. type: Plain text
#: documentation/content/en/articles/linux-users/_index.adoc:162
@@ -528,14 +529,14 @@ msgstr ""
#: documentation/content/en/articles/linux-users/_index.adoc:213
msgid ""
"An IP address can be assigned to an interface using man:ifconfig[8]. To "
-"remain persistent across reboots, the IP configuration must be included in "
-"[.filename]#/etc/rc.conf#. The following [.filename]#/etc/rc.conf# entries "
+"remain persistent across reboots, the IP configuration must be included in [."
+"filename]#/etc/rc.conf#. The following [.filename]#/etc/rc.conf# entries "
"specify the hostname, IP address, and default gateway:"
msgstr ""
"IP-адрес может быть назначен интерфейсу с помощью man:ifconfig[8]. Чтобы "
"настройки сохранялись после перезагрузки, конфигурация IP должна быть "
-"указана в [.filename]#/etc/rc.conf#. Следующие записи в [.filename]#/etc/"
-"rc.conf# задают имя хоста, IP-адрес и шлюз по умолчанию:"
+"указана в [.filename]#/etc/rc.conf#. Следующие записи в [.filename]#/etc/rc."
+"conf# задают имя хоста, IP-адрес и шлюз по умолчанию:"
#. type: delimited block . 4
#: documentation/content/en/articles/linux-users/_index.adoc:219
@@ -743,8 +744,8 @@ msgstr "procfs: ушёл, но не забыт"
#: documentation/content/en/articles/linux-users/_index.adoc:301
msgid ""
"In some Linux(R) distributions, one could look at [.filename]#/proc/sys/net/"
-"ipv4/ip_forward# to determine if IP forwarding is enabled. In FreeBSD, "
-"man:sysctl[8] is instead used to view this and other system settings."
+"ipv4/ip_forward# to determine if IP forwarding is enabled. In FreeBSD, man:"
+"sysctl[8] is instead used to view this and other system settings."
msgstr ""
"В некоторых дистрибутивах Linux(R) можно посмотреть файл [.filename]#/proc/"
"sys/net/ipv4/ip_forward#, чтобы определить, включена ли IP-маршрутизация. В "
@@ -802,8 +803,8 @@ msgid ""
"Including `noauto` will prevent [.filename]#/proc# from being automatically "
"mounted at boot."
msgstr ""
-"Добавление `noauto` предотвратит автоматическое монтирование [.filename]#/"
-"proc# при загрузке."
+"Добавление `noauto` предотвратит автоматическое монтирование [."
+"filename]#/proc# при загрузке."
#. type: Plain text
#: documentation/content/en/articles/linux-users/_index.adoc:327
diff --git a/documentation/content/ru/articles/mailing-list-faq/_index.adoc b/documentation/content/ru/articles/mailing-list-faq/_index.adoc
index 9f94d5c88a..44d4113493 100644
--- a/documentation/content/ru/articles/mailing-list-faq/_index.adoc
+++ b/documentation/content/ru/articles/mailing-list-faq/_index.adoc
@@ -106,7 +106,7 @@ toc::[]
* Письма должны соответствовать уставу списка рассылки.
* Личные нападки недопустимы. Как ответственные участники сетевого сообщества, мы должны придерживаться высоких стандартов поведения.
-* Спам не разрешён. Нарушители данного правила будут забаненны.
+* Спам не разрешён. Нарушители данного правила будут забанены.
=== Что считается хорошим этикетом при посылке писем в списки рассылки?
diff --git a/documentation/content/ru/articles/mailing-list-faq/_index.po b/documentation/content/ru/articles/mailing-list-faq/_index.po
index 4db5d5b21f..9766b97a19 100644
--- a/documentation/content/ru/articles/mailing-list-faq/_index.po
+++ b/documentation/content/ru/articles/mailing-list-faq/_index.po
@@ -5,8 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-09-30 21:16+0300\n"
-"PO-Revision-Date: 2025-09-30 04:45+0000\n"
+"POT-Creation-Date: 2025-05-01 19:57-0300\n"
+"PO-Revision-Date: 2025-10-29 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/articlesmailing-list-faq_index/ru/>\n"
@@ -18,11 +18,13 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/articles/mailing-list-faq/_index.adoc:1
#, no-wrap
msgid "How to best use the mailing lists, such as how to help avoid frequently-repeated discussions"
-msgstr "Как оптимально использовать почтовые рассылки, в том числе как избежать часто повторяющихся обсуждений"
+msgstr ""
+"Как оптимально использовать почтовые рассылки, в том числе как избежать "
+"часто повторяющихся обсуждений"
#. type: Title =
#: documentation/content/en/articles/mailing-list-faq/_index.adoc:1
@@ -53,8 +55,8 @@ msgstr ""
"сервере FreeBSD]. Вы можете получить данную статью в виде одного большого "
"link:.[HTML] файла, используя HTTP протокол или в виде простого текста, "
"форматов PostScript, PDF, и других с https://download.freebsd.org/doc/[FTP "
-"сервера FreeBSD]. Возможно вы захотите link:https://www.FreeBSD.org/search/"
-"[Найти FAQ]."
+"сервера FreeBSD]. Возможно вы захотите link:https://www.FreeBSD.org/search/["
+"Найти FAQ]."
#. type: Plain text
#: documentation/content/en/articles/mailing-list-faq/_index.adoc:51
@@ -126,8 +128,8 @@ msgid ""
msgstr ""
"Это зависит от регламента каждой конкретной рассылки. Некоторые списки "
"больше ориентированы на разработчиков, некоторые - на всё сообщество FreeBSD "
-"в целом. Актуальную информацию смотрите по ссылке: link:https://"
-"lists.FreeBSD.org/[этот список]."
+"в целом. Актуальную информацию смотрите по ссылке: link:https://lists.FreeBSD"
+".org/[этот список]."
#. type: Plain text
#: documentation/content/en/articles/mailing-list-faq/_index.adoc:75
@@ -233,10 +235,9 @@ msgid ""
"https://lists.freebsd.org/pipermail[mailman archive] and link:https://"
"lists.freebsd.org/archives[mlmmj archive] directly."
msgstr ""
-"Да. Архивы со всеми письмами с 1994 года доступны link:https://mail-"
-"archive.freebsd.org/mail/[здесь]. Вот ссылки на https://lists.freebsd.org/"
-"pipermail[архив mailman] и link:https://lists.freebsd.org/archives[архив "
-"mlmmj]."
+"Да. Архивы со всеми письмами с 1994 года доступны link:https://mail-archive."
+"freebsd.org/mail/[здесь]. Вот ссылки на https://lists.freebsd.org/pipermail["
+"архив mailman] и link:https://lists.freebsd.org/archives[архив mlmmj]."
#. type: Title ===
#: documentation/content/en/articles/mailing-list-faq/_index.adoc:104
@@ -288,8 +289,8 @@ msgid ""
msgstr ""
"Вы уже сделали важный шаг, решив прочитать эту статью. Если вы новичок во "
"FreeBSD, то сначала ознакомьтесь с программным обеспечением и связанной с "
-"нею документацией, включающей множество extref:https://www.FreeBSD.org/docs/"
-"[книг и статьей]. Могут быть интересными: extref:{faq}[Часто задаваемые "
+"нею документацией, включающей множество extref:https://www.FreeBSD.org/docs/["
+"книг и статьей]. Могут быть интересными: extref:{faq}[Часто задаваемые "
"вопросы по FreeBSD (FAQ)], extref:{handbook}[Руководство по FreeBSD], и "
"статьи extref:{freebsd-questions-article}[Как работать со списком рассылки "
"FreeBSD-questions с максимальной отдачей], extref:{explaining-bsd}[Что такое "
@@ -338,7 +339,7 @@ msgstr ""
msgid ""
"Spam is not allowed, ever. The mailing lists are actively processed to ban "
"offenders to this rule."
-msgstr "Спам не разрешён. Нарушители данного правила будут забаненны."
+msgstr "Спам не разрешён. Нарушители данного правила будут забанены."
#. type: Title ===
#: documentation/content/en/articles/mailing-list-faq/_index.adoc:131
@@ -368,11 +369,11 @@ msgid ""
msgstr ""
"Пожалуйста, обращайте внимание на тот факт, что пропускная способность "
"ограничена. Не каждый читает почту через высокоскоростное соединение. Если "
-"вы отправляете содержимое какого-нибудь файла, например "
-"[.filename]#config.log# или объёмную трассировку стека, то, пожалуйста, "
-"размещайте его на каком-нибудь веб-сайте и присылайте просто ссылку на него. "
-"Помните, что такие сообщения будут заархивированны, и это просто добавит "
-"ненужные байты к архиву."
+"вы отправляете содержимое какого-нибудь файла, например [.filename]#config."
+"log# или объёмную трассировку стека, то, пожалуйста, размещайте его на каком-"
+"нибудь веб-сайте и присылайте просто ссылку на него. Помните, что такие "
+"сообщения будут заархивированны, и это просто добавит ненужные байты к "
+"архиву."
#. type: Plain text
#: documentation/content/en/articles/mailing-list-faq/_index.adoc:136
@@ -491,8 +492,8 @@ msgstr ""
"трудно, и здесь легко сделать ошибку. Чтобы послать содержимое файлов "
"протоколов, сделайте копию файла и воспользуйтесь редактором для того, чтобы "
"обрезать информацию, оставив только относящуюся к делу, либо скопируйте и "
-"вставьте текст в ваше сообщение. В случае вывода программ, таких, как "
-"`dmesg`, перенаправьте вывод в файл и включите его в письмо. Например,"
+"вставьте текст в ваше сообщение. В случае вывода программ, таких, как `dmesg`"
+", перенаправьте вывод в файл и включите его в письмо. Например,"
#. type: delimited block . 4
#: documentation/content/en/articles/mailing-list-faq/_index.adoc:154
@@ -521,15 +522,17 @@ msgstr ""
"операции отрицательно сказываются на формате строк. Особенно это стоит "
"учесть при посылке содержимого файлов [.filename]#Makefile#, где `tab` "
"является важным символом. Это довольно часто встречающаяся проблема в "
-"link:https://www.FreeBSD.org/support/[ базе данных сообщений об ошибках]. В "
-"[.filename]#Makefile# символы tab меняются на пробелы, или раздражающие "
-"`=3B` escape последовательности."
+"link:https://www.FreeBSD.org/support/[ базе данных сообщений об ошибках]. В ["
+".filename]#Makefile# символы tab меняются на пробелы, или раздражающие `=3B` "
+"escape последовательности."
#. type: Title ===
#: documentation/content/en/articles/mailing-list-faq/_index.adoc:159
#, no-wrap
msgid "What are the special etiquette consideration when replying to an existing posting on the mailing lists?"
-msgstr "Каких правил этикета стоит придерживаться при ответе на уже существующее сообщение?"
+msgstr ""
+"Каких правил этикета стоит придерживаться при ответе на уже существующее "
+"сообщение?"
#. type: Plain text
#: documentation/content/en/articles/mailing-list-faq/_index.adoc:162
diff --git a/documentation/content/ru/articles/port-mentor-guidelines/_index.adoc b/documentation/content/ru/articles/port-mentor-guidelines/_index.adoc
index bc304f10bc..ea67ccf0b1 100644
--- a/documentation/content/ru/articles/port-mentor-guidelines/_index.adoc
+++ b/documentation/content/ru/articles/port-mentor-guidelines/_index.adoc
@@ -86,7 +86,7 @@ toc::[]
Не существует определённого правила, по которому кандидат считается готовым; это может быть комбинация количества поданных PR, количества поддерживаемых портов, частоты обновлений портов и/или уровня участия в определённой области интересов, такой как GNOME, KDE, Gecko или других.
-Кандидат должен практически не допускать тайм-aутов, оперативно реагировать на запросы и в целом оказывать помощь в поддержке своих портов.
+Кандидат должен практически не допускать тайм-аутов, оперативно реагировать на запросы и в целом оказывать помощь в поддержке своих портов.
Должна быть история вовлечённости, так как общеизвестно, что обучение коммиттера требует времени и усилий. Длительное участие в проекте и наблюдение за процессами предполагают накопление знаний. Слишком часто мы видели, как сопровождающий отправляет несколько PR, появляется в IRC и спрашивает, когда ему дадут право на коммит.
diff --git a/documentation/content/ru/articles/port-mentor-guidelines/_index.po b/documentation/content/ru/articles/port-mentor-guidelines/_index.po
index b9e70a556e..2d68c74b42 100644
--- a/documentation/content/ru/articles/port-mentor-guidelines/_index.po
+++ b/documentation/content/ru/articles/port-mentor-guidelines/_index.po
@@ -5,8 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-09-24 18:29+0300\n"
-"PO-Revision-Date: 2025-09-05 04:45+0000\n"
+"POT-Creation-Date: 2022-02-01 09:21-0300\n"
+"PO-Revision-Date: 2025-10-29 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/articlesport-mentor-guidelines_index/ru/>\n"
@@ -18,7 +18,7 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/articles/port-mentor-guidelines/_index.adoc:1
#, no-wrap
msgid "Port Mentor Guidelines for FreeBSD Mentors"
@@ -137,8 +137,8 @@ msgstr ""
msgid ""
"A rookie mentor can benefit from the experience of a senior committer/mentor."
msgstr ""
-"Наставник для новичков может получить пользу от опыта старшего коммиттера/"
-"наставника."
+"Наставник для новичков может получить пользу от опыта старшего "
+"коммиттера/наставника."
#. type: Plain text
#: documentation/content/en/articles/port-mentor-guidelines/_index.adoc:68
@@ -203,9 +203,9 @@ msgid ""
"overview of these things to be an effective part of the community (and avoid "
"as many rookie mistakes as possible)."
msgstr ""
-"Мы ожидаем, что наставники убедятся, что их подопечные прочитали extref:"
-"{porters-handbook}[Руководство портировщика], extref:{pr-guidelines}"
-"[руководство по обработке PR] и extref:{committers-guide}[Руководство "
+"Мы ожидаем, что наставники убедятся, что их подопечные прочитали extref"
+":{porters-handbook}[Руководство портировщика], extref:{pr-guidelines}["
+"руководство по обработке PR] и extref:{committers-guide}[Руководство "
"коммиттера]. Хотя и не обязательно запоминать все детали, каждый коммиттер "
"должен иметь общее представление об этих вещах, чтобы быть эффективной "
"частью сообщества (и избежать как можно больше ошибок новичка)."
@@ -235,7 +235,7 @@ msgid ""
"A candidate should have almost no timeouts, be responsive to requests, and "
"generally helpful in supporting their ports."
msgstr ""
-"Кандидат должен практически не допускать тайм-aутов, оперативно реагировать "
+"Кандидат должен практически не допускать тайм-аутов, оперативно реагировать "
"на запросы и в целом оказывать помощь в поддержке своих портов."
#. type: Plain text
@@ -297,10 +297,10 @@ msgstr "Продолжительность наставничества"
#. type: Plain text
#: documentation/content/en/articles/port-mentor-guidelines/_index.adoc:114
msgid ""
-"As the trust level develops and grows, the mentee may be granted "
-"\"implicit\" commit rights. This can include trivial changes to a "
-"[.filename]#Makefile#, [.filename]#pkg-descr# etc. Similarly, it may "
-"include `PORTVERSION` updates that do not include `plist` changes. Other "
+"As the trust level develops and grows, the mentee may be granted \"implicit"
+"\" commit rights. This can include trivial changes to a [."
+"filename]#Makefile#, [.filename]#pkg-descr# etc. Similarly, it may include "
+"`PORTVERSION` updates that do not include `plist` changes. Other "
"circumstances may be formulated at the discretion of the Mentor. However, "
"during the period of mentorship, a port version bump that affects dependent "
"ports should be checked by a mentor."
@@ -364,14 +364,14 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/port-mentor-guidelines/_index.adoc:132
msgid ""
-"Some reprobate, whose name shall be withheld, made the https://"
-"lists.freebsd.org/pipermail/cvs-ports/2007-September/134614.html[first "
-"recorded co-mentor commit]. Similar co-mentor commits have also been "
-"spotted in the src tree. Does this make it right? Does this make it wrong? "
-"It seems to be part of the evolution of how things are done."
+"Some reprobate, whose name shall be withheld, made the https://lists.freebsd."
+"org/pipermail/cvs-ports/2007-September/134614.html[first recorded co-mentor "
+"commit]. Similar co-mentor commits have also been spotted in the src tree. "
+"Does this make it right? Does this make it wrong? It seems to be part of the "
+"evolution of how things are done."
msgstr ""
-"Один \"ответственный\" участник, чьё имя мы опустим, сделал https://"
-"lists.freebsd.org/pipermail/cvs-ports/2007-September/134614.html[первый "
+"Один \"ответственный\" участник, чьё имя мы опустим, сделал https://lists."
+"freebsd.org/pipermail/cvs-ports/2007-September/134614.html[первый "
"зарегистрированный коммит с сонаставником]. Подобные коммиты с со-менторами "
"также были замечены в дереве src. Делает ли это их правильными? Делает ли "
"это их неправильными? Похоже, это часть эволюции того, как всё устроено."
diff --git a/documentation/content/ru/articles/pr-guidelines/_index.adoc b/documentation/content/ru/articles/pr-guidelines/_index.adoc
index 10c764f08a..67798176ef 100644
--- a/documentation/content/ru/articles/pr-guidelines/_index.adoc
+++ b/documentation/content/ru/articles/pr-guidelines/_index.adoc
@@ -95,7 +95,7 @@ analyzed (проанализировано)::
feedback (обратная связь)::
Дальнейшая работа требует дополнительной информации от инициатора или сообщества; возможно, информации относительно предлагаемого решения.
-patched (исправленно)::
+patched (исправлено)::
Патч был закоммичен, но что-то (MFC или, возможно, подтверждение от автора) ещё ожидается.
suspended (приостановлено)::
diff --git a/documentation/content/ru/articles/pr-guidelines/_index.po b/documentation/content/ru/articles/pr-guidelines/_index.po
index b2d979b520..813a346f5b 100644
--- a/documentation/content/ru/articles/pr-guidelines/_index.po
+++ b/documentation/content/ru/articles/pr-guidelines/_index.po
@@ -5,8 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-10-03 18:14+0300\n"
-"PO-Revision-Date: 2025-10-03 04:45+0000\n"
+"POT-Creation-Date: 2024-12-29 08:30-0500\n"
+"PO-Revision-Date: 2025-10-29 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/articlespr-guidelines_index/ru/>\n"
@@ -18,11 +18,13 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/articles/pr-guidelines/_index.adoc:1
#, no-wrap
msgid "These guidelines describe recommended handling practices for FreeBSD Problem Reports (PRs)."
-msgstr "Эти рекомендации описывают рекомендуемые методы обработки отчётов о проблемах FreeBSD (PR — Problem Reports)."
+msgstr ""
+"Эти рекомендации описывают рекомендуемые методы обработки отчётов о "
+"проблемах FreeBSD (PR — Problem Reports)."
#. type: Title =
#: documentation/content/en/articles/pr-guidelines/_index.adoc:1
@@ -272,7 +274,7 @@ msgstr ""
#: documentation/content/en/articles/pr-guidelines/_index.adoc:102
#, no-wrap
msgid "patched"
-msgstr "patched (исправленно)"
+msgstr "patched (исправлено)"
#. type: Plain text
#: documentation/content/en/articles/pr-guidelines/_index.adoc:104
@@ -866,7 +868,9 @@ msgstr "freebsd-atm"
#: documentation/content/en/articles/pr-guidelines/_index.adoc:251
#, no-wrap
msgid "problem with embedded or small-footprint FreeBSD systems (e.g., NanoBSD/PicoBSD/FreeBSD-arm)"
-msgstr "проблема со встроенными или компактными системами FreeBSD (например, NanoBSD/PicoBSD/FreeBSD-arm)"
+msgstr ""
+"проблема со встроенными или компактными системами FreeBSD (например, NanoBSD/"
+"PicoBSD/FreeBSD-arm)"
#. type: Table
#: documentation/content/en/articles/pr-guidelines/_index.adoc:253
@@ -1452,9 +1456,9 @@ msgid ""
"findings and try to find someone to assign it to. Set the state to "
"\"analyzed\" if appropriate."
msgstr ""
-"Если PR содержит достаточно деталей, попробуйте воспроизвести проблему в `-"
-"CURRENT` и `-STABLE`. Если удастся, отправьте уточнение с вашими находками и "
-"попытайтесь найти, кому можно назначить задачу. Установите состояние "
+"Если PR содержит достаточно деталей, попробуйте воспроизвести проблему в "
+"`-CURRENT` и `-STABLE`. Если удастся, отправьте уточнение с вашими находками "
+"и попытайтесь найти, кому можно назначить задачу. Установите состояние "
"\"analyzed\" (проанализировано), если это уместно."
#. type: Plain text
@@ -1490,8 +1494,8 @@ msgid ""
"yourself?) to do it. Set the state to \"patched\" and assign it to whomever "
"will do the MFC."
msgstr ""
-"Если PR описывает ошибку, которая, как вам известно, исправлена в `-"
-"CURRENT`, но не в `-STABLE`, попытайтесь выяснить, когда планируется перенос "
+"Если PR описывает ошибку, которая, как вам известно, исправлена в `-CURRENT`"
+", но не в `-STABLE`, попытайтесь выяснить, когда планируется перенос "
"исправления (MFC), или найдите кого-то (возможно, себя?), кто сможет это "
"сделать. Установите статус \"patched\" и назначьте задачу тому, кто займётся "
"переносом исправления (MFC)."
diff --git a/documentation/content/ru/articles/rc-scripting/_index.adoc b/documentation/content/ru/articles/rc-scripting/_index.adoc
index 0f34f38d22..ee0af4b070 100644
--- a/documentation/content/ru/articles/rc-scripting/_index.adoc
+++ b/documentation/content/ru/articles/rc-scripting/_index.adoc
@@ -63,7 +63,7 @@ toc::[]
Основные идеи, лежащие в основе BSD [.filename]#rc.d#, — это _тонкая модульность_ и __повторное использование кода__. _Тонкая модульность_ означает, что каждая базовая «служба», такая как системный демон или примитивная задача запуска, получает собственный сценарий man:sh[1], способный запустить службу, остановить её, перезагрузить или проверить её состояние. Конкретное действие выбирается аргументом командной строки, переданным в сценарий. Сценарий [.filename]#/etc/rc# по-прежнему управляет запуском системы, но теперь он просто вызывает небольшие сценарии один за другим с аргументом `start`. Также легко выполнять задачи завершения работы, запуская тот же набор сценариев с аргументом `stop`, что и делает [.filename]#/etc/rc.shutdown#. Обратите внимание, насколько это близко следует Unix-подходу, где используется набор небольших специализированных инструментов, каждый из которых выполняет свою задачу наилучшим образом. _Повторное использование кода_ означает, что общие операции реализованы как функции man:sh[1] и собраны в [.filename]#/etc/rc.subr#. Теперь типичный сценарий может состоять всего из нескольких строк кода man:sh[1]. Наконец, важной частью инфраструктуры [.filename]#rc.d# является man:rcorder[8], который помогает [.filename]#/etc/rc# упорядоченно запускать небольшие сценарии с учётом зависимостей между ними. Он также может помочь [.filename]#/etc/rc.shutdown#, поскольку правильный порядок завершения работы противоположен порядку запуска.
-Дизайн BSD [.filename]#rc.d# описан в crossref:rc-scripting[lukem, оригинальной статье Люка Мьюберна], а компоненты [.filename]#rc.d# подробно документированы в crossref:rc-scripting[manpages, соответствующих руководствах]. Однако новичку в [.filename]#rc.d# может быть неочевидно, как связать многочисленные элементы вместе, чтобы создать хорошо структурированный скрипт для конкретной задачи. Поэтому в этой статье будет предпринята попытка описать [.filename]#rc.d# с другого ракурса. В ней будет показано, какие функции следует использовать в ряде типичных случаев и почему. Обратите внимание, что это не руководство, поскольку наша цель — не предоставление готовых рецептов, а демонстрация нескольких простых способов входа в мир [.filename]#rc.d#. Также эта статья не заменяет соответствующие руководства. Не стесняйтесь обращаться к ним для получения более формальной и полной документации во время чтения этой статьи.
+Дизайн BSD [.filename]#rc.d# описан в crossref:rc-scripting[lukem, оригинальной статье Люка Мьюберна], а компоненты [.filename]#rc.d# подробно документированы в crossref:rc-scripting[manpages, соответствующих страницах Справочника]. Однако новичку в [.filename]#rc.d# может быть неочевидно, как связать многочисленные элементы вместе, чтобы создать хорошо структурированный скрипт для конкретной задачи. Поэтому в этой статье будет предпринята попытка описать [.filename]#rc.d# с другого ракурса. В ней будет показано, какие функции следует использовать в ряде типичных случаев и почему. Обратите внимание, что это не руководство HowTo, поскольку наша цель — не предоставление готовых рецептов, а демонстрация нескольких простых способов входа в мир [.filename]#rc.d#. Также эта статья не заменяет соответствующие страниц Справочника. Не стесняйтесь обращаться к ним для получения более формальной и полной документации во время чтения этой статьи.
Для понимания этой статьи есть предварительные требования. Прежде всего, вы должны быть знакомы с языком написания сценариев man:sh[1], чтобы освоить [.filename]#rc.d#. Кроме того, вы должны знать, как система выполняет задачи запуска и завершения работы пользовательского пространства, что описано в man:rc[8].
diff --git a/documentation/content/ru/articles/rc-scripting/_index.po b/documentation/content/ru/articles/rc-scripting/_index.po
index eb6e3fab38..38632d1c84 100644
--- a/documentation/content/ru/articles/rc-scripting/_index.po
+++ b/documentation/content/ru/articles/rc-scripting/_index.po
@@ -5,8 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-10-20 11:17+0300\n"
-"PO-Revision-Date: 2025-09-27 04:45+0000\n"
+"POT-Creation-Date: 2024-09-14 15:00-0300\n"
+"PO-Revision-Date: 2025-10-29 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/articlesrc-scripting_index/ru/>\n"
@@ -18,11 +18,12 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/articles/rc-scripting/_index.adoc:1
#, no-wrap
msgid "A guide to writing new rc.d scripts and understanding those already written"
-msgstr "Руководство по написанию новых rc.d-скриптов и пониманию уже существующих"
+msgstr ""
+"Руководство по написанию новых rc.d-скриптов и пониманию уже существующих"
#. type: Title =
#: documentation/content/en/articles/rc-scripting/_index.adoc:1
@@ -31,12 +32,12 @@ msgstr "Руководство по написанию новых rc.d-скри
msgid "Practical rc.d scripting in BSD"
msgstr "Практическое руководство по написанию rc.d скриптов в BSD"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:45
msgid "Abstract"
msgstr "Аннотация"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:49
msgid ""
"Beginners may find it difficult to relate the facts from the formal "
@@ -50,12 +51,12 @@ msgstr ""
"Новичкам может быть сложно соотнести факты из официальной документации по "
"фреймворку [.filename]#rc.d# в BSD с практическими задачами написания "
"скриптов для [.filename]#rc.d#. В этой статье мы рассмотрим несколько "
-"типичных случаев возрастающей сложности, покажем возможности "
-"[.filename]#rc.d#, подходящие для каждого случая, и обсудим, как они "
-"работают. Такое рассмотрение должно дать ориентиры для дальнейшего изучения "
-"устройства и эффективного применения [.filename]#rc.d#."
+"типичных случаев возрастающей сложности, покажем возможности [.filename]#rc."
+"d#, подходящие для каждого случая, и обсудим, как они работают. Такое "
+"рассмотрение должно дать ориентиры для дальнейшего изучения устройства и "
+"эффективного применения [.filename]#rc.d#."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:51
msgid "'''"
msgstr "'''"
@@ -66,7 +67,7 @@ msgstr "'''"
msgid "Introduction"
msgstr "Введение"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:61
msgid ""
"The historical BSD had a monolithic startup script, [.filename]#/etc/rc#. "
@@ -82,10 +83,10 @@ msgstr ""
"пользовательского пространства, необходимые для многопользовательского "
"режима: проверку и монтирование файловых систем, настройку сети, запуск "
"демонов и так далее. Точный список задач не был одинаковым в каждой системе; "
-"администраторам требовалось его настраивать. За редкими исключениями, "
-"[.filename]#/etc/rc# приходилось изменять, и настоящим хакерам это нравилось."
+"администраторам требовалось его настраивать. За редкими исключениями, [."
+"filename]#/etc/rc# приходилось изменять, и настоящим хакерам это нравилось."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:67
msgid ""
"The real problem with the monolithic approach was that it provided no "
@@ -100,8 +101,8 @@ msgid ""
"make the system admin's life easier."
msgstr ""
"Основная проблема монолитного подхода заключалась в том, что он не "
-"предоставлял контроля над отдельными компонентами, запускаемыми из "
-"[.filename]#/etc/rc#. Например, [.filename]#/etc/rc# не мог перезапустить "
+"предоставлял контроля над отдельными компонентами, запускаемыми из [."
+"filename]#/etc/rc#. Например, [.filename]#/etc/rc# не мог перезапустить "
"отдельный демон. Администратору системы приходилось вручную находить процесс "
"демона, завершать его, ждать, пока он действительно завершится, затем искать "
"в [.filename]#/etc/rc# нужные флаги и, наконец, вводить полную командную "
@@ -111,7 +112,7 @@ msgstr ""
"с тем, для чего скрипты вообще предназначены: облегчать жизнь администратору "
"системы."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:74
msgid ""
"Later there was an attempt to split out some parts of [.filename]#/etc/rc# "
@@ -120,27 +121,27 @@ msgid ""
"did allow for accessing the network from single-user mode, but it did not "
"integrate well into the automatic startup process because parts of its code "
"needed to interleave with actions essentially unrelated to networking. That "
-"was why [.filename]#/etc/netstart# mutated into [.filename]#/etc/"
-"rc.network#. The latter was no longer an ordinary script; it comprised of "
+"was why [.filename]#/etc/netstart# mutated into [.filename]#/etc/rc."
+"network#. The latter was no longer an ordinary script; it comprised of "
"large, tangled man:sh[1] functions called from [.filename]#/etc/rc# at "
"different stages of system startup. However, as the startup tasks grew "
"diverse and sophisticated, the \"quasi-modular\" approach became even more "
"of a drag than the monolithic [.filename]#/etc/rc# had been."
msgstr ""
-"Позже была предпринята попытка разделить некоторые части [.filename]#/etc/"
-"rc# для возможности отдельного запуска наиболее важных подсистем. Известным "
+"Позже была предпринята попытка разделить некоторые части [.filename]#/etc/rc#"
+" для возможности отдельного запуска наиболее важных подсистем. Известным "
"примером стал [.filename]#/etc/netstart#, предназначенный для настройки "
"сети. Это позволяло получить доступ к сети в однопользовательском режиме, но "
"плохо интегрировалось в автоматический процесс запуска, так как части его "
"кода требовалось переплетаться с действиями, по сути не связанными с сетью. "
-"Именно поэтому [.filename]#/etc/netstart# превратился в [.filename]#/etc/"
-"rc.network#. Последний больше не был обычным скриптом; он состоял из "
-"больших, запутанных функций man:sh[1], вызываемых из [.filename]#/etc/rc# на "
-"разных этапах загрузки системы. Однако по мере того, как задачи при запуске "
+"Именно поэтому [.filename]#/etc/netstart# превратился в [.filename]#/etc/rc."
+"network#. Последний больше не был обычным скриптом; он состоял из больших, "
+"запутанных функций man:sh[1], вызываемых из [.filename]#/etc/rc# на разных "
+"этапах загрузки системы. Однако по мере того, как задачи при запуске "
"становились разнообразнее и сложнее, \"квазимодульный\" подход стал ещё "
"большей обузой, чем монолитный [.filename]#/etc/rc#."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:82
msgid ""
"Without a clean and well-designed framework, the startup scripts had to bend "
@@ -164,15 +165,15 @@ msgstr ""
"Вскоре мы узнаем больше о компонентах системы [.filename]#rc.d# и увидим, "
"как вызываются отдельные скрипты."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:93
msgid ""
"The basic ideas behind BSD [.filename]#rc.d# are _fine modularity_ and "
"__code reuse__. _Fine modularity_ means that each basic \"service\" such as "
"a system daemon or primitive startup task gets its own man:sh[1] script able "
"to start the service, stop it, reload it, check its status. A particular "
-"action is chosen by the command-line argument to the script. The "
-"[.filename]#/etc/rc# script still drives system startup, but now it merely "
+"action is chosen by the command-line argument to the script. The [."
+"filename]#/etc/rc# script still drives system startup, but now it merely "
"invokes the smaller scripts one by one with the `start` argument. It is "
"easy to perform shutdown tasks as well by running the same set of scripts "
"with the `stop` argument, which is done by [.filename]#/etc/rc.shutdown#. "
@@ -195,65 +196,65 @@ msgstr ""
"переданным в сценарий. Сценарий [.filename]#/etc/rc# по-прежнему управляет "
"запуском системы, но теперь он просто вызывает небольшие сценарии один за "
"другим с аргументом `start`. Также легко выполнять задачи завершения работы, "
-"запуская тот же набор сценариев с аргументом `stop`, что и делает "
-"[.filename]#/etc/rc.shutdown#. Обратите внимание, насколько это близко "
-"следует Unix-подходу, где используется набор небольших специализированных "
+"запуская тот же набор сценариев с аргументом `stop`, что и делает [."
+"filename]#/etc/rc.shutdown#. Обратите внимание, насколько это близко следует "
+"Unix-подходу, где используется набор небольших специализированных "
"инструментов, каждый из которых выполняет свою задачу наилучшим образом. "
"_Повторное использование кода_ означает, что общие операции реализованы как "
"функции man:sh[1] и собраны в [.filename]#/etc/rc.subr#. Теперь типичный "
"сценарий может состоять всего из нескольких строк кода man:sh[1]. Наконец, "
"важной частью инфраструктуры [.filename]#rc.d# является man:rcorder[8], "
"который помогает [.filename]#/etc/rc# упорядоченно запускать небольшие "
-"сценарии с учётом зависимостей между ними. Он также может помочь "
-"[.filename]#/etc/rc.shutdown#, поскольку правильный порядок завершения "
-"работы противоположен порядку запуска."
+"сценарии с учётом зависимостей между ними. Он также может помочь [."
+"filename]#/etc/rc.shutdown#, поскольку правильный порядок завершения работы "
+"противоположен порядку запуска."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:101
msgid ""
"The BSD [.filename]#rc.d# design is described in crossref:rc-"
-"scripting[lukem, the original article by Luke Mewburn], and the "
-"[.filename]#rc.d# components are documented in great detail in crossref:rc-"
+"scripting[lukem, the original article by Luke Mewburn], and the [."
+"filename]#rc.d# components are documented in great detail in crossref:rc-"
"scripting[manpages, the respective manual pages]. However, it might not "
"appear obvious to an [.filename]#rc.d# newbie how to tie the numerous bits "
"and pieces together to create a well-styled script for a particular task. "
-"Therefore this article will try a different approach to describe "
-"[.filename]#rc.d#. It will show which features should be used in a number "
-"of typical cases, and why. Note that this is not a how-to document because "
-"our aim is not at giving ready-made recipes, but at showing a few easy "
-"entrances into the [.filename]#rc.d# realm. Neither is this article a "
-"replacement for the relevant manual pages. Do not hesitate to refer to them "
-"for more formal and complete documentation while reading this article."
+"Therefore this article will try a different approach to describe [."
+"filename]#rc.d#. It will show which features should be used in a number of "
+"typical cases, and why. Note that this is not a how-to document because our "
+"aim is not at giving ready-made recipes, but at showing a few easy entrances "
+"into the [.filename]#rc.d# realm. Neither is this article a replacement for "
+"the relevant manual pages. Do not hesitate to refer to them for more formal "
+"and complete documentation while reading this article."
msgstr ""
"Дизайн BSD [.filename]#rc.d# описан в crossref:rc-scripting[lukem, "
"оригинальной статье Люка Мьюберна], а компоненты [.filename]#rc.d# подробно "
-"документированы в crossref:rc-scripting[manpages, соответствующих "
-"руководствах]. Однако новичку в [.filename]#rc.d# может быть неочевидно, как "
+"документированы в crossref:rc-scripting[manpages, соответствующих страницах "
+"Справочника]. Однако новичку в [.filename]#rc.d# может быть неочевидно, как "
"связать многочисленные элементы вместе, чтобы создать хорошо "
"структурированный скрипт для конкретной задачи. Поэтому в этой статье будет "
"предпринята попытка описать [.filename]#rc.d# с другого ракурса. В ней будет "
"показано, какие функции следует использовать в ряде типичных случаев и "
-"почему. Обратите внимание, что это не руководство, поскольку наша цель — не "
-"предоставление готовых рецептов, а демонстрация нескольких простых способов "
-"входа в мир [.filename]#rc.d#. Также эта статья не заменяет соответствующие "
-"руководства. Не стесняйтесь обращаться к ним для получения более формальной "
-"и полной документации во время чтения этой статьи."
+"почему. Обратите внимание, что это не руководство HowTo, поскольку наша цель "
+"— не предоставление готовых рецептов, а демонстрация нескольких простых "
+"способов входа в мир [.filename]#rc.d#. Также эта статья не заменяет "
+"соответствующие страниц Справочника. Не стесняйтесь обращаться к ним для "
+"получения более формальной и полной документации во время чтения этой статьи."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:105
msgid ""
"There are prerequisites to understanding this article. First of all, you "
-"should be familiar with the man:sh[1] scripting language to master "
-"[.filename]#rc.d#. In addition, you should know how the system performs "
+"should be familiar with the man:sh[1] scripting language to master [."
+"filename]#rc.d#. In addition, you should know how the system performs "
"userland startup and shutdown tasks, which is described in man:rc[8]."
msgstr ""
"Для понимания этой статьи есть предварительные требования. Прежде всего, вы "
-"должны быть знакомы с языком написания сценариев man:sh[1], чтобы освоить "
-"[.filename]#rc.d#. Кроме того, вы должны знать, как система выполняет задачи "
+"должны быть знакомы с языком написания сценариев man:sh[1], чтобы освоить [."
+"filename]#rc.d#. Кроме того, вы должны знать, как система выполняет задачи "
"запуска и завершения работы пользовательского пространства, что описано в "
"man:rc[8]."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:108
msgid ""
"This article focuses on the FreeBSD branch of [.filename]#rc.d#. "
@@ -262,9 +263,9 @@ msgid ""
"stay similar in their aspects visible to script authors."
msgstr ""
"Эта статья посвящена ветке FreeBSD в [.filename]#rc.d#. Тем не менее, она "
-"может быть полезна и разработчикам NetBSD, потому что две ветки BSD "
-"[.filename]#rc.d# не только разделяют одинаковый дизайн, но и остаются "
-"схожими в аспектах, видимых авторам скриптов."
+"может быть полезна и разработчикам NetBSD, потому что две ветки BSD [."
+"filename]#rc.d# не только разделяют одинаковый дизайн, но и остаются схожими "
+"в аспектах, видимых авторам скриптов."
#. type: Title ==
#: documentation/content/en/articles/rc-scripting/_index.adoc:110
@@ -272,7 +273,7 @@ msgstr ""
msgid "Outlining the task"
msgstr "Обрисовка задачи"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:114
msgid ""
"A little consideration before starting `$EDITOR` will not hurt. To write a "
@@ -283,12 +284,12 @@ msgstr ""
"хорошо продуманный скрипт [.filename]#rc.d# для системной службы, сначала "
"нужно ответить на следующие вопросы:"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:116
msgid "Is the service mandatory or optional?"
msgstr "Является ли служба обязательной или опциональной?"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:117
msgid ""
"Will the script serve a single program, e.g., a daemon, or perform more "
@@ -297,12 +298,12 @@ msgstr ""
"Будет ли скрипт обслуживать одну программу, например, демон, или выполнять "
"более сложные действия?"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:118
msgid "Which other services will our service depend on, and vice versa?"
msgstr "От каких других служб зависит наша служба, и наоборот?"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:120
msgid ""
"From the examples that follow we will see why it is important to know the "
@@ -316,7 +317,7 @@ msgstr ""
msgid "A dummy script"
msgstr "Примитивный скрипт"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:125
msgid ""
"The following script just emits a message each time the system boots up:"
@@ -477,9 +478,9 @@ msgid ""
"script _must_ set `name` before it calls man:rc.subr[8] functions."
msgstr ""
"&#10124; [[name-var]]Обязательная переменная `name` определяет имя нашего "
-"скрипта. Она требуется man:rc.subr[8]. То есть, каждый скрипт в "
-"[.filename]#rc.d# _должен_ установить `name` перед вызовом функций "
-"man:rc.subr[8]."
+"скрипта. Она требуется man:rc.subr[8]. То есть, каждый скрипт в [."
+"filename]#rc.d# _должен_ установить `name` перед вызовом функций man:rc."
+"subr[8]."
#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:191
@@ -528,23 +529,23 @@ msgid ""
"particular, `start`, `stop`, and other arguments to an [.filename]#rc.d# "
"script are handled this way. A method is a man:sh[1] expression stored in a "
"variable named `argument_cmd`, where _argument_ corresponds to what can be "
-"specified on the script's command line. We will see later how "
-"man:rc.subr[8] provides default methods for the standard arguments."
-msgstr ""
-"&#10125; Основная идея man:rc.subr[8] заключается в том, что скрипт "
-"[.filename]#rc.d# предоставляет обработчики (или методы) для вызова "
-"man:rc.subr[8]. В частности, аргументы `start`, `stop` и другие, "
-"передаваемые в скрипт [.filename]#rc.d#, обрабатываются таким образом. Метод "
-"представляет собой выражение man:sh[1], сохранённое в переменной с именем "
-"`argument_cmd`, где _argument_ соответствует тому, что может быть указано в "
-"командной строке скрипта. Далее мы увидим, как man:rc.subr[8] предоставляет "
-"стандартные методы для типовых аргументов."
+"specified on the script's command line. We will see later how man:rc."
+"subr[8] provides default methods for the standard arguments."
+msgstr ""
+"&#10125; Основная идея man:rc.subr[8] заключается в том, что скрипт [."
+"filename]#rc.d# предоставляет обработчики (или методы) для вызова man:rc."
+"subr[8]. В частности, аргументы `start`, `stop` и другие, передаваемые в "
+"скрипт [.filename]#rc.d#, обрабатываются таким образом. Метод представляет "
+"собой выражение man:sh[1], сохранённое в переменной с именем `argument_cmd`, "
+"где _argument_ соответствует тому, что может быть указано в командной строке "
+"скрипта. Далее мы увидим, как man:rc.subr[8] предоставляет стандартные "
+"методы для типовых аргументов."
#. type: delimited block = 4
#: documentation/content/en/articles/rc-scripting/_index.adoc:209
msgid ""
-"To make the code in [.filename]#rc.d# more uniform, it is common to use `$"
-"{name}` wherever appropriate. Thus a number of lines can be just copied "
+"To make the code in [.filename]#rc.d# more uniform, it is common to use "
+"`${name}` wherever appropriate. Thus a number of lines can be just copied "
"from one script to another."
msgstr ""
"Чтобы сделать код в [.filename]#rc.d# более единообразным, обычно используют "
@@ -587,14 +588,14 @@ msgstr ""
#: documentation/content/en/articles/rc-scripting/_index.adoc:224
msgid ""
"&#10128; This call to man:rc.subr[8] loads man:rc.conf[5] variables. Our "
-"script makes no use of them yet, but it still is recommended to load "
-"man:rc.conf[5] because there can be man:rc.conf[5] variables controlling "
-"man:rc.subr[8] itself."
+"script makes no use of them yet, but it still is recommended to load man:rc."
+"conf[5] because there can be man:rc.conf[5] variables controlling man:rc."
+"subr[8] itself."
msgstr ""
"&#10128; Этот вызов man:rc.subr[8] загружает переменные man:rc.conf[5]. Наш "
-"скрипт пока их не использует, но всё равно рекомендуется загружать "
-"man:rc.conf[5], потому что могут быть переменные man:rc.conf[5], управляющие "
-"самим man:rc.subr[8]."
+"скрипт пока их не использует, но всё равно рекомендуется загружать man:rc."
+"conf[5], потому что могут быть переменные man:rc.conf[5], управляющие самим "
+"man:rc.subr[8]."
#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:227
@@ -616,8 +617,8 @@ msgstr "Настраиваемый фиктивный скрипт"
#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:239
msgid ""
-"Now let us add some controls to our dummy script. As you may know, "
-"[.filename]#rc.d# scripts are controlled with man:rc.conf[5]. Fortunately, "
+"Now let us add some controls to our dummy script. As you may know, [."
+"filename]#rc.d# scripts are controlled with man:rc.conf[5]. Fortunately, "
"man:rc.subr[8] hides all the complications from us. The following script "
"uses man:rc.conf[5] via man:rc.subr[8] to see whether it is enabled in the "
"first place, and to fetch a message to show at boot time. These two tasks "
@@ -627,15 +628,14 @@ msgid ""
"will do both things in the same script though:"
msgstr ""
"Теперь добавим некоторые элементы управления в наш тестовый скрипт. Как вам "
-"может быть известно, скрипты [.filename]#rc.d# управляются с помощью "
-"man:rc.conf[5]. К счастью, man:rc.subr[8] скрывает от нас все сложности. "
-"Следующий скрипт использует man:rc.conf[5] через man:rc.subr[8], чтобы "
-"проверить, включен ли он вообще, и получить сообщение для отображения во "
-"время загрузки. Эти две задачи на самом деле независимы. С одной стороны, "
-"скрипт [.filename]#rc.d# может просто поддерживать включение и выключение "
-"своего сервиса. С другой стороны, обязательный скрипт [.filename]#rc.d# "
-"может иметь переменные конфигурации. Однако мы реализуем обе возможности в "
-"одном скрипте:"
+"может быть известно, скрипты [.filename]#rc.d# управляются с помощью man:rc."
+"conf[5]. К счастью, man:rc.subr[8] скрывает от нас все сложности. Следующий "
+"скрипт использует man:rc.conf[5] через man:rc.subr[8], чтобы проверить, "
+"включен ли он вообще, и получить сообщение для отображения во время "
+"загрузки. Эти две задачи на самом деле независимы. С одной стороны, скрипт [."
+"filename]#rc.d# может просто поддерживать включение и выключение своего "
+"сервиса. С другой стороны, обязательный скрипт [.filename]#rc.d# может иметь "
+"переменные конфигурации. Однако мы реализуем обе возможности в одном скрипте:"
#. type: delimited block . 4
#: documentation/content/en/articles/rc-scripting/_index.adoc:243
@@ -766,8 +766,8 @@ msgid ""
"knob. The canonical approach to the latter case is shown in the example."
msgstr ""
"&#10124; `run_rc_command` выдаст предупреждение, если переменная `rcvar` "
-"установлена, но указанная переменная-флаг не задана. Если ваш скрипт "
-"[.filename]#rc.d# предназначен для базовой системы, вы должны добавить "
+"установлена, но указанная переменная-флаг не задана. Если ваш скрипт [."
+"filename]#rc.d# предназначен для базовой системы, вы должны добавить "
"значение по умолчанию для флага в [.filename]#/etc/defaults/rc.conf# и "
"задокументировать его в man:rc.conf[5]. В противном случае ваш скрипт должен "
"предоставить значение по умолчанию для флага. Канонический подход для "
@@ -807,11 +807,11 @@ msgid ""
"control an [.filename]#rc.d# script."
msgstr ""
"&#10125; Теперь сообщение, отображаемое при загрузке, больше не жестко "
-"закодировано в скрипте. Оно задается переменной `dummy_msg` в "
-"man:rc.conf[5]. Это простой пример того, как переменные man:rc.conf[5] могут "
-"управлять скриптом в [.filename]#rc.d#."
+"закодировано в скрипте. Оно задается переменной `dummy_msg` в man:rc.conf[5]"
+". Это простой пример того, как переменные man:rc.conf[5] могут управлять "
+"скриптом в [.filename]#rc.d#."
-#. type: delimited block = 4
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:304
msgid ""
"The names of all man:rc.conf[5] variables used exclusively by our script "
@@ -822,7 +822,7 @@ msgstr ""
"скриптом, _должны_ иметь один и тот же префикс: `${name}_`. Например: "
"`dummy_mode`, `dummy_state_file` и так далее."
-#. type: delimited block = 4
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:309
msgid ""
"While it is possible to use a shorter name internally, e.g., just `msg`, "
@@ -835,13 +835,13 @@ msgstr ""
"вводимым нашим скриптом, избавит нас от возможных конфликтов с пространством "
"имен man:rc.subr[8]."
-#. type: delimited block = 4
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:312
msgid ""
"As a rule, [.filename]#rc.d# scripts of the base system need not provide "
"defaults for their man:rc.conf[5] variables because the defaults should be "
-"set in [.filename]#/etc/defaults/rc.conf# instead. On the other hand, "
-"[.filename]#rc.d# scripts for ports should provide the defaults as shown in "
+"set in [.filename]#/etc/defaults/rc.conf# instead. On the other hand, [."
+"filename]#rc.d# scripts for ports should provide the defaults as shown in "
"the example."
msgstr ""
"Как правило, скрипты [.filename]#rc.d# базовой системы не должны "
@@ -850,7 +850,7 @@ msgstr ""
"defaults/rc.conf#. С другой стороны, скрипты [.filename]#rc.d# для портов "
"должны предоставлять значения по умолчанию, как показано в примере."
-#. type: Plain text
+#. type: delimited block = 4
#: documentation/content/en/articles/rc-scripting/_index.adoc:316
msgid ""
"&#10126; Here we use `dummy_msg` to actually control our script, i.e., to "
@@ -1006,12 +1006,12 @@ msgstr ""
#. type: delimited block = 4
#: documentation/content/en/articles/rc-scripting/_index.adoc:378
msgid ""
-"Of course, man:sh[1] will permit you to set `${name}_program` from "
-"man:rc.conf[5] or the script itself even if `command` is unset. In that "
-"case, the special properties of `${name}_program` are lost, and it becomes "
-"an ordinary variable your script can use for its own purposes. However, the "
-"sole use of `${name}_program` is discouraged because using it together with "
-"`command` became an idiom of [.filename]#rc.d# scripting."
+"Of course, man:sh[1] will permit you to set `${name}_program` from man:rc."
+"conf[5] or the script itself even if `command` is unset. In that case, the "
+"special properties of `${name}_program` are lost, and it becomes an ordinary "
+"variable your script can use for its own purposes. However, the sole use of "
+"`${name}_program` is discouraged because using it together with `command` "
+"became an idiom of [.filename]#rc.d# scripting."
msgstr ""
"Конечно, man:sh[1] позволяет установить `${name}_program` из man:rc.conf[5] "
"или самого скрипта, даже если `command` не задан. В этом случае специальные "
@@ -1067,7 +1067,8 @@ msgstr "pidfile=\"/var/run/${name}.pid\" <.>\n"
#: documentation/content/en/articles/rc-scripting/_index.adoc:404
#, no-wrap
msgid "required_files=\"/etc/${name}.conf /usr/share/misc/${name}.rules\" <.>\n"
-msgstr "required_files=\"/etc/${name}.conf /usr/share/misc/${name}.rules\" <.>\n"
+msgstr ""
+"required_files=\"/etc/${name}.conf /usr/share/misc/${name}.rules\" <.>\n"
#. type: delimited block . 4
#: documentation/content/en/articles/rc-scripting/_index.adoc:406
@@ -1171,10 +1172,10 @@ msgid ""
"`command_args`."
msgstr ""
"&#10122; Дополнительные аргументы для `$command` могут быть переданы в "
-"`command_args`. Они будут добавлены в командную строку после "
-"`$mumbled_flags`. Поскольку итоговая командная строка передаётся в `eval` "
-"для фактического выполнения, перенаправления ввода и вывода могут быть "
-"указаны в `command_args`."
+"`command_args`. Они будут добавлены в командную строку после `$mumbled_flags`"
+". Поскольку итоговая командная строка передаётся в `eval` для фактического "
+"выполнения, перенаправления ввода и вывода могут быть указаны в "
+"`command_args`."
#. type: delimited block = 4
#: documentation/content/en/articles/rc-scripting/_index.adoc:455
@@ -1192,9 +1193,9 @@ msgstr ""
"командной строки, поэтому, скорее всего, окажется после аргументов, "
"указанных в `${name}_flags`; однако большинство команд не распознают "
"параметры с дефисами после обычных аргументов. Лучший способ передать "
-"дополнительные параметры в `$command` — добавить их в начало `${name}"
-"_flags`. Другой способ — изменить `rc_flags` crossref:rc-scripting[rc-flags, "
-"как показано далее]."
+"дополнительные параметры в `$command` — добавить их в начало `${name}_flags`"
+". Другой способ — изменить `rc_flags` crossref:rc-scripting[rc-flags, как "
+"показано далее]."
#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:459
@@ -1312,9 +1313,9 @@ msgid ""
"makes the real job is a good style in most cases, but never let style limit "
"your understanding of what is going on behind the curtain."
msgstr ""
-"Не забывайте, что вы можете вставлять любые допустимые выражения из "
-"man:sh[1] в определяемые вами методы, а также команды pre- и post-. Просто "
-"вызывать функцию, которая выполняет основную работу, — это хороший стиль в "
+"Не забывайте, что вы можете вставлять любые допустимые выражения из man:sh[1]"
+" в определяемые вами методы, а также команды pre- и post-. Просто вызывать "
+"функцию, которая выполняет основную работу, — это хороший стиль в "
"большинстве случаев, но никогда не позволяйте стилю ограничивать ваше "
"понимание того, что происходит за кулисами."
@@ -1404,7 +1405,8 @@ msgid ""
"Usage: /etc/rc.d/mumbled [fast|force|one](start|stop|restart|rcvar|reload|plugh|xyzzy|status|poll)\n"
msgstr ""
"# /etc/rc.d/mumbled\n"
-"Usage: /etc/rc.d/mumbled [fast|force|one](start|stop|restart|rcvar|reload|plugh|xyzzy|status|poll)\n"
+"Usage: /etc/rc.d/mumbled "
+"[fast|force|one](start|stop|restart|rcvar|reload|plugh|xyzzy|status|poll)\n"
#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:537
@@ -1414,8 +1416,8 @@ msgid ""
"commands and shell functions are not always the same thing. For instance, "
"`xyzzy` is not implemented as a function here. In addition, there can be a "
"pre-command and post-command, which should be invoked orderly. So the "
-"proper way for a script to run its own command is by means of "
-"man:rc.subr[8], as shown in the example."
+"proper way for a script to run its own command is by means of man:rc."
+"subr[8], as shown in the example."
msgstr ""
"&#9453; Скрипт может вызывать свои собственные стандартные или нестандартные "
"команды, если это необходимо. Это может выглядеть похоже на вызов функций, "
@@ -1440,9 +1442,9 @@ msgstr ""
"принимает имя переменной в качестве аргумента и возвращает нулевой код "
"выхода только если переменная установлена в `YES`, `TRUE`, `ON` или `1`, без "
"учёта регистра; в противном случае возвращается ненулевой код выхода. В "
-"последнем случае функция проверяет, установлена ли переменная в `NO`, "
-"`FALSE`, `OFF` или `0`, также без учёта регистра; если переменная содержит "
-"что-то иное (т.е. мусор), функция выводит предупреждение."
+"последнем случае функция проверяет, установлена ли переменная в `NO`, `FALSE`"
+", `OFF` или `0`, также без учёта регистра; если переменная содержит что-то "
+"иное (т.е. мусор), функция выводит предупреждение."
#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:545
@@ -1535,7 +1537,7 @@ msgstr ""
"выхода, основной метод не будет выполнен. В свою очередь, `argument_postcmd` "
"не будет вызван, если основной метод возвращает ненулевой код выхода."
-#. type: delimited block = 4
+#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:584
msgid ""
"However, man:rc.subr[8] can be instructed from the command line to ignore "
@@ -1552,32 +1554,30 @@ msgstr ""
msgid "Connecting a script to the rc.d framework"
msgstr "Подключение скрипта к инфраструктуре rc.d"
-#. type: Plain text
+#. type: delimited block = 4
#: documentation/content/en/articles/rc-scripting/_index.adoc:594
msgid ""
-"After a script has been written, it needs to be integrated into "
-"[.filename]#rc.d#. The crucial step is to install the script in "
-"[.filename]#/etc/rc.d# (for the base system) or [.filename]#/usr/local/etc/"
-"rc.d# (for ports). Both [.filename]#bsd.prog.mk# and "
-"[.filename]#bsd.port.mk# provide convenient hooks for that, and usually you "
-"do not have to worry about the proper ownership and mode. System scripts "
-"should be installed from [.filename]#src/libexec/rc/rc.d# through the "
-"[.filename]#Makefile# found there. Port scripts can be installed using "
-"`USE_RC_SUBR` as described extref:{porters-handbook}[in the Porter's "
-"Handbook, rc-scripts]."
+"After a script has been written, it needs to be integrated into [."
+"filename]#rc.d#. The crucial step is to install the script in [.filename]#/"
+"etc/rc.d# (for the base system) or [.filename]#/usr/local/etc/rc.d# (for "
+"ports). Both [.filename]#bsd.prog.mk# and [.filename]#bsd.port.mk# provide "
+"convenient hooks for that, and usually you do not have to worry about the "
+"proper ownership and mode. System scripts should be installed from [."
+"filename]#src/libexec/rc/rc.d# through the [.filename]#Makefile# found "
+"there. Port scripts can be installed using `USE_RC_SUBR` as described "
+"extref:{porters-handbook}[in the Porter's Handbook, rc-scripts]."
msgstr ""
"После написания скрипта его необходимо интегрировать в [.filename]#rc.d#. "
"Ключевой шаг — установка скрипта в [.filename]#/etc/rc.d# (для базовой "
-"системы) или [.filename]#/usr/local/etc/rc.d# (для портов). И "
-"[.filename]#bsd.prog.mk#, и [.filename]#bsd.port.mk# предоставляют удобные "
-"механизмы для этого, и обычно вам не нужно беспокоиться о правильных правах "
-"доступа и режиме. Системные скрипты должны устанавливаться из "
-"[.filename]#src/libexec/rc/rc.d# через [.filename]#Makefile#, находящийся "
-"там. Скрипты портов можно установить с помощью `USE_RC_SUBR`, как описано "
-"extref:{porters-handbook}special/[в Руководстве FreeBSD по созданию портов, "
-"rc-скрипты]."
+"системы) или [.filename]#/usr/local/etc/rc.d# (для портов). И [.filename]#bsd"
+".prog.mk#, и [.filename]#bsd.port.mk# предоставляют удобные механизмы для "
+"этого, и обычно вам не нужно беспокоиться о правильных правах доступа и "
+"режиме. Системные скрипты должны устанавливаться из [.filename]#src/libexec/"
+"rc/rc.d# через [.filename]#Makefile#, находящийся там. Скрипты портов можно "
+"установить с помощью `USE_RC_SUBR`, как описано extref:{porters-handbook}"
+"special/[в Руководстве FreeBSD по созданию портов, rc-скрипты]."
-#. type: Plain text
+#. type: delimited block = 4
#: documentation/content/en/articles/rc-scripting/_index.adoc:599
msgid ""
"However, we should consider beforehand the place of our script in the system "
@@ -1594,7 +1594,7 @@ msgstr ""
"не требует, он вряд ли сможет запуститься до проверки и монтирования "
"основных файловых систем."
-#. type: Plain text
+#. type: delimited block = 4
#: documentation/content/en/articles/rc-scripting/_index.adoc:605
msgid ""
"We mentioned man:rcorder[8] already. Now it is time to have a close look at "
@@ -1611,7 +1611,7 @@ msgstr ""
"зависимостях _внутри_ файлов, чтобы каждый файл мог описывать только себя. "
"Файл может содержать следующую информацию:"
-#. type: Plain text
+#. type: delimited block = 4
#: documentation/content/en/articles/rc-scripting/_index.adoc:607
msgid ""
"the names of the \"conditions\" (which means services to us) it __provides__;"
@@ -1619,17 +1619,17 @@ msgstr ""
"имена \"условий\" (что для нас означает сервисы), которые он "
"__предоставляет__;"
-#. type: Plain text
+#. type: delimited block = 4
#: documentation/content/en/articles/rc-scripting/_index.adoc:608
msgid "the names of the \"conditions\" it __requires__;"
msgstr "имена \"условий\", которые он __требует__;"
-#. type: Plain text
+#. type: delimited block = 4
#: documentation/content/en/articles/rc-scripting/_index.adoc:609
msgid "the names of the \"conditions\" this file should run __before__;"
msgstr "имена \"условий\", перед которыми должен выполняться этот файл;"
-#. type: Plain text
+#. type: delimited block = 4
#: documentation/content/en/articles/rc-scripting/_index.adoc:610
msgid ""
"additional _keywords_ that can be used to select a subset from the whole set "
@@ -1641,13 +1641,13 @@ msgstr ""
"помощью опций для включения или исключения файлов, содержащих указанные "
"ключевые слова.)"
-#. type: Plain text
+#. type: delimited block = 4
#: documentation/content/en/articles/rc-scripting/_index.adoc:615
msgid ""
"It is no surprise that man:rcorder[8] can handle only text files with a "
-"syntax close to that of man:sh[1]. That is, special lines understood by "
-"man:rcorder[8] look like man:sh[1] comments. The syntax of such special "
-"lines is rather rigid to simplify their processing. See man:rcorder[8] for "
+"syntax close to that of man:sh[1]. That is, special lines understood by man:"
+"rcorder[8] look like man:sh[1] comments. The syntax of such special lines "
+"is rather rigid to simplify their processing. See man:rcorder[8] for "
"details."
msgstr ""
"Неудивительно, что man:rcorder[8] может обрабатывать только текстовые файлы "
@@ -1656,7 +1656,7 @@ msgstr ""
"специальных строк довольно жёсткий, чтобы упростить их обработку. "
"Подробности см. в man:rcorder[8]."
-#. type: Plain text
+#. type: delimited block = 4
#: documentation/content/en/articles/rc-scripting/_index.adoc:618
msgid ""
"Besides using man:rcorder[8] special lines, a script can insist on its "
@@ -1670,7 +1670,7 @@ msgstr ""
"опциональной и не запускается самостоятельно, потому что системный "
"администратор ошибочно отключил её в man:rc.conf[5]."
-#. type: Plain text
+#. type: delimited block = 4
#: documentation/content/en/articles/rc-scripting/_index.adoc:620
msgid ""
"With this general knowledge in mind, let us consider the simple daemon "
@@ -1764,26 +1764,26 @@ msgstr ""
#: documentation/content/en/articles/rc-scripting/_index.adoc:666
msgid ""
"&#10123;&#10124; So our script indicates which \"conditions\" provided by "
-"other scripts it depends on. According to the lines, our script asks "
-"man:rcorder[8] to put it after the script(s) providing [.filename]#DAEMON# "
-"and [.filename]#cleanvar#, but before that providing [.filename]#LOGIN#."
+"other scripts it depends on. According to the lines, our script asks man:"
+"rcorder[8] to put it after the script(s) providing [.filename]#DAEMON# and [."
+"filename]#cleanvar#, but before that providing [.filename]#LOGIN#."
msgstr ""
"&#10123;&#10124; Таким образом, наш скрипт указывает, от каких \"условий\", "
"предоставляемых другими скриптами, он зависит. Согласно строкам, наш скрипт "
-"просит man:rcorder[8] разместить его после скрипта(ов), предоставляющих "
-"[.filename]#DAEMON# и [.filename]#cleanvar#, но перед тем, который "
+"просит man:rcorder[8] разместить его после скрипта(ов), предоставляющих [."
+"filename]#DAEMON# и [.filename]#cleanvar#, но перед тем, который "
"предоставляет [.filename]#LOGIN#."
#. type: delimited block = 4
#: documentation/content/en/articles/rc-scripting/_index.adoc:672
msgid ""
"The `BEFORE:` line should not be abused to work around an incomplete "
-"dependency list in the other script. The appropriate case for using "
-"`BEFORE:` is when the other script does not care about ours, but our script "
-"can do its task better if run before the other one. A typical real-life "
-"example is the network interfaces vs. the firewall: While the interfaces do "
-"not depend on the firewall in doing their job, the system security will "
-"benefit from the firewall being ready before there is any network traffic."
+"dependency list in the other script. The appropriate case for using `BEFORE:"
+"` is when the other script does not care about ours, but our script can do "
+"its task better if run before the other one. A typical real-life example is "
+"the network interfaces vs. the firewall: While the interfaces do not depend "
+"on the firewall in doing their job, the system security will benefit from "
+"the firewall being ready before there is any network traffic."
msgstr ""
"Строку `BEFORE:` не следует использовать для обхода неполного списка "
"зависимостей в другом скрипте. Правильный случай для использования `BEFORE:` "
@@ -1798,26 +1798,25 @@ msgstr ""
msgid ""
"Besides conditions corresponding to a single service each, there are meta-"
"conditions and their \"placeholder\" scripts used to ensure that certain "
-"groups of operations are performed before others. These are denoted by "
-"[.filename]#UPPERCASE# names. Their list and purposes can be found in "
-"man:rc[8]."
+"groups of operations are performed before others. These are denoted by [."
+"filename]#UPPERCASE# names. Their list and purposes can be found in man:"
+"rc[8]."
msgstr ""
"Помимо условий, соответствующих отдельным службам, существуют метаусловия и "
"их \"заглушки\" скриптов, используемые для обеспечения выполнения "
-"определённых групп операций в заданном порядке. Они обозначаются именами в "
-"[.filename]#ВЕРХНЕМ РЕГИСТРЕ#. Их список и назначение можно найти в "
-"man:rc[8]."
+"определённых групп операций в заданном порядке. Они обозначаются именами в [."
+"filename]#ВЕРХНЕМ РЕГИСТРЕ#. Их список и назначение можно найти в man:rc[8]."
#. type: delimited block = 4
#: documentation/content/en/articles/rc-scripting/_index.adoc:682
msgid ""
"Keep in mind that putting a service name in the `REQUIRE:` line does not "
"guarantee that the service will actually be running by the time our script "
-"starts. The required service may fail to start or just be disabled in "
-"man:rc.conf[5]. Obviously, man:rcorder[8] cannot track such details, and "
-"man:rc[8] will not do that either. Consequently, the application started by "
-"our script should be able to cope with any required services being "
-"unavailable. In certain cases, we can help it as discussed crossref:rc-"
+"starts. The required service may fail to start or just be disabled in man:"
+"rc.conf[5]. Obviously, man:rcorder[8] cannot track such details, and man:"
+"rc[8] will not do that either. Consequently, the application started by our "
+"script should be able to cope with any required services being unavailable. "
+"In certain cases, we can help it as discussed crossref:rc-"
"scripting[forcedep, below]"
msgstr ""
"Имейте в виду, что указание имени службы в строке `REQUIRE:` не гарантирует, "
@@ -1826,19 +1825,19 @@ msgstr ""
"Очевидно, man:rcorder[8] не может отслеживать такие детали, и man:rc[8] тоже "
"этого не делает. Следовательно, приложение, запускаемое нашим скриптом, "
"должно быть способно обрабатывать ситуации, когда требуемые службы "
-"недоступны. В некоторых случаях мы можем помочь ему, как описано в "
-"crossref:rc-scripting[forcedep, ниже]"
+"недоступны. В некоторых случаях мы можем помочь ему, как описано в crossref"
+":rc-scripting[forcedep, ниже]"
#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:687
msgid ""
"[[keywords]]&#10125; As we remember from the above text, man:rcorder[8] "
-"keywords can be used to select or leave out some scripts. Namely any "
-"man:rcorder[8] consumer can specify through `-k` and `-s` options which "
-"keywords are on the \"keep list\" and \"skip list\", respectively. From all "
-"the files to be dependency sorted, man:rcorder[8] will pick only those "
-"having a keyword from the keep list (unless empty) and not having a keyword "
-"from the skip list."
+"keywords can be used to select or leave out some scripts. Namely any man:"
+"rcorder[8] consumer can specify through `-k` and `-s` options which keywords "
+"are on the \"keep list\" and \"skip list\", respectively. From all the "
+"files to be dependency sorted, man:rcorder[8] will pick only those having a "
+"keyword from the keep list (unless empty) and not having a keyword from the "
+"skip list."
msgstr ""
"[[keywords]]&#10125; Как мы помним из текста выше, ключевые слова "
"man:rcorder[8] могут использоваться для выбора или исключения некоторых "
@@ -1853,8 +1852,8 @@ msgstr ""
#: documentation/content/en/articles/rc-scripting/_index.adoc:690
msgid ""
"In FreeBSD, man:rcorder[8] is used by [.filename]#/etc/rc# and [.filename]#/"
-"etc/rc.shutdown#. These two scripts define the standard list of FreeBSD "
-"[.filename]#rc.d# keywords and their meanings as follows:"
+"etc/rc.shutdown#. These two scripts define the standard list of FreeBSD [."
+"filename]#rc.d# keywords and their meanings as follows:"
msgstr ""
"В FreeBSD, man:rcorder[8] используется [.filename]#/etc/rc# и [.filename]#/"
"etc/rc.shutdown#. Эти два скрипта определяют стандартный список ключевых "
@@ -1886,13 +1885,13 @@ msgstr "nostart"
#: documentation/content/en/articles/rc-scripting/_index.adoc:697
msgid ""
"The service is to be started manually or not started at all. The automatic "
-"startup procedure will ignore the script. In conjunction with the "
-"[.filename]#shutdown# keyword, this can be used to write scripts that do "
+"startup procedure will ignore the script. In conjunction with the [."
+"filename]#shutdown# keyword, this can be used to write scripts that do "
"something only at system shutdown."
msgstr ""
"Служба должна запускаться вручную или не запускаться вовсе. Процедура "
-"автоматического запуска проигнорирует скрипт. В сочетании с ключевым словом "
-"[.filename]#shutdown# это может использоваться для написания скриптов, "
+"автоматического запуска проигнорирует скрипт. В сочетании с ключевым словом ["
+".filename]#shutdown# это может использоваться для написания скриптов, "
"выполняющих действия только при выключении системы."
#. type: Labeled list
@@ -1915,13 +1914,13 @@ msgstr ""
msgid ""
"When the system is going to shut down, [.filename]#/etc/rc.shutdown# runs. "
"It assumes that most [.filename]#rc.d# scripts have nothing to do at that "
-"time. Therefore [.filename]#/etc/rc.shutdown# selectively invokes "
-"[.filename]#rc.d# scripts with the [.filename]#shutdown# keyword, "
-"effectively ignoring the rest of the scripts. For even faster shutdown, "
-"[.filename]#/etc/rc.shutdown# passes the [.filename]#faststop# command to "
-"the scripts it runs so that they skip preliminary checks, e.g., the pidfile "
-"check. As dependent services should be stopped before their prerequisites, "
-"[.filename]#/etc/rc.shutdown# runs the scripts in reverse dependency order. "
+"time. Therefore [.filename]#/etc/rc.shutdown# selectively invokes [."
+"filename]#rc.d# scripts with the [.filename]#shutdown# keyword, effectively "
+"ignoring the rest of the scripts. For even faster shutdown, [.filename]#/"
+"etc/rc.shutdown# passes the [.filename]#faststop# command to the scripts it "
+"runs so that they skip preliminary checks, e.g., the pidfile check. As "
+"dependent services should be stopped before their prerequisites, [."
+"filename]#/etc/rc.shutdown# runs the scripts in reverse dependency order. "
"If writing a real [.filename]#rc.d# script, you should consider whether it "
"is relevant at system shutdown time. E.g., if your script does its work in "
"response to the [.filename]#start# command only, then you need not to "
@@ -1932,17 +1931,17 @@ msgid ""
"special actions to shut down cleanly. A typical example of such a service "
"is a database engine."
msgstr ""
-"Когда система собирается завершить работу, выполняется [.filename]#/etc/"
-"rc.shutdown#. Предполагается, что большинству скриптов [.filename]#rc.d# в "
-"этот момент нечего делать. Поэтому [.filename]#/etc/rc.shutdown# выборочно "
+"Когда система собирается завершить работу, выполняется [.filename]#/etc/rc."
+"shutdown#. Предполагается, что большинству скриптов [.filename]#rc.d# в этот "
+"момент нечего делать. Поэтому [.filename]#/etc/rc.shutdown# выборочно "
"запускает скрипты [.filename]#rc.d# с ключевым словом [.filename]#shutdown#, "
"фактически игнорируя остальные скрипты. Для ещё более быстрого завершения "
"работы [.filename]#/etc/rc.shutdown# передаёт команду [.filename]#faststop# "
"запускаемым скриптам, чтобы они пропускали предварительные проверки, "
"например, проверку pid-файла. Поскольку зависимые службы должны быть "
"остановлены до своих зависимостей, [.filename]#/etc/rc.shutdown# запускает "
-"скрипты в обратном порядке зависимостей. Если вы пишете настоящий скрипт "
-"[.filename]#rc.d#, стоит подумать, актуален ли он во время завершения работы "
+"скрипты в обратном порядке зависимостей. Если вы пишете настоящий скрипт [."
+"filename]#rc.d#, стоит подумать, актуален ли он во время завершения работы "
"системы. Например, если ваш скрипт выполняет свою работу только в ответ на "
"команду [.filename]#start#, то включать это ключевое слово не нужно. Однако "
"если ваш скрипт управляет службой, вероятно, стоит остановить её до того, "
@@ -1981,8 +1980,8 @@ msgstr ""
"демон, `frotz`, был запущен заранее. Однако `frotz` также является "
"опциональным, и man:rcorder[8] ничего не знает о таких деталях. К счастью, "
"наш скрипт имеет доступ ко всем переменным man:rc.conf[5]. Если "
-"`frotz_enable` имеет значение true, мы надеемся на лучшее и полагаемся на "
-"[.filename]#rc.d#, что `frotz` был запущен. В противном случае мы "
+"`frotz_enable` имеет значение true, мы надеемся на лучшее и полагаемся на [."
+"filename]#rc.d#, что `frotz` был запущен. В противном случае мы "
"принудительно проверяем статус `frotz`. Наконец, мы принудительно "
"устанавливаем зависимость от `frotz`, если обнаруживаем, что он не запущен. "
"`force_depend` выдаст предупреждение, так как его следует вызывать только в "
@@ -1998,8 +1997,8 @@ msgstr "Придание большей гибкости скрипту rc.d"
#: documentation/content/en/articles/rc-scripting/_index.adoc:736
msgid ""
"When invoked during startup or shutdown, an [.filename]#rc.d# script is "
-"supposed to act on the entire subsystem it is responsible for. E.g., "
-"[.filename]#/etc/rc.d/netif# should start or stop all network interfaces "
+"supposed to act on the entire subsystem it is responsible for. E.g., [."
+"filename]#/etc/rc.d/netif# should start or stop all network interfaces "
"described by man:rc.conf[5]. Either task can be uniquely indicated by a "
"single command argument such as `start` or `stop`. Between startup and "
"shutdown, [.filename]#rc.d# scripts help the admin to control the running "
@@ -2012,8 +2011,8 @@ msgid ""
"interface name."
msgstr ""
"При вызове во время запуска или завершения работы скрипт [.filename]#rc.d# "
-"должен воздействовать на всю подсистему, за которую он отвечает. Например, "
-"[.filename]#/etc/rc.d/netif# должен запускать или останавливать все сетевые "
+"должен воздействовать на всю подсистему, за которую он отвечает. Например, [."
+"filename]#/etc/rc.d/netif# должен запускать или останавливать все сетевые "
"интерфейсы, описанные в man:rc.conf[5]. Любая из этих задач может быть "
"однозначно указана единственным аргументом команды, таким как `start` или "
"`stop`. Между запуском и завершением работы скрипты [.filename]#rc.d# "
@@ -2022,8 +2021,8 @@ msgstr ""
"может добавить настройки нового сетевого интерфейса в man:rc.conf[5], а "
"затем запустить его, не затрагивая работу существующих интерфейсов. В "
"следующий раз администратору может потребоваться остановить отдельный "
-"сетевой интерфейс. В духе командной строки, соответствующий скрипт "
-"[.filename]#rc.d# требует дополнительного аргумента — имени интерфейса."
+"сетевой интерфейс. В духе командной строки, соответствующий скрипт [."
+"filename]#rc.d# требует дополнительного аргумента — имени интерфейса."
#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:739
@@ -2032,18 +2031,18 @@ msgid ""
"script's methods (within the system limits). Due to that, the changes in "
"the script itself can be minimal."
msgstr ""
-"К счастью, man:rc.subr[8] позволяет передавать любое количество аргументов "
-"(в пределах системных ограничений) методам скрипта. Благодаря этому "
-"изменения в самом скрипте могут быть минимальными."
+"К счастью, man:rc.subr[8] позволяет передавать любое количество аргументов ("
+"в пределах системных ограничений) методам скрипта. Благодаря этому изменения "
+"в самом скрипте могут быть минимальными."
#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:744
msgid ""
"How can man:rc.subr[8] gain access to the extra command-line arguments. "
"Should it just grab them directly? Not by any means. Firstly, an man:sh[1] "
-"function has no access to the positional parameters of its caller, but "
-"man:rc.subr[8] is just a sack of such functions. Secondly, the good manner "
-"of [.filename]#rc.d# dictates that it is for the main script to decide which "
+"function has no access to the positional parameters of its caller, but man:"
+"rc.subr[8] is just a sack of such functions. Secondly, the good manner of [."
+"filename]#rc.d# dictates that it is for the main script to decide which "
"arguments are to be passed to its methods."
msgstr ""
"Как man:rc.subr[8] может получить доступ к дополнительным аргументам "
@@ -2065,10 +2064,10 @@ msgid ""
msgstr ""
"Итак, подход, принятый в man:rc.subr[8], следующий: `run_rc_command` "
"передаёт все свои аргументы, кроме первого, в соответствующий метод в "
-"неизменном виде. Первый, опущенный аргумент — это имя самого метода: "
-"`start`, `stop` и т.д. Он будет удалён с помощью `shift` в `run_rc_command`, "
-"так что то, что было `$2` в оригинальной командной строке, будет "
-"представлено как `$1` в методе, и так далее."
+"неизменном виде. Первый, опущенный аргумент — это имя самого метода: `start`"
+", `stop` и т.д. Он будет удалён с помощью `shift` в `run_rc_command`, так "
+"что то, что было `$2` в оригинальной командной строке, будет представлено "
+"как `$1` в методе, и так далее."
#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:751
@@ -2434,8 +2433,8 @@ msgid ""
"(e.g., set inside man:rc.conf[5]), this needs to be handled by "
"``load_rc_config`` and ``run_rc_command`` instead of inside a precommand."
msgstr ""
-"Если настройка запуска/остановки зависит от переменных из rc-фреймворка "
-"(например, заданных в man:rc.conf[5]), это должно обрабатываться с помощью "
+"Если настройка запуска/остановки зависит от переменных из rc-фреймворка ("
+"например, заданных в man:rc.conf[5]), это должно обрабатываться с помощью "
"``load_rc_config`` и ``run_rc_command``, а не внутри precommand."
#. type: Plain text
@@ -2602,15 +2601,15 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:978
msgid ""
-"&#10122; and &#10123; make sure to set the name variable to the "
-"man:basename[1] of the script name. If the filename is [.filename]#/usr/"
-"local/etc/rc.d/dummy#, name is set to [.filename]#dummy#. This way changing "
-"the filename of the rc script changes automatically the content of the name "
+"&#10122; and &#10123; make sure to set the name variable to the man:"
+"basename[1] of the script name. If the filename is [.filename]#/usr/local/"
+"etc/rc.d/dummy#, name is set to [.filename]#dummy#. This way changing the "
+"filename of the rc script changes automatically the content of the name "
"variable."
msgstr ""
"&#10122; и &#10123; убедитесь, что переменная name установлена в значение "
-"man:basename[1] имени скрипта. Если имя файла — [.filename]#/usr/local/etc/"
-"rc.d/dummy#, то name будет установлено в [.filename]#dummy#. Таким образом, "
+"man:basename[1] имени скрипта. Если имя файла — [.filename]#/usr/local/etc/rc"
+".d/dummy#, то name будет установлено в [.filename]#dummy#. Таким образом, "
"изменение имени rc-скрипта автоматически изменит содержимое переменной name."
#. type: Plain text
@@ -2620,9 +2619,9 @@ msgid ""
"to enable this service based upon the filename of this script. In this "
"example this resolves to dummy_enable."
msgstr ""
-"&#10124; указывает имя переменной, которая используется в "
-"[.filename]#rc.conf# для включения этой службы на основе имени файла этого "
-"скрипта. В данном примере это преобразуется в dummy_enable."
+"&#10124; указывает имя переменной, которая используется в [.filename]#rc."
+"conf# для включения этой службы на основе имени файла этого скрипта. В "
+"данном примере это преобразуется в dummy_enable."
#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:983
@@ -2647,8 +2646,8 @@ msgid ""
"the underscore in front of _dummy_user to make it different from dummy_user "
"which can be set in [.filename]#rc.conf#)."
msgstr ""
-"&#10127; и &#10128; устанавливают переменные, внутренние для скрипта "
-"(обратите внимание на подчёркивание в начале _dummy_user, чтобы отличать её "
+"&#10127; и &#10128; устанавливают переменные, внутренние для скрипта ("
+"обратите внимание на подчёркивание в начале _dummy_user, чтобы отличать её "
"от dummy_user, которая может быть задана в [.filename]#rc.conf#)."
#. type: Plain text
@@ -2693,14 +2692,14 @@ msgid ""
"The above creates an instance of the dummy service with the name dummy_foo. "
"It does not use the config file [.filename]#/usr/local/etc/dummy.cfg# but "
"the config file [.filename]#/usr/local/etc/dummy_foo.cfg# (&#10128;), and it "
-"uses the PID file [.filename]#/var/run/dummy/dummy_foo.pid# instead of "
-"[.filename]#/var/run/dummy/dummy.pid#."
+"uses the PID file [.filename]#/var/run/dummy/dummy_foo.pid# instead of [."
+"filename]#/var/run/dummy/dummy.pid#."
msgstr ""
"Вышеприведенное создает экземпляр службы dummy с именем dummy_foo. Он "
"использует не файл конфигурации [.filename]#/usr/local/etc/dummy.cfg#, а "
"файл конфигурации [.filename]#/usr/local/etc/dummy_foo.cfg# (&#10128;), и "
-"использует PID-файл [.filename]#/var/run/dummy/dummy_foo.pid# вместо "
-"[.filename]#/var/run/dummy/dummy.pid#."
+"использует PID-файл [.filename]#/var/run/dummy/dummy_foo.pid# вместо [."
+"filename]#/var/run/dummy/dummy.pid#."
#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:1012
@@ -2714,8 +2713,8 @@ msgid ""
"update is installed."
msgstr ""
"Сервисы dummy и dummy_foo могут управляться независимо друг от друга, при "
-"этом скрипт запуска обновляется автоматически при обновлении пакета "
-"(благодаря символьной ссылке). Это не обновляет строку REQUIRE, поэтому нет "
+"этом скрипт запуска обновляется автоматически при обновлении пакета ("
+"благодаря символьной ссылке). Это не обновляет строку REQUIRE, поэтому нет "
"простого способа зависеть от конкретного экземпляра. Чтобы зависеть от "
"конкретного экземпляра в порядке запуска, необходимо создать копию вместо "
"использования символьной ссылки. Это предотвращает автоматическое применение "
@@ -2732,14 +2731,14 @@ msgstr "Дополнительная литература"
msgid ""
"[[lukem]]http://www.mewburn.net/luke/papers/rc.d.pdf[The original article by "
"Luke Mewburn] offers a general overview of [.filename]#rc.d# and detailed "
-"rationale for its design decisions. It provides insight on the whole "
-"[.filename]#rc.d# framework and its place in a modern BSD operating system."
+"rationale for its design decisions. It provides insight on the whole [."
+"filename]#rc.d# framework and its place in a modern BSD operating system."
msgstr ""
"[[lukem]]http://www.mewburn.net/luke/papers/rc.d.pdf[Оригинальная статья "
"Люка Мьюберна] предлагает общий обзор [.filename]#rc.d# и подробное "
"обоснование принятых при его проектировании решений. В ней представлено "
-"понимание всего фреймворка [.filename]#rc.d# и его места в современной BSD-"
-"системе."
+"понимание всего фреймворка [.filename]#rc.d# и его места в современной "
+"BSD-системе."
#. type: Plain text
#: documentation/content/en/articles/rc-scripting/_index.adoc:1021
@@ -2763,8 +2762,8 @@ msgid ""
"the [.filename]#/etc/rc.d# scripts were not written by angels, so they might "
"suffer from bugs and suboptimal design decisions. Now you can improve them!"
msgstr ""
-"Основным источником рабочих, жизненных примеров является [.filename]#/etc/"
-"rc.d# в работающей системе. Его содержимое легко и приятно читать, поскольку "
+"Основным источником рабочих, жизненных примеров является [.filename]#/etc/rc."
+"d# в работающей системе. Его содержимое легко и приятно читать, поскольку "
"большинство сложных моментов скрыто глубоко в man:rc.subr[8]. Однако "
"помните, что скрипты в [.filename]#/etc/rc.d# были написаны не ангелами, "
"поэтому они могут содержать ошибки и неоптимальные решения. Теперь вы можете "
diff --git a/documentation/content/ru/articles/serial-uart/_index.adoc b/documentation/content/ru/articles/serial-uart/_index.adoc
index 5b1233a256..9b3e9830dd 100644
--- a/documentation/content/ru/articles/serial-uart/_index.adoc
+++ b/documentation/content/ru/articles/serial-uart/_index.adoc
@@ -114,7 +114,7 @@ USART Universal Synchronous-Asynchronous Receiver/Transmitter — Универс
В стандарте RS232-C сигнал «Marking» (логическая `1`) представлен напряжением от -2 В до -12 В, а сигнал «Spacing» (логический `0`) — напряжением от 0 В до +12 В. Передатчик должен выдавать +12 В или -12 В, а приёмник должен учитывать возможные потери напряжения в длинных кабелях. Некоторые маломощные передатчики (например, в портативных компьютерах) иногда используют только +5 В и -5 В, но эти значения всё ещё допустимы для приёмника RS232-C при условии использования коротких кабелей.
-==== Cигнал Break в RS232-C
+==== Сигнал Break в RS232-C
RS232-C также определяет сигнал под названием `Break`, который вызывается передачей непрерывных значений Spacing (без стартовых или стоповых битов). Когда на линии данных отсутствует напряжение, считается, что линия передает `Break`.
diff --git a/documentation/content/ru/articles/serial-uart/_index.po b/documentation/content/ru/articles/serial-uart/_index.po
index bd93bb319b..229288e632 100644
--- a/documentation/content/ru/articles/serial-uart/_index.po
+++ b/documentation/content/ru/articles/serial-uart/_index.po
@@ -5,8 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-09-24 18:35+0300\n"
-"PO-Revision-Date: 2025-08-16 04:45+0000\n"
+"POT-Creation-Date: 2022-02-01 10:28-0300\n"
+"PO-Revision-Date: 2025-10-29 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/articlesserial-uart_index/ru/>\n"
@@ -18,11 +18,13 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/articles/serial-uart/_index.adoc:1
#, no-wrap
msgid "Detailed information about the use of serial ports and UART with FreeBSD"
-msgstr "Подробная информация об использовании последовательных портов и UART в FreeBSD"
+msgstr ""
+"Подробная информация об использовании последовательных портов и UART в "
+"FreeBSD"
#. type: Title =
#: documentation/content/en/articles/serial-uart/_index.adoc:1
@@ -367,8 +369,8 @@ msgid ""
msgstr ""
"В большинстве компьютерных систем UART подключен к схеме, которая генерирует "
"сигналы, соответствующие спецификации EIA RS232-C. Также существует стандарт "
-"CCITT под названием V.24, который отражает спецификации, включенные в RS232-"
-"C."
+"CCITT под названием V.24, который отражает спецификации, включенные в "
+"RS232-C."
#. type: Title ====
#: documentation/content/en/articles/serial-uart/_index.adoc:130
@@ -380,11 +382,11 @@ msgstr "Назначения битов RS232-C (метки и пробелы)"
#: documentation/content/en/articles/serial-uart/_index.adoc:134
msgid ""
"In RS232-C, a value of `1` is called a `Mark` and a value of `0` is called a "
-"`Space`. When a communication line is idle, the line is said to be "
-"\"Marking\", or transmitting continuous `1` values."
+"`Space`. When a communication line is idle, the line is said to be \"Marking"
+"\", or transmitting continuous `1` values."
msgstr ""
-"В стандарте RS232-C значение `1` называется `Маркер` (Mark), а значение `0` "
-"— `Пробел` (Space). Когда линия связи находится в состоянии покоя, говорят, "
+"В стандарте RS232-C значение `1` называется `Маркер` (Mark), а значение `0` —"
+" `Пробел` (Space). Когда линия связи находится в состоянии покоя, говорят, "
"что она \"маркирует\" (Marking), то есть передаёт непрерывные значения `1`."
#. type: Plain text
@@ -438,7 +440,7 @@ msgstr ""
#: documentation/content/en/articles/serial-uart/_index.adoc:146
#, no-wrap
msgid "RS232-C Break Signal"
-msgstr "Cигнал Break в RS232-C"
+msgstr "Сигнал Break в RS232-C"
#. type: Plain text
#: documentation/content/en/articles/serial-uart/_index.adoc:150
@@ -523,8 +525,8 @@ msgstr ""
"Разрывы не могут быть сгенерированы с перфоленты или из любого другого "
"байтового значения, поскольку байты всегда отправляются со стартовым и "
"стоповым битами. UART обычно способен генерировать непрерывный сигнал "
-"Spacing в ответ на специальную команду от главного управляющего устройства "
-"(процессора передачи)."
+"Spacing в ответ на специальную команду от главного управляющего устройства ("
+"процессора передачи)."
#. type: Title ====
#: documentation/content/en/articles/serial-uart/_index.adoc:170
@@ -545,8 +547,8 @@ msgid ""
msgstr ""
"Спецификация RS232-C определяет два типа оборудования: оконечное "
"оборудование данных (DTE — Data Terminal Equipment) и оборудование передачи "
-"данных (DCE — Data Carrier Equipment). Обычно устройство DTE — это терминал "
-"(или компьютер), а DCE — модем. На другом конце телефонной линии в разговоре "
+"данных (DCE — Data Carrier Equipment). Обычно устройство DTE — это терминал ("
+"или компьютер), а DCE — модем. На другом конце телефонной линии в разговоре "
"принимающий модем также является устройством DCE, а компьютер, подключённый "
"к этому модему, — устройством DTE. Устройство DCE принимает сигналы на тех "
"контактах, на которых устройство DTE передаёт, и наоборот."
@@ -1202,7 +1204,8 @@ msgstr "RSET"
#: documentation/content/en/articles/serial-uart/_index.adoc:343
#, no-wrap
msgid "Receiver Signal Element Timing"
-msgstr "Тактирование элементов сигнала приёмника (Receiver Signal Element Timing)"
+msgstr ""
+"Тактирование элементов сигнала приёмника (Receiver Signal Element Timing)"
#. type: Table
#: documentation/content/en/articles/serial-uart/_index.adoc:344
@@ -1961,7 +1964,9 @@ msgstr "DIP"
#: documentation/content/en/articles/serial-uart/_index.adoc:543
#, no-wrap
msgid "(dual inline package) through hole straight lead type"
-msgstr "(dual inline package — корпус с двусторонним расположением выводов) для сквозного монтажа с прямыми выводами"
+msgstr ""
+"(dual inline package — корпус с двусторонним расположением выводов) для "
+"сквозного монтажа с прямыми выводами"
#. type: Table
#: documentation/content/en/articles/serial-uart/_index.adoc:544
@@ -2027,12 +2032,12 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/serial-uart/_index.adoc:563
msgid ""
-"In internal modems, the modem designer will frequently emulate the 8250A/"
-"16450 with the modem microprocessor, and the emulated UART will frequently "
-"have a hidden buffer consisting of several hundred bytes. Due to the size "
-"of the buffer, these emulations can be as reliable as a 16550A in their "
-"ability to handle high speed data. However, most operating systems will "
-"still report that the UART is only a 8250A or 16450, and may not make "
+"In internal modems, the modem designer will frequently emulate the "
+"8250A/16450 with the modem microprocessor, and the emulated UART will "
+"frequently have a hidden buffer consisting of several hundred bytes. Due to "
+"the size of the buffer, these emulations can be as reliable as a 16550A in "
+"their ability to handle high speed data. However, most operating systems "
+"will still report that the UART is only a 8250A or 16450, and may not make "
"effective use of the extra buffering present in the emulated UART unless "
"special drivers are used."
msgstr ""
@@ -2262,7 +2267,8 @@ msgstr "Rockwell"
#: documentation/content/en/articles/serial-uart/_index.adoc:620
#, no-wrap
msgid "Reference modem with internal 16550 or an emulation (RC144DPi/C3000-25)"
-msgstr "Стандартный модем с внутренним 16550 или его эмуляцией (RC144DPi/C3000-25)"
+msgstr ""
+"Стандартный модем с внутренним 16550 или его эмуляцией (RC144DPi/C3000-25)"
#. type: Table
#: documentation/content/en/articles/serial-uart/_index.adoc:622
@@ -2420,11 +2426,10 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/serial-uart/_index.adoc:665
msgid ""
-"[.filename]#COM1# is located from 0x3f8 to 0x3ff and normally uses IRQ 4. "
-"[.filename]#COM2# is located from 0x2f8 to 0x2ff and normally uses IRQ 3. "
-"[.filename]#COM3# is located from 0x3e8 to 0x3ef and has no standardized "
-"IRQ. [.filename]#COM4# is located from 0x2e8 to 0x2ef and has no "
-"standardized IRQ."
+"[.filename]#COM1# is located from 0x3f8 to 0x3ff and normally uses IRQ 4. [."
+"filename]#COM2# is located from 0x2f8 to 0x2ff and normally uses IRQ 3. [."
+"filename]#COM3# is located from 0x3e8 to 0x3ef and has no standardized IRQ. "
+"[.filename]#COM4# is located from 0x2e8 to 0x2ef and has no standardized IRQ."
msgstr ""
"[.filename]#COM1# находится в диапазоне от 0x3f8 до 0x3ff и обычно "
"использует IRQ 4. [.filename]#COM2# находится в диапазоне от 0x2f8 до 0x2ff "
@@ -2475,7 +2480,8 @@ msgid ""
msgstr ""
"Регистр передачи данных (THR).\n"
"\n"
-"Информация, записанная в этот порт, обрабатывается как слова данных и передается через UART."
+"Информация, записанная в этот порт, обрабатывается как слова данных и "
+"передается через UART."
#. type: Table
#: documentation/content/en/articles/serial-uart/_index.adoc:685
@@ -2493,7 +2499,8 @@ msgid ""
msgstr ""
"Регистр буфера приема (RBR).\n"
"\n"
-"Любые слова данных, полученные UART из последовательного соединения, доступны для чтения хостом через этот порт."
+"Любые слова данных, полученные UART из последовательного соединения, "
+"доступны для чтения хостом через этот порт."
#. type: Table
#: documentation/content/en/articles/serial-uart/_index.adoc:693
@@ -2512,7 +2519,10 @@ msgid ""
msgstr ""
"Младший байт защелки делителя (DLL — Divisor Latch LSB)\n"
"\n"
-"Это значение будет поделено от основного входного тактового сигнала (в IBM PC основной тактовый сигнал равен 1,8432 МГц), и полученный тактовый сигнал будет определять скорость передачи UART. Этот регистр содержит биты с 0 по 7 делителя."
+"Это значение будет поделено от основного входного тактового сигнала (в IBM "
+"PC основной тактовый сигнал равен 1,8432 МГц), и полученный тактовый сигнал "
+"будет определять скорость передачи UART. Этот регистр содержит биты с 0 по 7 "
+"делителя."
#. type: Table
#: documentation/content/en/articles/serial-uart/_index.adoc:700
@@ -2531,7 +2541,10 @@ msgid ""
msgstr ""
"Старший байт защелки делителя (DLH — Divisor Latch MSB)\n"
"\n"
-"Это значение будет разделено от основного входного тактового сигнала (в IBM PC основной тактовый сигнал равен 1,8432 МГц), и полученный тактовый сигнал будет определять скорость передачи данных UART. Этот регистр содержит биты с 8 по 15 делителя."
+"Это значение будет разделено от основного входного тактового сигнала (в IBM "
+"PC основной тактовый сигнал равен 1,8432 МГц), и полученный тактовый сигнал "
+"будет определять скорость передачи данных UART. Этот регистр содержит биты с "
+"8 по 15 делителя."
#. type: Table
#: documentation/content/en/articles/serial-uart/_index.adoc:709
@@ -2557,15 +2570,32 @@ msgid ""
msgstr ""
"Регистр разрешения прерываний (IER) +\n"
"\n"
-"UART 8250/16450/1655 классифицирует события на четыре категории. Каждая категория может быть настроена на генерацию прерывания при возникновении любого из событий. UART 8250/16450/16550 генерирует единый внешний сигнал прерывания независимо от того, сколько событий в разрешённых категориях произошло. Задача главного процессора — обработать прерывание и затем опросить разрешённые категории прерываний (обычно прерывания разрешены для всех категорий), чтобы определить истинную причину(ы) прерывания. +\n"
+"UART 8250/16450/1655 классифицирует события на четыре категории. Каждая "
+"категория может быть настроена на генерацию прерывания при возникновении "
+"любого из событий. UART 8250/16450/16550 генерирует единый внешний сигнал "
+"прерывания независимо от того, сколько событий в разрешённых категориях "
+"произошло. Задача главного процессора — обработать прерывание и затем "
+"опросить разрешённые категории прерываний (обычно прерывания разрешены для "
+"всех категорий), чтобы определить истинную причину(ы) прерывания. +\n"
"Бит 7 -> Зарезервирован, всегда 0. +\n"
"Бит 6 -> Зарезервирован, всегда 0. +\n"
"Бит 5 -> Зарезервирован, всегда 0. +\n"
"Бит 4 -> Зарезервирован, всегда 0. +\n"
-"Бит 3 -> Разрешение прерывания по состоянию модема (EDSSI). Установка этого бита в \"1\" позволяет UART генерировать прерывание при изменении состояния одной или нескольких линий статуса. +\n"
-"Бит 2 -> Разрешение прерывания по состоянию линии приёмника (ELSI). Установка этого бита в \"1\" приводит к генерации прерывания UART при обнаружении ошибки (или сигнала BREAK) во входящих данных. +\n"
-"Бит 1 -> Разрешение прерывания по опустошению регистра передатчика (ETBEI). Установка этого бита в \"1\" приводит к генерации прерывания UART, когда в UART появляется место для одного или более дополнительных символов, предназначенных для передачи. +\n"
-"Бит 0 -> Разрешение прерывания по наличию принятых данных (ERBFI). Установка этого бита в \"1\" приводит к генерации прерывания UART, когда UART принял достаточное количество символов для превышения порога FIFO, или истекло время ожидания FIFO (устаревшие данные), или принят одиночный символ при отключённом FIFO."
+"Бит 3 -> Разрешение прерывания по состоянию модема (EDSSI). Установка этого "
+"бита в \"1\" позволяет UART генерировать прерывание при изменении состояния "
+"одной или нескольких линий статуса. +\n"
+"Бит 2 -> Разрешение прерывания по состоянию линии приёмника (ELSI). "
+"Установка этого бита в \"1\" приводит к генерации прерывания UART при "
+"обнаружении ошибки (или сигнала BREAK) во входящих данных. +\n"
+"Бит 1 -> Разрешение прерывания по опустошению регистра передатчика (ETBEI). "
+"Установка этого бита в \"1\" приводит к генерации прерывания UART, когда в "
+"UART появляется место для одного или более дополнительных символов, "
+"предназначенных для передачи. +\n"
+"Бит 0 -> Разрешение прерывания по наличию принятых данных (ERBFI). Установка "
+"этого бита в \"1\" приводит к генерации прерывания UART, когда UART принял "
+"достаточное количество символов для превышения порога FIFO, или истекло "
+"время ожидания FIFO (устаревшие данные), или принят одиночный символ при "
+"отключённом FIFO."
#. type: Table
#: documentation/content/en/articles/serial-uart/_index.adoc:722
@@ -2601,11 +2631,13 @@ msgid ""
"Bit 1 -> Receiver FIFO Reset. When a \"1\" is written to this bit, the contents of the FIFO are discarded. Any word currently being assembled in the shift register will be received intact. +\n"
"Bit 0 -> 16550 FIFO Enable. When set, both the transmit and receive FIFOs are enabled. Any contents in the holding register, shift registers or FIFOs are lost when FIFOs are enabled or disabled. +"
msgstr ""
-"Регистр управления FIFO (FCR — FIFO Control Register) (Этот порт отсутствует в UART 8250 и 16450.) +\n"
+"Регистр управления FIFO (FCR — FIFO Control Register) (Этот порт отсутствует "
+"в UART 8250 и 16450.) +\n"
"Бит 7 -> Бит триггера приемника #1 +\n"
"Бит 6 -> Бит триггера приемника #0 +\n"
"\n"
-"Эти два бита определяют, при каком количестве данных приемник должен генерировать прерывание, когда FIFO активен. +\n"
+"Эти два бита определяют, при каком количестве данных приемник должен "
+"генерировать прерывание, когда FIFO активен. +\n"
"7 6 Количество слов перед генерацией прерывания +\n"
"0 0 1 +\n"
"0 1 4 +\n"
@@ -2613,10 +2645,18 @@ msgstr ""
"1 1 14 +\n"
"Бит 5 -> Зарезервирован, всегда 0. +\n"
"Бит 4 -> Зарезервирован, всегда 0. +\n"
-"Бит 3 -> Выбор режима DMA. Если бит 0 установлен в \"1\" (FIFO включены), установка этого бита изменяет работу сигналов -RXRDY и -TXRDY с режима 0 на режим 1. +\n"
-"Бит 2 -> Сброс передающего FIFO. При записи \"1\" в этот бит содержимое FIFO очищается. Любое слово, которое передается в данный момент, будет отправлено полностью. Эта функция полезна для прерывания передачи. +\n"
-"Бит 1 -> Сброс приемного FIFO. При записи \"1\" в этот бит содержимое FIFO очищается. Любое слово, которое в данный момент собирается в сдвиговом регистре, будет принято полностью. +\n"
-"Бит 0 -> Включение FIFO 16550. При установке этого бита активируются как передающий, так и приемный FIFO. Любое содержимое в регистре хранения, сдвиговых регистрах или FIFO теряется при включении или отключении FIFO. +"
+"Бит 3 -> Выбор режима DMA. Если бит 0 установлен в \"1\" (FIFO включены), "
+"установка этого бита изменяет работу сигналов -RXRDY и -TXRDY с режима 0 на "
+"режим 1. +\n"
+"Бит 2 -> Сброс передающего FIFO. При записи \"1\" в этот бит содержимое FIFO "
+"очищается. Любое слово, которое передается в данный момент, будет отправлено "
+"полностью. Эта функция полезна для прерывания передачи. +\n"
+"Бит 1 -> Сброс приемного FIFO. При записи \"1\" в этот бит содержимое FIFO "
+"очищается. Любое слово, которое в данный момент собирается в сдвиговом "
+"регистре, будет принято полностью. +\n"
+"Бит 0 -> Включение FIFO 16550. При установке этого бита активируются как "
+"передающий, так и приемный FIFO. Любое содержимое в регистре хранения, "
+"сдвиговых регистрах или FIFO теряется при включении или отключении FIFO. +"
#. type: Table
#: documentation/content/en/articles/serial-uart/_index.adoc:742
@@ -2649,16 +2689,25 @@ msgstr ""
"Бит 6 -> FIFO включены. На UART 8250/16450 этот бит равен нулю. +\n"
"Бит 5 -> Зарезервирован, всегда 0. +\n"
"Бит 4 -> Зарезервирован, всегда 0. +\n"
-"Бит 3 -> Бит идентификатора прерывания №2. На UART 8250/16450 этот бит равен нулю. +\n"
+"Бит 3 -> Бит идентификатора прерывания №2. На UART 8250/16450 этот бит равен "
+"нулю. +\n"
"Бит 2 -> Бит идентификатора прерывания №1 +\n"
-"Бит 1 -> Бит идентификатора прерывания №0.Эти три бита объединяются для указания категории события, вызвавшего текущее прерывание. Эти категории имеют приоритеты, поэтому, если несколько категорий событий происходят одновременно, UART сообщит о более важных событиях первыми, и хост должен обрабатывать события в порядке их поступления. Все события, вызвавшие текущее прерывание, должны быть обработаны до генерации новых прерываний. (Это ограничение архитектуры ПК.) +\n"
+"Бит 1 -> Бит идентификатора прерывания №0.Эти три бита объединяются для "
+"указания категории события, вызвавшего текущее прерывание. Эти категории "
+"имеют приоритеты, поэтому, если несколько категорий событий происходят "
+"одновременно, UART сообщит о более важных событиях первыми, и хост должен "
+"обрабатывать события в порядке их поступления. Все события, вызвавшие "
+"текущее прерывание, должны быть обработаны до генерации новых прерываний. ("
+"Это ограничение архитектуры ПК.) +\n"
"2 1 0 Приоритет Описание +\n"
"0 1 1 Первый Принятая ошибка (OE, PE, BI или FE) +\n"
"0 1 0 Второй Доступны принятые данные +\n"
-"1 1 0 Второй Идентификация уровня триггера (Устаревшие данные в буфере приема) +\n"
+"1 1 0 Второй Идентификация уровня триггера (Устаревшие данные в буфере "
+"приема) +\n"
"0 0 1 Третий Передатчик готов принять больше данных (THRE) +\n"
"0 0 0 Четвертый Изменение состояния модема (-CTS, -DSR, -RI или -DCD) +\n"
-"Бит 0 -> Бит ожидания прерывания. Если этот бит установлен в \"0\", то как минимум одно прерывание ожидает обработки."
+"Бит 0 -> Бит ожидания прерывания. Если этот бит установлен в \"0\", то как "
+"минимум одно прерывание ожидает обработки."
#. type: Table
#: documentation/content/en/articles/serial-uart/_index.adoc:759
@@ -2697,12 +2746,28 @@ msgid ""
"1 1 8 Data Bits +"
msgstr ""
"Регистр управления линией (LCR — Line Control Register) +\n"
-"Бит 7 -> Бит доступа к защелке делителя (DLAB). При установке доступ к регистру передачи/приема данных (THR/RBR) и регистру разрешения прерываний (IER) отключается. Любой доступ к этим портам перенаправляется к регистрам защелки делителя. Установка этого бита, загрузка регистров делителя и сброс DLAB должны выполняться при отключенных прерываниях. +\n"
-"Бит 6 -> Установка прерывания. При установке в \"1\" передатчик начинает передавать непрерывный интервал (Spacing), пока этот бит не будет сброшен в \"0\". Это переопределяет любые передаваемые биты символов. +\n"
-"Бит 5 -> Фиксированный бит четности. При включенной проверке четности установка этого бита приводит к тому, что бит четности всегда будет \"1\" или \"0\" в зависимости от значения бита 4.\n"
-"Бит 4 -> Выбор четности (EPS). При включенной проверке четности и если бит 5 равен \"0\", установка этого бита приводит к использованию и ожиданию четной четности. В противном случае используется нечетная четность. +\n"
-"Бит 3 -> Разрешение проверки четности (PEN). При установке в \"1\" бит четности вставляется между последним битом данных и стоповым битом. UART также ожидает наличие бита четности в принимаемых данных. +\n"
-"Бит 2 -> Количество стоповых битов (STB). Если установлен в \"1\" и используются 5-битные слова данных, передается и ожидается 1.5 стоповых бита в каждом слове данных. Для 6, 7 и 8-битных слов данных передается и ожидается 2 стоповых бита. Если этот бит сброшен в \"0\", используется один стоповый бит в каждом слове данных. +\n"
+"Бит 7 -> Бит доступа к защелке делителя (DLAB). При установке доступ к "
+"регистру передачи/приема данных (THR/RBR) и регистру разрешения прерываний "
+"(IER) отключается. Любой доступ к этим портам перенаправляется к регистрам "
+"защелки делителя. Установка этого бита, загрузка регистров делителя и сброс "
+"DLAB должны выполняться при отключенных прерываниях. +\n"
+"Бит 6 -> Установка прерывания. При установке в \"1\" передатчик начинает "
+"передавать непрерывный интервал (Spacing), пока этот бит не будет сброшен в "
+"\"0\". Это переопределяет любые передаваемые биты символов. +\n"
+"Бит 5 -> Фиксированный бит четности. При включенной проверке четности "
+"установка этого бита приводит к тому, что бит четности всегда будет \"1\" "
+"или \"0\" в зависимости от значения бита 4.\n"
+"Бит 4 -> Выбор четности (EPS). При включенной проверке четности и если бит 5 "
+"равен \"0\", установка этого бита приводит к использованию и ожиданию четной "
+"четности. В противном случае используется нечетная четность. +\n"
+"Бит 3 -> Разрешение проверки четности (PEN). При установке в \"1\" бит "
+"четности вставляется между последним битом данных и стоповым битом. UART "
+"также ожидает наличие бита четности в принимаемых данных. +\n"
+"Бит 2 -> Количество стоповых битов (STB). Если установлен в \"1\" и "
+"используются 5-битные слова данных, передается и ожидается 1.5 стоповых бита "
+"в каждом слове данных. Для 6, 7 и 8-битных слов данных передается и "
+"ожидается 2 стоповых бита. Если этот бит сброшен в \"0\", используется один "
+"стоповый бит в каждом слове данных. +\n"
"Бит 1 -> Бит выбора длины слова #1 (WLSB1) +\n"
"Бит 0 -> Бит выбора длины слова #0 (WLSB0) +\n"
"Вместе эти биты определяют количество битов в каждом слове данных. +\n"
@@ -2736,11 +2801,19 @@ msgstr ""
"Бит 7 -> Зарезервирован, всегда 0. +\n"
"Бит 6 -> Зарезервирован, всегда 0. +\n"
"Бит 5 -> Зарезервирован, всегда 0. +\n"
-"Бит 4 -> Режим петли (Loop-Back). При установке в \"1\" передатчик и приёмник UART соединяются внутри для диагностики. Также выходы управления модемом UART подключаются к его входам: CTS к RTS, DTR к DSR, OUT1 к RI, а OUT2 к DCD. +\n"
-"Бит 3 -> OUT2. Вспомогательный выход, который процессор может установить в высокий или низкий уровень. В адаптере IBM PC (и большинстве клонов) OUT2 используется для отключения сигнала прерывания от UART 8250/16450/16550. +\n"
-"Бит 2 -> OUT1. Вспомогательный выход, который процессор может установить в высокий или низкий уровень. На адаптере IBM PC не используется. +\n"
-"Бит 1 -> Запрос на передачу (RTS). При установке в \"1\" выход линии -RTS UART переходит в низкий уровень (активное состояние). +\n"
-"Бит 0 -> Готовность терминала данных (DTR). При установке в \"1\" выход линии -DTR UART переходит в низкий уровень (активное состояние). +"
+"Бит 4 -> Режим петли (Loop-Back). При установке в \"1\" передатчик и "
+"приёмник UART соединяются внутри для диагностики. Также выходы управления "
+"модемом UART подключаются к его входам: CTS к RTS, DTR к DSR, OUT1 к RI, а "
+"OUT2 к DCD. +\n"
+"Бит 3 -> OUT2. Вспомогательный выход, который процессор может установить в "
+"высокий или низкий уровень. В адаптере IBM PC (и большинстве клонов) OUT2 "
+"используется для отключения сигнала прерывания от UART 8250/16450/16550. +\n"
+"Бит 2 -> OUT1. Вспомогательный выход, который процессор может установить в "
+"высокий или низкий уровень. На адаптере IBM PC не используется. +\n"
+"Бит 1 -> Запрос на передачу (RTS). При установке в \"1\" выход линии -RTS "
+"UART переходит в низкий уровень (активное состояние). +\n"
+"Бит 0 -> Готовность терминала данных (DTR). При установке в \"1\" выход "
+"линии -DTR UART переходит в низкий уровень (активное состояние). +"
#. type: Table
#: documentation/content/en/articles/serial-uart/_index.adoc:789
@@ -2763,14 +2836,29 @@ msgid ""
"Bit 0 -> Data Ready (DR) One or more words are in the receive FIFO that the host may read. A word must be completely received and moved from the shift register into the FIFO (or holding register for 8250/16450 designs) before this bit is set."
msgstr ""
"Регистр состояния линии (LSR — Line Status Register) +\n"
-"Бит 7 -> Ошибка в FIFO приемника. На UART 8250/16450 этот бит равен нулю. Этот бит устанавливается в «1», когда любой из байтов в FIFO имеет одно или несколько из следующих условий ошибки: PE, FE или BI. +\n"
-"Бит 6 -> Передатчик пуст (TEMT). Когда установлен в «1», в FIFO передатчика или сдвиговом регистре передатчика не осталось слов. Передатчик полностью бездействует. +\n"
-"Бит 5 -> Регистр хранения передатчика пуст (THRE). Когда установлен в «1», в FIFO (или регистре хранения) теперь есть место для передачи как минимум одного дополнительного слова. Передатчик может все еще передавать данные, когда этот бит установлен в «1». +\n"
+"Бит 7 -> Ошибка в FIFO приемника. На UART 8250/16450 этот бит равен нулю. "
+"Этот бит устанавливается в «1», когда любой из байтов в FIFO имеет одно или "
+"несколько из следующих условий ошибки: PE, FE или BI. +\n"
+"Бит 6 -> Передатчик пуст (TEMT). Когда установлен в «1», в FIFO передатчика "
+"или сдвиговом регистре передатчика не осталось слов. Передатчик полностью "
+"бездействует. +\n"
+"Бит 5 -> Регистр хранения передатчика пуст (THRE). Когда установлен в «1», в "
+"FIFO (или регистре хранения) теперь есть место для передачи как минимум "
+"одного дополнительного слова. Передатчик может все еще передавать данные, "
+"когда этот бит установлен в «1». +\n"
"Бит 4 -> Прерывание по Break (BI). Приемник обнаружил сигнал Break. +\n"
-"Бит 3 -> Ошибка кадрирования (FE). Обнаружен стартовый бит, но стоповый бит не появился в ожидаемое время. Принятое слово, вероятно, искажено. +\n"
-"Бит 2 -> Ошибка четности (PE). Бит четности для принятого слова был некорректен. +\n"
-"Бит 1 -> Ошибка переполнения (OE). Было получено новое слово, но в буфере приема не было места. Вновь поступившее слово в сдвиговом регистре отбрасывается. На UART 8250/16450 слово в регистре хранения отбрасывается, а вновь поступившее слово помещается в регистр хранения. +\n"
-"Бит 0 -> Данные готовы (DR). Одно или несколько слов находятся в FIFO приемника, которые хост может прочитать. Слово должно быть полностью принято и перемещено из сдвигового регистра в FIFO (или регистр хранения для 8250/16450) до того, как этот бит будет установлен."
+"Бит 3 -> Ошибка кадрирования (FE). Обнаружен стартовый бит, но стоповый бит "
+"не появился в ожидаемое время. Принятое слово, вероятно, искажено. +\n"
+"Бит 2 -> Ошибка четности (PE). Бит четности для принятого слова был "
+"некорректен. +\n"
+"Бит 1 -> Ошибка переполнения (OE). Было получено новое слово, но в буфере "
+"приема не было места. Вновь поступившее слово в сдвиговом регистре "
+"отбрасывается. На UART 8250/16450 слово в регистре хранения отбрасывается, а "
+"вновь поступившее слово помещается в регистр хранения. +\n"
+"Бит 0 -> Данные готовы (DR). Одно или несколько слов находятся в FIFO "
+"приемника, которые хост может прочитать. Слово должно быть полностью принято "
+"и перемещено из сдвигового регистра в FIFO (или регистр хранения для 8250/"
+"16450) до того, как этот бит будет установлен."
#. type: Table
#: documentation/content/en/articles/serial-uart/_index.adoc:801
@@ -2793,14 +2881,24 @@ msgid ""
"Bit 0 -> Delta Clear To Send (DCTS). Set to \"1\" if the -CTS line has changed state one more time since the last time the MSR was read by the host. +"
msgstr ""
"Регистр состояния модема (MSR — Modem Status Register) +\n"
-"Бит 7 -> Обнаружение несущей данных (DCD). Отражает состояние линии DCD на UART. +\n"
+"Бит 7 -> Обнаружение несущей данных (DCD). Отражает состояние линии DCD на "
+"UART. +\n"
"Бит 6 -> Индикатор вызова (RI). Отражает состояние линии RI на UART. +\n"
-"Бит 5 -> Готовность передатчика данных (DSR). Отражает состояние линии DSR на UART. +\n"
+"Бит 5 -> Готовность передатчика данных (DSR). Отражает состояние линии DSR "
+"на UART. +\n"
"Бит 4 -> Готовность к приёму (CTS). Отражает состояние линии CTS на UART. +\n"
-"Бит 3 -> Изменение состояния обнаружения несущей данных (DDCD). Устанавливается в \"1\", если линия -DCD изменила состояние ещё раз с момента последнего чтения MSR хостом. +\n"
-"Бит 2 -> Фронт сигнала вызова (TERI). Устанавливается в \"1\", если линия -RI перешла из низкого уровня в высокий с момента последнего чтения MSR хостом. +\n"
-"Бит 1 -> Изменение состояния готовности передатчика данных (DDSR). Устанавливается в \"1\", если линия -DSR изменила состояние ещё раз с момента последнего чтения MSR хостом. +\n"
-"Бит 0 -> Изменение состояния готовности к приёму (DCTS). Устанавливается в \"1\", если линия -CTS изменила состояние ещё раз с момента последнего чтения MSR хостом. +"
+"Бит 3 -> Изменение состояния обнаружения несущей данных (DDCD). "
+"Устанавливается в \"1\", если линия -DCD изменила состояние ещё раз с "
+"момента последнего чтения MSR хостом. +\n"
+"Бит 2 -> Фронт сигнала вызова (TERI). Устанавливается в \"1\", если линия -"
+"RI перешла из низкого уровня в высокий с момента последнего чтения MSR "
+"хостом. +\n"
+"Бит 1 -> Изменение состояния готовности передатчика данных (DDSR). "
+"Устанавливается в \"1\", если линия -DSR изменила состояние ещё раз с "
+"момента последнего чтения MSR хостом. +\n"
+"Бит 0 -> Изменение состояния готовности к приёму (DCTS). Устанавливается в "
+"\"1\", если линия -CTS изменила состояние ещё раз с момента последнего "
+"чтения MSR хостом. +"
#. type: Table
#: documentation/content/en/articles/serial-uart/_index.adoc:812
@@ -2812,7 +2910,10 @@ msgstr "+0x07"
#: documentation/content/en/articles/serial-uart/_index.adoc:814
#, no-wrap
msgid "Scratch Register (SCR). This register performs no function in the UART. Any value can be written by the host to this location and read by the host later on."
-msgstr "Регистр Scratch (SCR — Scratch Register). Этот регистр не выполняет никакой функции в UART. Хост может записать любое значение в это место и позднее считать его."
+msgstr ""
+"Регистр Scratch (SCR — Scratch Register). Этот регистр не выполняет никакой "
+"функции в UART. Хост может записать любое значение в это место и позднее "
+"считать его."
#. type: Title ===
#: documentation/content/en/articles/serial-uart/_index.adoc:816
@@ -2920,8 +3021,8 @@ msgid ""
"Several multiport cards are supported as well. See the man:sio[4] manual "
"page for detailed technical documentation."
msgstr ""
-"Драйвер [.filename]#sio# обеспечивает поддержку интерфейсов связи EIA "
-"RS-232C (CCITT V.24) на основе NS8250, NS16450, NS16550 и NS16550A. Также "
+"Драйвер [.filename]#sio# обеспечивает поддержку интерфейсов связи EIA RS-"
+"232C (CCITT V.24) на основе NS8250, NS16450, NS16550 и NS16550A. Также "
"поддерживаются несколько многопортовых карт. Подробную техническую "
"документацию смотрите на man:sio[4]."
@@ -3331,11 +3432,11 @@ msgstr "Поддержка дешёвых многоканальных UART-ка
#. type: delimited block = 4
#: documentation/content/en/articles/serial-uart/_index.adoc:991
msgid ""
-"_Contributed by Helge Oldach_ "
-"mailto:hmo@sep.hamburg.com[hmo@sep.hamburg.com], September 1999"
+"_Contributed by Helge Oldach_ mailto:hmo@sep.hamburg.com[hmo@sep.hamburg."
+"com], September 1999"
msgstr ""
-"_Предоставлено Хельге Ольдахом_ "
-"mailto:hmo@sep.hamburg.com[hmo@sep.hamburg.com], сентябрь 1999 года"
+"_Предоставлено Хельге Ольдахом_ mailto:hmo@sep.hamburg.com[hmo@sep.hamburg."
+"com], сентябрь 1999 года"
#. type: delimited block = 4
#: documentation/content/en/articles/serial-uart/_index.adoc:993
@@ -3351,9 +3452,9 @@ msgstr ""
#: documentation/content/en/articles/serial-uart/_index.adoc:997
msgid ""
"Usually the only option to support these kind of boards is to use a distinct "
-"IRQ for each port. For example, if your CPU board has an on-board "
-"[.filename]#COM1# port (aka [.filename]#sio0#-I/O address 0x3F8 and IRQ 4) "
-"and you have an extension board with two UARTs, you will commonly need to "
+"IRQ for each port. For example, if your CPU board has an on-board [."
+"filename]#COM1# port (aka [.filename]#sio0#-I/O address 0x3F8 and IRQ 4) and "
+"you have an extension board with two UARTs, you will commonly need to "
"configure them as [.filename]#COM2# (aka [.filename]#sio1#-I/O address 0x2F8 "
"and IRQ 3), and the third port (aka [.filename]#sio2#) as I/O 0x3E8 and IRQ "
"5. Obviously this is a waste of IRQ resources, as it should be basically "
@@ -3434,20 +3535,19 @@ msgstr ""
msgid ""
"You need to decouple the IRQ drivers for the two UARTs, so that the IRQ line "
"of the board only goes up if (and only if) one of the UARTs asserts a IRQ, "
-"and stays low otherwise. The solution was proposed by Joerg Wunsch "
-"mailto:j@ida.interface-business.de[j@ida.interface-business.de]: To solder "
-"up a wired-or consisting of two diodes (Germanium or Schottky-types strongly "
+"and stays low otherwise. The solution was proposed by Joerg Wunsch mailto:"
+"j@ida.interface-business.de[j@ida.interface-business.de]: To solder up a "
+"wired-or consisting of two diodes (Germanium or Schottky-types strongly "
"preferred) and a 1 kOhm resistor. Here is the schematic, starting from the "
"4 by 3 jumper field above:"
msgstr ""
"Вам необходимо разделить драйверы прерываний для двух UART, чтобы линия "
"прерывания платы поднималась только тогда (и только тогда), когда один из "
"UART вызывает прерывание, и оставалась низкой в противном случае. Решение "
-"было предложено Йоргом Вуншем mailto:j@ida.interface-"
-"business.de[j@ida.interface-business.de]: припаять монтажную схему "
-"\"монтажное ИЛИ\", состоящую из двух диодов (предпочтительно германиевых или "
-"типа Шоттки) и резистора на 1 кОм. Вот схема, начиная с контактного поля 4x3 "
-"выше:"
+"было предложено Йоргом Вуншем mailto:j@ida.interface-business.de[j@ida."
+"interface-business.de]: припаять монтажную схему \"монтажное ИЛИ\", "
+"состоящую из двух диодов (предпочтительно германиевых или типа Шоттки) и "
+"резистора на 1 кОм. Вот схема, начиная с контактного поля 4x3 выше:"
#. type: delimited block . 4
#: documentation/content/en/articles/serial-uart/_index.adoc:1034
@@ -3522,9 +3622,9 @@ msgid ""
"and you surely want a `5` low nibble.) With kernel verbose mode turned on "
"this should yield something similar to this:"
msgstr ""
-"Обратите внимание, что настройка `flags` для [.filename]#sio1# и "
-"[.filename]#sio2# действительно важна; подробности смотрите в man:sio[4]. "
-"(Обычно `2` в атрибуте \"flags\" относится к [.filename]#sio#`2`, который "
+"Обратите внимание, что настройка `flags` для [.filename]#sio1# и [."
+"filename]#sio2# действительно важна; подробности смотрите в man:sio[4]. ("
+"Обычно `2` в атрибуте \"flags\" относится к [.filename]#sio#`2`, который "
"содержит IRQ, и вам наверняка потребуется нижний ниббл `5`.) При включённом "
"режиме подробного вывода ядра это должно дать что-то похожее на следующее:"
@@ -3680,8 +3780,8 @@ msgid ""
"A single machine can have up to 4 host cards. The following host cards are "
"supported:"
msgstr ""
-"Специальные мультипортные карты Specialix SI/XIO и SX используют драйвер "
-"[.filename]#si#. На одной машине может быть установлено до 4 хост-карт. "
+"Специальные мультипортные карты Specialix SI/XIO и SX используют драйвер [."
+"filename]#si#. На одной машине может быть установлено до 4 хост-карт. "
"Поддерживаются следующие хост-карты:"
#. type: delimited block = 4
@@ -3810,18 +3910,18 @@ msgid ""
"The following step, is not necessary if you are using man:devfs[5] in "
"FreeBSD 5._X_."
msgstr ""
-"Следующий шаг не обязателен, если вы используете man:devfs[5] в FreeBSD "
-"5._X_."
+"Следующий шаг не обязателен, если вы используете man:devfs[5] в FreeBSD 5."
+"_X_."
#. type: Plain text
#: documentation/content/en/articles/serial-uart/_index.adoc:1165
msgid ""
-"After rebooting with the new kernel, you need to make the device nodes in "
-"[.filename]#/dev#. The [.filename]#MAKEDEV# script will take care of this "
-"for you. Count how many total ports you have and type:"
+"After rebooting with the new kernel, you need to make the device nodes in [."
+"filename]#/dev#. The [.filename]#MAKEDEV# script will take care of this for "
+"you. Count how many total ports you have and type:"
msgstr ""
-"После перезагрузки с новым ядром необходимо создать файлы устройств в "
-"[.filename]#/dev#. Скрипт [.filename]#MAKEDEV# выполнит эту задачу за вас. "
+"После перезагрузки с новым ядром необходимо создать файлы устройств в [."
+"filename]#/dev#. Скрипт [.filename]#MAKEDEV# выполнит эту задачу за вас. "
"Подсчитайте общее количество портов и введите:"
#. type: delimited block . 4
diff --git a/documentation/content/ru/articles/solid-state/_index.adoc b/documentation/content/ru/articles/solid-state/_index.adoc
index 19d1fada4f..028bc68677 100644
--- a/documentation/content/ru/articles/solid-state/_index.adoc
+++ b/documentation/content/ru/articles/solid-state/_index.adoc
@@ -57,9 +57,9 @@ toc::[]
[[intro]]
== Твердотельные дисковые устройства
-Эта статья будет ограничиваться рассмотрением твердотельных дисковых устройств, которые делаются на основе флэш-памяти. Флэш-память является твердотельным (здесь нет движущихся частей) запоминающим устройством, которое является энергонезависимым (данные остаются в памяти даже после отключения всех источников питания). Флэш-память может быть нечувствительной к сильным физическим воздействиям и достаточно быстра (решения на основе флэш-памяти, описываемые в этой статье, гораздо медленнее, чем диски EIDE для операций записи, и гораздо быстрее их в случае выполнения операций чтения). Одним из очень важных свойств флэш-памяти, различные варианты которого будут рассмотрены далее в этой статье, является то, что каждый сектор имеет ограниченные возможности по перезаписыванию. Вы можете только записывать, стирать и снова записывать на сектор флэш-памяти определенное количество раз до того, как сектор станет полностью неработоспособным. Хотя многие продукты на основе флэш-памяти автоматически перенаправляют испорченные блоки, а некоторые даже распределяют операции записи по всему модулю, фактом является наличие ограничения на количество операций записи, которые могут выполняться с устройством. Современные модули имеют характеристики от 1,000,000 до 10,000,000 циклов записи на сектор. Эти характеристики могут зависеть от температуры рабочей среды.
+Эта статья будет ограничиваться рассмотрением твердотельных дисковых устройств, которые делаются на основе флеш-памяти. Флеш-память является твердотельным (здесь нет движущихся частей) запоминающим устройством, которое является энергонезависимым (данные остаются в памяти даже после отключения всех источников питания). Флеш-память может быть нечувствительной к сильным физическим воздействиям и достаточно быстра (решения на основе флеш-памяти, описываемые в этой статье, гораздо медленнее, чем диски EIDE для операций записи, и гораздо быстрее их в случае выполнения операций чтения). Одним из очень важных свойств флеш-памяти, различные варианты которого будут рассмотрены далее в этой статье, является то, что каждый сектор имеет ограниченные возможности по перезаписыванию. Вы можете только записывать, стирать и снова записывать на сектор флеш-памяти определенное количество раз до того, как сектор станет полностью неработоспособным. Хотя многие продукты на основе флеш-памяти автоматически перенаправляют испорченные блоки, а некоторые даже распределяют операции записи по всему модулю, фактом является наличие ограничения на количество операций записи, которые могут выполняться с устройством. Современные модули имеют характеристики от 1,000,000 до 10,000,000 циклов записи на сектор. Эти характеристики могут зависеть от температуры рабочей среды.
-В частности, мы обсудим компактные модули флэш-памяти, совместимые со стандартом ATA, которые стали весьма популярными в качестве носителя данных для цифровых камер. Особый интерес представляет тот факт, что они соответствуют шине IDE по контактам и совместимы с набором команд ATA. Таким образом, при помощи очень простого и дешевого адаптера такие устройства могут подключаться непосредственно к шине IDE компьютера. Если поступить таким образом, то такие операционные системы, как FreeBSD, распознают диск как обычный винчестер (весьма маленький).
+В частности, мы обсудим компактные модули флеш-памяти, совместимые со стандартом ATA, которые стали весьма популярными в качестве носителя данных для цифровых камер. Особый интерес представляет тот факт, что они соответствуют шине IDE по контактам и совместимы с набором команд ATA. Таким образом, при помощи очень простого и дешевого адаптера такие устройства могут подключаться непосредственно к шине IDE компьютера. Если поступить таким образом, то такие операционные системы, как FreeBSD, распознают диск как обычный винчестер (весьма маленький).
Существуют и другие решения для твердотельных дисков, но их стоимость, безвестность и сравнительная сложность использования выводят их за рамки этой статьи.
@@ -68,7 +68,7 @@ toc::[]
Для тех, кто создает встраиваемую систему FreeBSD, интерес представляют несколько параметров ядра.
-Все встраиваемые системы FreeBSD, которые используют флэш-память в качестве системного диска, заинтересованы в использовании дисков в памяти и файловых систем в памяти. Из-за ограниченного количества циклов записи, которые можно выполнить с флэш-памятью, диск и файловые системы на нем будут, скорее всего, монтироваться в режиме доступа только для чтения. В таком случае файловые системы типа [.filename]#/tmp# и [.filename]#/var# монтируются как файловые системы в памяти для того, чтобы позволить системе создать журналы и обновить счетчики и временные файлы. Файловые системы в памяти являются критическим компонентом успешной работы FreeBSD на твердотельных устройствах.
+Все встраиваемые системы FreeBSD, которые используют флеш-память в качестве системного диска, заинтересованы в использовании дисков в памяти и файловых систем в памяти. Из-за ограниченного количества циклов записи, которые можно выполнить с флеш-памятью, диск и файловые системы на нем будут, скорее всего, монтироваться в режиме доступа только для чтения. В таком случае файловые системы типа [.filename]#/tmp# и [.filename]#/var# монтируются как файловые системы в памяти для того, чтобы позволить системе создать журналы и обновить счетчики и временные файлы. Файловые системы в памяти являются критическим компонентом успешной работы FreeBSD на твердотельных устройствах.
Вы должны удостовериться, что в конфигурационном файле вашего ядра присутствуют следующие строки:
@@ -91,7 +91,7 @@ varsize=8192
Запомните, что по умолчанию это значение указано в секторах.
-Факт использования файловой системы [.filename]#/var# в режиме чтения и записи является важным признаком, так как раздел [.filename]#/# (и любые другие разделы, которые могут находиться на флэш-носителе) должен монтироваться в режиме только для чтения. Вспомните, что в <<intro>> мы касались ограничений флэш-памяти - особенно ограничений, касающихся возможностей записи. Важно не монтировать файловые системы на флэш-носителях в режимах чтения и записи, и важность отказа от файла подкачки не может быть переоценена. Файл подкачки на загруженной системе может пережечь кусок флэш-носителя менее чем за год. Частое журналирование и создание временных файлов приводят к тому же результату. Поэтому, кроме удаления записи `swap` из вашего файла [.filename]#/etc/fstab#, вы должны также изменить поле параметров каждой файловой системы на `ro` таким образом:
+Факт использования файловой системы [.filename]#/var# в режиме чтения и записи является важным признаком, так как раздел [.filename]#/# (и любые другие разделы, которые могут находиться на флеш-носителе) должен монтироваться в режиме только для чтения. Вспомните, что в разделе crossref:solid-state[intro, Твердотельные дисковые устройства] мы касались ограничений флеш-памяти - особенно ограничений, касающихся возможностей записи. Важно не монтировать файловые системы на флеш-носителях в режимах чтения и записи, и важность отказа от файла подкачки не может быть переоценена. Файл подкачки на загруженной системе может пережечь кусок флеш-носителя менее чем за год. Частое журналирование и создание временных файлов приводят к тому же результату. Поэтому, кроме удаления записи `swap` из вашего файла [.filename]#/etc/fstab#, вы должны также изменить поле параметров каждой файловой системы на `ro` таким образом:
[.programlisting]
....
@@ -99,7 +99,7 @@ varsize=8192
/dev/ad0s1a / ufs ro 1 1
....
-В результате этих изменений в среднестатистической системе несколько приложений немедленно перестанут работать. Например, cron не будет нормально запускаться в результате отсутствия таблиц для него в каталоге [.filename]#/var#, созданном [.filename]#/etc/rc.d/var#, а syslog и dhcp будут испытывать проблемы из-за доступа файловой системы только для чтения, а также отсутствия записей в [.filename]#/var#, который был создан скриптом [.filename]#/etc/rc.d/var#. Хотя эти проблемы являются временными и обсуждаются вместе с решением проблем с запуском распространенных программных пакетов, в <<strategies>>.
+В результате этих изменений в среднестатистической системе несколько приложений немедленно перестанут работать. Например, cron не будет нормально запускаться в результате отсутствия таблиц для него в каталоге [.filename]#/var#, созданном [.filename]#/etc/rc.d/var#, а syslog и dhcp будут испытывать проблемы из-за доступа файловой системы только для чтения, а также отсутствия записей в [.filename]#/var#, который был создан скриптом [.filename]#/etc/rc.d/var#. Хотя эти проблемы являются временными и обсуждаются вместе с решением проблем с запуском распространенных программных пакетов в разделе crossref:solid-state[strategies, Стратегии работы с системой для случаев небольших и доступных только для чтения файловых систем].
Важно помнить, что файловая система, которая была смонтирована только для чтения при помощи файла [.filename]#/etc/fstab#, в любой момент может быть сделана доступной по чтению и записи выдачей команды:
@@ -117,18 +117,18 @@ varsize=8192
== Создание файловой системы с нуля
-Так как совместимые с ATA компактные флэш-карты распознаются во FreeBSD как обычные жесткие диски IDE, то теоретически вы можете установить FreeBSD по сети при помощи дискет kern и mfsroot или с компакт-диска.
+Так как совместимые с ATA компактные флеш-карты распознаются во FreeBSD как обычные жесткие диски IDE, то теоретически вы можете установить FreeBSD по сети при помощи дискет kern и mfsroot или с компакт-диска.
-Однако даже маленькая установка FreeBSD при помощи обычных процедур установки может привести к созданию системы размером, превышающим 200 мегабайт. Так как большинство людей используют устройства флэш-памяти меньшего размера (128 мегабайт считается весьма большим - 32 или даже 16 мегабайт используются гораздо чаще), то установка обычным образом не подходит-просто на диске нет места даже для самой минимальной установки.
+Однако даже маленькая установка FreeBSD при помощи обычных процедур установки может привести к созданию системы размером, превышающим 200 мегабайт. Так как большинство людей используют устройства флеш-памяти меньшего размера (128 мегабайт считается весьма большим - 32 или даже 16 мегабайт используются гораздо чаще), то установка обычным образом не подходит-просто на диске нет места даже для самой минимальной установки.
-Самым простым способом обойти это ограничение на объем является установка FreeBSD обычным образом на обычный жесткий диск. После окончания установки, обрежьте операционную систему до размера, который помещается на ваш флэш-носитель, а затем полностью заархивируйте файловую систему. Следующие шаги поведут вас через процесс подготовки части флэш-памяти для вашей заархивированной файловой системы. Запомните, что из-за того, что обычная установка не выполнялась, такие операции, как разбиение на разделы, разметка, создание файловой системы и так далее должны быть выполнены вручную. Кроме дискет kern и mfsroot вам также нужно воспользоваться дискетой fixit.
+Самым простым способом обойти это ограничение на объем является установка FreeBSD обычным образом на обычный жесткий диск. После окончания установки, обрежьте операционную систему до размера, который помещается на ваш флеш-носитель, а затем полностью заархивируйте файловую систему. Следующие шаги поведут вас через процесс подготовки части флеш-памяти для вашей заархивированной файловой системы. Запомните, что из-за того, что обычная установка не выполнялась, такие операции, как разбиение на разделы, разметка, создание файловой системы и так далее должны быть выполнены вручную. Кроме дискет kern и mfsroot вам также нужно воспользоваться дискетой fixit.
[.procedure]
====
-. Разбиение вашего флэш-носителя на разделы
+. Разбиение вашего флеш-носителя на разделы
+
-После загрузки при помощи дискет kern и mfsroot, выберите пункт `custom` из меню установки. Из следующего пункта меню выберите `partition`. В меню работы с разделами вы должны удалить все существующие разделы при помощи клавиши kbd:[d]. После удаления всех имеющихся разделов создайте раздел при помощи клавиши kbd:[c] и согласитесь с предлагаемым по умолчанию размером раздела. Когда вы будете опрошены на предмет типа раздела, удостоверьтесь, что значение типа равно `165`. Теперь запишите эту таблицу разделов на диск, нажав клавишу kbd:[w] (на этом экране эта опция скрыта). Если вы используете компактную флэш-карту, совместимую с ATA, вы должны выбрать FreeBSD Boot Manager. Теперь нажмите клавишу kbd:[q] для выхода из меню работы с разделами. Должно быть выдано еще раз меню для выбора менеджера загрузки - повторите то, что вы выбирали ранее.
-. Создание файловых систем на вашем устройстве флэш-памяти
+После загрузки при помощи дискет kern и mfsroot, выберите пункт `custom` из меню установки. Из следующего пункта меню выберите `partition`. В меню работы с разделами вы должны удалить все существующие разделы при помощи клавиши kbd:[d]. После удаления всех имеющихся разделов создайте раздел при помощи клавиши kbd:[c] и согласитесь с предлагаемым по умолчанию размером раздела. Когда вы будете опрошены на предмет типа раздела, удостоверьтесь, что значение типа равно `165`. Теперь запишите эту таблицу разделов на диск, нажав клавишу kbd:[w] (на этом экране эта опция скрыта). Если вы используете компактную флеш-карту, совместимую с ATA, вы должны выбрать FreeBSD Boot Manager. Теперь нажмите клавишу kbd:[q] для выхода из меню работы с разделами. Должно быть выдано еще раз меню для выбора менеджера загрузки - повторите то, что вы выбирали ранее.
+. Создание файловых систем на вашем устройстве флеш-памяти
+
Выйдите из меню установки custom, и из главного меню установки выберите пункт `fixit`. После входа в режим работы fixit, введите следующую команду:
+
@@ -152,16 +152,16 @@ a: 123456 0 4.2BSD 0 0
# newfs /dev/ad0a
....
-. Размещение вашей файловой системы на флэш-носителе
+. Размещение вашей файловой системы на флеш-носителе
+
-Смонтируйте только что подготовленный флэш-носитель:
+Смонтируйте только что подготовленный флеш-носитель:
+
[source, shell]
....
# mount /dev/ad0a /flash
....
+
-Подключите эту машину к сети, чтобы можно было перенести наш tar-файл и распаковать его в файловую систему на флэш-носителе. Вот пример того, как это можно сделать:
+Подключите эту машину к сети, чтобы можно было перенести наш tar-файл и распаковать его в файловую систему на флеш-носителе. Вот пример того, как это можно сделать:
+
[source, shell]
....
@@ -169,7 +169,7 @@ a: 123456 0 4.2BSD 0 0
# route add default 192.168.0.1
....
+
-Теперь, когда машина находится в сети, перепишите ваш tar-файл. Здесь вы можете столкнуться с некоторой проблемой - если объем вашей флэш-памяти равен, к примеру, 128 мегабайтам, а ваш tar-файл превышает 64 мегабайта, то вы не можете одновременно разместить tar-файл на флэш-носителе и распаковать его - вам не хватит места. Одним из решений этой проблемы, если вы используете FTP, является распаковка файла во время его передачи по FTP. Если вы передаете файл именно так, то вы никогда не получите на диске одновременно архивный файл и его содержимое:
+Теперь, когда машина находится в сети, перепишите ваш tar-файл. Здесь вы можете столкнуться с некоторой проблемой - если объем вашей флеш-памяти равен, к примеру, 128 мегабайтам, а ваш tar-файл превышает 64 мегабайта, то вы не можете одновременно разместить tar-файл на флеш-носителе и распаковать его - вам не хватит места. Одним из решений этой проблемы, если вы используете FTP, является распаковка файла во время его передачи по FTP. Если вы передаете файл именно так, то вы никогда не получите на диске одновременно архивный файл и его содержимое:
+
[source, shell]
....
@@ -183,7 +183,7 @@ ftp> get tarfile.tar "| tar xvf -"
ftp> get tarfile.tar "| zcat | tar xvf -"
....
+
-После того, как вы получили содержимое вашей заархивированной файловой системы на файловой системе флэш-памяти, вы можете размонтировать флэш-память и выполнить перезагрузку:
+После того, как вы получили содержимое вашей заархивированной файловой системы на файловой системе флеш-памяти, вы можете размонтировать флеш-память и выполнить перезагрузку:
+
[source, shell]
....
@@ -198,7 +198,7 @@ ftp> get tarfile.tar "| zcat | tar xvf -"
[[strategies]]
== Стратегии работы с системой для случаев небольших и доступных только для чтения файловых систем
-В <<ro-fs>> было указано, что файловая система [.filename]#/var#, создаваемая скриптом [.filename]#/etc/rc.d/var#, и наличие корневой файловой системы, доступной только для чтения, приводят к проблемам при работе многих распространенных программных пакетов, используемых во FreeBSD. В этой статье будут даны рекомендации по настройке нормальной работы cron и syslog, установке портов и веб-сервера Apache.
+В разделе crossref:solid-state[ro-fs, Подсистема `rc` и файловые системы в режиме только чтения] было указано, что файловая система [.filename]#/var#, создаваемая скриптом [.filename]#/etc/rc.d/var#, и наличие корневой файловой системы, доступной только для чтения, приводят к проблемам при работе многих распространенных программных пакетов, используемых во FreeBSD. В этой статье будут даны рекомендации по настройке нормальной работы cron и syslog, установке портов и веб-сервера Apache.
=== Cron
@@ -218,11 +218,11 @@ ftp> get tarfile.tar "| zcat | tar xvf -"
=== Установка портов
-Перед тем, как обсудить изменения, которые нужно сделать для успешного использования дерева портов, необходимо напомнить о том, что ваши файловые системы на флэш-носителях доступны только для чтения. Поэтому вам нужно временно монтировать их в режиме чтения и записи, используя параметры командной строки, как это показано в crossref:solid-state[ro-fs, Подсистема `rc` и файловые системы в режиме только чтения]. Вы всегда должны перемонтировать эти файловые системы в режим только для чтения после окончания работ - излишние записи на флеш носитель могут значительно сократить его срок эксплуатации.
+Перед тем, как обсудить изменения, которые нужно сделать для успешного использования дерева портов, необходимо напомнить о том, что ваши файловые системы на флеш-носителях доступны только для чтения. Поэтому вам нужно временно монтировать их в режиме чтения и записи, используя параметры командной строки, как это показано в crossref:solid-state[ro-fs, Подсистема `rc` и файловые системы в режиме только чтения]. Вы всегда должны перемонтировать эти файловые системы в режим только для чтения после окончания работ - излишние записи на флеш носитель могут значительно сократить его срок эксплуатации.
-Чтобы можно было войти в каталог с портами и успешно выполнить команду make `install`, необходимо создать каталог для пакаджей в файловой системе, не располагающейся в памяти, где будут храниться пакаджи между перезагрузками. Так как для установки пакаджа в любом случае требуется монтирование ваших файловых систем для чтения и записи, имеет смысл выделить область флэш-носителя также и для записи информации о пакадже.
+Чтобы можно было войти в каталог с портами и успешно выполнить команду make `install`, необходимо создать каталог для пакетов в файловой системе, не располагающейся в памяти, где будут храниться пакеты между перезагрузками. Так как для установки пакета в любом случае требуется монтирование ваших файловых систем для чтения и записи, имеет смысл выделить область флеш-носителя также и для записи информации о пакете.
-Прежде всего создайте каталог с базой данных о пакаджах. Обычно это каталог [.filename]#/var/db/pkg#, но мы не можем разместить базу именно здесь, так как она исчезнет после перезагрузки системы.
+Прежде всего создайте каталог с базой данных о пакетах. Обычно это каталог [.filename]#/var/db/pkg#, но мы не можем разместить базу именно здесь, так как она исчезнет после перезагрузки системы.
[source, shell]
....
@@ -236,16 +236,16 @@ ftp> get tarfile.tar "| zcat | tar xvf -"
# ln -s /etc/pkg /var/db/pkg
....
-Теперь каждый раз при монтировании ваших файловых систем для чтения и записи и установки пакаджа, команда make `install` будет работать, а информация о пакадже будет успешно записана в каталог [.filename]#/etc/pkg# (так как файловая система будет в это время смонтирована для чтения и записи), который всегда будет доступным операционной системе как [.filename]#/var/db/pkg#.
+Теперь каждый раз при монтировании ваших файловых систем для чтения и записи и установки пакета, команда make `install` будет работать, а информация о пакете будет успешно записана в каталог [.filename]#/etc/pkg# (так как файловая система будет в это время смонтирована для чтения и записи), который всегда будет доступным операционной системе как [.filename]#/var/db/pkg#.
=== Веб-сервер Apache
[NOTE]
====
-Шаги, описанные в этой части статьи, необходимо выполнить лишь в том случае, если Apache настроен сохранять свой pid или лог файл вне каталога [.filename]#/var#. С настройками по умолчанию Apache формирует свой pid файл в [.filename]#/var/run/httpd.pid#, а лог файлы - в [.filename]#/var/log#.
+Шаги, описанные в этой части статьи, необходимо выполнить лишь в том случае, если Apache настроен сохранять свой pid или журнал вне каталога [.filename]#/var#. С настройками по умолчанию Apache формирует свой pid файл в [.filename]#/var/run/httpd.pid#, а файлы журналов - в [.filename]#/var/log#.
====
-Далее в статье подразумевается, что Apache сохраняет свои лог файлы в каталог [.filename]#apache_log_dir# вне каталога [.filename]#/var#. Когда этот каталог расположен на файловой системе, смонтированной в режиме только для чтения, Apache не сможет сохранять лог файлы, что в свою очередь может вызывать проблемы в работе веб-сервера. В таком случае необходимо добавить новый каталог к списку каталогов из [.filename]#/etc/rc.d/var# для их создания в каталоге [.filename]#/var# и связать [.filename]#apache_log_dir# с [.filename]#/var/log/apache#. Нужно также задать права доступа и владельца нового каталога.
+Далее в статье подразумевается, что Apache сохраняет свои файлы журналов в каталог [.filename]#apache_log_dir# вне каталога [.filename]#/var#. Когда этот каталог расположен на файловой системе, смонтированной в режиме только для чтения, Apache не сможет сохранять файлы журналов, что в свою очередь может вызывать проблемы в работе веб-сервера. В таком случае необходимо добавить новый каталог к списку каталогов из [.filename]#/etc/rc.d/var# для их создания в каталоге [.filename]#/var# и связать [.filename]#apache_log_dir# с [.filename]#/var/log/apache#. Нужно также задать права доступа и владельца нового каталога.
Сначала добавьте каталог `log/apache` к списку каталогов, создаваемых скриптом [.filename]#/etc/rc.d/var#.
diff --git a/documentation/content/ru/articles/solid-state/_index.po b/documentation/content/ru/articles/solid-state/_index.po
index 12db5644aa..6add6f6eb4 100644
--- a/documentation/content/ru/articles/solid-state/_index.po
+++ b/documentation/content/ru/articles/solid-state/_index.po
@@ -5,8 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-09-24 18:41+0300\n"
-"PO-Revision-Date: 2025-07-05 04:45+0000\n"
+"POT-Creation-Date: 2024-12-29 08:30-0500\n"
+"PO-Revision-Date: 2025-10-29 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/articlessolid-state_index/ru/>\n"
@@ -18,7 +18,7 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/articles/solid-state/_index.adoc:1
#, no-wrap
msgid "The use of solid state disk devices in FreeBSD"
@@ -111,19 +111,19 @@ msgid ""
"environment."
msgstr ""
"Эта статья будет ограничиваться рассмотрением твердотельных дисковых "
-"устройств, которые делаются на основе флэш-памяти. Флэш-память является "
+"устройств, которые делаются на основе флеш-памяти. Флеш-память является "
"твердотельным (здесь нет движущихся частей) запоминающим устройством, "
"которое является энергонезависимым (данные остаются в памяти даже после "
-"отключения всех источников питания). Флэш-память может быть нечувствительной "
+"отключения всех источников питания). Флеш-память может быть нечувствительной "
"к сильным физическим воздействиям и достаточно быстра (решения на основе "
-"флэш-памяти, описываемые в этой статье, гораздо медленнее, чем диски EIDE "
+"флеш-памяти, описываемые в этой статье, гораздо медленнее, чем диски EIDE "
"для операций записи, и гораздо быстрее их в случае выполнения операций "
-"чтения). Одним из очень важных свойств флэш-памяти, различные варианты "
+"чтения). Одним из очень важных свойств флеш-памяти, различные варианты "
"которого будут рассмотрены далее в этой статье, является то, что каждый "
"сектор имеет ограниченные возможности по перезаписыванию. Вы можете только "
-"записывать, стирать и снова записывать на сектор флэш-памяти определенное "
+"записывать, стирать и снова записывать на сектор флеш-памяти определенное "
"количество раз до того, как сектор станет полностью неработоспособным. Хотя "
-"многие продукты на основе флэш-памяти автоматически перенаправляют "
+"многие продукты на основе флеш-памяти автоматически перенаправляют "
"испорченные блоки, а некоторые даже распределяют операции записи по всему "
"модулю, фактом является наличие ограничения на количество операций записи, "
"которые могут выполняться с устройством. Современные модули имеют "
@@ -141,7 +141,7 @@ msgid ""
"computer. Once implemented in this manner, operating systems such as "
"FreeBSD see the device as a normal hard disk (albeit small)."
msgstr ""
-"В частности, мы обсудим компактные модули флэш-памяти, совместимые со "
+"В частности, мы обсудим компактные модули флеш-памяти, совместимые со "
"стандартом ATA, которые стали весьма популярными в качестве носителя данных "
"для цифровых камер. Особый интерес представляет тот факт, что они "
"соответствуют шине IDE по контактам и совместимы с набором команд ATA. Таким "
@@ -187,10 +187,10 @@ msgid ""
"counters and temporary files. Memory filesystems are a critical component "
"to a successful solid state FreeBSD implementation."
msgstr ""
-"Все встраиваемые системы FreeBSD, которые используют флэш-память в качестве "
+"Все встраиваемые системы FreeBSD, которые используют флеш-память в качестве "
"системного диска, заинтересованы в использовании дисков в памяти и файловых "
"систем в памяти. Из-за ограниченного количества циклов записи, которые можно "
-"выполнить с флэш-памятью, диск и файловые системы на нем будут, скорее "
+"выполнить с флеш-памятью, диск и файловые системы на нем будут, скорее "
"всего, монтироваться в режиме доступа только для чтения. В таком случае "
"файловые системы типа [.filename]#/tmp# и [.filename]#/var# монтируются как "
"файловые системы в памяти для того, чтобы позволить системе создать журналы "
@@ -210,7 +210,9 @@ msgstr ""
#: documentation/content/en/articles/solid-state/_index.adoc:92
#, no-wrap
msgid "options MD_ROOT # md device usable as a potential root device\n"
-msgstr "options MD_ROOT # md device usable as a potential root device\n"
+msgstr ""
+"options MD_ROOT # md device usable as a potential root "
+"device\n"
#. type: Title ==
#: documentation/content/en/articles/solid-state/_index.adoc:95
@@ -224,16 +226,16 @@ msgid ""
"The post-boot initialization of an embedded FreeBSD system is controlled by "
"[.filename]#/etc/rc.initdiskless#."
msgstr ""
-"Инициализация встраиваемой системы FreeBSD после загрузки управляется "
-"[.filename]#/etc/rc.initdiskless#."
+"Инициализация встраиваемой системы FreeBSD после загрузки управляется [."
+"filename]#/etc/rc.initdiskless#."
#. type: Plain text
#: documentation/content/en/articles/solid-state/_index.adoc:102
msgid ""
"[.filename]#/etc/rc.d/var# mounts [.filename]#/var# as a memory filesystem, "
-"makes a configurable list of directories in [.filename]#/var# with the "
-"man:mkdir[1] command, and changes modes on some of those directories. In "
-"the execution of [.filename]#/etc/rc.d/var#, one other [.filename]#rc.conf# "
+"makes a configurable list of directories in [.filename]#/var# with the man:"
+"mkdir[1] command, and changes modes on some of those directories. In the "
+"execution of [.filename]#/etc/rc.d/var#, one other [.filename]#rc.conf# "
"variable comes into play - `varsize`. A [.filename]#/var# partition is "
"created by [.filename]#/etc/rc.d/var# based on the value of this variable in "
"[.filename]#rc.conf#:"
@@ -269,18 +271,19 @@ msgid ""
"the importance of not using a swap file, cannot be overstated. A swap file "
"on a busy system can burn through a piece of flash media in less than one "
"year. Heavy logging or temporary file creation and destruction can do the "
-"same. Therefore, in addition to removing the `swap` entry from your "
-"[.filename]#/etc/fstab#, you should also change the Options field for each "
+"same. Therefore, in addition to removing the `swap` entry from your [."
+"filename]#/etc/fstab#, you should also change the Options field for each "
"filesystem to `ro` as follows:"
msgstr ""
"Факт использования файловой системы [.filename]#/var# в режиме чтения и "
"записи является важным признаком, так как раздел [.filename]#/# (и любые "
-"другие разделы, которые могут находиться на флэш-носителе) должен "
-"монтироваться в режиме только для чтения. Вспомните, что в <<intro>> мы "
-"касались ограничений флэш-памяти - особенно ограничений, касающихся "
-"возможностей записи. Важно не монтировать файловые системы на флэш-носителях "
-"в режимах чтения и записи, и важность отказа от файла подкачки не может быть "
-"переоценена. Файл подкачки на загруженной системе может пережечь кусок флэш-"
+"другие разделы, которые могут находиться на флеш-носителе) должен "
+"монтироваться в режиме только для чтения. Вспомните, что в разделе crossref"
+":solid-state[intro, Твердотельные дисковые устройства] мы касались "
+"ограничений флеш-памяти - особенно ограничений, касающихся возможностей "
+"записи. Важно не монтировать файловые системы на флеш-носителях в режимах "
+"чтения и записи, и важность отказа от файла подкачки не может быть "
+"переоценена. Файл подкачки на загруженной системе может пережечь кусок флеш-"
"носителя менее чем за год. Частое журналирование и создание временных файлов "
"приводят к тому же результату. Поэтому, кроме удаления записи `swap` из "
"вашего файла [.filename]#/etc/fstab#, вы должны также изменить поле "
@@ -293,7 +296,8 @@ msgid ""
"# Device Mountpoint FStype Options Dump Pass#\n"
"/dev/ad0s1a / ufs ro 1 1\n"
msgstr ""
-"# Device Mountpoint FStype Options Dump Pass#\n"
+"# Device Mountpoint FStype Options Dump Pass#"
+"\n"
"/dev/ad0s1a / ufs ro 1 1\n"
#. type: Plain text
@@ -301,23 +305,25 @@ msgstr ""
msgid ""
"A few applications in the average system will immediately begin to fail as a "
"result of this change. For instance, cron will not run properly as a result "
-"of missing cron tabs in the [.filename]#/var# created by [.filename]#/etc/"
-"rc.d/var#, and syslog and dhcp will encounter problems as well as a result "
-"of the read-only filesystem and missing items in the [.filename]#/var# that "
-"[.filename]#/etc/rc.d/var# has created. These are only temporary problems "
+"of missing cron tabs in the [.filename]#/var# created by [.filename]#/etc/rc."
+"d/var#, and syslog and dhcp will encounter problems as well as a result of "
+"the read-only filesystem and missing items in the [.filename]#/var# that [."
+"filename]#/etc/rc.d/var# has created. These are only temporary problems "
"though, and are addressed, along with solutions to the execution of other "
"common software packages in crossref:solid-state[strategies, System "
"Strategies for Small and Read Only Environments]."
msgstr ""
"В результате этих изменений в среднестатистической системе несколько "
"приложений немедленно перестанут работать. Например, cron не будет нормально "
-"запускаться в результате отсутствия таблиц для него в каталоге [.filename]#/"
-"var#, созданном [.filename]#/etc/rc.d/var#, а syslog и dhcp будут испытывать "
-"проблемы из-за доступа файловой системы только для чтения, а также "
-"отсутствия записей в [.filename]#/var#, который был создан скриптом "
-"[.filename]#/etc/rc.d/var#. Хотя эти проблемы являются временными и "
+"запускаться в результате отсутствия таблиц для него в каталоге [."
+"filename]#/var#, созданном [.filename]#/etc/rc.d/var#, а syslog и dhcp будут "
+"испытывать проблемы из-за доступа файловой системы только для чтения, а "
+"также отсутствия записей в [.filename]#/var#, который был создан скриптом [."
+"filename]#/etc/rc.d/var#. Хотя эти проблемы являются временными и "
"обсуждаются вместе с решением проблем с запуском распространенных "
-"программных пакетов, в <<strategies>>."
+"программных пакетов в разделе crossref:solid-state[strategies, Стратегии "
+"работы с системой для случаев небольших и доступных только для чтения "
+"файловых систем]."
#. type: Plain text
#: documentation/content/en/articles/solid-state/_index.adoc:130
@@ -361,7 +367,7 @@ msgid ""
"hard drives, you could theoretically install FreeBSD from the network using "
"the kern and mfsroot floppies or from a CD."
msgstr ""
-"Так как совместимые с ATA компактные флэш-карты распознаются во FreeBSD как "
+"Так как совместимые с ATA компактные флеш-карты распознаются во FreeBSD как "
"обычные жесткие диски IDE, то теоретически вы можете установить FreeBSD по "
"сети при помощи дискет kern и mfsroot или с компакт-диска."
@@ -377,7 +383,7 @@ msgid ""
msgstr ""
"Однако даже маленькая установка FreeBSD при помощи обычных процедур "
"установки может привести к созданию системы размером, превышающим 200 "
-"мегабайт. Так как большинство людей используют устройства флэш-памяти "
+"мегабайт. Так как большинство людей используют устройства флеш-памяти "
"меньшего размера (128 мегабайт считается весьма большим - 32 или даже 16 "
"мегабайт используются гораздо чаще), то установка обычным образом не "
"подходит-просто на диске нет места даже для самой минимальной установки."
@@ -397,9 +403,9 @@ msgid ""
msgstr ""
"Самым простым способом обойти это ограничение на объем является установка "
"FreeBSD обычным образом на обычный жесткий диск. После окончания установки, "
-"обрежьте операционную систему до размера, который помещается на ваш флэш-"
+"обрежьте операционную систему до размера, который помещается на ваш флеш-"
"носитель, а затем полностью заархивируйте файловую систему. Следующие шаги "
-"поведут вас через процесс подготовки части флэш-памяти для вашей "
+"поведут вас через процесс подготовки части флеш-памяти для вашей "
"заархивированной файловой системы. Запомните, что из-за того, что обычная "
"установка не выполнялась, такие операции, как разбиение на разделы, "
"разметка, создание файловой системы и так далее должны быть выполнены "
@@ -409,7 +415,7 @@ msgstr ""
#. type: delimited block = 4
#: documentation/content/en/articles/solid-state/_index.adoc:159
msgid "Partitioning Your Flash Media Device"
-msgstr "Разбиение вашего флэш-носителя на разделы"
+msgstr "Разбиение вашего флеш-носителя на разделы"
#. type: delimited block = 4
#: documentation/content/en/articles/solid-state/_index.adoc:169
@@ -434,7 +440,7 @@ msgstr ""
"раздела. Когда вы будете опрошены на предмет типа раздела, удостоверьтесь, "
"что значение типа равно `165`. Теперь запишите эту таблицу разделов на диск, "
"нажав клавишу kbd:[w] (на этом экране эта опция скрыта). Если вы используете "
-"компактную флэш-карту, совместимую с ATA, вы должны выбрать FreeBSD Boot "
+"компактную флеш-карту, совместимую с ATA, вы должны выбрать FreeBSD Boot "
"Manager. Теперь нажмите клавишу kbd:[q] для выхода из меню работы с "
"разделами. Должно быть выдано еще раз меню для выбора менеджера загрузки - "
"повторите то, что вы выбирали ранее."
@@ -442,7 +448,7 @@ msgstr ""
#. type: delimited block = 4
#: documentation/content/en/articles/solid-state/_index.adoc:170
msgid "Creating Filesystems on Your Flash Memory Device"
-msgstr "Создание файловых систем на вашем устройстве флэш-памяти"
+msgstr "Создание файловых систем на вашем устройстве флеш-памяти"
#. type: delimited block = 4
#: documentation/content/en/articles/solid-state/_index.adoc:173
@@ -481,9 +487,9 @@ msgstr "a: 123456 0 4.2BSD 0 0\n"
#: documentation/content/en/articles/solid-state/_index.adoc:190
msgid ""
"Where _123456_ is a number that is exactly the same as the number in the "
-"existing `c:` entry for size. Basically you are duplicating the existing "
-"`c:` line as an `a:` line, making sure that fstype is `4.2BSD`. Save the "
-"file and exit."
+"existing `c:` entry for size. Basically you are duplicating the existing `c:"
+"` line as an `a:` line, making sure that fstype is `4.2BSD`. Save the file "
+"and exit."
msgstr ""
"Здесь _123456_ является числом, в точности совпадающим с тем, что "
"характеризует размер имеющейся записи для `c:`. В общем, вы копируете "
@@ -503,12 +509,12 @@ msgstr ""
#. type: Plain text
#: documentation/content/en/articles/solid-state/_index.adoc:198
msgid "Placing Your Filesystem on the Flash Media"
-msgstr "Размещение вашей файловой системы на флэш-носителе"
+msgstr "Размещение вашей файловой системы на флеш-носителе"
#. type: Plain text
#: documentation/content/en/articles/solid-state/_index.adoc:200
msgid "Mount the newly prepared flash media:"
-msgstr "Смонтируйте только что подготовленный флэш-носитель:"
+msgstr "Смонтируйте только что подготовленный флеш-носитель:"
#. type: delimited block . 4
#: documentation/content/en/articles/solid-state/_index.adoc:204
@@ -524,7 +530,7 @@ msgid ""
"is:"
msgstr ""
"Подключите эту машину к сети, чтобы можно было перенести наш tar-файл и "
-"распаковать его в файловую систему на флэш-носителе. Вот пример того, как "
+"распаковать его в файловую систему на флеш-носителе. Вот пример того, как "
"это можно сделать:"
#. type: delimited block . 4
@@ -550,9 +556,9 @@ msgid ""
"file and the tar contents on your disk at the same time:"
msgstr ""
"Теперь, когда машина находится в сети, перепишите ваш tar-файл. Здесь вы "
-"можете столкнуться с некоторой проблемой - если объем вашей флэш-памяти "
+"можете столкнуться с некоторой проблемой - если объем вашей флеш-памяти "
"равен, к примеру, 128 мегабайтам, а ваш tar-файл превышает 64 мегабайта, то "
-"вы не можете одновременно разместить tar-файл на флэш-носителе и распаковать "
+"вы не можете одновременно разместить tar-файл на флеш-носителе и распаковать "
"его - вам не хватит места. Одним из решений этой проблемы, если вы "
"используете FTP, является распаковка файла во время его передачи по FTP. "
"Если вы передаете файл именно так, то вы никогда не получите на диске "
@@ -582,7 +588,7 @@ msgid ""
"filesystem, you can unmount the flash memory and reboot:"
msgstr ""
"После того, как вы получили содержимое вашей заархивированной файловой "
-"системы на файловой системе флэш-памяти, вы можете размонтировать флэш-"
+"системы на файловой системе флеш-памяти, вы можете размонтировать флеш-"
"память и выполнить перезагрузку:"
#. type: delimited block . 4
@@ -614,7 +620,9 @@ msgstr ""
#: documentation/content/en/articles/solid-state/_index.adoc:245
#, no-wrap
msgid "System Strategies for Small and Read Only Environments"
-msgstr "Стратегии работы с системой для случаев небольших и доступных только для чтения файловых систем"
+msgstr ""
+"Стратегии работы с системой для случаев небольших и доступных только для "
+"чтения файловых систем"
#. type: delimited block = 4
#: documentation/content/en/articles/solid-state/_index.adoc:249
@@ -626,7 +634,8 @@ msgid ""
"FreeBSD. In this article, suggestions for successfully running cron, "
"syslog, ports installations, and the Apache web server will be provided."
msgstr ""
-"В <<ro-fs>> было указано, что файловая система [.filename]#/var#, "
+"В разделе crossref:solid-state[ro-fs, Подсистема `rc` и файловые системы в "
+"режиме только чтения] было указано, что файловая система [.filename]#/var#, "
"создаваемая скриптом [.filename]#/etc/rc.d/var#, и наличие корневой файловой "
"системы, доступной только для чтения, приводят к проблемам при работе многих "
"распространенных программных пакетов, используемых во FreeBSD. В этой статье "
@@ -643,14 +652,14 @@ msgstr "Cron"
#: documentation/content/en/articles/solid-state/_index.adoc:253
msgid ""
"Upon boot, [.filename]#/var# gets populated by [.filename]#/etc/rc.d/var# "
-"using the list from [.filename]#/etc/mtree/BSD.var.dist#, so the "
-"[.filename]#cron#, [.filename]#cron/tabs#, [.filename]#at#, and a few other "
+"using the list from [.filename]#/etc/mtree/BSD.var.dist#, so the [."
+"filename]#cron#, [.filename]#cron/tabs#, [.filename]#at#, and a few other "
"standard directories get created."
msgstr ""
"Во время загрузки содержимое каталогa [.filename]#/var# формируется скриптом "
-"[.filename]#/etc/rc.d/var# используя данные из [.filename]#/etc/mtree/"
-"BSD.var.dist#, поэтому в нем создается несколько стандартных каталогов, в "
-"числе которых - [.filename]#cron#, [.filename]#cron/tabs#, [.filename]#at#."
+"[.filename]#/etc/rc.d/var# используя данные из [.filename]#/etc/mtree/BSD.var"
+".dist#, поэтому в нем создается несколько стандартных каталогов, в числе "
+"которых - [.filename]#cron#, [.filename]#cron/tabs#, [.filename]#at#."
#. type: delimited block = 4
#: documentation/content/en/articles/solid-state/_index.adoc:258
@@ -668,18 +677,18 @@ msgid ""
"you copy with [.filename]#/etc/rc.initdiskless#."
msgstr ""
"Однако это не решает проблему с сохранением cron-таблиц между "
-"перезагрузками. Когда система перезагружается, то файловая система "
-"[.filename]#/var#, которая располагается в памяти, будет уничтожена, вместе "
-"со всеми cron-таблицами, которые вы могли там иметь. Поэтому одним из "
-"решений может стать создание cron-таблиц для пользователей, которым они "
-"нужны, монтирование вашей файловой системы [.filename]#/# в режиме чтения и "
-"записи, и копирование этих cron-таблиц в безопасное место, например, в "
-"[.filename]#/etc/tabs#, и последующее добавление строки в конец скрипта "
-"[.filename]#/etc/rc.initdiskless# для копирования этих cron-таблиц в каталог "
-"[.filename]#/var/cron/tabs# после его создания во время инициализации "
-"системы. Вам может также потребоваться добавить строку, которая изменяет "
-"режимы доступа и права на каталоги, которые вы создали, и на файлы, которые "
-"вы скопировали в скрипте [.filename]#/etc/rc.initdiskless#."
+"перезагрузками. Когда система перезагружается, то файловая система [."
+"filename]#/var#, которая располагается в памяти, будет уничтожена, вместе со "
+"всеми cron-таблицами, которые вы могли там иметь. Поэтому одним из решений "
+"может стать создание cron-таблиц для пользователей, которым они нужны, "
+"монтирование вашей файловой системы [.filename]#/# в режиме чтения и записи, "
+"и копирование этих cron-таблиц в безопасное место, например, в [.filename]#/"
+"etc/tabs#, и последующее добавление строки в конец скрипта [.filename]#/etc/"
+"rc.initdiskless# для копирования этих cron-таблиц в каталог [.filename]#/var/"
+"cron/tabs# после его создания во время инициализации системы. Вам может "
+"также потребоваться добавить строку, которая изменяет режимы доступа и права "
+"на каталоги, которые вы создали, и на файлы, которые вы скопировали в "
+"скрипте [.filename]#/etc/rc.initdiskless#."
#. type: Title ===
#: documentation/content/en/articles/solid-state/_index.adoc:259
@@ -692,9 +701,9 @@ msgstr "Syslog"
msgid ""
"[.filename]#syslog.conf# specifies the locations of certain log files that "
"exist in [.filename]#/var/log#. These files are not created by [.filename]#/"
-"etc/rc.d/var# upon system initialization. Therefore, somewhere in "
-"[.filename]#/etc/rc.d/var#, after the section that creates the directories "
-"in [.filename]#/var#, you will need to add something like this:"
+"etc/rc.d/var# upon system initialization. Therefore, somewhere in [."
+"filename]#/etc/rc.d/var#, after the section that creates the directories in "
+"[.filename]#/var#, you will need to add something like this:"
msgstr ""
"В файле [.filename]#syslog.conf# задано местоположение некоторых файлов "
"протоколов, которые имеются в каталоге [.filename]#/var/log#. Эти файлы не "
@@ -733,7 +742,7 @@ msgid ""
msgstr ""
"Перед тем, как обсудить изменения, которые нужно сделать для успешного "
"использования дерева портов, необходимо напомнить о том, что ваши файловые "
-"системы на флэш-носителях доступны только для чтения. Поэтому вам нужно "
+"системы на флеш-носителях доступны только для чтения. Поэтому вам нужно "
"временно монтировать их в режиме чтения и записи, используя параметры "
"командной строки, как это показано в crossref:solid-state[ro-fs, Подсистема "
"`rc` и файловые системы в режиме только чтения]. Вы всегда должны "
@@ -752,22 +761,22 @@ msgid ""
"used for package information to be written to."
msgstr ""
"Чтобы можно было войти в каталог с портами и успешно выполнить команду make "
-"`install`, необходимо создать каталог для пакаджей в файловой системе, не "
-"располагающейся в памяти, где будут храниться пакаджи между перезагрузками. "
-"Так как для установки пакаджа в любом случае требуется монтирование ваших "
-"файловых систем для чтения и записи, имеет смысл выделить область флэш-"
-"носителя также и для записи информации о пакадже."
+"`install`, необходимо создать каталог для пакетов в файловой системе, не "
+"располагающейся в памяти, где будут храниться пакеты между перезагрузками. "
+"Так как для установки пакета в любом случае требуется монтирование ваших "
+"файловых систем для чтения и записи, имеет смысл выделить область флеш-"
+"носителя также и для записи информации о пакете."
#. type: Plain text
#: documentation/content/en/articles/solid-state/_index.adoc:283
msgid ""
-"First, create a package database directory. This is normally in "
-"[.filename]#/var/db/pkg#, but we cannot place it there as it will disappear "
+"First, create a package database directory. This is normally in [."
+"filename]#/var/db/pkg#, but we cannot place it there as it will disappear "
"every time the system is booted."
msgstr ""
-"Прежде всего создайте каталог с базой данных о пакаджах. Обычно это каталог "
-"[.filename]#/var/db/pkg#, но мы не можем разместить базу именно здесь, так "
-"как она исчезнет после перезагрузки системы."
+"Прежде всего создайте каталог с базой данных о пакетах. Обычно это каталог [."
+"filename]#/var/db/pkg#, но мы не можем разместить базу именно здесь, так как "
+"она исчезнет после перезагрузки системы."
#. type: delimited block . 4
#: documentation/content/en/articles/solid-state/_index.adoc:287
@@ -800,8 +809,8 @@ msgid ""
"operating system as [.filename]#/var/db/pkg#."
msgstr ""
"Теперь каждый раз при монтировании ваших файловых систем для чтения и записи "
-"и установки пакаджа, команда make `install` будет работать, а информация о "
-"пакадже будет успешно записана в каталог [.filename]#/etc/pkg# (так как "
+"и установки пакета, команда make `install` будет работать, а информация о "
+"пакете будет успешно записана в каталог [.filename]#/etc/pkg# (так как "
"файловая система будет в это время смонтирована для чтения и записи), "
"который всегда будет доступным операционной системе как [.filename]#/var/db/"
"pkg#."
@@ -817,35 +826,35 @@ msgstr "Веб-сервер Apache"
msgid ""
"The steps in this section are only necessary if Apache is set up to write "
"its pid or log information outside of [.filename]#/var#. By default, Apache "
-"keeps its pid file in [.filename]#/var/run/httpd.pid# and its log files in "
-"[.filename]#/var/log#."
+"keeps its pid file in [.filename]#/var/run/httpd.pid# and its log files in [."
+"filename]#/var/log#."
msgstr ""
"Шаги, описанные в этой части статьи, необходимо выполнить лишь в том случае, "
-"если Apache настроен сохранять свой pid или лог файл вне каталога "
-"[.filename]#/var#. С настройками по умолчанию Apache формирует свой pid файл "
-"в [.filename]#/var/run/httpd.pid#, а лог файлы - в [.filename]#/var/log#."
+"если Apache настроен сохранять свой pid или журнал вне каталога [."
+"filename]#/var#. С настройками по умолчанию Apache формирует свой pid файл в "
+"[.filename]#/var/run/httpd.pid#, а файлы журналов - в [.filename]#/var/log#."
#. type: Plain text
#: documentation/content/en/articles/solid-state/_index.adoc:310
msgid ""
-"It is now assumed that Apache keeps its log files in a directory "
-"[.filename]#apache_log_dir# outside of [.filename]#/var#. When this "
-"directory lives on a read-only filesystem, Apache will not be able to save "
-"any log files, and may have problems working. If so, it is necessary to add "
-"a new directory to the list of directories in [.filename]#/etc/rc.d/var# to "
-"create in [.filename]#/var#, and to link [.filename]#apache_log_dir# to "
-"[.filename]#/var/log/apache#. It is also necessary to set permissions and "
+"It is now assumed that Apache keeps its log files in a directory [."
+"filename]#apache_log_dir# outside of [.filename]#/var#. When this directory "
+"lives on a read-only filesystem, Apache will not be able to save any log "
+"files, and may have problems working. If so, it is necessary to add a new "
+"directory to the list of directories in [.filename]#/etc/rc.d/var# to create "
+"in [.filename]#/var#, and to link [.filename]#apache_log_dir# to [."
+"filename]#/var/log/apache#. It is also necessary to set permissions and "
"ownership on this new directory."
msgstr ""
-"Далее в статье подразумевается, что Apache сохраняет свои лог файлы в "
+"Далее в статье подразумевается, что Apache сохраняет свои файлы журналов в "
"каталог [.filename]#apache_log_dir# вне каталога [.filename]#/var#. Когда "
"этот каталог расположен на файловой системе, смонтированной в режиме только "
-"для чтения, Apache не сможет сохранять лог файлы, что в свою очередь может "
-"вызывать проблемы в работе веб-сервера. В таком случае необходимо добавить "
-"новый каталог к списку каталогов из [.filename]#/etc/rc.d/var# для их "
-"создания в каталоге [.filename]#/var# и связать [.filename]#apache_log_dir# "
-"с [.filename]#/var/log/apache#. Нужно также задать права доступа и владельца "
-"нового каталога."
+"для чтения, Apache не сможет сохранять файлы журналов, что в свою очередь "
+"может вызывать проблемы в работе веб-сервера. В таком случае необходимо "
+"добавить новый каталог к списку каталогов из [.filename]#/etc/rc.d/var# для "
+"их создания в каталоге [.filename]#/var# и связать [."
+"filename]#apache_log_dir# с [.filename]#/var/log/apache#. Нужно также задать "
+"права доступа и владельца нового каталога."
#. type: Plain text
#: documentation/content/en/articles/solid-state/_index.adoc:312
diff --git a/documentation/content/ru/articles/vinum/_index.adoc b/documentation/content/ru/articles/vinum/_index.adoc
index 1b4f934531..b34c3c0a9e 100644
--- a/documentation/content/ru/articles/vinum/_index.adoc
+++ b/documentation/content/ru/articles/vinum/_index.adoc
@@ -587,7 +587,7 @@ Subdisk root.p1.s0:
Когда всё готово, процесс загрузки можно продолжить, введя `boot -as`, где `-as` указывает ядру запросить корневую файловую систему для монтирования (`-a`) и остановить процесс загрузки в однопользовательском режиме (`-s`), при этом корневая файловая система монтируется в режиме только для чтения. Таким образом, даже если смонтирован только один слой многокомпонентного тома, не возникает риска несогласованности данных между слоями.
-На запрос о корневой файловой системе для монтирования можно ввести любое устройство, содержащее действительную корневую файловую систему. Если [.filename]#/etc/fstab# настроен правильно, по умолчанию должно быть что-то вроде `ufs:/dev/gvinum/root`. Типичным альтернативным выбором может быть что-то вроде `ufs:da0d`, что может быть гипотетическим разделом, содержащим корневую файловую систему до [.filename]#vinum#. Следует быть осторожным, если здесь вводится один из псевдонимов `a` разделов, чтобы он действительно ссылался на поддиски устройства [.filename]#vinum# root, потому что в зеркальной настройке это приведёт к монтированию только одной части зеркального корневого устройства. Если эта файловая система будет позже смонтирована в режиме чтения-записи, необходимо удалить другие плесксы тома [.filename]#vinum# root, так как в противном случае эти плесксы будут содержать несогласованные данные.
+На запрос о корневой файловой системе для монтирования можно ввести любое устройство, содержащее действительную корневую файловую систему. Если [.filename]#/etc/fstab# настроен правильно, по умолчанию должно быть что-то вроде `ufs:/dev/gvinum/root`. Типичным альтернативным выбором может быть что-то вроде `ufs:da0d`, что может быть гипотетическим разделом, содержащим корневую файловую систему до [.filename]#vinum#. Следует быть осторожным, если здесь вводится один из псевдонимов `a` разделов, чтобы он действительно ссылался на поддиски устройства [.filename]#vinum# root, потому что в зеркальной настройке это приведёт к монтированию только одной части зеркального корневого устройства. Если эта файловая система будет позже смонтирована в режиме чтения-записи, необходимо удалить другие плексы тома [.filename]#vinum# root, так как в противном случае эти плексы будут содержать несогласованные данные.
==== Только первичная загрузка Bootstrap
diff --git a/documentation/content/ru/articles/vinum/_index.po b/documentation/content/ru/articles/vinum/_index.po
index 93a1393713..785c4e7350 100644
--- a/documentation/content/ru/articles/vinum/_index.po
+++ b/documentation/content/ru/articles/vinum/_index.po
@@ -5,8 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-10-04 00:14+0300\n"
-"PO-Revision-Date: 2025-08-10 04:45+0000\n"
+"POT-Creation-Date: 2025-01-24 10:22-0300\n"
+"PO-Revision-Date: 2025-10-29 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/articlesvinum_index/ru/>\n"
@@ -18,7 +18,7 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/articles/vinum/_index.adoc:1
#, no-wrap
msgid "The vinum Volume Manager in FreeBSD"
@@ -80,8 +80,8 @@ msgstr ""
"избыточных дисков. Помимо поддержки различных карт и контроллеров для "
"аппаратных систем RAID (Redundant Array of Independent Disks), базовая "
"система FreeBSD включает менеджер томов [.filename]#vinum#, драйвер блочных "
-"устройств, который реализует виртуальные диски и решает эти три проблемы. "
-"[.filename]#vinum# обеспечивает большую гибкость, производительность и "
+"устройств, который реализует виртуальные диски и решает эти три проблемы. [."
+"filename]#vinum# обеспечивает большую гибкость, производительность и "
"надежность по сравнению с традиционными системами хранения данных, а также "
"реализует модели `RAID`-0, `RAID`-1 и `RAID`-5 как по отдельности, так и в "
"комбинации."
@@ -124,11 +124,11 @@ msgstr ""
"extref:{handbook}geom/[архитектуру GEOM, geom-synopsis], сохраняя при этом "
"оригинальные идеи, терминологию и метаданные на диске. Эта переработанная "
"версия называется _gvinum_ (от _GEOM vinum_). Хотя в этой главе используется "
-"термин [.filename]#vinum#, все команды должны выполняться с помощью "
-"`gvinum`. Имя модуля ядра изменилось с оригинального [.filename]#vinum.ko# "
-"на [.filename]#geom_vinum.ko#, а все узлы устройств находятся в [.filename]#/"
-"dev/gvinum# вместо [.filename]#/dev/vinum#. Начиная с FreeBSD 6, "
-"оригинальная реализация [.filename]#vinum# больше не доступна в кодовой базе."
+"термин [.filename]#vinum#, все команды должны выполняться с помощью `gvinum`"
+". Имя модуля ядра изменилось с оригинального [.filename]#vinum.ko# на [."
+"filename]#geom_vinum.ko#, а все узлы устройств находятся в [.filename]#/dev/"
+"gvinum# вместо [.filename]#/dev/vinum#. Начиная с FreeBSD 6, оригинальная "
+"реализация [.filename]#vinum# больше не доступна в кодовой базе."
#. type: Title ==
#: documentation/content/en/articles/vinum/_index.adoc:85
@@ -258,8 +258,8 @@ msgstr ""
"имеет преимущество в том, что диски не требуют каких-либо определённых "
"соотношений размеров. Он хорошо работает, когда доступ к виртуальному диску "
"равномерно распределён по его адресному пространству. Если доступ "
-"сосредоточен на меньшей области, улучшение менее заметно. "
-"crossref:vinum[vinum-concat, Организация методом объединения] иллюстрирует "
+"сосредоточен на меньшей области, улучшение менее заметно. crossref:vinum"
+"[vinum-concat, Организация методом объединения] иллюстрирует "
"последовательность выделения блоков хранения в организации методом "
"объединения."
@@ -397,10 +397,10 @@ msgid ""
"relative block numbers."
msgstr ""
"Альтернативным решением является _четность_, реализованная в уровнях `RAID` "
-"2, 3, 4 и 5. Из них `RAID-5` представляет наибольший интерес. В реализации "
-"[.filename]#vinum# это вариант организации с чередованием, где один блок "
-"каждой полосы выделяется под четность одного из других блоков. В реализации "
-"[.filename]#vinum# плекс `RAID-5` аналогичен плексу с чередованием, за "
+"2, 3, 4 и 5. Из них `RAID-5` представляет наибольший интерес. В реализации [."
+"filename]#vinum# это вариант организации с чередованием, где один блок "
+"каждой полосы выделяется под четность одного из других блоков. В реализации ["
+".filename]#vinum# плекс `RAID-5` аналогичен плексу с чередованием, за "
"исключением того, что он реализует `RAID-5`, включая блок четности в каждую "
"полосу. Как требуется в `RAID-5`, расположение этого блока четности меняется "
"от одной полосы к другой. Числа в блоках данных обозначают относительные "
@@ -701,7 +701,9 @@ msgstr "no"
#: documentation/content/en/articles/vinum/_index.adoc:215
#, no-wrap
msgid "Large data storage with maximum placement flexibility and moderate performance"
-msgstr "Крупное хранилище данных с максимальной гибкостью размещения и умеренной производительностью"
+msgstr ""
+"Крупное хранилище данных с максимальной гибкостью размещения и умеренной "
+"производительностью"
#. type: Table
#: documentation/content/en/articles/vinum/_index.adoc:216
@@ -744,8 +746,8 @@ msgstr ""
"файлов с помощью man:gvinum[8]. [.filename]#vinum# хранит копию своей базы "
"данных конфигурации на каждом _устройстве_ диска, находящемся под его "
"управлением. Эта база данных обновляется при каждом изменении состояния, так "
-"что перезапуск точно восстанавливает состояние каждого объекта "
-"[.filename]#vinum#."
+"что перезапуск точно восстанавливает состояние каждого объекта [."
+"filename]#vinum#."
#. type: Title ===
#: documentation/content/en/articles/vinum/_index.adoc:230
@@ -814,8 +816,8 @@ msgid ""
msgstr ""
"Строка _plex_ определяет плекс. Единственный обязательный параметр — это "
"организация, в данном случае _concat_. Имя не требуется, так как система "
-"автоматически генерирует его из имени тома, добавляя суффикс _.px_, где _x_ "
-"— номер плекса в томе. Таким образом, этот плекс будет называться _myvol.p0_."
+"автоматически генерирует его из имени тома, добавляя суффикс _.px_, где _x_ —"
+" номер плекса в томе. Таким образом, этот плекс будет называться _myvol.p0_."
#. type: Plain text
#: documentation/content/en/articles/vinum/_index.adoc:249
@@ -862,25 +864,30 @@ msgstr ""
#: documentation/content/en/articles/vinum/_index.adoc:263
#, no-wrap
msgid " D a State: up Device /dev/da3h Avail: 2061/2573 MB (80%)\n"
-msgstr " D a State: up Device /dev/da3h Avail: 2061/2573 MB (80%)\n"
+msgstr ""
+" D a State: up Device /dev/da3h Avail: 2061/"
+"2573 MB (80%)\n"
#. type: delimited block . 4
#: documentation/content/en/articles/vinum/_index.adoc:265
#, no-wrap
msgid " V myvol State: up Plexes: 1 Size: 512 MB\n"
-msgstr " V myvol State: up Plexes: 1 Size: 512 MB\n"
+msgstr ""
+" V myvol State: up Plexes: 1 Size: 512 MB\n"
#. type: delimited block . 4
#: documentation/content/en/articles/vinum/_index.adoc:267
#, no-wrap
msgid " P myvol.p0 C State: up Subdisks: 1 Size: 512 MB\n"
-msgstr " P myvol.p0 C State: up Subdisks: 1 Size: 512 MB\n"
+msgstr ""
+" P myvol.p0 C State: up Subdisks: 1 Size: 512 MB\n"
#. type: delimited block . 4
#: documentation/content/en/articles/vinum/_index.adoc:269
#, no-wrap
msgid " S myvol.p0.s0 State: up PO: 0 B Size: 512 MB\n"
-msgstr " S myvol.p0.s0 State: up PO: 0 B Size: 512 MB\n"
+msgstr ""
+" S myvol.p0.s0 State: up PO: 0 B Size: 512 MB\n"
#. type: Plain text
#: documentation/content/en/articles/vinum/_index.adoc:273
@@ -890,8 +897,8 @@ msgid ""
"[.filename]#vinum# Volume]."
msgstr ""
"Этот вывод показывает краткий формат списка man:gvinum[8]. Он представлен "
-"графически в crossref:vinum[vinum-simple-vol, Простой том "
-"[.filename]#vinum#]."
+"графически в crossref:vinum[vinum-simple-vol, Простой том [."
+"filename]#vinum#]."
#. type: Block title
#: documentation/content/en/articles/vinum/_index.adoc:275
@@ -1002,8 +1009,10 @@ msgid ""
"\tD a State: up Device /dev/da3h Avail: 1549/2573 MB (60%)\n"
"\tD b State: up Device /dev/da4h Avail: 2061/2573 MB (80%)\n"
msgstr ""
-"\tD a State: up Device /dev/da3h Avail: 1549/2573 MB (60%)\n"
-"\tD b State: up Device /dev/da4h Avail: 2061/2573 MB (80%)\n"
+"\tD a State: up Device /dev/da3h Avail: 1549/"
+"2573 MB (60%)\n"
+"\tD b State: up Device /dev/da4h Avail: 2061/"
+"2573 MB (80%)\n"
#. type: delimited block . 4
#: documentation/content/en/articles/vinum/_index.adoc:318
@@ -1012,8 +1021,10 @@ msgid ""
" V myvol State: up Plexes: 1 Size: 512 MB\n"
" V mirror State: up Plexes: 2 Size: 512 MB\n"
msgstr ""
-" V myvol State: up Plexes: 1 Size: 512 MB\n"
-" V mirror State: up Plexes: 2 Size: 512 MB\n"
+" V myvol State: up Plexes: 1 Size: 512 "
+"MB\n"
+" V mirror State: up Plexes: 2 Size: 512 "
+"MB\n"
#. type: delimited block . 4
#: documentation/content/en/articles/vinum/_index.adoc:322
@@ -1023,9 +1034,12 @@ msgid ""
" P mirror.p0 C State: up Subdisks: 1 Size: 512 MB\n"
" P mirror.p1 C State: initializing Subdisks: 1 Size: 512 MB\n"
msgstr ""
-" P myvol.p0 C State: up Subdisks: 1 Size: 512 MB\n"
-" P mirror.p0 C State: up Subdisks: 1 Size: 512 MB\n"
-" P mirror.p1 C State: initializing Subdisks: 1 Size: 512 MB\n"
+" P myvol.p0 C State: up Subdisks: 1 Size: 512 "
+"MB\n"
+" P mirror.p0 C State: up Subdisks: 1 Size: 512 "
+"MB\n"
+" P mirror.p1 C State: initializing Subdisks: 1 Size:"
+" 512 MB\n"
#. type: delimited block . 4
#: documentation/content/en/articles/vinum/_index.adoc:326
@@ -1035,9 +1049,12 @@ msgid ""
"\tS mirror.p0.s0 State: up PO: 0 B Size: 512 MB\n"
"\tS mirror.p1.s0 State: empty PO: 0 B Size: 512 MB\n"
msgstr ""
-" S myvol.p0.s0 State: up PO: 0 B Size: 512 MB\n"
-"\tS mirror.p0.s0 State: up PO: 0 B Size: 512 MB\n"
-"\tS mirror.p1.s0 State: empty PO: 0 B Size: 512 MB\n"
+" S myvol.p0.s0 State: up PO: 0 B Size: 512 "
+"MB\n"
+"\tS mirror.p0.s0 State: up PO: 0 B Size: 512 "
+"MB\n"
+"\tS mirror.p1.s0 State: empty PO: 0 B Size: 512 "
+"MB\n"
#. type: Plain text
#: documentation/content/en/articles/vinum/_index.adoc:329
@@ -1123,8 +1140,8 @@ msgid ""
"to [.filename]#vinum#. After processing this definition, the configuration "
"looks like:"
msgstr ""
-"Как и ранее, не нужно определять диски, которые уже известны "
-"[.filename]#vinum#. После обработки этого определения конфигурация выглядит "
+"Как и ранее, не нужно определять диски, которые уже известны [."
+"filename]#vinum#. После обработки этого определения конфигурация выглядит "
"следующим образом:"
#. type: delimited block . 4
@@ -1150,10 +1167,14 @@ msgid ""
" D c State: up Device /dev/da5h Avail: 2445/2573 MB (95%)\n"
" D d State: up Device /dev/da6h Avail: 2445/2573 MB (95%)\n"
msgstr ""
-" D a State: up Device /dev/da3h Avail: 1421/2573 MB (55%)\n"
-" D b State: up Device /dev/da4h Avail: 1933/2573 MB (75%)\n"
-" D c State: up Device /dev/da5h Avail: 2445/2573 MB (95%)\n"
-" D d State: up Device /dev/da6h Avail: 2445/2573 MB (95%)\n"
+" D a State: up Device /dev/da3h Avail: "
+"1421/2573 MB (55%)\n"
+" D b State: up Device /dev/da4h Avail: "
+"1933/2573 MB (75%)\n"
+" D c State: up Device /dev/da5h Avail: "
+"2445/2573 MB (95%)\n"
+" D d State: up Device /dev/da6h Avail: "
+"2445/2573 MB (95%)\n"
#. type: delimited block . 4
#: documentation/content/en/articles/vinum/_index.adoc:374
@@ -1163,9 +1184,12 @@ msgid ""
" V mirror State: up Plexes: 2 Size: 512 MB\n"
" V striped State: up Plexes: 1 Size: 512 MB\n"
msgstr ""
-" V myvol State: up Plexes: 1 Size: 512 MB\n"
-" V mirror State: up Plexes: 2 Size: 512 MB\n"
-" V striped State: up Plexes: 1 Size: 512 MB\n"
+" V myvol State: up Plexes: 1 Size: 512 "
+"MB\n"
+" V mirror State: up Plexes: 2 Size: 512 "
+"MB\n"
+" V striped State: up Plexes: 1 Size: 512 "
+"MB\n"
#. type: delimited block . 4
#: documentation/content/en/articles/vinum/_index.adoc:379
@@ -1176,10 +1200,14 @@ msgid ""
" P mirror.p1 C State: initializing Subdisks: 1 Size: 512 MB\n"
" P striped.p1 State: up Subdisks: 1 Size: 512 MB\n"
msgstr ""
-" P myvol.p0 C State: up Subdisks: 1 Size: 512 MB\n"
-" P mirror.p0 C State: up Subdisks: 1 Size: 512 MB\n"
-" P mirror.p1 C State: initializing Subdisks: 1 Size: 512 MB\n"
-" P striped.p1 State: up Subdisks: 1 Size: 512 MB\n"
+" P myvol.p0 C State: up Subdisks: 1 Size: 512 "
+"MB\n"
+" P mirror.p0 C State: up Subdisks: 1 Size: 512 "
+"MB\n"
+" P mirror.p1 C State: initializing Subdisks: 1 Size:"
+" 512 MB\n"
+" P striped.p1 State: up Subdisks: 1 Size: 512 "
+"MB\n"
#. type: delimited block . 4
#: documentation/content/en/articles/vinum/_index.adoc:387
@@ -1193,13 +1221,20 @@ msgid ""
" S striped.p0.s2 State: up PO: 1024 kB Size: 128 MB\n"
" S striped.p0.s3 State: up PO: 1536 kB Size: 128 MB\n"
msgstr ""
-" S myvol.p0.s0 State: up PO: 0 B Size: 512 MB\n"
-" S mirror.p0.s0 State: up PO: 0 B Size: 512 MB\n"
-" S mirror.p1.s0 State: empty PO: 0 B Size: 512 MB\n"
-" S striped.p0.s0 State: up PO: 0 B Size: 128 MB\n"
-" S striped.p0.s1 State: up PO: 512 kB Size: 128 MB\n"
-" S striped.p0.s2 State: up PO: 1024 kB Size: 128 MB\n"
-" S striped.p0.s3 State: up PO: 1536 kB Size: 128 MB\n"
+" S myvol.p0.s0 State: up PO: 0 B Size: 512 "
+"MB\n"
+" S mirror.p0.s0 State: up PO: 0 B Size: 512 "
+"MB\n"
+" S mirror.p1.s0 State: empty PO: 0 B Size: 512 "
+"MB\n"
+" S striped.p0.s0 State: up PO: 0 B Size: 128 "
+"MB\n"
+" S striped.p0.s1 State: up PO: 512 kB Size: 128 "
+"MB\n"
+" S striped.p0.s2 State: up PO: 1024 kB Size: 128 "
+"MB\n"
+" S striped.p0.s3 State: up PO: 1536 kB Size: 128 "
+"MB\n"
#. type: Block title
#: documentation/content/en/articles/vinum/_index.adoc:390
@@ -1221,8 +1256,8 @@ msgid ""
"position within the plex address space, where the lightest stripes come "
"first and the darkest last."
msgstr ""
-"Этот том представлен на схеме crossref:vinum[vinum-striped-vol, Том "
-"[.filename]#vinum# с чередованием]. Темнота полос указывает на позицию в "
+"Этот том представлен на схеме crossref:vinum[vinum-striped-vol, Том [."
+"filename]#vinum# с чередованием]. Темнота полос указывает на позицию в "
"адресном пространстве плекса, где самые светлые полосы идут первыми, а самые "
"темные — последними."
@@ -1242,8 +1277,8 @@ msgid ""
msgstr ""
"[[vinum-resilience]]При достаточном аппаратном обеспечении можно создать "
"тома, которые демонстрируют как повышенную отказоустойчивость, так и "
-"увеличенную производительность по сравнению со стандартными разделами "
-"UNIX(R). Типичный конфигурационный файл может выглядеть так:"
+"увеличенную производительность по сравнению со стандартными разделами UNIX(R)"
+". Типичный конфигурационный файл может выглядеть так:"
#. type: delimited block . 4
#: documentation/content/en/articles/vinum/_index.adoc:416
@@ -1346,9 +1381,9 @@ msgid ""
"[.filename]#/dev/gvinum#. The configuration shown above would cause "
"[.filename]#vinum# to create the following device nodes:"
msgstr ""
-"Объектам [.filename]#vinum# назначаются узлы устройств в иерархии "
-"[.filename]#/dev/gvinum#. Приведённая выше конфигурация приведёт к тому, что "
-"[.filename]#vinum# создаст следующие узлы устройств:"
+"Объектам [.filename]#vinum# назначаются узлы устройств в иерархии [."
+"filename]#/dev/gvinum#. Приведённая выше конфигурация приведёт к тому, что [."
+"filename]#vinum# создаст следующие узлы устройств:"
#. type: Plain text
#: documentation/content/en/articles/vinum/_index.adoc:440
@@ -1359,11 +1394,10 @@ msgid ""
"[.filename]#/dev/gvinum/striped#, [.filename]#/dev/gvinum/raid5# and "
"[.filename]#/dev/gvinum/raid10#."
msgstr ""
-"Записи устройств для каждого тома. Это основные устройства, используемые "
-"[.filename]#vinum#. Приведённая конфигурация включает устройства "
-"[.filename]#/dev/gvinum/myvol#, [.filename]#/dev/gvinum/mirror#, "
-"[.filename]#/dev/gvinum/striped#, [.filename]#/dev/gvinum/raid5# и "
-"[.filename]#/dev/gvinum/raid10#."
+"Записи устройств для каждого тома. Это основные устройства, используемые [."
+"filename]#vinum#. Приведённая конфигурация включает устройства [.filename]#/"
+"dev/gvinum/myvol#, [.filename]#/dev/gvinum/mirror#, [.filename]#/dev/gvinum/"
+"striped#, [.filename]#/dev/gvinum/raid5# и [.filename]#/dev/gvinum/raid10#."
#. type: Plain text
#: documentation/content/en/articles/vinum/_index.adoc:441
@@ -1418,8 +1452,8 @@ msgid ""
"After processing this file, man:gvinum[8] creates the following structure in "
"[.filename]#/dev/gvinum#:"
msgstr ""
-"После обработки этого файла man:gvinum[8] создает следующую структуру в "
-"[.filename]#/dev/gvinum#:"
+"После обработки этого файла man:gvinum[8] создает следующую структуру в [."
+"filename]#/dev/gvinum#:"
#. type: delimited block . 4
#: documentation/content/en/articles/vinum/_index.adoc:467
@@ -1473,9 +1507,9 @@ msgid ""
"possible to move a drive to a different location and still recognize it "
"automatically. Drive names may be up to 32 characters long."
msgstr ""
-"Хотя рекомендуется не назначать конкретные имена плексам и поддискам, диски "
-"[.filename]#vinum# должны быть именованными. Это позволяет переместить диск "
-"в другое место и по-прежнему автоматически его распознавать. Имена дисков "
+"Хотя рекомендуется не назначать конкретные имена плексам и поддискам, диски ["
+".filename]#vinum# должны быть именованными. Это позволяет переместить диск в "
+"другое место и по-прежнему автоматически его распознавать. Имена дисков "
"могут быть длиной до 32 символов."
#. type: Title ===
@@ -1504,14 +1538,14 @@ msgstr ""
"от дисков UNIX(R), [.filename]#vinum# не разбивает тома на разделы, поэтому "
"они не содержат таблицы разделов. Это потребовало внесения изменений в "
"некоторые утилиты для работы с дисками, в частности, в man:newfs[8], чтобы "
-"они не пытались интерпретировать последнюю букву имени тома "
-"[.filename]#vinum# как идентификатор раздела. Например, имя диска может "
+"они не пытались интерпретировать последнюю букву имени тома [."
+"filename]#vinum# как идентификатор раздела. Например, имя диска может "
"выглядеть как [.filename]#/dev/ad0a# или [.filename]#/dev/da2h#. Эти имена "
-"обозначают первый раздел ([.filename]#a#) на первом (0) IDE-диске "
-"([.filename]#ad#) и восьмой раздел ([.filename]#h#) на третьем (2) SCSI-"
-"диске ([.filename]#da#) соответственно. В отличие от этого, том "
-"[.filename]#vinum# может называться [.filename]#/dev/gvinum/concat#, что не "
-"имеет отношения к имени раздела."
+"обозначают первый раздел ([.filename]#a#) на первом (0) IDE-диске ([."
+"filename]#ad#) и восьмой раздел ([.filename]#h#) на третьем (2) SCSI-диске (["
+".filename]#da#) соответственно. В отличие от этого, том [.filename]#vinum# "
+"может называться [.filename]#/dev/gvinum/concat#, что не имеет отношения к "
+"имени раздела."
#. type: Plain text
#: documentation/content/en/articles/vinum/_index.adoc:494
@@ -1598,19 +1632,32 @@ msgstr ""
"plex name myvol.p1 state up org concat vol myvol\n"
"plex name myvol.p2 state init org striped 512b vol myvol\n"
"plex name bigraid.p0 state initializing org raid5 512b vol bigraid\n"
-"sd name myvol.p0.s0 drive a plex myvol.p0 state up len 1048576b driveoffset 265b plexoffset 0b\n"
-"sd name myvol.p0.s1 drive b plex myvol.p0 state up len 1048576b driveoffset 265b plexoffset 1048576b\n"
-"sd name myvol.p1.s0 drive c plex myvol.p1 state up len 1048576b driveoffset 265b plexoffset 0b\n"
-"sd name myvol.p1.s1 drive d plex myvol.p1 state up len 1048576b driveoffset 265b plexoffset 1048576b\n"
-"sd name myvol.p2.s0 drive a plex myvol.p2 state init len 524288b driveoffset 1048841b plexoffset 0b\n"
-"sd name myvol.p2.s1 drive b plex myvol.p2 state init len 524288b driveoffset 1048841b plexoffset 524288b\n"
-"sd name myvol.p2.s2 drive c plex myvol.p2 state init len 524288b driveoffset 1048841b plexoffset 1048576b\n"
-"sd name myvol.p2.s3 drive d plex myvol.p2 state init len 524288b driveoffset 1048841b plexoffset 1572864b\n"
-"sd name bigraid.p0.s0 drive a plex bigraid.p0 state initializing len 4194304b driveoff set 1573129b plexoffset 0b\n"
-"sd name bigraid.p0.s1 drive b plex bigraid.p0 state initializing len 4194304b driveoff set 1573129b plexoffset 4194304b\n"
-"sd name bigraid.p0.s2 drive c plex bigraid.p0 state initializing len 4194304b driveoff set 1573129b plexoffset 8388608b\n"
-"sd name bigraid.p0.s3 drive d plex bigraid.p0 state initializing len 4194304b driveoff set 1573129b plexoffset 12582912b\n"
-"sd name bigraid.p0.s4 drive e plex bigraid.p0 state initializing len 4194304b driveoff set 1573129b plexoffset 16777216b\n"
+"sd name myvol.p0.s0 drive a plex myvol.p0 state up len 1048576b driveoffset "
+"265b plexoffset 0b\n"
+"sd name myvol.p0.s1 drive b plex myvol.p0 state up len 1048576b driveoffset "
+"265b plexoffset 1048576b\n"
+"sd name myvol.p1.s0 drive c plex myvol.p1 state up len 1048576b driveoffset "
+"265b plexoffset 0b\n"
+"sd name myvol.p1.s1 drive d plex myvol.p1 state up len 1048576b driveoffset "
+"265b plexoffset 1048576b\n"
+"sd name myvol.p2.s0 drive a plex myvol.p2 state init len 524288b driveoffset "
+"1048841b plexoffset 0b\n"
+"sd name myvol.p2.s1 drive b plex myvol.p2 state init len 524288b driveoffset "
+"1048841b plexoffset 524288b\n"
+"sd name myvol.p2.s2 drive c plex myvol.p2 state init len 524288b driveoffset "
+"1048841b plexoffset 1048576b\n"
+"sd name myvol.p2.s3 drive d plex myvol.p2 state init len 524288b driveoffset "
+"1048841b plexoffset 1572864b\n"
+"sd name bigraid.p0.s0 drive a plex bigraid.p0 state initializing len "
+"4194304b driveoff set 1573129b plexoffset 0b\n"
+"sd name bigraid.p0.s1 drive b plex bigraid.p0 state initializing len "
+"4194304b driveoff set 1573129b plexoffset 4194304b\n"
+"sd name bigraid.p0.s2 drive c plex bigraid.p0 state initializing len "
+"4194304b driveoff set 1573129b plexoffset 8388608b\n"
+"sd name bigraid.p0.s3 drive d plex bigraid.p0 state initializing len "
+"4194304b driveoff set 1573129b plexoffset 12582912b\n"
+"sd name bigraid.p0.s4 drive e plex bigraid.p0 state initializing len "
+"4194304b driveoff set 1573129b plexoffset 16777216b\n"
#. type: Plain text
#: documentation/content/en/articles/vinum/_index.adoc:541
@@ -1627,8 +1674,8 @@ msgstr ""
"именования, что разрешено, но не рекомендуется, а также информация о "
"состояниях. [.filename]#vinum# не хранит сведения о дисках в "
"конфигурационной информации. Он находит диски, сканируя настроенные дисковые "
-"накопители на наличие разделов с меткой [.filename]#vinum#. Это позволяет "
-"[.filename]#vinum# корректно идентифицировать диски, даже если им были "
+"накопители на наличие разделов с меткой [.filename]#vinum#. Это позволяет [."
+"filename]#vinum# корректно идентифицировать диски, даже если им были "
"присвоены разные идентификаторы дисков UNIX(R)."
#. type: Title ====
@@ -1659,9 +1706,9 @@ msgid ""
"most recently and read the configuration from this drive. It then updates "
"the configuration, if necessary, from progressively older drives."
msgstr ""
-"Когда [.filename]#vinum# запускается командой `gvinum start`, "
-"[.filename]#vinum# читает конфигурационную базу данных с одного из дисков "
-"[.filename]#vinum#. В нормальных условиях каждый диск содержит идентичную "
+"Когда [.filename]#vinum# запускается командой `gvinum start`, [."
+"filename]#vinum# читает конфигурационную базу данных с одного из дисков [."
+"filename]#vinum#. В нормальных условиях каждый диск содержит идентичную "
"копию конфигурационной базы данных, поэтому не имеет значения, с какого "
"диска читать. Однако после сбоя [.filename]#vinum# должен определить, какой "
"диск был обновлён последним, и прочитать конфигурацию с этого диска. Затем, "
@@ -1724,7 +1771,9 @@ msgstr ""
#: documentation/content/en/articles/vinum/_index.adoc:564
#, no-wrap
msgid "Starting up [.filename]#vinum# Early Enough for the Root File System"
-msgstr "Запуск [.filename]#vinum# на раннем этапе для обеспечения доступа к корневой файловой системе"
+msgstr ""
+"Запуск [.filename]#vinum# на раннем этапе для обеспечения доступа к корневой "
+"файловой системе"
#. type: Plain text
#: documentation/content/en/articles/vinum/_index.adoc:568
@@ -1749,7 +1798,9 @@ msgstr "geom_vinum_load=\"YES\"\n"
#: documentation/content/en/articles/vinum/_index.adoc:574
#, no-wrap
msgid "Making a [.filename]#vinum#-based Root Volume Accessible to the Bootstrap"
-msgstr "Создание корневого тома на основе [.filename]#vinum#, доступного для загрузчика"
+msgstr ""
+"Создание корневого тома на основе [.filename]#vinum#, доступного для "
+"загрузчика"
#. type: Plain text
#: documentation/content/en/articles/vinum/_index.adoc:579
@@ -1871,8 +1922,8 @@ msgid ""
"[.filename]#ad0s1#."
msgstr ""
"`_devname_` должен быть либо именем диска, например, [.filename]#da0# для "
-"дисков без таблицы разделов, либо именем раздела, например, "
-"[.filename]#ad0s1#."
+"дисков без таблицы разделов, либо именем раздела, например, [."
+"filename]#ad0s1#."
#. type: Plain text
#: documentation/content/en/articles/vinum/_index.adoc:615
@@ -1920,8 +1971,8 @@ msgid ""
"this overlap if the [.filename]#vinum# partition has properly been marked "
"using the `vinum` fstype."
msgstr ""
-"Таким образом, будет создан новый раздел `a`, который перекрывает раздел "
-"[.filename]#vinum# на этом устройстве. `bsdlabel` разрешит это перекрытие "
+"Таким образом, будет создан новый раздел `a`, который перекрывает раздел [."
+"filename]#vinum# на этом устройстве. `bsdlabel` разрешит это перекрытие "
"только в том случае, если раздел [.filename]#vinum# был правильно помечен с "
"использованием типа файловой системы `vinum`."
@@ -1968,8 +2019,8 @@ msgid ""
"this setup is a message like:"
msgstr ""
"При следующей перезагрузке загрузчик должен определить соответствующую "
-"управляющую информацию из новой корневой файловой системы на основе "
-"[.filename]#vinum# и действовать соответствующим образом. В конце процесса "
+"управляющую информацию из новой корневой файловой системы на основе [."
+"filename]#vinum# и действовать соответствующим образом. В конце процесса "
"инициализации ядра, после объявления всех устройств, явным признаком "
"успешного завершения настройки будет сообщение вида:"
@@ -1991,8 +2042,8 @@ msgid ""
"After the [.filename]#vinum# root volume has been set up, the output of "
"`gvinum l -rv root` could look like:"
msgstr ""
-"После настройки корневого тома [.filename]#vinum#, вывод команды `gvinum l "
-"-rv root` может выглядеть следующим образом:"
+"После настройки корневого тома [.filename]#vinum#, вывод команды `gvinum l -"
+"rv root` может выглядеть следующим образом:"
#. type: delimited block . 4
#: documentation/content/en/articles/vinum/_index.adoc:655
@@ -2064,8 +2115,10 @@ msgstr ""
"8 partitions:\n"
"# size offset fstype [fsize bsize bps/cpg]\n"
" a: 245760 281 4.2BSD 2048 16384 0 # (Cyl. 0*- 15*)\n"
-" c: 71771688 0 unused 0 0 # (Cyl. 0 - 4467*)\n"
-" h: 71771672 16 vinum # (Cyl. 0*- 4467*)\n"
+" c: 71771688 0 unused 0 0 # (Cyl. 0 - 4467*)"
+"\n"
+" h: 71771672 16 vinum # (Cyl. 0*- 4467*)"
+"\n"
#. type: Plain text
#: documentation/content/en/articles/vinum/_index.adoc:684
@@ -2124,8 +2177,8 @@ msgid ""
msgstr ""
"Если по какой-либо причине система не продолжает загрузку, процесс можно "
"прервать, нажав kbd:[space] при появлении 10-секундного предупреждения. "
-"Переменную загрузчика `vinum.autostart` можно проверить, введя команду "
-"`show`, и изменить с помощью `set` или `unset`."
+"Переменную загрузчика `vinum.autostart` можно проверить, введя команду `show`"
+", и изменить с помощью `set` или `unset`."
#. type: Plain text
#: documentation/content/en/articles/vinum/_index.adoc:697
@@ -2146,12 +2199,12 @@ msgid ""
"plex volume has been mounted, no data inconsistency between plexes is being "
"risked."
msgstr ""
-"Когда всё готово, процесс загрузки можно продолжить, введя `boot -as`, где `-"
-"as` указывает ядру запросить корневую файловую систему для монтирования (`-"
-"a`) и остановить процесс загрузки в однопользовательском режиме (`-s`), при "
-"этом корневая файловая система монтируется в режиме только для чтения. Таким "
-"образом, даже если смонтирован только один слой многокомпонентного тома, не "
-"возникает риска несогласованности данных между слоями."
+"Когда всё готово, процесс загрузки можно продолжить, введя `boot -as`, где "
+"`-as` указывает ядру запросить корневую файловую систему для монтирования "
+"(`-a`) и остановить процесс загрузки в однопользовательском режиме (`-s`), "
+"при этом корневая файловая система монтируется в режиме только для чтения. "
+"Таким образом, даже если смонтирован только один слой многокомпонентного "
+"тома, не возникает риска несогласованности данных между слоями."
#. type: Plain text
#: documentation/content/en/articles/vinum/_index.adoc:706
@@ -2170,8 +2223,8 @@ msgid ""
"would otherwise carry inconsistent data."
msgstr ""
"На запрос о корневой файловой системе для монтирования можно ввести любое "
-"устройство, содержащее действительную корневую файловую систему. Если "
-"[.filename]#/etc/fstab# настроен правильно, по умолчанию должно быть что-то "
+"устройство, содержащее действительную корневую файловую систему. Если [."
+"filename]#/etc/fstab# настроен правильно, по умолчанию должно быть что-то "
"вроде `ufs:/dev/gvinum/root`. Типичным альтернативным выбором может быть что-"
"то вроде `ufs:da0d`, что может быть гипотетическим разделом, содержащим "
"корневую файловую систему до [.filename]#vinum#. Следует быть осторожным, "
@@ -2179,9 +2232,9 @@ msgstr ""
"ссылался на поддиски устройства [.filename]#vinum# root, потому что в "
"зеркальной настройке это приведёт к монтированию только одной части "
"зеркального корневого устройства. Если эта файловая система будет позже "
-"смонтирована в режиме чтения-записи, необходимо удалить другие плесксы тома "
-"[.filename]#vinum# root, так как в противном случае эти плесксы будут "
-"содержать несогласованные данные."
+"смонтирована в режиме чтения-записи, необходимо удалить другие плексы тома [."
+"filename]#vinum# root, так как в противном случае эти плексы будут содержать "
+"несогласованные данные."
#. type: Title ====
#: documentation/content/en/articles/vinum/_index.adoc:707
@@ -2202,9 +2255,9 @@ msgid ""
msgstr ""
"Если [.filename]#/boot/loader# не загружается, но первичная загрузка всё ещё "
"работает (это видно по одному дефису в левой части экрана сразу после начала "
-"процесса загрузки), можно попытаться прервать первичную загрузку, нажав kbd:"
-"[space]. Это остановит загрузку на extref:{handbook}boot/[втором этапе, boot-"
-"boot1]. Здесь можно попытаться загрузиться с альтернативного раздела, "
+"процесса загрузки), можно попытаться прервать первичную загрузку, нажав "
+"kbd:[space]. Это остановит загрузку на extref:{handbook}boot/[втором этапе, "
+"boot-boot1]. Здесь можно попытаться загрузиться с альтернативного раздела, "
"например, с раздела, содержащего предыдущую корневую файловую систему, "
"которая была перемещена из `a`."
@@ -2226,12 +2279,12 @@ msgid ""
"that was meant to be bootable, the [.filename]#vinum# setup will trash the "
"bootstrap."
msgstr ""
-"Такая ситуация произойдет, если загрузчик был уничтожен при установке "
-"[.filename]#vinum#. К сожалению, [.filename]#vinum# случайно оставляет "
+"Такая ситуация произойдет, если загрузчик был уничтожен при установке [."
+"filename]#vinum#. К сожалению, [.filename]#vinum# случайно оставляет "
"свободными только первые 4 КБ в начале своего раздела перед записью "
"заголовочной информации [.filename]#vinum#. Однако, первая и вторая стадии "
-"загрузчика вместе с bsdlabel требуют 8 КБ. Поэтому, если раздел "
-"[.filename]#vinum# начинается со смещения 0 внутри слайса или диска, который "
+"загрузчика вместе с bsdlabel требуют 8 КБ. Поэтому, если раздел [."
+"filename]#vinum# начинается со смещения 0 внутри слайса или диска, который "
"должен быть загрузочным, установка [.filename]#vinum# повредит загрузчик."
#. type: Plain text
@@ -2248,13 +2301,13 @@ msgid ""
"move the entire [.filename]#vinum# partition by at least 4 KB, to have the "
"[.filename]#vinum# header and the system bootstrap no longer collide."
msgstr ""
-"Аналогично, если описанная выше ситуация была исправлена загрузкой с "
-"\"Fixit\"-носителя, и загрузчик был переустановлен с помощью `bsdlabel -B`, "
-"как описано в extref:{handbook}boot/[этапе два, boot-boot1], загрузчик "
-"повредит заголовок [.filename]#vinum#, и [.filename]#vinum# больше не сможет "
-"найти свои диски. Хотя фактические данные конфигурации [.filename]#vinum# "
-"или данные в томах [.filename]#vinum# не будут повреждены, и можно "
-"восстановить все данные, введя точно такую же конфигурацию "
-"[.filename]#vinum# снова, исправить ситуацию сложно. Необходимо переместить "
-"весь раздел [.filename]#vinum# как минимум на 4 КБ, чтобы заголовок "
-"[.filename]#vinum# и системный загрузчик больше не конфликтовали."
+"Аналогично, если описанная выше ситуация была исправлена загрузкой с \"Fixit"
+"\"-носителя, и загрузчик был переустановлен с помощью `bsdlabel -B`, как "
+"описано в extref:{handbook}boot/[этапе два, boot-boot1], загрузчик повредит "
+"заголовок [.filename]#vinum#, и [.filename]#vinum# больше не сможет найти "
+"свои диски. Хотя фактические данные конфигурации [.filename]#vinum# или "
+"данные в томах [.filename]#vinum# не будут повреждены, и можно восстановить "
+"все данные, введя точно такую же конфигурацию [.filename]#vinum# снова, "
+"исправить ситуацию сложно. Необходимо переместить весь раздел [."
+"filename]#vinum# как минимум на 4 КБ, чтобы заголовок [.filename]#vinum# и "
+"системный загрузчик больше не конфликтовали."