Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-doc
Path: blob/main/documentation/content/ru/books/handbook/jails/_index.po
18098 views
# SOME DESCRIPTIVE TITLE
# Copyright (C) YEAR The FreeBSD Project
# This file is distributed under the same license as the FreeBSD Documentation package.
# Vladlen Popolitov <[email protected]>, 2025, 2026.
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
"POT-Creation-Date: 2026-05-09 23:29+0100\n"
"PO-Revision-Date: 2026-05-11 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <[email protected]>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/bookshandbookjails_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: YAML Front Matter: description
#: documentation/content/en/books/handbook/jails/_index.adoc:1
#, no-wrap
msgid "Jails improve on the concept of the traditional chroot environment in several ways"
msgstr "Клетки (jails) улучшают концепцию традиционного окружения chroot несколькими способами"

#. type: YAML Front Matter: part
#: documentation/content/en/books/handbook/jails/_index.adoc:1
#, no-wrap
msgid "Part III. System Administration"
msgstr "Часть III. Администрирование системы"

#. type: YAML Front Matter: title
#: documentation/content/en/books/handbook/jails/_index.adoc:1
#, no-wrap
msgid "Chapter 17. Jails and Containers"
msgstr "Глава 17. Клетки и контейнеры"

#. type: Title =
#: documentation/content/en/books/handbook/jails/_index.adoc:15
#, no-wrap
msgid "Jails and Containers"
msgstr "Клетки и контейнеры"

#. type: Title ==
#: documentation/content/en/books/handbook/jails/_index.adoc:53
#, no-wrap
msgid "Synopsis"
msgstr "Обзор"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:59
msgid ""
"Since system administration is a difficult task, many tools have been "
"developed to make life easier for the administrator.  These tools often "
"enhance the way systems are installed, configured, and maintained.  One of "
"the tools which can be used to enhance the security of a FreeBSD system is "
"_jails_.  Jails have been available since FreeBSD 4.X and continue to be "
"enhanced in their usefulness, performance, reliability, and security."
msgstr ""
"Поскольку администрирование системы — сложная задача, было разработано "
"множество инструментов, чтобы облегчить жизнь администратору. Эти "
"инструменты часто улучшают способы установки, настройки и обслуживания "
"систем. Один из инструментов, который можно использовать для повышения "
"безопасности системы FreeBSD, — это _клетки (jails)_. Клетки доступны "
"начиная с FreeBSD 4.X и продолжают совершенствоваться в плане полезности, "
"производительности, надёжности и безопасности."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:64
msgid ""
"Jails build upon the man:chroot[2] concept, which is used to change the root "
"directory of a set of processes.  This creates a safe environment, separate "
"from the rest of the system.  Processes created in the chrooted environment "
"can not access files or resources outside of it.  For that reason, "
"compromising a service running in a chrooted environment should not allow "
"the attacker to compromise the entire system."
msgstr ""
"Клетки расширяют концепцию man:chroot[2], которая используется для изменения "
"корневого каталога для набора процессов. Это создаёт безопасное окружение, "
"изолированное от остальной системы. Процессы, созданные в окружении chroot, "
"не могут обращаться к файлам или ресурсам за его пределами. По этой причине "
"компрометация службы, работающей в окружении chroot, не должна позволить "
"злоумышленнику скомпрометировать всю систему."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:68
msgid ""
"However, a chroot has several limitations.  It is suited to easy tasks which "
"do not require much flexibility or complex, advanced features.  Over time, "
"many ways have been found to escape from a chrooted environment, making it a "
"less than ideal solution for securing services."
msgstr ""
"Однако `chroot` имеет несколько ограничений. Он подходит для простых задач, "
"не требующих большой гибкости или сложных, продвинутых функций. Со временем "
"было найдено множество способов выйти из окружения `chroot`, что делает его "
"не самым идеальным решением для защиты сервисов."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:70
msgid ""
"Jails improve on the concept of the traditional chroot environment in "
"several ways."
msgstr ""
"Клетки улучшают концепцию традиционной изолированной среды chroot "
"несколькими способами."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:76
msgid ""
"In a traditional chroot environment, processes are only limited in the part "
"of the file system they can access.  The rest of the system resources, "
"system users, running processes, and the networking subsystem are shared by "
"the chrooted processes and the processes of the host system.  Jails expand "
"this model by virtualizing access to the file system, the set of users, and "
"the networking subsystem.  More fine-grained controls are available for "
"tuning the access of a jailed environment.  Jails can be considered as a "
"type of operating system-level virtualization."
msgstr ""
"В традиционной среде chroot процессы ограничены только в части файловой "
"системы, к которой они могут получить доступ. Остальные системные ресурсы, "
"пользователи системы, запущенные процессы и подсистема сети разделяются "
"между процессами в chroot и процессами основной системы. Клетки расширяют "
"эту модель, виртуализируя доступ к файловой системе, набору пользователей и "
"подсистеме сети. Доступны более детальные настройки для регулирования "
"доступа в изолированной среде. Клетки можно рассматривать как один из видов "
"виртуализации на уровне операционной системы."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:78
msgid "This chapter covers:"
msgstr "Эта глава охватывает:"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:80
msgid "What a jail is and what purpose it may serve in FreeBSD installations."
msgstr "Что такое клетка и для каких целей он может использоваться в FreeBSD."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:81
msgid "The different types of jail."
msgstr "Типы клеток."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:82
msgid "The different ways to configure the network for a jail."
msgstr "Различные способы настройки сети для клетки."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:83
msgid "The jail configuration file."
msgstr "Файл конфигурации клетки."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:84
msgid "How to create the different types of jail."
msgstr "Как создать различные типы клетки."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:85
msgid "How to start, stop, and restart a jail."
msgstr "Как запустить, остановить и перезапустить клетку."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:86
msgid ""
"The basics of jail administration, both from inside and outside the jail."
msgstr "Основы администрирования клеток, как изнутри, так и снаружи клетки."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:87
msgid "How to upgrade the different types of jail."
msgstr "Как обновить различные типы клеток."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:88
msgid "An incomplete list of the different FreeBSD jail managers."
msgstr "Неполный список различных менеджеров клеток FreeBSD."

#. type: Title ==
#: documentation/content/en/books/handbook/jails/_index.adoc:90
#, no-wrap
msgid "Jail Types"
msgstr "Типы клеток"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:94
msgid ""
"Some administrators divide jails into different types, although the "
"underlying technology is the same.  Each administrator will have to assess "
"what type of jail to create in each case depending on the problem they have "
"to solve."
msgstr ""
"Некоторые администраторы разделяют клетки на различные типы, хотя базовые "
"технологии остаются одинаковыми. Каждому администратору необходимо "
"определить, какой тип клетки создавать в каждом конкретном случае, в "
"зависимости от решаемой задачи."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:96
msgid ""
"Below can be found a list of the different types, their characteristics, and "
"considerations for use."
msgstr ""
"Ниже приведен список различных типов, их характеристики и рекомендации по "
"использованию."

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:98
#, no-wrap
msgid "Thick Jails"
msgstr "Толстые клетки (Thick Jails)"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:105
msgid ""
"A thick jail is a traditional form of FreeBSD Jail.  In a thick jail, a "
"complete copy of the base system is replicated within the jail's "
"environment.  This means that the jail has its own separate instance of the "
"FreeBSD base system, including libraries, executables, and configuration "
"files.  The jail can be thought of as an almost complete standalone FreeBSD "
"installation, but running within the confines of the host system.  This "
"isolation ensures that the processes within the jail are kept separate from "
"those on the host and other jails."
msgstr ""
"Толстая клетка (thick jail) — это традиционная форма клетки FreeBSD. В "
"толстой клетке полная копия базовой системы реплицируется внутри окружения "
"клетки. Это означает, что клетка имеет свою собственную отдельную копию "
"базовой системы FreeBSD, включая библиотеки, исполняемые файлы и "
"конфигурационные файлы. Клетку можно рассматривать как почти полноценную "
"автономную установку FreeBSD, но работающую в рамках хост-системы. Такая "
"изоляция гарантирует, что процессы внутри клетки остаются отделёнными от "
"процессов на хосте и в других клетках."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:107
msgid "Advantages of Thick Jails:"
msgstr "Преимущества толстых клеток:"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:109
msgid ""
"High degree of isolation: Processes within the jail are isolated from the "
"host system and other jails."
msgstr ""
"Высокая степень изоляции: процессы внутри клеток изолированы от хост-системы "
"и других клеток."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:110
msgid ""
"Independence: Thick jails can have different versions of libraries, "
"configurations, and software than the host system or other jails."
msgstr ""
"Независимость: толстые клетки могут иметь версии библиотек, настройки и "
"программное обеспечение, отличные от хост-системы или других клеток."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:111
msgid ""
"Security: Since the jail contains its own base system, vulnerabilities or "
"issues affecting the jail environment will not directly impact the host or "
"other jails."
msgstr ""
"Безопасность: поскольку клетка содержит собственную базовую систему, "
"уязвимости или проблемы, затрагивающие среду клетки, не оказывают прямого "
"влияния на хост-систему или другие клетки."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:113
msgid "Disadvantages of Thick Jails:"
msgstr "Недостатки толстых клеток:"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:115
msgid ""
"Resource overhead: Because each jail maintains its own separate base system, "
"thick jails consume more resources compared to thin jails."
msgstr ""
"Ресурсные затраты: поскольку каждая клетка поддерживает свою собственную "
"отдельную базовую систему, толстые клетки потребляют больше ресурсов по "
"сравнению с тонкими клетками."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:116
msgid ""
"Maintenance: Each jail requires its own maintenance and updates for its base "
"system components."
msgstr ""
"Обслуживание: каждая клетка требует собственного обслуживания и обновлений "
"для своих базовых системных компонентов."

#. type: Title ==
#: documentation/content/en/books/handbook/jails/_index.adoc:118
#: documentation/content/en/books/handbook/jails/_index.adoc:432
#, no-wrap
msgid "Thin Jails"
msgstr "Тонкие клетки (Thin Jails)"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:124
msgid ""
"A thin jail shares the base system using OpenZFS snapshots or NullFS mounts "
"from a template.  Only a minimal subset of base system is duplicated for "
"each thin jail, resulting in less resource consumption compared to a thick "
"jail.  However, this also means that thin jails have less isolation and "
"independence compared to thick jails.  Changes in shared components could "
"potentially affect multiple thin jails simultaneously."
msgstr ""
"Тонкая клетка (thin jail) использует базовую систему через снимки OpenZFS "
"или монтирования NullFS из шаблона. Для каждой тонкой клетки дублируется "
"лишь минимальное подмножество базовой системы, что приводит к меньшему "
"потреблению ресурсов по сравнению с толстой клеткой. Однако это также "
"означает, что тонкие клетки обладают меньшей изоляцией и независимостью по "
"сравнению с толстыми. Изменения в общих компонентах могут потенциально "
"затрагивать несколько тонких клеток одновременно."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:126
msgid ""
"In summary, a FreeBSD Thin Jail is a type of FreeBSD Jail that replicates a "
"substantial portion, but not all, of the base system within the isolated "
"environment."
msgstr ""
"Вкратце, тонкая клетка в FreeBSD — это тип клетки FreeBSD, который "
"воспроизводит значительную часть, но не всю базовую систему, в изолированной "
"среде."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:128
msgid "Advantages of Thin Jails:"
msgstr "Преимущества тонких клеток:"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:132
msgid ""
"Resource Efficiency: Thin jails are more resource-efficient compared to "
"thick jails.  Since they share most of the base system, they consume less "
"disk space and memory.  This makes it possible to run more jails on the same "
"hardware without consuming excessive resources."
msgstr ""
"Эффективность использования ресурсов: тонкие клетки более эффективны в "
"использовании ресурсов по сравнению с толстыми клетками. Поскольку они "
"используют общую базовую систему, они занимают меньше места на диске и "
"оперативной памяти. Это позволяет запускать больше клеток на том же "
"оборудовании без чрезмерного потребления ресурсов."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:134
msgid ""
"Faster Deployment: Creating and launching thin jails is generally faster "
"compared to thick jails.  This can be particularly advantageous when rapidly "
"deploying multiple instances."
msgstr ""
"Быстрое развёртывание: создание и запуск тонких клеток обычно происходит "
"быстрее по сравнению с толстыми клетками. Это может быть особенно полезно "
"при быстром развертывании множества экземпляров."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:136
msgid ""
"Unified Maintenance: Since thin jails share the majority of their base "
"system with the host system, updates and maintenance of common base system "
"components (such as libraries and binaries) only need to be done once on the "
"host.  This simplifies the maintenance process compared to maintaining an "
"individual base system for each thick jail."
msgstr ""
"Унифицированное обслуживание: поскольку тонкие клетки используют большую "
"часть базовой системы хоста, обновления и обслуживание общих компонентов "
"базовой системы (таких как библиотеки и исполняемые файлы) необходимо "
"выполнять только один раз на хосте. Это упрощает процесс обслуживания по "
"сравнению с поддержкой отдельной базовой системы для каждой толстой клетки."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:138
msgid ""
"Shared Resources: Thin jails can more easily share common resources such as "
"libraries and binaries with the host system.  This can potentially lead to "
"more efficient disk caching and improved performance for applications within "
"the jail."
msgstr ""
"Общие ресурсы: тонкие клетки могут проще разделять общие ресурсы, такие как "
"библиотеки и исполняемые файлы, с хост-системой. Это может привести к более "
"эффективному использованию кэширования диска и повышению производительности "
"приложений внутри клетки."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:140
msgid "Disadvantages of Thin Jails:"
msgstr "Недостатки тонких клеток:"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:143
msgid ""
"Reduced Isolation: The primary disadvantage of thin jails is that they offer "
"less isolation compared to thick jails.  Since they share a significant "
"portion of the template's base system, vulnerabilities or issues affecting "
"shared components could potentially impact multiple jails simultaneously."
msgstr ""
"Уменьшенная изоляция: основной недостаток тонких клеток заключается в том, "
"что они обеспечивают меньшую изоляцию по сравнению с толстыми клетками. "
"Поскольку они используют значительную часть базовой системы шаблона, "
"уязвимости или проблемы, затрагивающие общие компоненты, могут потенциально "
"повлиять на несколько клеток одновременно."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:144
msgid ""
"Security Concerns: The reduced isolation in thin jails could pose security "
"risks, as a compromise in one jail might have a greater potential to affect "
"other jails or the host system."
msgstr ""
"Проблемы безопасности: уменьшенная изоляция в тонких клетках может "
"представлять угрозу безопасности, так как компрометация одной клетки может с "
"большей вероятностью повлиять на другие клетки или на хост-систему."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:146
msgid ""
"Dependency Conflicts: If multiple thin jails require different versions of "
"the same libraries or software, managing dependencies can become complex.  "
"In some cases, this might require additional effort to ensure compatibility."
msgstr ""
"Конфликты зависимостей: если нескольким тонким клеткам требуются разные "
"версии одних и тех же библиотек или программного обеспечения, управление "
"зависимостями может усложниться. В некоторых случаях это может потребовать "
"дополнительных усилий для обеспечения совместимости."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:147
msgid ""
"Compatibility Challenges: Applications within a thin jail might encounter "
"compatibility issues if they assume a certain base system environment that "
"differs from the shared components provided by the template."
msgstr ""
"Проблемы совместимости: приложения в тонкой клетке могут столкнуться с "
"проблемами совместимости, если они рассчитаны на определённое окружение "
"базовой системы, отличающееся от общих компонентов, предоставляемых шаблоном."

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:149
#, no-wrap
msgid "Service Jails"
msgstr "Сервисные клетки (Service Jails)"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:155
msgid ""
"A service jail shares the complete filesystem tree directly with the host "
"(the jail root path is [.filename]#/#) and as such can access and modify any "
"file on the host, and shares the same user accounts with the host.  By "
"default it has no access to the network or other resources which are "
"restricted in jails, but they can be configured to re-use the network of the "
"host and to remove some of the jail-restrictions.  The use case for service "
"jails is automatic confinement of services/daemons inside a jail with "
"minimal configuration, and without any knowledge of the files needed by such "
"service/daemon.  Service jails exist since FreeBSD 15."
msgstr ""
"Сервисная клетка (service jail) напрямую разделяет всё дерево файловой "
"системы с хостом (корневой путь клетки — [.filename]#/#) и, таким образом, "
"может получать доступ и изменять любые файлы на хосте, а также использует те "
"же учётные записи пользователей, что и хост. По умолчанию у неё нет доступа "
"к сети или другим ресурсам, ограниченным в клетках, но её можно настроить "
"для повторного использования сети хоста и снятия некоторых ограничений "
"клетки. Основное применение сервисных клеток — автоматическое ограничение "
"служб/демонов внутри клетки с минимальной настройкой и без необходимости "
"знания файлов, требуемых такой службой/демоном. Сервисные клетки появились в "
"FreeBSD 15."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:157
msgid "Advantages of Service Jails:"
msgstr "Преимущества сервисных клеток:"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:159
msgid ""
"Zero Administration: A service jail ready service needs only one config line "
"in [.filename]#/etc/rc.conf#, a service which is not service jails ready "
"needs two config lines."
msgstr ""
"Нулевое администрирование: для службы, готовой к использованию в клетке, "
"достаточно одной строки конфигурации в [.filename]#/etc/rc.conf#, для "
"службы, не готовой к использованию в клетке, требуется две строки "
"конфигурации."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:160
msgid ""
"Resource Efficiency: Service jails are more resource efficient than thin "
"jails, as they do not need any additional disk space or network resource."
msgstr ""
"Ресурсоэффективность: сервисные клетки более эффективны в использовании "
"ресурсов, чем тонкие клетки, так как они не требуют дополнительного "
"дискового пространства или сетевых ресурсов."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:161
msgid ""
"Faster Deployment: Creating and launching service jails is generally faster "
"compared to thin jails if only distinct services/daemons shall be jailed and "
"no parallel instances of the same service/daemon is needed."
msgstr ""
"Быстрое развёртывание: создание и запуск сервисных клеток обычно выполняется "
"быстрее по сравнению с тонкими клетками, если требуется изолировать только "
"отдельные сервисы/демоны и не нужны параллельные экземпляры одного и того же "
"сервиса/демона."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:163
msgid ""
"Shared Resources: Service jails share all resources such as libraries and "
"binaries with the host system.  This can potentially lead to more efficient "
"disk caching and improved performance for applications within the jail."
msgstr ""
"Общие ресурсы: сервисные клетки разделяют все ресурсы, такие как библиотеки "
"и исполняемые файлы, с хост-системой. Это может привести к более "
"эффективному использованию кэширования диска и повышению производительности "
"приложений внутри клетки."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:164
msgid ""
"Process Isolation: Service jails isolate a particular service, it can not "
"see processes which are not a child of the service jail, even if they run "
"within the same user account."
msgstr ""
"Изоляция процессов: сервисные клетки изолируют определённую службу, она не "
"может видеть процессы, которые не являются дочерними по отношению к этой "
"сервисной клетке, даже если они выполняются в рамках той же учётной записи "
"пользователя."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:166
msgid "Disadvantages of Service Jails:"
msgstr "Недостатки сервисных клеток:"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:168
msgid ""
"Reduced Isolation: The primary disadvantage of service jails is that they "
"offer no filesystem isolation compared to thick or thin jails."
msgstr ""
"Уменьшенная изоляция: основной недостаток сервисных клеток заключается в "
"отсутствии изоляции файловой системы по сравнению с толстой или тонкой "
"клеткой."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:169
msgid ""
"Security Concerns: The reduced isolation in service jails could pose "
"security risks, as a compromise in one jail might have a greater potential "
"to affect everything on the host system."
msgstr ""
"Проблемы безопасности: уменьшенная изоляция в сервисных клетках может "
"создавать угрозы безопасности, поскольку компрометация одной клетки "
"потенциально способна сильнее повлиять на всё в хост-системе."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:173
msgid ""
"Most of the configuration of jails which is discussed below is not needed "
"for service jails.  To understand how jails work, it is recommended to "
"understand those configuration possibilities.  The details about what is "
"needed to configure a service jail is in crossref:jails[service-jails-"
"config, Configuring service jails]."
msgstr ""
"Большая часть настройки клеток, обсуждаемая ниже, не требуется для сервисных "
"клеток. Чтобы понять, как работают клетки, рекомендуется разобраться в этих "
"возможностях конфигурации. Подробности о том, что необходимо для настройки "
"сервисной клетки, приведены в разделе crossref:jails[service-jails-config, "
"Настройка сервисных клеток]."

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:175
#, no-wrap
msgid "VNET Jails"
msgstr "Клетки VNET"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:180
msgid ""
"A FreeBSD VNET jail is a virtualized environment that allows for the "
"isolation and control of network resources for processes running within it.  "
"It provides a high level of network segmentation and security by creating a "
"separate network stack for processes within the jail, ensuring that network "
"traffic within the jail is isolated from the host system and other jails."
msgstr ""
"Клетка FreeBSD VNET — это виртуализированная среда, которая обеспечивает "
"изоляцию и контроль сетевых ресурсов для процессов, выполняющихся внутри "
"неё. Она предоставляет высокий уровень сетевой сегментации и безопасности, "
"создавая отдельный сетевой стек для процессов внутри клетки, что гарантирует "
"изоляцию сетевого трафика внутри клетки от хост-системы и других клеток."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:183
msgid ""
"In essence, FreeBSD VNET jails add a network configuration mechanism.  This "
"means a VNET jail can be created as a Thick or Thin Jail."
msgstr ""
"По сути, механизм VNET в FreeBSD добавляет возможность настройки сети. Это "
"означает, что клетку VNET можно создать как толстой, так и тонкой."

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:185
#, no-wrap
msgid "Linux Jails"
msgstr "Клетки Linux"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:190
msgid ""
"A FreeBSD Linux Jail is a feature in the FreeBSD operating system that "
"enables the use of Linux binaries and applications within a FreeBSD jail.  "
"This functionality is achieved by incorporating a compatibility layer that "
"allows certain Linux system calls and libraries to be translated and "
"executed on the FreeBSD kernel.  The purpose of a Linux Jail is to "
"facilitate the execution of Linux software on a FreeBSD system without "
"needing a separate Linux virtual machine or environment."
msgstr ""
"Клетки Linux в FreeBSD — это функция в операционной системе FreeBSD, которая "
"позволяет использовать исполняемые файлы Linux и приложения внутри клетки "
"FreeBSD. Эта функциональность достигается за счёт совместимости, которая "
"позволяет транслировать и выполнять определённые системные вызовы Linux и "
"использовать библиотеки Linux с ядром FreeBSD. Цель клеток Linux — облегчить "
"выполнение Linux-программ в системе FreeBSD без необходимости в отдельной "
"виртуальной машине или среде Linux."

#. type: Title ==
#: documentation/content/en/books/handbook/jails/_index.adoc:192
#, no-wrap
msgid "Host Configuration"
msgstr "Конфигурация хоста"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:195
msgid ""
"Before creating any jail on the host system it is necessary to perform "
"certain configuration and obtain some information from the host system."
msgstr ""
"Прежде чем создавать клетку на хост-системе, необходимо выполнить "
"определённые настройки и получить некоторую информацию от хост-системы."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:197
msgid ""
"It will be necessary to configure the man:jail[8] utility, create the "
"necessary directories to configure and install jails, obtain information "
"from the host's network, and check whether the host uses OpenZFS or UFS as "
"its file system."
msgstr ""
"Потребуется настроить утилиту man:jail[8], создать необходимые каталоги для "
"настройки и установки клетки, получить информацию о сети хоста и проверить, "
"использует ли хост файловую систему OpenZFS или UFS."

#. type: delimited block = 4
#: documentation/content/en/books/handbook/jails/_index.adoc:201
msgid ""
"The FreeBSD version running in the jail can not be newer than the version "
"running in the host."
msgstr ""
"Версия FreeBSD, работающая в клетке, не может быть новее версии, работающей "
"на хосте."

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:204
#, no-wrap
msgid "Jail Utility"
msgstr "Утилита jail"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:207
msgid "The man:jail[8] utility manages jails."
msgstr "Утилита man:jail[8] управляет клетками."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:209
msgid "To start jails when the system boots, run the following commands:"
msgstr ""
"Чтобы запускать клетки при загрузке системы, выполните следующие команды:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:214
#, no-wrap
msgid ""
"# sysrc jail_enable=\"YES\"\n"
"# sysrc jail_parallel_start=\"YES\"\n"
msgstr ""
"# sysrc jail_enable=\"YES\"\n"
"# sysrc jail_parallel_start=\"YES\"\n"

#. type: delimited block = 4
#: documentation/content/en/books/handbook/jails/_index.adoc:219
msgid ""
"With `jail_parallel_start`, all configured jails will be started in the "
"background."
msgstr ""
"С `jail_parallel_start` все настроенные клетки будут запущены в фоновом "
"режиме."

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:222
#, no-wrap
msgid "Networking"
msgstr "Сетевое взаимодействие"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:225
msgid "Networking for FreeBSD jails can be configured several different ways:"
msgstr ""
"Сеть для клеток FreeBSD может быть настроена несколькими различными "
"способами:"

#. type: Labeled list
#: documentation/content/en/books/handbook/jails/_index.adoc:226
#, no-wrap
msgid "Host Networking Mode (IP Sharing)"
msgstr "Режим сетевого взаимодействия хоста (разделение IP)"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:230
msgid ""
"In host networking mode, a jail shares the same networking stack as the host "
"system.  When a jail is created in host networking mode it uses the same "
"network interface and IP address.  This means that the jail does not have a "
"separate IP address, and its network traffic is associated with the host's "
"IP."
msgstr ""
"В режиме сетевого взаимодействия хоста (host networking) клетка использует "
"тот же сетевой стек, что и хост-система. При создании клетки в этом режиме "
"она использует тот же сетевой интерфейс и IP-адрес. Это означает, что клетка "
"не имеет отдельного IP-адреса, и его сетевой трафик ассоциируется с IP-"
"адресом хоста."

#. type: Labeled list
#: documentation/content/en/books/handbook/jails/_index.adoc:231
#, no-wrap
msgid "Virtual Networks (VNET)"
msgstr "Виртуальные сети (VNET)"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:235
msgid ""
"Virtual Networks are a feature of FreeBSD jails that offer more advanced and "
"flexible networking solutions than a basic networking mode like host "
"networking.  VNET allows the creation of isolated network stacks for each "
"jail, providing them with their own separate IP addresses, routing tables, "
"and network interfaces.  This offers a higher level of network isolation and "
"allows jails to function as if they are running on separate virtual machines."
msgstr ""
"Виртуальные сети (VNET) — это функция клеток FreeBSD, предоставляющая более "
"продвинутые и гибкие сетевые решения по сравнению с базовыми режимами, "
"такими как режим сетевого взаимодействия хоста (host networking). VNET "
"позволяет создавать изолированные сетевые стеки для каждой клетки, "
"предоставляя им отдельные IP-адреса, таблицы маршрутизации и сетевые "
"интерфейсы. Это обеспечивает более высокий уровень сетевой изоляции и "
"позволяет клеткам функционировать так, как если бы они работали на отдельных "
"виртуальных машинах."

#. type: Labeled list
#: documentation/content/en/books/handbook/jails/_index.adoc:236
#, no-wrap
msgid "The netgraph system"
msgstr "Система netgraph"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:239
msgid ""
"man:netgraph[4] is a versatile kernel framework for creating custom network "
"configurations.  It can be used to define how network traffic flows between "
"jails and the host system and between different jails."
msgstr ""
"man:netgraph[4] — это универсальная инфраструктура ядра для создания "
"пользовательских сетевых конфигураций. Она может использоваться для "
"определения того, как сетевой трафик передаётся между клеткой и хост-"
"системой, а также между различными клетками."

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:241
#, no-wrap
msgid "Setting Up the Jail Directory Tree"
msgstr "Настройка дерева каталогов клетки"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:244
msgid "There is no specific place to put the files for the jails."
msgstr "Для файлов клеток не назначено какого-то заранее определённого места."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:247
msgid ""
"Some administrators use [.filename]#/jail#, others [.filename]#/usr/jail#, "
"and still others [.filename]#/usr/local/jails#.  In this chapter [."
"filename]#/usr/local/jails# will be used."
msgstr ""
"Некоторые администраторы используют [.filename]#/jail#, другие — [."
"filename]#/usr/jail#, а третьи — [.filename]#/usr/local/jails#. В этой главе "
"будет использоваться [.filename]#/usr/local/jails#."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:249
msgid ""
"Apart from [.filename]#/usr/local/jails# other directories will be created:"
msgstr ""
"Помимо каталога [.filename]#/usr/local/jails# будут созданы другие каталоги:"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:251
msgid ""
"[.filename]#media# will contain the compressed files of the downloaded "
"userlands."
msgstr ""
"[.filename]#media# будет содержать сжатые файлы загруженных пользовательских "
"окружений."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:252
msgid ""
"[.filename]#templates# will contain the templates when using Thin Jails."
msgstr ""
"[.filename]#templates# будет содержать шаблоны при использовании тонких "
"клеток."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:253
msgid "[.filename]#containers# will contain the jails."
msgstr "[.filename]#containers# будет содержать клетки."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:255
msgid ""
"When using OpenZFS, execute the following commands to create datasets for "
"these directories:"
msgstr ""
"При использовании OpenZFS выполните следующие команды для создания наборов "
"данных для этих каталогов:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:262
#, no-wrap
msgid ""
"# zfs create -o mountpoint=/usr/local/jails zroot/jails\n"
"# zfs create zroot/jails/media\n"
"# zfs create zroot/jails/templates\n"
"# zfs create zroot/jails/containers\n"
msgstr ""
"# zfs create -o mountpoint=/usr/local/jails zroot/jails\n"
"# zfs create zroot/jails/media\n"
"# zfs create zroot/jails/templates\n"
"# zfs create zroot/jails/containers\n"

#. type: delimited block = 4
#: documentation/content/en/books/handbook/jails/_index.adoc:267
msgid ""
"In this case, `zroot` was used for the parent dataset, but other datasets "
"could have been used."
msgstr ""
"В данном случае для родительского набора данных использовался `zroot`, но "
"могли быть использованы и другие наборы данных."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:270
msgid ""
"When using UFS, execute the following commands to create the directories:"
msgstr ""
"При использовании UFS выполните следующие команды для создания каталогов:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:277
#, no-wrap
msgid ""
"# mkdir /usr/local/jails/\n"
"# mkdir /usr/local/jails/media\n"
"# mkdir /usr/local/jails/templates\n"
"# mkdir /usr/local/jails/containers\n"
msgstr ""
"# mkdir /usr/local/jails/\n"
"# mkdir /usr/local/jails/media\n"
"# mkdir /usr/local/jails/templates\n"
"# mkdir /usr/local/jails/containers\n"

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:280
#, no-wrap
msgid "Jail Configuration Files"
msgstr "Файлы конфигурации клетки"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:283
msgid "There are two ways to configure jails."
msgstr "Существует два способа настройки клеток."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:286
msgid ""
"The first one is to add an entry for each jail to the file [.filename]#/etc/"
"jail.conf#.  The other option is to create a file for each jail in the "
"directory [.filename]#/etc/jail.conf.d/#."
msgstr ""
"Первый вариант — добавить запись для каждой клетки в файл [.filename]#/etc/"
"jail.conf#. Другой вариант — создать отдельный файл для каждой клетки в "
"каталоге [.filename]#/etc/jail.conf.d/#."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:289
msgid ""
"In case a host system has few jails, an entry for each jail can be added in "
"the file [.filename]#/etc/jail.conf#.  If the host system has many jails, it "
"is a good idea to have one configuration file for each jail in the [."
"filename]#/etc/jail.conf.d/# directory."
msgstr ""
"В случае, если на хост-системе мало клеток, записи для каждого клетки можно "
"добавить в файл [.filename]#/etc/jail.conf#. Если на хост-системе много "
"клеток, рекомендуется создать отдельный конфигурационный файл для каждой "
"клетки в каталоге [.filename]#/etc/jail.conf.d/#."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:291
msgid ""
"The files in [.filename]#/etc/jail.conf.d/# must have `.conf` as their "
"extension and have to be included in [.filename]#/etc/jail.conf#:"
msgstr ""
"Файлы в [.filename]#/etc/jail.conf.d/# должны иметь расширение `.conf`, и их "
"необходимо подключить в [.filename]#/etc/jail.conf#:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:295
#, no-wrap
msgid ".include \"/etc/jail.conf.d/*.conf\";\n"
msgstr ".include \"/etc/jail.conf.d/*.conf\";\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:298
msgid "A typical jail entry would look like this:"
msgstr "Типичная запись с настройками клетки выглядит следующим образом:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:306
#, no-wrap
msgid ""
"jailname { <.>\n"
"  # STARTUP/LOGGING\n"
"  exec.start = \"/bin/sh /etc/rc\"; <.>\n"
"  exec.stop = \"/bin/sh /etc/rc.shutdown\"; <.>\n"
"  exec.consolelog = \"/var/log/jail_console_${name}.log\"; <.>\n"
msgstr ""
"jailname { <.>\n"
"  # STARTUP/LOGGING\n"
"  exec.start = \"/bin/sh /etc/rc\"; <.>\n"
"  exec.stop = \"/bin/sh /etc/rc.shutdown\"; <.>\n"
"  exec.consolelog = \"/var/log/jail_console_${name}.log\"; <.>\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:311
#, no-wrap
msgid ""
"  # PERMISSIONS\n"
"  allow.raw_sockets; <.>\n"
"  exec.clean; <.>\n"
"  mount.devfs; <.>\n"
msgstr ""
"  # PERMISSIONS\n"
"  allow.raw_sockets; <.>\n"
"  exec.clean; <.>\n"
"  mount.devfs; <.>\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:315
#, no-wrap
msgid ""
"  # HOSTNAME/PATH\n"
"  host.hostname = \"${name}\"; <.>\n"
"  path = \"/usr/local/jails/containers/${name}\"; <.>\n"
msgstr ""
"  # HOSTNAME/PATH\n"
"  host.hostname = \"${name}\"; <.>\n"
"  path = \"/usr/local/jails/containers/${name}\"; <.>\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:321
#, no-wrap
msgid ""
"  # NETWORK\n"
"  ip4.addr = 192.168.1.151; <.>\n"
"  ip6.addr = ::ffff:c0a8:197 <.>\n"
"  interface = em0; <.>\n"
"}\n"
msgstr ""
"  # NETWORK\n"
"  ip4.addr = 192.168.1.151; <.>\n"
"  ip6.addr = ::ffff:c0a8:197 <.>\n"
"  interface = em0; <.>\n"
"}\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:324
msgid "`jailname` - Name of the jail."
msgstr "`jailname` — имя клетки."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:326
msgid ""
"`exec.start` - Command(s) to run in the jail environment when a jail is "
"created.  A typical command to run is \"/bin/sh /etc/rc\"."
msgstr ""
"`exec.start` — команда(ы), выполняемые в среде клетки при её создании. "
"Типичная команда для выполнения — \"/bin/sh /etc/rc\"."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:328
msgid ""
"`exec.stop` - Command(s) to run in the jail environment before a jail is "
"removed.  A typical command to run is \"/bin/sh /etc/rc.shutdown\"."
msgstr ""
"`exec.stop` — команда(ы), выполняемые в среде клетки перед её удалением. "
"Типичная команда для выполнения — \"/bin/sh /etc/rc.shutdown\"."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:329
msgid ""
"`exec.consolelog` - A file to direct command output (stdout and stderr) to."
msgstr ""
"`exec.consolelog` — файл для вывода результатов выполнения команды (stdout и "
"stderr)."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:331
msgid ""
"`allow.raw_sockets` - Allow creating raw sockets inside the jail.  Setting "
"this parameter allows utilities like man:ping[8] and man:traceroute[8] to "
"operate inside the jail."
msgstr ""
"`allow.raw_sockets` — разрешает создание raw-сокетов внутри клетки. "
"Установка этого параметра позволяет использовать такие утилиты, как man:"
"ping[8] и man:traceroute[8], внутри клетки."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:332
msgid "`exec.clean` - Run commands in a clean environment."
msgstr "`exec.clean` — выполнение команд в чистом окружении."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:333
msgid ""
"`mount.devfs` - Mount a man:devfs[5] filesystem on the chrooted [.filename]#/"
"dev# directory, and apply the ruleset in the devfs_ruleset parameter to "
"restrict the devices visible inside the jail."
msgstr ""
"`mount.devfs` — подключает файловую систему man:devfs[5] в каталоге [."
"filename]#/dev# внутри chroot и применяет набор правил из параметра "
"devfs_ruleset, чтобы ограничить видимость устройств внутри клетки."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:334
msgid "`host.hostname` - The hostname of the jail."
msgstr "`host.hostname` — имя хоста для клетки."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:336
msgid ""
"`path` - The directory which is to be the root of the jail.  Any commands "
"that are run inside the jail, either by jail or from man:jexec[8], are run "
"from this directory."
msgstr ""
"`path` — каталог, который будет корневым для клетки. Любые команды, "
"выполняемые внутри клетки, либо с помощью `jail`, либо через man:jexec[8], "
"запускаются из этого каталога."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:340
msgid ""
"`ip4.addr` - IPv4 address.  There are two configuration possibilities for "
"IPv4.  The first is to establish an IP or a list of IPs as has been done in "
"the example.  The other is to use `ip4` instead and set the `inherit` value "
"to inherit the host's IP address."
msgstr ""
"`ip4.addr` — IPv4-адрес. Существует два варианта настройки IPv4. Первый — "
"указать IP-адрес или список IP-адресов, как показано в примере. Второй — "
"использовать параметр `ip4` со значением `inherit`, чтобы унаследовать IP-"
"адрес хоста."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:344
msgid ""
"`ip6.addr` - IPv6 address.  There are two configuration possibilities for "
"IPv6.  The first is to establish an IP or a list of IPs as has been done in "
"the example.  The other is to use `ip6` instead and set the `inherit` value "
"to inherit the host's IP address."
msgstr ""
"`ip6.addr` — IPv6-адрес. Существует два варианта настройки для IPv6. Первый "
"— указать IP или список IP, как это сделано в примере. Второй — использовать "
"`ip6` и установить значение `inherit` для наследования IP-адреса хоста."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:346
msgid ""
"`interface` - A network interface to add the jail's IP addresses.  Usually "
"the host interface."
msgstr ""
"`interface` — Сетевой интерфейс для добавления IP-адресов клетки. Обычно это "
"интерфейс хоста."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:348
msgid ""
"More information about configuration variables can be found in man:jail[8] "
"and man:jail.conf[5]."
msgstr ""
"Дополнительную информацию о переменных конфигурации можно найти в man:"
"jail[8] и man:jail.conf[5]."

#. type: Title ==
#: documentation/content/en/books/handbook/jails/_index.adoc:350
#, no-wrap
msgid "Classic Jail (Thick Jail)"
msgstr "Классическая клетка (Толстая клетка)"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:354
msgid ""
"These jails resemble a real FreeBSD system.  They can be managed more or "
"less like a normal host system and updated independently."
msgstr ""
"Эти клетки напоминают настоящую систему FreeBSD. Ими можно управлять почти "
"так же, как обычной хост-системой, и обновлять независимо."

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:356
#, no-wrap
msgid "Creating a Classic Jail"
msgstr "Создание классической клетки"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:359
msgid ""
"In principle, a jail only needs a hostname, a root directory, an IP address, "
"and a userland."
msgstr ""
"В принципе, для клетки требуется только имя хоста, корневой каталог, IP-"
"адрес и пользовательское пространство."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:361
msgid ""
"The userland for the jail can be obtained from the official FreeBSD download "
"servers."
msgstr ""
"Пользовательское окружение для клетки можно получить с официальных серверов "
"загрузки FreeBSD."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:363
msgid "Execute the following command to download the userland:"
msgstr ""
"Выполните следующую команду, чтобы загрузить пользовательское окружение:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:367
#: documentation/content/en/books/handbook/jails/_index.adoc:462
#: documentation/content/en/books/handbook/jails/_index.adoc:566
#, no-wrap
msgid "# fetch https://download.freebsd.org/ftp/releases/amd64/amd64/{rel-latest}-RELEASE/base.txz -o /usr/local/jails/media/{rel-latest}-RELEASE-base.txz\n"
msgstr "# fetch https://download.freebsd.org/ftp/releases/amd64/amd64/{rel-latest}-RELEASE/base.txz -o /usr/local/jails/media/{rel-latest}-RELEASE-base.txz\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:370
msgid ""
"Once the download is complete, it will be necessary to extract the contents "
"into the jail directory."
msgstr ""
"После завершения загрузки необходимо извлечь содержимое в каталог клетки."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:372
msgid ""
"Execute the following commands to extract the userland into the jail's "
"directory:"
msgstr ""
"Выполните следующие команды, чтобы извлечь пользовательское окружение в "
"каталог клетки:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:377
#, no-wrap
msgid ""
"# mkdir -p /usr/local/jails/containers/classic\n"
"# tar -xf /usr/local/jails/media/{rel-latest}-RELEASE-base.txz -C /usr/local/jails/containers/classic --unlink\n"
msgstr ""
"# mkdir -p /usr/local/jails/containers/classic\n"
"# tar -xf /usr/local/jails/media/{rel-latest}-RELEASE-base.txz -C /usr/local/jails/containers/classic --unlink\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:380
msgid ""
"With the userland extracted in the jail directory, it will be necessary to "
"copy the timezone and DNS server files:"
msgstr ""
"С извлечённой пользовательской средой в каталоге клетки потребуется "
"скопировать файлы часового пояса и DNS-сервера:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:385
#, no-wrap
msgid ""
"# cp /etc/resolv.conf /usr/local/jails/containers/classic/etc/resolv.conf\n"
"# cp /etc/localtime /usr/local/jails/containers/classic/etc/localtime\n"
msgstr ""
"# cp /etc/resolv.conf /usr/local/jails/containers/classic/etc/resolv.conf\n"
"# cp /etc/localtime /usr/local/jails/containers/classic/etc/localtime\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:388
msgid ""
"With the files copied, the next thing to do is update to the latest patch "
"level by executing the following command:"
msgstr ""
"Скопировав файлы, следующим шагом будет обновление до последнего уровня "
"исправлений с помощью выполнения следующей команды:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:392
#, no-wrap
msgid "# freebsd-update -b /usr/local/jails/containers/classic/ fetch install\n"
msgstr "# freebsd-update -b /usr/local/jails/containers/classic/ fetch install\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:396
#: documentation/content/en/books/handbook/jails/_index.adoc:506
msgid ""
"The last step is to configure the jail.  It will be necessary to add an "
"entry to the configuration file [.filename]#/etc/jail.conf# or in [."
"filename]#jail.conf.d# with the parameters of the jail."
msgstr ""
"Последним шагом является настройка клетки. Необходимо добавить запись в "
"конфигурационный файл [.filename]#/etc/jail.conf# или в [.filename]#jail."
"conf.d# с параметрами клетки."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:398
#: documentation/content/en/books/handbook/jails/_index.adoc:508
msgid "An example would be the following:"
msgstr "Пример может выглядеть следующим образом:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:406
#, no-wrap
msgid ""
"classic {\n"
"  # STARTUP/LOGGING\n"
"  exec.start = \"/bin/sh /etc/rc\";\n"
"  exec.stop = \"/bin/sh /etc/rc.shutdown\";\n"
"  exec.consolelog = \"/var/log/jail_console_${name}.log\";\n"
msgstr ""
"classic {\n"
"  # STARTUP/LOGGING\n"
"  exec.start = \"/bin/sh /etc/rc\";\n"
"  exec.stop = \"/bin/sh /etc/rc.shutdown\";\n"
"  exec.consolelog = \"/var/log/jail_console_${name}.log\";\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:411
#: documentation/content/en/books/handbook/jails/_index.adoc:521
#: documentation/content/en/books/handbook/jails/_index.adoc:675
#, no-wrap
msgid ""
"  # PERMISSIONS\n"
"  allow.raw_sockets;\n"
"  exec.clean;\n"
"  mount.devfs;\n"
msgstr ""
"  # PERMISSIONS\n"
"  allow.raw_sockets;\n"
"  exec.clean;\n"
"  mount.devfs;\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:415
#: documentation/content/en/books/handbook/jails/_index.adoc:525
#: documentation/content/en/books/handbook/jails/_index.adoc:890
#, no-wrap
msgid ""
"  # HOSTNAME/PATH\n"
"  host.hostname = \"${name}\";\n"
"  path = \"/usr/local/jails/containers/${name}\";\n"
msgstr ""
"  # HOSTNAME/PATH\n"
"  host.hostname = \"${name}\";\n"
"  path = \"/usr/local/jails/containers/${name}\";\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:420
#, no-wrap
msgid ""
"  # NETWORK\n"
"  ip4.addr = 192.168.1.151;\n"
"  interface = em0;\n"
"}\n"
msgstr ""
"  # NETWORK\n"
"  ip4.addr = 192.168.1.151;\n"
"  interface = em0;\n"
"}\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:423
#: documentation/content/en/books/handbook/jails/_index.adoc:533
#: documentation/content/en/books/handbook/jails/_index.adoc:698
msgid "Execute the following command to start the jail:"
msgstr "Выполните следующую команду для запуска клетки:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:427
#, no-wrap
msgid "# service jail start classic\n"
msgstr "# service jail start classic\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:430
#: documentation/content/en/books/handbook/jails/_index.adoc:541
msgid ""
"More information on how to manage jails can be found in the section crossref:"
"jails[jail-management, Jail Management]."
msgstr ""
"Дополнительная информация об управлении клетками приведена в разделе "
"crossref:jails[jail-management,Управление клетками]."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:438
msgid ""
"Although Thin Jails use the same technology as Thick Jails, the creation "
"procedure is different.  Thin jails can be created using OpenZFS snapshots "
"or using templates and NullFS.  The use of OpenZFS snapshots and templates "
"using NullFS have certain advantages over classic jails, such as being able "
"to create them faster from snapshots or being able to update multiple jails "
"using NullFS."
msgstr ""
"Хотя тонкие клетки используют ту же технологию, что и толстые клетки, "
"процедура их создания отличается. Тонкие клетки можно создавать с "
"использованием снимков OpenZFS или шаблонов и NullFS. Использование снимков "
"OpenZFS и шаблонов с NullFS имеет определённые преимущества перед "
"классическими клетками, например, возможность быстрого создания из снимков "
"или обновления нескольких клеток с помощью NullFS."

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:440
#, no-wrap
msgid "Creating a Thin Jail Using OpenZFS Snapshots"
msgstr "Создание тонкой клетки с использованием снимков OpenZFS"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:443
msgid ""
"Due to the good integration between FreeBSD and OpenZFS it is very easy to "
"create new Thin Jails using OpenZFS Snapshots."
msgstr ""
"Благодаря хорошей интеграции между FreeBSD и OpenZFS создание новых тонких "
"клеток с использованием снимков OpenZFS очень просто."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:445
msgid ""
"To create a Thin Jail using OpenZFS Snapshots the first step is to create "
"the jail directory tree by following the instructions in crossref:jails[host-"
"configuration-directories, \"Setting up the Jail Directory Tree\"]."
msgstr ""
"Для создания тонкой клетки с использованием снимков OpenZFS первым шагом "
"является создание дерева каталогов клетки, следуя инструкциям в разделе "
"crossref:jails[host-configuration-directories, \"Настройка дерева каталогов "
"клетки\"]."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:449
msgid ""
"Next, create a template.  Templates will only be used to create new jails.  "
"For this reason they are created in \"read-only\" mode so that jails are "
"created with an immutable base."
msgstr ""
"Далее создайте шаблон. Шаблоны будут использоваться только для создания "
"новых клеток. По этой причине они создаются в режиме \"только для чтения\", "
"чтобы клетки создавались на неизменяемой основе."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:451
msgid "To create the dataset for the template, execute the following command:"
msgstr "Для создания набора данных для шаблона выполните следующую команду:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:455
#, no-wrap
msgid "# zfs create -p zroot/jails/templates/{rel-latest}-RELEASE\n"
msgstr "# zfs create -p zroot/jails/templates/{rel-latest}-RELEASE\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:458
#: documentation/content/en/books/handbook/jails/_index.adoc:562
msgid "Then execute the following command to download the userland:"
msgstr "Затем выполните следующую команду для загрузки пользовательской среды:"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:465
#: documentation/content/en/books/handbook/jails/_index.adoc:569
msgid ""
"Once the download is complete, it will be necessary to extract the contents "
"in the template directory by executing the following command:"
msgstr ""
"После завершения загрузки необходимо извлечь содержимое в каталог шаблона, "
"выполнив следующую команду:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:469
#, no-wrap
msgid "# tar -xf /usr/local/jails/media/{rel-latest}-RELEASE-base.txz -C /usr/local/jails/templates/{rel-latest}-RELEASE --unlink\n"
msgstr "# tar -xf /usr/local/jails/media/{rel-latest}-RELEASE-base.txz -C /usr/local/jails/templates/{rel-latest}-RELEASE --unlink\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:472
msgid ""
"With the userland extracted in the templates directory, it will be necessary "
"to copy the timezone and DNS server files to the template directory by "
"executing the following command:"
msgstr ""
"Когда пользовательская среда записана в каталог шаблонов, необходимо "
"скопировать файлы часового пояса и DNS-сервера в каталог шаблона, выполнив "
"следующую команду:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:477
#, no-wrap
msgid ""
"# cp /etc/resolv.conf /usr/local/jails/templates/{rel-latest}-RELEASE/etc/resolv.conf\n"
"# cp /etc/localtime /usr/local/jails/templates/{rel-latest}-RELEASE/etc/localtime\n"
msgstr ""
"# cp /etc/resolv.conf /usr/local/jails/templates/{rel-latest}-RELEASE/etc/resolv.conf\n"
"# cp /etc/localtime /usr/local/jails/templates/{rel-latest}-RELEASE/etc/localtime\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:480
msgid ""
"The next thing to do is update to the latest patch level by executing the "
"following command:"
msgstr ""
"Следующее, что нужно сделать, — обновиться до последнего уровня исправлений, "
"выполнив следующую команду:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:484
#, no-wrap
msgid "# freebsd-update -b /usr/local/jails/templates/{rel-latest}-RELEASE/ fetch install\n"
msgstr "# freebsd-update -b /usr/local/jails/templates/{rel-latest}-RELEASE/ fetch install\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:487
msgid "Once the update is finished, the template is ready."
msgstr "После завершения обновления шаблон готов."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:489
msgid ""
"To create an OpenZFS Snapshot from the template, execute the following "
"command:"
msgstr "Для создания снимка OpenZFS из шаблона выполните следующую команду:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:493
#, no-wrap
msgid "# zfs snapshot zroot/jails/templates/{rel-latest}-RELEASE@base\n"
msgstr "# zfs snapshot zroot/jails/templates/{rel-latest}-RELEASE@base\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:496
msgid ""
"Once the OpenZFS Snapshot has been created, infinite jails can be created "
"using the OpenZFS clone function."
msgstr ""
"После создания снимка OpenZFS можно создавать бесконечное количество клеток "
"с помощью функции клонирования OpenZFS."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:498
msgid "To create a Thin Jail named `thinjail`, execute the following command:"
msgstr ""
"Для создания тонкой клетки с именем `thinjail` выполните следующую команду:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:502
#, no-wrap
msgid "# zfs clone zroot/jails/templates/{rel-latest}-RELEASE@base zroot/jails/containers/thinjail\n"
msgstr "# zfs clone zroot/jails/templates/{rel-latest}-RELEASE@base zroot/jails/containers/thinjail\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:516
#: documentation/content/en/books/handbook/jails/_index.adoc:670
#, no-wrap
msgid ""
"thinjail {\n"
"  # STARTUP/LOGGING\n"
"  exec.start = \"/bin/sh /etc/rc\";\n"
"  exec.stop = \"/bin/sh /etc/rc.shutdown\";\n"
"  exec.consolelog = \"/var/log/jail_console_${name}.log\";\n"
msgstr ""
"thinjail {\n"
"  # STARTUP/LOGGING\n"
"  exec.start = \"/bin/sh /etc/rc\";\n"
"  exec.stop = \"/bin/sh /etc/rc.shutdown\";\n"
"  exec.consolelog = \"/var/log/jail_console_${name}.log\";\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:530
#, no-wrap
msgid ""
"  # NETWORK\n"
"  ip4 = inherit;\n"
"  interface = em0;\n"
"}\n"
msgstr ""
"  # NETWORK\n"
"  ip4 = inherit;\n"
"  interface = em0;\n"
"}\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:537
#: documentation/content/en/books/handbook/jails/_index.adoc:702
#, no-wrap
msgid "# service jail start thinjail\n"
msgstr "# service jail start thinjail\n"

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:543
#, no-wrap
msgid "Creating a Thin Jail Using NullFS"
msgstr "Создание тонкой клетки с использованием NullFS"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:546
msgid ""
"A jail can be created with reduced duplication of system files by using the "
"Thin Jail technique and using NullFS to selectively share specific "
"directories from the host system into the jail."
msgstr ""
"Клетка может быть создана с уменьшенным дублированием системных файлов с "
"использованием техники тонкой клетки и NullFS для выборочного совместного "
"использования определённых каталогов из хост-системы в клетке."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:548
msgid ""
"The first step is to create the dataset to save the template, execute the "
"following command if using OpenZFS:"
msgstr ""
"Первым шагом является создание набора данных для сохранения шаблона, "
"выполните следующую команду, если используется OpenZFS:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:552
#, no-wrap
msgid "# zfs create -p zroot/jails/templates/{rel-latest}-RELEASE-base\n"
msgstr "# zfs create -p zroot/jails/templates/{rel-latest}-RELEASE-base\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:555
msgid "Or this one if using UFS:"
msgstr "Или эту, если используется UFS:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:559
#, no-wrap
msgid "# mkdir /usr/local/jails/templates/{rel-latest}-RELEASE-base\n"
msgstr "# mkdir /usr/local/jails/templates/{rel-latest}-RELEASE-base\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:573
#, no-wrap
msgid "# tar -xf /usr/local/jails/media/{rel-latest}-RELEASE-base.txz -C /usr/local/jails/templates/{rel-latest}-RELEASE-base --unlink\n"
msgstr "# tar -xf /usr/local/jails/media/{rel-latest}-RELEASE-base.txz -C /usr/local/jails/templates/{rel-latest}-RELEASE-base --unlink\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:576
msgid ""
"Once the userland is extracted in the templates directory, it will be "
"necessary to copy the timezone and DNS server files to the template "
"directory by executing the following command:"
msgstr ""
"Когда пользовательская среда записана в каталог шаблонов, необходимо "
"скопировать файлы часового пояса и DNS-сервера в каталог шаблона, выполнив "
"следующую команду:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:581
#, no-wrap
msgid ""
"# cp /etc/resolv.conf /usr/local/jails/templates/{rel-latest}-RELEASE-base/etc/resolv.conf\n"
"# cp /etc/localtime /usr/local/jails/templates/{rel-latest}-RELEASE-base/etc/localtime\n"
msgstr ""
"# cp /etc/resolv.conf /usr/local/jails/templates/{rel-latest}-RELEASE-base/etc/resolv.conf\n"
"# cp /etc/localtime /usr/local/jails/templates/{rel-latest}-RELEASE-base/etc/localtime\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:584
msgid ""
"With the files moved to the template, the next thing to do is update to the "
"latest patch level by executing the following command:"
msgstr ""
"После перемещения файлов в шаблон следующим шагом будет обновление до "
"последнего уровня исправлений с помощью выполнения следующей команды:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:588
#, no-wrap
msgid "# freebsd-update -b /usr/local/jails/templates/{rel-latest}-RELEASE-base/ fetch install\n"
msgstr "# freebsd-update -b /usr/local/jails/templates/{rel-latest}-RELEASE-base/ fetch install\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:592
msgid ""
"In addition to the base template, it is also necessary to create a directory "
"where the `skeleton` will be located.  Some directories will be copied from "
"the template to the `skeleton`."
msgstr ""
"В дополнение к базовому шаблону также необходимо создать каталог, где будет "
"располагаться `skeleton`. Некоторые каталоги будут скопированы из шаблона в "
"`skeleton`."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:594
msgid ""
"Execute the following command to create the dataset for the `skeleton` in "
"case of using OpenZFS:"
msgstr ""
"Выполните следующую команду, чтобы создать набор данных для `skeleton` в "
"случае использования OpenZFS:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:598
#, no-wrap
msgid "# zfs create -p zroot/jails/templates/{rel-latest}-RELEASE-skeleton\n"
msgstr "# zfs create -p zroot/jails/templates/{rel-latest}-RELEASE-skeleton\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:601
msgid "Or this one in case of using UFS:"
msgstr "Или эту в случае использования UFS:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:605
#, no-wrap
msgid "# mkdir /usr/local/jails/templates/{rel-latest}-RELEASE-skeleton\n"
msgstr "# mkdir /usr/local/jails/templates/{rel-latest}-RELEASE-skeleton\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:609
msgid ""
"Then create the `skeleton` directories.  The `skeleton` directories will "
"hold the local directories of the jails."
msgstr ""
"Затем создайте `skeleton`-каталоги. `Skeleton`-каталоги будут содержать "
"локальные каталоги для клеток."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:611
msgid "Execute the following commands to create the directories:"
msgstr "Выполните следующие команды для создания каталогов:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:621
#, no-wrap
msgid ""
"# mkdir -p /usr/local/jails/templates/{rel-latest}-RELEASE-skeleton/home\n"
"# mkdir -p /usr/local/jails/templates/{rel-latest}-RELEASE-skeleton/usr\n"
"# mv /usr/local/jails/templates/{rel-latest}-RELEASE-base/etc /usr/local/jails/templates/{rel-latest}-RELEASE-skeleton/etc\n"
"# mv /usr/local/jails/templates/{rel-latest}-RELEASE-base/usr/local /usr/local/jails/templates/{rel-latest}-RELEASE-skeleton/usr/local\n"
"# mv /usr/local/jails/templates/{rel-latest}-RELEASE-base/tmp /usr/local/jails/templates/{rel-latest}-RELEASE-skeleton/tmp\n"
"# mv /usr/local/jails/templates/{rel-latest}-RELEASE-base/var /usr/local/jails/templates/{rel-latest}-RELEASE-skeleton/var\n"
"# mv /usr/local/jails/templates/{rel-latest}-RELEASE-base/root /usr/local/jails/templates/{rel-latest}-RELEASE-skeleton/root\n"
msgstr ""
"# mkdir -p /usr/local/jails/templates/{rel-latest}-RELEASE-skeleton/home\n"
"# mkdir -p /usr/local/jails/templates/{rel-latest}-RELEASE-skeleton/usr\n"
"# mv /usr/local/jails/templates/{rel-latest}-RELEASE-base/etc /usr/local/jails/templates/{rel-latest}-RELEASE-skeleton/etc\n"
"# mv /usr/local/jails/templates/{rel-latest}-RELEASE-base/usr/local /usr/local/jails/templates/{rel-latest}-RELEASE-skeleton/usr/local\n"
"# mv /usr/local/jails/templates/{rel-latest}-RELEASE-base/tmp /usr/local/jails/templates/{rel-latest}-RELEASE-skeleton/tmp\n"
"# mv /usr/local/jails/templates/{rel-latest}-RELEASE-base/var /usr/local/jails/templates/{rel-latest}-RELEASE-skeleton/var\n"
"# mv /usr/local/jails/templates/{rel-latest}-RELEASE-base/root /usr/local/jails/templates/{rel-latest}-RELEASE-skeleton/root\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:624
msgid ""
"The next step is to create the symlinks to the `skeleton` by executing the "
"following commands:"
msgstr ""
"Следующий шаг — создать символьные ссылки на `skeleton`, выполнив следующие "
"команды:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:635
#, no-wrap
msgid ""
"# cd /usr/local/jails/templates/{rel-latest}-RELEASE-base/\n"
"# mkdir skeleton\n"
"# ln -s skeleton/etc etc\n"
"# ln -s skeleton/home home\n"
"# ln -s skeleton/root root\n"
"# ln -s ../skeleton/usr/local usr/local\n"
"# ln -s skeleton/tmp tmp\n"
"# ln -s skeleton/var var\n"
msgstr ""
"# cd /usr/local/jails/templates/{rel-latest}-RELEASE-base/\n"
"# mkdir skeleton\n"
"# ln -s skeleton/etc etc\n"
"# ln -s skeleton/home home\n"
"# ln -s skeleton/root root\n"
"# ln -s ../skeleton/usr/local usr/local\n"
"# ln -s skeleton/tmp tmp\n"
"# ln -s skeleton/var var\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:638
msgid ""
"With the `skeleton` ready, it will be necessary to copy the data to the jail "
"directory."
msgstr "Когда `skeleton` готов, необходимо скопировать данные в клетку."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:640
msgid ""
"In case of using OpenZFS, OpenZFS snapshots can be used to easily create as "
"many jails as necessary by executing the following commands:"
msgstr ""
"В случае использования OpenZFS, снимки OpenZFS могут быть использованы для "
"простого создания необходимого количества клеток с помощью выполнения "
"следующих команд:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:645
#, no-wrap
msgid ""
"# zfs snapshot zroot/jails/templates/{rel-latest}-RELEASE-skeleton@base\n"
"# zfs clone zroot/jails/templates/{rel-latest}-RELEASE-skeleton@base zroot/jails/containers/thinjail\n"
msgstr ""
"# zfs snapshot zroot/jails/templates/{rel-latest}-RELEASE-skeleton@base\n"
"# zfs clone zroot/jails/templates/{rel-latest}-RELEASE-skeleton@base zroot/jails/containers/thinjail\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:648
msgid ""
"In case of using UFS the man:cp[1] program can be used by executing the "
"following command:"
msgstr ""
"В случае использования UFS можно использовать программу man:cp[1], выполнив "
"следующую команду:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:652
#, no-wrap
msgid "# cp -R /usr/local/jails/templates/{rel-latest}-RELEASE-skeleton /usr/local/jails/containers/thinjail\n"
msgstr "# cp -R /usr/local/jails/templates/{rel-latest}-RELEASE-skeleton /usr/local/jails/containers/thinjail\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:655
msgid ""
"Then create the directory in which the base template and the skeleton will "
"be mounted:"
msgstr ""
"Затем создайте каталог, в котором будут смонтированы базовый шаблон и "
"skeleton:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:659
#, no-wrap
msgid "# mkdir -p /usr/local/jails/thinjail-nullfs-base\n"
msgstr "# mkdir -p /usr/local/jails/thinjail-nullfs-base\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:662
msgid ""
"Add a jail entry in [.filename]#/etc/jail.conf# or a file in [."
"filename]#jail.conf.d# as follows:"
msgstr ""
"Добавьте запись о клетке в [.filename]#/etc/jail.conf# или файл в [."
"filename]#jail.conf.d# следующим образом:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:679
#, no-wrap
msgid ""
"  # HOSTNAME/PATH\n"
"  host.hostname = \"${name}\";\n"
"  path = \"/usr/local/jails/${name}-nullfs-base\";\n"
msgstr ""
"  # HOSTNAME/PATH\n"
"  host.hostname = \"${name}\";\n"
"  path = \"/usr/local/jails/${name}-nullfs-base\";\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:683
#, no-wrap
msgid ""
"  # NETWORK\n"
"  ip4.addr = 192.168.1.153;\n"
"  interface = em0;\n"
msgstr ""
"  # NETWORK\n"
"  ip4.addr = 192.168.1.153;\n"
"  interface = em0;\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:687
#, no-wrap
msgid ""
"  # MOUNT\n"
"  mount.fstab = \"/usr/local/jails/${name}-nullfs-base.fstab\";\n"
"}\n"
msgstr ""
"  # MOUNT\n"
"  mount.fstab = \"/usr/local/jails/${name}-nullfs-base.fstab\";\n"
"}\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:690
msgid ""
"Then the create the [.filename]#/usr/local/jails/thinjail-nullfs-base.fstab# "
"file as follows:"
msgstr ""
"Затем создайте файл [.filename]#/usr/local/jails/thinjail-nullfs-base.fstab# "
"следующего содержания:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:695
#, no-wrap
msgid ""
"/usr/local/jails/templates/{rel-latest}-RELEASE-base  /usr/local/jails/thinjail-nullfs-base/ nullfs   ro          0 0\n"
"/usr/local/jails/containers/thinjail     /usr/local/jails/thinjail-nullfs-base/skeleton nullfs  rw  0 0\n"
msgstr ""
"/usr/local/jails/templates/{rel-latest}-RELEASE-base  /usr/local/jails/thinjail-nullfs-base/ nullfs   ro          0 0\n"
"/usr/local/jails/containers/thinjail     /usr/local/jails/thinjail-nullfs-base/skeleton nullfs  rw  0 0\n"

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:705
#, no-wrap
msgid "Creating a VNET Jail"
msgstr "Создание клетки VNET"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:708
msgid ""
"FreeBSD VNET Jails have their own distinct networking stack, including "
"interfaces, IP addresses, routing tables, and firewall rules."
msgstr ""
"В клетках FreeBSD VNET используется отдельный сетевой стек, включающий "
"интерфейсы, IP-адреса, таблицы маршрутизации и правила межсетевого экрана."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:710
msgid ""
"The first step to create a VNET jail is to create the man:bridge[4] by "
"executing the following command:"
msgstr ""
"Первым шагом для создания VNET-клетки является создание man:bridge[4] с "
"помощью выполнения следующей команды:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:714
#, no-wrap
msgid "# ifconfig bridge create\n"
msgstr "# ifconfig bridge create\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:717
#: documentation/content/en/books/handbook/jails/_index.adoc:982
#: documentation/content/en/books/handbook/jails/_index.adoc:998
msgid "The output should be similar to the following:"
msgstr "Вывод должен быть похож на следующий:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:721
#, no-wrap
msgid "bridge0\n"
msgstr "bridge0\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:724
msgid ""
"With the `bridge` created, it will be necessary to attach it to the `em0` "
"interface and bring both of them up by executing the following commands:"
msgstr ""
"Создав `bridge`, необходимо подключить его к интерфейсу `em0` и включить "
"оба, выполнив следующие команды:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:729
#, no-wrap
msgid ""
"# ifconfig bridge0 addm em0 up\n"
"# ifconfig em0 up\n"
msgstr ""
"# ifconfig bridge0 addm em0 up\n"
"# ifconfig em0 up\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:732
msgid ""
"To make this setting persist across reboots, add the following lines to [."
"filename]#/etc/rc.conf#:"
msgstr ""
"Чтобы сохранить этот параметр после перезагрузки, добавьте следующие строки "
"в [.filename]#/etc/rc.conf#:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:739
#, no-wrap
msgid ""
"defaultrouter=\"192.168.1.1\"\n"
"cloned_interfaces=\"bridge0\"\n"
"ifconfig_bridge0=\"inet 192.168.1.150/24 addm em0 up\"\n"
"ifconfig_em0=\"up\"\n"
msgstr ""
"defaultrouter=\"192.168.1.1\"\n"
"cloned_interfaces=\"bridge0\"\n"
"ifconfig_bridge0=\"inet 192.168.1.150/24 addm em0 up\"\n"
"ifconfig_em0=\"up\"\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:742
msgid ""
"For more information on bridging, see crossref:advanced-networking[network-"
"bridging, Network Bridging]."
msgstr ""
"Для получения дополнительной информации о мостах см. crossref:advanced-"
"networking[network-bridging, Сетевые мосты]."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:744
msgid "The next step is to create the jail as indicated above."
msgstr "Следующий шаг — создать клетку, как указано выше."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:748
msgid ""
"Either the crossref:jails[classic-jail, Classic Jail (Thick Jail)] procedure "
"and the crossref:jails[thin-jail, Thin Jails] procedure can be used.  The "
"only thing that will change is the configuration in the [.filename]#/etc/"
"jail.conf# file."
msgstr ""
"Можно использовать как процедуру crossref:jails[classic-jail, Классической "
"Клетки (Толстой клетки)], так и процедуру crossref:jails[thin-jail, Тонких "
"Клеток]. Единственное, что изменится — это конфигурация в файле [.filename]#/"
"etc/jail.conf#."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:750
msgid ""
"The path [.filename]#/usr/local/jails/containers/vnet# will be used as an "
"example for the created jail."
msgstr ""
"В качестве примера для созданной клетки будет использоваться путь [."
"filename]#/usr/local/jails/containers/vnet#."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:752
msgid "The following is an example configuration for a VNET jail:"
msgstr "Вот пример конфигурации для VNET-клетки:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:758
#, no-wrap
msgid ""
"vnet {\n"
"  # STARTUP/LOGGING\n"
"  exec.consolelog = \"/var/log/jail_console_${name}.log\";\n"
msgstr ""
"vnet {\n"
"  # STARTUP/LOGGING\n"
"  exec.consolelog = \"/var/log/jail_console_${name}.log\";\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:764
#, no-wrap
msgid ""
"  # PERMISSIONS\n"
"  allow.raw_sockets;\n"
"  exec.clean;\n"
"  mount.devfs;\n"
"  devfs_ruleset = 5;\n"
msgstr ""
"  # PERMISSIONS\n"
"  allow.raw_sockets;\n"
"  exec.clean;\n"
"  mount.devfs;\n"
"  devfs_ruleset = 5;\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:768
#, no-wrap
msgid ""
"  # PATH/HOSTNAME\n"
"  path = \"/usr/local/jails/containers/${name}\";\n"
"  host.hostname = \"${name}\";\n"
msgstr ""
"  # PATH/HOSTNAME\n"
"  path = \"/usr/local/jails/containers/${name}\";\n"
"  host.hostname = \"${name}\";\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:772
#, no-wrap
msgid ""
"  # VNET/VIMAGE\n"
"  vnet;\n"
"  vnet.interface = \"${epair}b\";\n"
msgstr ""
"  # VNET/VIMAGE\n"
"  vnet;\n"
"  vnet.interface = \"${epair}b\";\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:779
#, no-wrap
msgid ""
"  # NETWORKS/INTERFACES\n"
"  $id = \"154\"; <.>\n"
"  $ip = \"192.168.1.${id}/24\";\n"
"  $gateway = \"192.168.1.1\";\n"
"  $bridge = \"bridge0\"; <.>\n"
"  $epair = \"epair${id}\";\n"
msgstr ""
"  # NETWORKS/INTERFACES\n"
"  $id = \"154\"; <.>\n"
"  $ip = \"192.168.1.${id}/24\";\n"
"  $gateway = \"192.168.1.1\";\n"
"  $bridge = \"bridge0\"; <.>\n"
"  $epair = \"epair${id}\";\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:791
#, no-wrap
msgid ""
"  # ADD TO bridge INTERFACE\n"
"  exec.prestart  = \"/sbin/ifconfig ${epair} create up\";\n"
"  exec.prestart += \"/sbin/ifconfig ${epair}a up descr jail:${name}\";\n"
"  exec.prestart += \"/sbin/ifconfig ${bridge} addm ${epair}a up\";\n"
"  exec.start    += \"/sbin/ifconfig ${epair}b ${ip} up\";\n"
"  exec.start    += \"/sbin/route add default ${gateway}\";\n"
"  exec.start\t+= \"/bin/sh /etc/rc\";\n"
"  exec.stop\t= \"/bin/sh /etc/rc.shutdown\";\n"
"  exec.poststop = \"/sbin/ifconfig ${bridge} deletem ${epair}a\";\n"
"  exec.poststop += \"/sbin/ifconfig ${epair}a destroy\";\n"
"}\n"
msgstr ""
"  # ADD TO bridge INTERFACE\n"
"  exec.prestart  = \"/sbin/ifconfig ${epair} create up\";\n"
"  exec.prestart += \"/sbin/ifconfig ${epair}a up descr jail:${name}\";\n"
"  exec.prestart += \"/sbin/ifconfig ${bridge} addm ${epair}a up\";\n"
"  exec.start    += \"/sbin/ifconfig ${epair}b ${ip} up\";\n"
"  exec.start    += \"/sbin/route add default ${gateway}\";\n"
"  exec.start\t+= \"/bin/sh /etc/rc\";\n"
"  exec.stop\t= \"/bin/sh /etc/rc.shutdown\";\n"
"  exec.poststop = \"/sbin/ifconfig ${bridge} deletem ${epair}a\";\n"
"  exec.poststop += \"/sbin/ifconfig ${epair}a destroy\";\n"
"}\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:794
msgid "Represents the IP of the Jail, it must be *unique*."
msgstr "Представляет IP-адрес клетки, он должен быть *уникальным*."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:795
msgid "Refers to the bridge created previously."
msgstr "Относится к ранее созданному мосту."

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:797
#, no-wrap
msgid "Creating a Linux Jail"
msgstr "Создание клетки Linux"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:803
msgid ""
"FreeBSD can run Linux inside a jail using crossref:linuxemu[linuxemu,Linux "
"Binary Compatibility] and man:debootstrap[8].  Jails do not have a kernel.  "
"They run on the host's kernel.  Therefore it is necessary to enable Linux "
"Binary Compatibility in the host system."
msgstr ""
"FreeBSD может запускать Linux внутри клетки, используя crossref:"
"linuxemu[linuxemu, Двоичную совместимость с Linux] и man:debootstrap[8]. "
"Клетки не имеют собственного ядра. Они работают на ядре хоста. Поэтому "
"необходимо включить Двоичную совместимость с Linux в хост-системе."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:805
msgid "To enable the Linux ABI at boot time, execute the following command:"
msgstr "Чтобы включить ABI Linux при загрузке, выполните следующую команду:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:809
#, no-wrap
msgid "# sysrc linux_enable=\"YES\"\n"
msgstr "# sysrc linux_enable=\"YES\"\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:812
msgid ""
"Once enabled, it can be started without rebooting by executing the following "
"command:"
msgstr ""
"После включения его можно запустить без перезагрузки, выполнив следующую "
"команду:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:816
#, no-wrap
msgid "# service linux start\n"
msgstr "# service linux start\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:821
msgid ""
"The next step will be to create a jail as indicated above, for example in "
"crossref:jails[creating-thin-jail-openzfs-snapshots, Creating a Thin Jail "
"Using OpenZFS Snapshots], but *without* performing the configuration.  "
"FreeBSD Linux jails require a specific configuration that will be detailed "
"below."
msgstr ""
"Следующим шагом будет создание клетки, как указано выше, например, в разделе "
"crossref:jails[creating-thin-jail-openzfs-snapshots, Создание тонкой клетки "
"с использованием снимков OpenZFS], но *без* выполнения настройки. Клетки "
"FreeBSD Linux требуют особой конфигурации, которая будет подробно описана "
"ниже."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:823
msgid ""
"Once the jail has been created as explained above, execute the following "
"command to perform required configuration for the jail and start it:"
msgstr ""
"После создания клетки, как описано выше, выполните следующую команду для "
"выполнения необходимой конфигурации и запуска клетки:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:844
#, no-wrap
msgid ""
"# jail -cm \\\n"
"    name=ubuntu \\\n"
"    host.hostname=\"ubuntu.example.com\" \\\n"
"    path=\"/usr/local/jails/ubuntu\" \\\n"
"    interface=\"em0\" \\\n"
"    ip4.addr=\"192.168.1.150\" \\\n"
"    exec.start=\"/bin/sh /etc/rc\" \\\n"
"    exec.stop=\"/bin/sh /etc/rc.shutdown\" \\\n"
"    mount.devfs \\\n"
"    devfs_ruleset=4 \\\n"
"    allow.mount \\\n"
"    allow.mount.devfs \\\n"
"    allow.mount.fdescfs \\\n"
"    allow.mount.procfs \\\n"
"    allow.mount.linprocfs \\\n"
"    allow.mount.linsysfs \\\n"
"    allow.mount.tmpfs \\\n"
"    enforce_statfs=1\n"
msgstr ""
"# jail -cm \\\n"
"    name=ubuntu \\\n"
"    host.hostname=\"ubuntu.example.com\" \\\n"
"    path=\"/usr/local/jails/ubuntu\" \\\n"
"    interface=\"em0\" \\\n"
"    ip4.addr=\"192.168.1.150\" \\\n"
"    exec.start=\"/bin/sh /etc/rc\" \\\n"
"    exec.stop=\"/bin/sh /etc/rc.shutdown\" \\\n"
"    mount.devfs \\\n"
"    devfs_ruleset=4 \\\n"
"    allow.mount \\\n"
"    allow.mount.devfs \\\n"
"    allow.mount.fdescfs \\\n"
"    allow.mount.procfs \\\n"
"    allow.mount.linprocfs \\\n"
"    allow.mount.linsysfs \\\n"
"    allow.mount.tmpfs \\\n"
"    enforce_statfs=1\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:847
msgid ""
"To access the jail, it will be necessary to install package:sysutils/"
"debootstrap[]."
msgstr ""
"Для доступа к клетке необходимо установить пакет package:sysutils/"
"debootstrap[]."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:849
msgid "Execute the following command to access the FreeBSD Linux jail:"
msgstr "Выполните следующую команду для доступа к клетке FreeBSD Linux:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:853
#, no-wrap
msgid "# jexec -u root ubuntu\n"
msgstr "# jexec -u root ubuntu\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:856
msgid ""
"Inside the jail, execute the following commands to install package:sysutils/"
"debootstrap[] and prepare the Ubuntu environment:"
msgstr ""
"Внутри клетки выполните следующие команды для установки пакета package:"
"sysutils/debootstrap[] и подготовки окружения Ubuntu:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:861
#, no-wrap
msgid ""
"# pkg install debootstrap\n"
"# debootstrap jammy /compat/ubuntu\n"
msgstr ""
"# pkg install debootstrap\n"
"# debootstrap jammy /compat/ubuntu\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:865
msgid ""
"When the process has finished and the message `Base system installed "
"successfully` is displayed on the console, it will be necessary to stop the "
"jail from the host system by executing the following command:"
msgstr ""
"Когда процесс завершится и на консоли появится сообщение `Base system "
"installed successfully`, необходимо из хост-системы остановить клетки, "
"выполнив следующую команду:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:869
#, no-wrap
msgid "# service jail onestop ubuntu\n"
msgstr "# service jail onestop ubuntu\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:872
msgid "Then add an entry in [.filename]#/etc/jail.conf# for the Linux jail:"
msgstr ""
"Затем добавьте запись в [.filename]#/etc/jail.conf# для Linux-контейнера:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:880
#, no-wrap
msgid ""
"ubuntu {\n"
"  # STARTUP/LOGGING\n"
"  exec.start = \"/bin/sh /etc/rc\";\n"
"  exec.stop = \"/bin/sh /etc/rc.shutdown\";\n"
"  exec.consolelog = \"/var/log/jail_console_${name}.log\";\n"
msgstr ""
"ubuntu {\n"
"  # STARTUP/LOGGING\n"
"  exec.start = \"/bin/sh /etc/rc\";\n"
"  exec.stop = \"/bin/sh /etc/rc.shutdown\";\n"
"  exec.consolelog = \"/var/log/jail_console_${name}.log\";\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:886
#, no-wrap
msgid ""
"  # PERMISSIONS\n"
"  allow.raw_sockets;\n"
"  exec.clean;\n"
"  mount.devfs;\n"
"  devfs_ruleset = 4;\n"
msgstr ""
"  # PERMISSIONS\n"
"  allow.raw_sockets;\n"
"  exec.clean;\n"
"  mount.devfs;\n"
"  devfs_ruleset = 4;\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:894
#, no-wrap
msgid ""
"  # NETWORK\n"
"  ip4.addr = 192.168.1.155;\n"
"  interface = em0;\n"
msgstr ""
"  # NETWORK\n"
"  ip4.addr = 192.168.1.155;\n"
"  interface = em0;\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:904
#, no-wrap
msgid ""
"  # MOUNT\n"
"  mount += \"devfs     $path/compat/ubuntu/dev     devfs     rw  0 0\";\n"
"  mount += \"tmpfs     $path/compat/ubuntu/dev/shm tmpfs     rw,size=1g,mode=1777  0 0\";\n"
"  mount += \"fdescfs   $path/compat/ubuntu/dev/fd  fdescfs   rw,linrdlnk 0 0\";\n"
"  mount += \"linprocfs $path/compat/ubuntu/proc    linprocfs rw  0 0\";\n"
"  mount += \"linsysfs  $path/compat/ubuntu/sys     linsysfs  rw  0 0\";\n"
"  mount += \"/tmp      $path/compat/ubuntu/tmp     nullfs    rw  0 0\";\n"
"  mount += \"/home     $path/compat/ubuntu/home    nullfs    rw  0 0\";\n"
"}\n"
msgstr ""
"  # MOUNT\n"
"  mount += \"devfs     $path/compat/ubuntu/dev     devfs     rw  0 0\";\n"
"  mount += \"tmpfs     $path/compat/ubuntu/dev/shm tmpfs     rw,size=1g,mode=1777  0 0\";\n"
"  mount += \"fdescfs   $path/compat/ubuntu/dev/fd  fdescfs   rw,linrdlnk 0 0\";\n"
"  mount += \"linprocfs $path/compat/ubuntu/proc    linprocfs rw  0 0\";\n"
"  mount += \"linsysfs  $path/compat/ubuntu/sys     linsysfs  rw  0 0\";\n"
"  mount += \"/tmp      $path/compat/ubuntu/tmp     nullfs    rw  0 0\";\n"
"  mount += \"/home     $path/compat/ubuntu/home    nullfs    rw  0 0\";\n"
"}\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:907
msgid "Then the jail can be started as usual with the following command:"
msgstr "Затем клетку можно запустить как обычно с помощью следующей команды:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:911
#, no-wrap
msgid "# service jail start ubuntu\n"
msgstr "# service jail start ubuntu\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:914
msgid "The Ubuntu environment can be accessed using the following command:"
msgstr "Окружение Ubuntu можно запустить с помощью следующей команды:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:918
#, no-wrap
msgid "# jexec ubuntu chroot /compat/ubuntu /bin/bash\n"
msgstr "# jexec ubuntu chroot /compat/ubuntu /bin/bash\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:921
msgid ""
"More information can be found in the chapter crossref:linuxemu[linuxemu,"
"Linux Binary Compatibility]."
msgstr ""
"Дополнительную информацию можно найти в главе crossref:linuxemu[linuxemu, "
"Двоичная совместимость с Linux]."

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:923
#, no-wrap
msgid "Configuring Service Jails"
msgstr "Настройка сервисных клеток"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:930
msgid ""
"A service jail is configured completely via [.filename]#/etc/rc.conf# or man:"
"sysrc[8].  The base system services are service jails ready.  They contain a "
"config line which enables networking or lift other restrictions of jails.  "
"Base system services which do not make sense to run inside jails are "
"configured to not be started as a service jail, even if enabled in [."
"filename]#/etc/rc.conf#.  Some examples of such a service are services which "
"want to mount or unmount something in the start of stop method, or only "
"configure something like a route, or firewall, or the like."
msgstr ""
"Сервисная клетка полностью настраивается через [.filename]#/etc/rc.conf# или "
"man:sysrc[8]. Базовые системные сервисы готовы для работы в сервисных "
"клетках. Они содержат строку конфигурации, которая включает сеть или снимает "
"другие ограничения клеток. Базовые системные сервисы, которые не имеет "
"смысла запускать внутри клеток, настроены так, чтобы не запускаться как "
"сервисные клетки, даже если они включены в [.filename]#/etc/rc.conf#. "
"Некоторые примеры таких сервисов — это сервисы, которые хотят монтировать "
"или размонтировать что-то в методе start или stop, или только настраивают "
"что-то, например маршрут, межсетевой экран или подобное."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:932
msgid ""
"Third party services may or may not be service jails ready. To check if a "
"service is service jail ready, the following command can be used:"
msgstr ""
"Сторонние службы могут быть или не быть готовы к использованию в сервисных "
"клетках. Чтобы проверить, готова ли служба к работе в сервисной клетке, "
"можно использовать следующую команду:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:936
#, no-wrap
msgid "# grep _svcj_options /path/to/rc.d/servicename\n"
msgstr "# grep _svcj_options /path/to/rc.d/servicename\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:939
msgid ""
"If there is no output, the service is not service jail ready, or does not "
"need any additional privileges like for example, network access."
msgstr ""
"Если вывод отсутствует, служба не готова к работе в клетке или не требует "
"дополнительных привилегий, таких как, например, доступ к сети."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:941
msgid ""
"If the service is not service jail ready, and needs network access, it can "
"be made ready by adding the necessary config to [.filename]#/etc/rc.conf#:"
msgstr ""
"Если служба не готова к работе в клетке и требует доступа к сети, её можно "
"подготовить, добавив необходимую конфигурацию в [.filename]#/etc/rc.conf#:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:945
#, no-wrap
msgid "# sysrc servicename_svcj_options=net_basic\n"
msgstr "# sysrc servicename_svcj_options=net_basic\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:948
msgid "For all possible `_svcj_options` see the man:rc.conf[5] man-page."
msgstr ""
"Для всех возможных `_svcj_options` см. справочную страницу man:rc.conf[5]."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:951
msgid ""
"To enable a service jail for a given service, the service needs to be "
"stopped and the `servicename_svcj` variable needs to be set to YES.  To put "
"man:syslogd[8] into a service jail, use the following sequence of commands:"
msgstr ""
"Для включения сервисной клетки для указанной службы необходимо остановить "
"службу и установить переменную `servicename_svcj` в значение YES. Чтобы "
"поместить man:syslogd[8] в сервисную клетку, используйте следующую "
"последовательность команд:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:957
#, no-wrap
msgid ""
"# service syslogd stop\n"
"# sysrc syslogd_svcj=YES\n"
"# service syslogd start\n"
msgstr ""
"# service syslogd stop\n"
"# sysrc syslogd_svcj=YES\n"
"# service syslogd start\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:961
msgid ""
"If the `servicename_svcj` variable is changed, the service needs to be "
"stopped before it is changed.  If it is not stopped, the rc framework will "
"not detect the correct state of the service and will not be able to do what "
"is requested."
msgstr ""
"Если переменная `servicename_svcj` изменяется, службу необходимо остановить "
"перед внесением изменений. Если она не будет остановлена, rc-фреймворк не "
"определит корректное состояние службы и не сможет выполнить запрошенное "
"действие."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:964
msgid ""
"Service jails are managed only via man:rc.conf[5]/man:sysrc[8] and the man:"
"service[8] command.  The jail utilities, like man:jls[8] as described in "
"crossref:jails[jail-management,Jail Management] can be used to investigate "
"the operation, but the man:jail[8] command is not supposed to be used to "
"manage them."
msgstr ""
"Сервисные клетки управляются только через man:rc.conf[5]/man:sysrc[8] и "
"команду man:service[8]. Утилиты для работы с клетками, такие как man:jls[8], "
"описанные в разделе crossref:jails[jail-management,Управление клетками], "
"могут использоваться для проверки их работы, но команда man:jail[8] не "
"предназначена для управления ими."

#. type: Title ==
#: documentation/content/en/books/handbook/jails/_index.adoc:966
#, no-wrap
msgid "Jail Management"
msgstr "Управление клетками"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:970
msgid ""
"Once the jail is created, there are a number of operations that can be "
"performed, like starting, rebooting or deleting the jail, installing "
"software in it, etc.  In this section the different actions that can be done "
"with jails from the host will be described."
msgstr ""
"После создания клетки можно выполнить ряд операций, таких как запуск, "
"перезагрузка или удаление клетки, установка программного обеспечения в неё и "
"т.д. В этом разделе описаны различные действия, которые можно выполнять с "
"клетками с хоста."

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:972
#, no-wrap
msgid "List Running Jails"
msgstr "Список работающих клеток"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:975
msgid ""
"To list the jails that are running on the host system, the command man:"
"jls[8] can be used:"
msgstr ""
"Для вывода списка клеток, запущенных в хост-системе, можно использовать "
"команду man:jls[8]:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:979
#, no-wrap
msgid "# jls\n"
msgstr "# jls\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:986
#, no-wrap
msgid ""
"   JID  IP Address      Hostname                      Path\n"
"     1  192.168.250.70  classic                       /usr/local/jails/containers/classic\n"
msgstr ""
"   JID  IP Address      Hostname                      Path\n"
"     1  192.168.250.70  classic                       /usr/local/jails/containers/classic\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:989
msgid ""
"man:jls[8] supports the `--libxo` argument, which through the man:libxo[3] "
"library allows other types of formats to be displayed, such as `JSON`, "
"`HTML`, etc."
msgstr ""
"man:jls[8] поддерживает аргумент `--libxo`, который через библиотеку man:"
"libxo[3] позволяет отображать данные в других форматах, таких как `JSON`, "
"`HTML` и т.д."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:991
msgid "For example, execute the following command to get the `JSON` output:"
msgstr ""
"Например, выполните следующую команду для получения вывода в формате `JSON`:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:995
#, no-wrap
msgid "# jls --libxo=json\n"
msgstr "# jls --libxo=json\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1001
#, no-wrap
msgid "{\"__version\": \"2\", \"jail-information\": {\"jail\": [{\"jid\":1,\"ipv4\":\"192.168.250.70\",\"hostname\":\"classic\",\"path\":\"/usr/local/jails/containers/classic\"}]}}\n"
msgstr "{\"__version\": \"2\", \"jail-information\": {\"jail\": [{\"jid\":1,\"ipv4\":\"192.168.250.70\",\"hostname\":\"classic\",\"path\":\"/usr/local/jails/containers/classic\"}]}}\n"

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:1004
#, no-wrap
msgid "Start, Restart, and Stop a Jail"
msgstr "Запуск, перезапуск и остановка клетки"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1007
msgid "man:service[8] is used to start, reboot, or stop a jail on the host."
msgstr ""
"man:service[8] используется для запуска, перезагрузки или остановки клетки "
"на хосте."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1009
msgid "For example, to start a jail, run the following command:"
msgstr "Например, чтобы запустить клетку, выполните следующую команду:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1013
#, no-wrap
msgid "# service jail start jailname\n"
msgstr "# service jail start jailname\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1016
msgid ""
"Change the `start` argument to `restart` or `stop` to perform other actions "
"on the jail."
msgstr ""
"Измените аргумент `start` на `restart` или `stop`, чтобы выполнить другие "
"действия с клеткой."

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:1018
#, no-wrap
msgid "Destroy a Jail"
msgstr "Удаление клетки"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1021
msgid ""
"Destroying a jail is not as simple as stopping the jail using man:service[8] "
"and removing the jail directory and [.filename]#/etc/jail.conf# entry."
msgstr ""
"Удаление клетки, это не просто остановка клетки с помощью man:service[8] и "
"удаление каталога клетки и записи в [.filename]#/etc/jail.conf#."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1025
msgid ""
"FreeBSD takes system security very seriously.  For this reason there are "
"certain files that not even the root user can delete.  This functionality is "
"known as File Flags."
msgstr ""
"FreeBSD очень серьезно относится к безопасности системы. По этой причине "
"существуют определённые файлы, которые не может удалить даже пользователь "
"root. Эта функциональность называется Флаги Файлов."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1027
msgid ""
"The first step is to stop the desired jail executing the following command:"
msgstr ""
"Первым шагом является остановка нужной клетки с помощью выполнения следующей "
"команды:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1031
#, no-wrap
msgid "# service jail stop jailname\n"
msgstr "# service jail stop jailname\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1034
msgid ""
"The second step is to remove these flags with man:chflags[1] by executing "
"the following command, in which `classic` is the name of the jail to remove:"
msgstr ""
"Второй шаг — удалить эти флаги с помощью man:chflags[1], выполнив следующую "
"команду, где `classic` — имя удаляемой клетки:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1038
#, no-wrap
msgid "# chflags -R 0 /usr/local/jails/containers/classic\n"
msgstr "# chflags -R 0 /usr/local/jails/containers/classic\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1041
msgid "The third step is to delete the directory where the jail was:"
msgstr "Третий шаг — удалить каталог, в котором находилась клетка:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1045
#, no-wrap
msgid "# rm -rf /usr/local/jails/containers/classic\n"
msgstr "# rm -rf /usr/local/jails/containers/classic\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1048
msgid ""
"Finally, it will be necessary to remove the jail entry in [.filename]#/etc/"
"jail.conf# or in [.filename]#jail.conf.d#."
msgstr ""
"Наконец, необходимо удалить запись о клетке в [.filename]#/etc/jail.conf# "
"или в [.filename]#jail.conf.d#."

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:1050
#, no-wrap
msgid "Handle Packages in a Jail"
msgstr "Работа с пакетами в клетке"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1053
msgid ""
"The man:pkg[8] tool supports the `-j` argument in order to handle packages "
"installed inside the jail."
msgstr ""
"Утилита man:pkg[8] поддерживает аргумент `-j` для управления пакетами, "
"установленными внутри клетки."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1055
msgid ""
"For example, to install package:www/nginx-lite[] in the jail, the next "
"command can be executed *from the host*:"
msgstr ""
"Например, чтобы установить пакет package:www/nginx-lite[] в клетке, можно "
"выполнить следующую команду *с хоста*:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1059
#, no-wrap
msgid "# pkg -j classic install nginx-lite\n"
msgstr "# pkg -j classic install nginx-lite\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1062
msgid ""
"For more information on working with packages in FreeBSD, see crossref:"
"ports[ports,\"Installing Applications: Packages and Ports\"]."
msgstr ""
"Для получения дополнительной информации о работе с пакетами в FreeBSD см. "
"crossref:ports[ports,\"Установка приложений: Пакеты и порты\"]."

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:1064
#, no-wrap
msgid "Access a Jail"
msgstr "Доступ к клетке"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1067
msgid ""
"While it has been stated above that it is best to manage jails from the host "
"system, a jail can be entered with man:jexec[8]."
msgstr ""
"Как уже упоминалось выше, оптимальным является управление клетками из хост-"
"системы, однако в клетку можно войти с помощью man:jexec[8]."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1069
msgid "The jail can be entered by running man:jexec[8] from the host:"
msgstr "В клетку можно войти, выполнив man:jexec[8] с хоста:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1073
#, no-wrap
msgid "# jexec -u root jailname\n"
msgstr "# jexec -u root jailname\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1076
msgid ""
"When gaining access to the jail, the message configured in man:motd[5] will "
"be displayed."
msgstr ""
"При входе в клетку будет отображено сообщение, настроенное в man:motd[5]."

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:1078
#, no-wrap
msgid "Execute Commands in a Jail"
msgstr "Выполнение команд в клетке"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1081
msgid ""
"To execute a command from the host system in a jail the man:jexec[8] can be "
"used."
msgstr ""
"Для выполнения команды в клетке из хост-системы можно использовать man:"
"jexec[8]."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1083
msgid ""
"For example, to stop a service that is running inside a jail, the command "
"will be executed:"
msgstr ""
"Например, чтобы остановить службу, работающую внутри клетки, будет выполнена "
"команда:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1087
#, no-wrap
msgid "# jexec -l jailname service nginx stop\n"
msgstr "# jexec -l jailname service nginx stop\n"

#. type: Title ==
#: documentation/content/en/books/handbook/jails/_index.adoc:1090
#, no-wrap
msgid "Jail Upgrading"
msgstr "Обновление клетки"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1093
msgid ""
"Upgrading FreeBSD Jails ensures that the isolated environments remain "
"secure, up-to-date, and in line with the latest features and improvements "
"available in the FreeBSD ecosystem."
msgstr ""
"Обновление клеток FreeBSD гарантирует, что изолированные среды остаются "
"безопасными, актуальными и соответствуют последним функциям и улучшениям, "
"доступным в экосистеме FreeBSD."

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:1095
#, no-wrap
msgid "Upgrading a Classic Jail or a Thin Jail using OpenZFS Snapshots"
msgstr "Обновление классической клетки или тонкой клетки с использованием снимков OpenZFS"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1100
msgid ""
"Jails *must be updated from the host* operating system.  The default "
"behavior in FreeBSD is to disallow the use of man:chflags[1] in a jail.  "
"This will prevent the update of some files so updating from within the jail "
"will fail."
msgstr ""
"Клетки *должны обновляться их операционной системы хоста*. В FreeBSD по "
"умолчанию запрещено использование man:chflags[1] в клетке. Это предотвращает "
"обновление некоторых файлов, поэтому обновление изнутри клетки завершится "
"ошибкой."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1102
msgid ""
"To update the jail to the latest patch release of the version of FreeBSD it "
"is running, execute the following commands on the host:"
msgstr ""
"Для обновления клетки до последнего патч-релиза версии FreeBSD, под которой "
"он работает, выполните следующие команды на хосте:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1107
#, no-wrap
msgid ""
"# freebsd-update -j classic fetch install\n"
"# service jail restart classic\n"
msgstr ""
"# freebsd-update -j classic fetch install\n"
"# service jail restart classic\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1111
msgid ""
"To upgrade the jail to a new major or minor version, first upgrade the host "
"system as described in crossref:cutting-edge[freebsdupdate-upgrade,"
"\"Performing Major and Minor Version Upgrades\"].  Once the host has been "
"upgraded and rebooted, the jail can then be upgraded."
msgstr ""
"Для обновления клетки до новой основной или промежуточной версии сначала "
"обновите хост-систему, как описано в crossref:cutting-edge[freebsdupdate-"
"upgrade,\"Выполнение обновлений основной и промежуточной версий\"]. После "
"обновления и перезагрузки хоста можно обновить клетку."

#. type: delimited block = 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1115
msgid ""
"In case of upgrade from one version to another, it is easier to create a new "
"jail than to upgrade completely."
msgstr ""
"В случае обновления с одной версии на другую проще создать новую клетку, чем "
"выполнять полное обновление."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1118
msgid ""
"For example to upgrade from 13.1-RELEASE to 13.2-RELEASE, execute the "
"following commands on the host:"
msgstr ""
"Например, для обновления с 13.1-RELEASE до 13.2-RELEASE выполните следующие "
"команды на хосте:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1126
#, no-wrap
msgid ""
"# freebsd-update -j classic -r 13.2-RELEASE upgrade\n"
"# freebsd-update -j classic install\n"
"# service jail restart classic\n"
"# freebsd-update -j classic install\n"
"# service jail restart classic\n"
msgstr ""
"# freebsd-update -j classic -r 13.2-RELEASE upgrade\n"
"# freebsd-update -j classic install\n"
"# service jail restart classic\n"
"# freebsd-update -j classic install\n"
"# service jail restart classic\n"

#. type: delimited block = 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1132
msgid ""
"It is necessary to execute the `install` step two times.  The first one "
"upgrades the kernel, and the second one upgrades the rest of the components."
msgstr ""
"Необходимо выполнить шаг `install` дважды. Первый раз обновляется ядро, а "
"второй — остальные компоненты."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1136
msgid ""
"Then, if it was a major version upgrade, reinstall all installed packages "
"and restart the jail again.  This is required because the ABI version "
"changes when upgrading between major versions of FreeBSD."
msgstr ""
"Затем, если это было обновление основной версии, переустановите все "
"установленные пакеты и перезапустите клетку снова. Это необходимо, потому "
"что версия ABI изменяется при обновлении между основными версиями FreeBSD."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1138
msgid "From the host:"
msgstr "С хоста:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1143
#, no-wrap
msgid ""
"# pkg -j jailname upgrade -f\n"
"# service jail restart jailname\n"
msgstr ""
"# pkg -j jailname upgrade -f\n"
"# service jail restart jailname\n"

#. type: Title ===
#: documentation/content/en/books/handbook/jails/_index.adoc:1146
#, no-wrap
msgid "Upgrading a Thin Jail Using NullFS"
msgstr "Обновление тонкой клетки с использованием NullFS"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1151
msgid ""
"Since Thin Jails that use NullFS share the majority of system directories, "
"they are very easy to update.  It is enough to update the template.  This "
"allows updating multiple jails at the same time."
msgstr ""
"Поскольку тонкие клетки, использующие NullFS, разделяют большинство "
"системных каталогов, их очень легко обновлять. Достаточно обновить шаблон. "
"Это позволяет обновлять несколько клеток одновременно."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1153
msgid ""
"To update the template to the latest patch release of the version of FreeBSD "
"it is running, execute the following commands on the host:"
msgstr ""
"Для обновления шаблона до последнего патч-релиза версии FreeBSD, на которой "
"он работает, выполните следующие команды на хосте:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1158
#, no-wrap
msgid ""
"# freebsd-update -b /usr/local/jails/templates/13.1-RELEASE-base/ fetch install\n"
"# service jail restart\n"
msgstr ""
"# freebsd-update -b /usr/local/jails/templates/13.1-RELEASE-base/ fetch install\n"
"# service jail restart\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1162
msgid ""
"To upgrade the template to a new major or minor version, first upgrade the "
"host system as described in crossref:cutting-edge[freebsdupdate-upgrade,"
"\"Performing Major and Minor Version Upgrades\"].  Once the host has been "
"upgraded and rebooted, the template can then be upgraded."
msgstr ""
"Для обновления шаблона до новой основной или промежуточной версии сначала "
"обновите хост-систему, как описано в crossref:cutting-edge[freebsdupdate-"
"upgrade,\"Выполнение обновлений основной и промежуточной версий\"]. После "
"обновления и перезагрузки хост-системы можно обновить шаблон."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1164
msgid ""
"For example, to upgrade from 13.1-RELEASE to 13.2-RELEASE, execute the "
"following commands on the host:"
msgstr ""
"Например, для обновления с 13.1-RELEASE до 13.2-RELEASE выполните следующие "
"команды на хосте:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1172
#, no-wrap
msgid ""
"# freebsd-update -b /usr/local/jails/templates/13.1-RELEASE-base/ -r 13.2-RELEASE upgrade\n"
"# freebsd-update -b /usr/local/jails/templates/13.1-RELEASE-base/ install\n"
"# service jail restart\n"
"# freebsd-update -b /usr/local/jails/templates/13.1-RELEASE-base/ install\n"
"# service jail restart\n"
msgstr ""
"# freebsd-update -b /usr/local/jails/templates/13.1-RELEASE-base/ -r 13.2-RELEASE upgrade\n"
"# freebsd-update -b /usr/local/jails/templates/13.1-RELEASE-base/ install\n"
"# service jail restart\n"
"# freebsd-update -b /usr/local/jails/templates/13.1-RELEASE-base/ install\n"
"# service jail restart\n"

#. type: Title ==
#: documentation/content/en/books/handbook/jails/_index.adoc:1175
#, no-wrap
msgid "Jail Resource Limits"
msgstr "Ограничения ресурсов клетки"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1178
msgid ""
"Controlling the resources that a jail uses from the host system is a task to "
"be taken into account by the system administrator."
msgstr ""
"Управление ресурсами хост-системы, которые использует клетка — это задача, "
"которую должен учитывать системный администратор."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1180
msgid ""
"Use man:rctl[8] to manage the resources that a jail can use from the host "
"system."
msgstr ""
"Используйте man:rctl[8] для управления ресурсами хост-системы, которые "
"клетка может использовать."

#. type: delimited block = 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1184
msgid ""
"The `kern.racct.enable` tunable must be enabled at [.filename]#/boot/loader."
"conf#."
msgstr ""
"Настройка `kern.racct.enable` должна быть включена в файле [.filename]#/boot/"
"loader.conf#."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1187
msgid "The syntax to limit the resources of a jail is as follows:"
msgstr "Синтаксис для ограничения ресурсов клетки выглядит следующим образом:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1191
#, no-wrap
msgid "rctl -a jail:<jailname>:resource:action=amount/percentage\n"
msgstr "rctl -a jail:<jailname>:resource:action=amount/percentage\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1194
msgid ""
"For example, to limit the maximum RAM that a jail can access, run the "
"following command:"
msgstr ""
"Например, чтобы ограничить максимальный объём оперативной памяти, доступной "
"для клетки, выполните следующую команду:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1198
#, no-wrap
msgid "# rctl -a jail:classic:memoryuse:deny=2G\n"
msgstr "# rctl -a jail:classic:memoryuse:deny=2G\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1201
msgid ""
"To make the limitation persistent across reboots of the host system, it will "
"be necessary to add the rule to the [.filename]#/etc/rctl.conf# file as "
"follows:"
msgstr ""
"Чтобы ограничение сохранялось после перезагрузки хост-системы, необходимо "
"добавить правило в файл [.filename]#/etc/rctl.conf# следующим образом:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/jails/_index.adoc:1205
#, no-wrap
msgid "jail:classic:memoryuse:deny=2G/jail\n"
msgstr "jail:classic:memoryuse:deny=2G/jail\n"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1208
msgid ""
"More information on resource limits can be found in the security chapter in "
"the crossref:security[security-resourcelimits,\"Resource Limits section\"]."
msgstr ""
"Дополнительная информация об ограничениях ресурсов доступна в главе о "
"безопасности в разделе crossref:security[security-resourcelimits,"
"\"Ограничения ресурсов\"]."

#. type: Title ==
#: documentation/content/en/books/handbook/jails/_index.adoc:1210
#, no-wrap
msgid "Jail Managers and Containers"
msgstr "Менеджеры клеток и контейнеры"

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1213
msgid ""
"As previously explained, each type of FreeBSD Jail can be created and "
"configured manually, but FreeBSD also has third-party utilities to make "
"configuration and administration easier."
msgstr ""
"Как уже объяснялось ранее, каждый тип клетки FreeBSD может быть создан и "
"настроен вручную, но в FreeBSD также существуют сторонние утилиты для "
"упрощения настройки и администрирования."

#. type: Plain text
#: documentation/content/en/books/handbook/jails/_index.adoc:1215
msgid "Below is an incomplete list of the different FreeBSD Jail managers:"
msgstr "Ниже приведён неполный список различных менеджеров клеток FreeBSD:"

#. type: Block title
#: documentation/content/en/books/handbook/jails/_index.adoc:1216
#, no-wrap
msgid "Jail Managers"
msgstr "Менеджеры клеток"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1219
#, no-wrap
msgid "Name"
msgstr "Имя"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1219
#, no-wrap
msgid "License"
msgstr "Лицензия"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1219
#, no-wrap
msgid "Package"
msgstr "Пакет"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1221
#, no-wrap
msgid "Documentation"
msgstr "Documentation"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1222
#, no-wrap
msgid "BastilleBSD"
msgstr "BastilleBSD"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1223
#: documentation/content/en/books/handbook/jails/_index.adoc:1228
#: documentation/content/en/books/handbook/jails/_index.adoc:1238
#, no-wrap
msgid "BSD-3"
msgstr "BSD-3"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1224
#, no-wrap
msgid "package:sysutils/bastille[]"
msgstr "package:sysutils/bastille[]"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1226
#, no-wrap
msgid "link:https://bastille.readthedocs.io/en/latest/[Documentation]"
msgstr "link:https://bastille.readthedocs.io/ru/latest/[Документация]"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1227
#, no-wrap
msgid "pot"
msgstr "pot"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1229
#, no-wrap
msgid "package:sysutils/pot[]"
msgstr "package:sysutils/pot[]"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1231
#, no-wrap
msgid "link:https://pot.pizzamig.dev/[Documentation]"
msgstr "link:https://pot.pizzamig.dev/[Документация]"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1232
#, no-wrap
msgid "cbsd"
msgstr "cbsd"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1233
#: documentation/content/en/books/handbook/jails/_index.adoc:1243
#, no-wrap
msgid "BSD-2"
msgstr "BSD-2"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1234
#, no-wrap
msgid "package:sysutils/cbsd[]"
msgstr "package:sysutils/cbsd[]"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1236
#, no-wrap
msgid "link:https://github.com/cbsd/cbsd[Documentation]"
msgstr "link:https://github.com/cbsd/cbsd[Документация]"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1237
#, no-wrap
msgid "AppJail"
msgstr "AppJail"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1239
#, no-wrap
msgid "package:sysutils/appjail[], for devel package:sysutils/appjail-devel[]"
msgstr "package:sysutils/appjail[], для разработки package:sysutils/appjail-devel[]"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1241
#, no-wrap
msgid "link:https://github.com/DtxdF/AppJail#getting-started[Documentation]"
msgstr "link:https://github.com/DtxdF/AppJail#getting-started[Документация]"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1242
#, no-wrap
msgid "iocage"
msgstr "iocage"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1244
#, no-wrap
msgid "package:sysutils/iocage[]"
msgstr "package:sysutils/iocage[]"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1246
#, no-wrap
msgid "link:https://freebsd.github.io/iocage/[Documentation]"
msgstr "link:https://freebsd.github.io/iocage/[Документация]"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1247
#, no-wrap
msgid "ezjail"
msgstr "ezjail"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1248
#, no-wrap
msgid "link:https://erdgeist.org/beerware.html[Beer Ware]"
msgstr "link:https://erdgeist.org/beerware.html[Пивная Лицензия]"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1249
#, no-wrap
msgid "package:sysutils/ezjail[]"
msgstr "package:sysutils/ezjail[]"

#. type: Table
#: documentation/content/en/books/handbook/jails/_index.adoc:1251
#, no-wrap
msgid "link:https://erdgeist.org/arts/software/ezjail/[Documentation]"
msgstr "link:https://erdgeist.org/arts/software/ezjail/[Документация]"

#, no-wrap
#~ msgid "link:https://www.bsdstore.ru/en/docs.html[Documentation]"
#~ msgstr "link:https://github.com/cbsd/cbsd[Документация]"

#, no-wrap
#~ msgid "link:https://iocage.readthedocs.io/en/latest/[Documentation]"
#~ msgstr "link:https://iocage.readthedocs.io/en/latest/[Документация]"