aboutsummaryrefslogtreecommitdiff
path: root/documentation/content/ru/articles/nanobsd/_index.po
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/content/ru/articles/nanobsd/_index.po')
-rw-r--r--documentation/content/ru/articles/nanobsd/_index.po1550
1 files changed, 1550 insertions, 0 deletions
diff --git a/documentation/content/ru/articles/nanobsd/_index.po b/documentation/content/ru/articles/nanobsd/_index.po
new file mode 100644
index 0000000000..f7bfc67304
--- /dev/null
+++ b/documentation/content/ru/articles/nanobsd/_index.po
@@ -0,0 +1,1550 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR The FreeBSD Project
+# This file is distributed under the same license as the FreeBSD Documentation package.
+# Vladlen Popolitov <vladlenpopolitov@list.ru>, 2025.
+msgid ""
+msgstr ""
+"Project-Id-Version: FreeBSD Documentation VERSION\n"
+"POT-Creation-Date: 2024-01-17 20:35-0300\n"
+"PO-Revision-Date: 2025-08-12 04:45+0000\n"
+"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
+"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
+"documentation/articlesnanobsd_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: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:1
+#: documentation/content/en/articles/nanobsd/_index.adoc:46
+#, no-wrap
+msgid "This document provides information about the NanoBSD tools, which can be used to create FreeBSD system images for embedded applications, suitable for use on a USB key, memory card or other mass storage media."
+msgstr ""
+"Этот документ предоставляет информацию об инструментах NanoBSD, которые "
+"могут быть использованы для создания образов системы FreeBSD для "
+"встраиваемых приложений, подходящих для использования на USB-накопителе, "
+"карте памяти или других носителях данных."
+
+#. type: Title ==
+#: documentation/content/en/articles/nanobsd/_index.adoc:1
+#: documentation/content/en/articles/nanobsd/_index.adoc:11
+#: documentation/content/en/articles/nanobsd/_index.adoc:52
+#, no-wrap
+msgid "Introduction to NanoBSD"
+msgstr "Введение в NanoBSD"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:44
+msgid "Abstract"
+msgstr "Аннотация"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:48
+msgid "'''"
+msgstr "'''"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:56
+msgid ""
+"NanoBSD is a tool developed by {phk} and now maintained by {imp}. It "
+"creates a FreeBSD system image for embedded applications, suitable for use "
+"on a USB key, memory card or other mass storage media."
+msgstr ""
+"NanoBSD — это инструмент, разработанный {phk} и в настоящее время "
+"поддерживаемый {imp}. Он создает образ системы FreeBSD для встраиваемых "
+"приложений, подходящий для использования на USB-накопителе, карте памяти или "
+"другом носителе данных."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:60
+msgid ""
+"It can be used to build specialized install images, designed for easy "
+"installation and maintenance of systems commonly called \"computer "
+"appliances\". Computer appliances have their hardware and software bundled "
+"in the product, which means all applications are pre-installed. The "
+"appliance is plugged into an existing network and can begin working (almost) "
+"immediately."
+msgstr ""
+"Он может использоваться для создания специализированных установочных "
+"образов, предназначенных для простой установки и обслуживания систем, обычно "
+"называемых \"компьютерными устройствами\". Компьютерные устройства "
+"объединяют аппаратное и программное обеспечение в одном продукте, что "
+"означает, что все приложения предустановлены. Устройство подключается к "
+"существующей сети и может начать работу (почти) сразу."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:62
+msgid "The features of NanoBSD include:"
+msgstr "Возможности NanoBSD включают:"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:64
+msgid ""
+"Ports and packages work as in FreeBSD - Every single application can be "
+"installed and used in a NanoBSD image, the same way as in FreeBSD."
+msgstr ""
+"Порты и пакеты работают так же, как в FreeBSD — любое приложение может быть "
+"установлено и использовано в образе NanoBSD так же, как и в FreeBSD."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:65
+msgid ""
+"No missing functionality - If it is possible to do something with FreeBSD, "
+"it is possible to do the same thing with NanoBSD, unless the specific "
+"feature or features were explicitly removed from the NanoBSD image when it "
+"was created."
+msgstr ""
+"Отсутствие недостающей функциональности — если что-то возможно сделать в "
+"FreeBSD, то это же можно сделать и в NanoBSD, за исключением случаев, когда "
+"определённые функции были явно удалены из образа NanoBSD при его создании."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:66
+msgid ""
+"Everything is read-only at run-time - It is safe to pull the power-plug. "
+"There is no necessity to run man:fsck[8] after a non-graceful shutdown of "
+"the system."
+msgstr ""
+"Всё доступно только для чтения во время работы — можно безопасно выдернуть "
+"шнур питания. Нет необходимости запускать man:fsck[8] после нештатного "
+"завершения работы системы."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:67
+msgid ""
+"Easy to build and customize - Making use of just one shell script and one "
+"configuration file it is possible to build reduced and customized images "
+"satisfying any arbitrary set of requirements."
+msgstr ""
+"Простота сборки и настройки — используя всего один shell-скрипт и один файл "
+"конфигурации, можно создавать уменьшенные и настроенные образы, "
+"удовлетворяющие любым произвольным требованиям."
+
+#. type: Title ==
+#: documentation/content/en/articles/nanobsd/_index.adoc:69
+#, no-wrap
+msgid "NanoBSD Howto"
+msgstr "Инструкция по NanoBSD"
+
+#. type: Title ===
+#: documentation/content/en/articles/nanobsd/_index.adoc:72
+#, no-wrap
+msgid "The Design of NanoBSD"
+msgstr "Дизайн NanoBSD"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:76
+msgid ""
+"Once the image is present on the medium, it is possible to boot NanoBSD. "
+"The mass storage medium is divided into three parts by default:"
+msgstr ""
+"После того как образ записан на носитель, можно загрузить NanoBSD. По "
+"умолчанию носитель данных разделён на три части:"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:78
+msgid "Two image partitions: `code#1` and `code#2`."
+msgstr "Два раздела с образами: `code#1` и `code#2`."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:79
+msgid ""
+"The configuration file partition, which can be mounted under the [."
+"filename]#/cfg# directory at run time."
+msgstr ""
+"Файловый раздел конфигурации, который может быть смонтирован в каталоге [."
+"filename]#/cfg# во время выполнения."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:81
+msgid "These partitions are normally mounted read-only."
+msgstr "Эти разделы обычно монтируются в режиме только для чтения."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:83
+msgid ""
+"The [.filename]#/etc# and [.filename]#/var# directories are man:md[4] "
+"(malloc) disks."
+msgstr ""
+"Каталоги [.filename]#/etc# и [.filename]#/var# являются дисками man:md[4] "
+"(malloc)."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:86
+msgid ""
+"The configuration file partition persists under the [.filename]#/cfg# "
+"directory. It contains files for [.filename]#/etc# directory and is briefly "
+"mounted read-only right after the system boot, therefore it is required to "
+"copy modified files from [.filename]#/etc# back to the [.filename]#/cfg# "
+"directory if changes are expected to persist after the system restarts."
+msgstr ""
+"Раздел конфигурации сохраняется в каталоге [.filename]#/cfg#. Он содержит "
+"файлы для каталога [.filename]#/etc# и кратковременно монтируется в режиме "
+"только для чтения сразу после загрузки системы, поэтому необходимо "
+"копировать изменённые файлы из [.filename]#/etc# обратно в каталог [."
+"filename]#/cfg#, если требуется, чтобы изменения сохранялись после "
+"перезагрузки системы."
+
+#. type: Block title
+#: documentation/content/en/articles/nanobsd/_index.adoc:87
+#, no-wrap
+msgid "Making Persistent Changes to [.filename]#/etc/resolv.conf#"
+msgstr "Внесение постоянных изменений в [.filename]#/etc/resolv.conf#"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:98
+#, no-wrap
+msgid ""
+"# vi /etc/resolv.conf\n"
+"[...]\n"
+"# mount /cfg\n"
+"# cp /etc/resolv.conf /cfg\n"
+"# umount /cfg\n"
+msgstr ""
+"# vi /etc/resolv.conf\n"
+"[...]\n"
+"# mount /cfg\n"
+"# cp /etc/resolv.conf /cfg\n"
+"# umount /cfg\n"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:105
+msgid ""
+"The partition containing [.filename]#/cfg# should be mounted only at boot "
+"time and while overriding the configuration files."
+msgstr ""
+"Раздел, содержащий [.filename]#/cfg#, должен монтироваться только во время "
+"загрузки и при переопределении конфигурационных файлов."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:107
+msgid ""
+"Keeping [.filename]#/cfg# mounted at all times is not a good idea, "
+"especially if the NanoBSD system runs off a mass storage medium that may be "
+"adversely affected by a large number of writes to the partition (like when "
+"the filesystem syncer flushes data to the system disks)."
+msgstr ""
+"Постоянное подключение [.filename]#/cfg# не является хорошей идеей, особенно "
+"если Система NanoBSD работает на носителе данных, который может быть "
+"повреждён из-за большого количества операций записи в раздел (например, "
+"когда синхронизатор файловой системы записывает данные на системные диски)."
+
+#. type: Title ===
+#: documentation/content/en/articles/nanobsd/_index.adoc:109
+#, no-wrap
+msgid "Building a NanoBSD Image"
+msgstr "Создание образа NanoBSD"
+
+#. type: delimited block = 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:113
+msgid ""
+"The source code of FreeBSD is required to build NanoBSD. To obtain the "
+"source code:"
+msgstr ""
+"Для сборки NanoBSD необходим исходный код FreeBSD. Чтобы получить исходный "
+"код:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:117
+#, no-wrap
+msgid "# git clone https://git.FreeBSD.org/src.git /usr/src\n"
+msgstr "# git clone https://git.FreeBSD.org/src.git /usr/src\n"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:120
+msgid ""
+"For more details, follow the steps extref:{handbook}cutting-edge#updating-"
+"src-obtaining-src[here]."
+msgstr ""
+"Для более подробной информации выполните шаги, описанные extref:{handbook"
+"}cutting-edge#updating-src-obtaining-src[здесь]."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:123
+msgid ""
+"A NanoBSD image is built using a simple [.filename]#nanobsd.sh# shell "
+"script, which can be found in the [.filename]#/usr/src/tools/tools/nanobsd# "
+"directory. This script creates an image, which can be copied on the storage "
+"medium using the man:dd[1] utility."
+msgstr ""
+"Образ NanoBSD создаётся с помощью простого скрипта [.filename]#nanobsd.sh#, "
+"который находится в каталоге [.filename]#/usr/src/tools/tools/nanobsd#. Этот "
+"скрипт создаёт образ, который можно записать на носитель с помощью утилиты "
+"man:dd[1]."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:125
+msgid "The necessary commands to build a NanoBSD image are:"
+msgstr "Необходимые команды для создания образа NanoBSD:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:132
+#, no-wrap
+msgid ""
+"# cd /usr/src/tools/tools/nanobsd <.>\n"
+"# sh nanobsd.sh <.>\n"
+"# cd /usr/obj/nanobsd.full <.>\n"
+"# dd if=_.disk.full of=/dev/da0 bs=64k <.>\n"
+msgstr ""
+"# cd /usr/src/tools/tools/nanobsd <.>\n"
+"# sh nanobsd.sh <.>\n"
+"# cd /usr/obj/nanobsd.full <.>\n"
+"# dd if=_.disk.full of=/dev/da0 bs=64k <.>\n"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:135
+msgid ""
+"Change the current directory to the base directory of the NanoBSD build "
+"script."
+msgstr "Измените текущий каталог на базовый каталог скрипта сборки NanoBSD."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:137
+msgid "Start the build process."
+msgstr "Начните процесс сборки."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:139
+msgid ""
+"Change the current directory to the place where the built images are located."
+msgstr "Измените текущий каталог на место, где расположены собранные образы."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:141
+msgid "Install NanoBSD onto the storage medium."
+msgstr "Установите NanoBSD на носитель данных."
+
+#. type: Title ====
+#: documentation/content/en/articles/nanobsd/_index.adoc:142
+#, no-wrap
+msgid "Options When Building a NanoBSD Image"
+msgstr "Параметры при сборке образа NanoBSD"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:146
+msgid ""
+"When building a NanoBSD image, several build options can be passed to [."
+"filename]#nanobsd.sh# on the command line. These options can have a "
+"significant impact on the build process."
+msgstr ""
+"При создании образа NanoBSD можно передать несколько параметров сборки в [."
+"filename]#nanobsd.sh# через командную строку. Эти параметры могут "
+"существенно повлиять на процесс сборки."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:148
+msgid "Some options are for verbosity purposes:"
+msgstr ""
+"Некоторые параметры предназначены для информирования в большем или меньшем "
+"объеме:"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:150
+msgid "`-h`: prints the help summary page."
+msgstr "`-h`: выводит страницу с краткой справкой."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:151
+msgid "`-q`: makes output quieter."
+msgstr "`-q`: делает вывод менее подробным."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:152
+msgid "`-v`: makes output more verbose"
+msgstr "`-v`: делает вывод более подробным"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:155
+msgid ""
+"Some other options can be used to restrict the building process. Sometimes "
+"it is not necessary to rebuild everything from sources, especially if an "
+"image has already been built, and only little change is made."
+msgstr ""
+"Некоторые другие параметры могут использоваться для ограничения процесса "
+"сборки. Иногда нет необходимости пересобирать всё из исходников, особенно "
+"если образ уже был собран и внесены лишь небольшие изменения."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:157
+msgid "`-k`: do not build the kernel"
+msgstr "`-k`: не собирать ядро"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:158
+msgid "`-w`: do not build world"
+msgstr "`-w`: не собирать world"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:159
+msgid "`-b`: do not build either kernel and world"
+msgstr "`-b`: не собирать ни ядро, ни систему"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:160
+msgid ""
+"`-i`: do not build a disk image at all. As a file will not be created, it "
+"will not be possible to man:dd[1] it to a storage media."
+msgstr ""
+"`-i`: не создавать образ диска. Поскольку файл не будет создан, его нельзя "
+"будет записать на носитель с помощью man:dd[1]."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:161
+msgid ""
+"`-f`: do not build a disk image of the first partition (which is useful for "
+"upgrade purposes)"
+msgstr ""
+"`-f`: не создавать образ диска первого раздела (что полезно для целей "
+"обновления)"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:162
+msgid ""
+"`-n`: add `-DNO_CLEAN` to `buildworld`, `buildkernel`. Also, all the files "
+"that have already been built in a previous run are kept."
+msgstr ""
+"`-n`: добавляет `-DNO_CLEAN` к `buildworld`, `buildkernel`. Кроме того, все "
+"файлы, которые уже были собраны в предыдущем запуске, сохраняются."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:165
+msgid ""
+"A configuration file can be used to tweak as many elements as desired. Load "
+"it with `-c`"
+msgstr ""
+"Файл конфигурации можно использовать для настройки множества элементов. "
+"Загрузите его с помощью `-c`"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:167
+msgid "The last options are:"
+msgstr "Последние параметры:"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:169
+msgid ""
+"`-K`: do not install a kernel. A disk image without a kernel will not be "
+"able to achieve a normal boot sequence."
+msgstr ""
+"`-K`: не устанавливать ядро. Образ диска без ядра не сможет выполнить "
+"нормальную последовательность загрузки."
+
+#. type: Title ====
+#: documentation/content/en/articles/nanobsd/_index.adoc:170
+#, no-wrap
+msgid "The Complete Image Building Process"
+msgstr "Полный процесс сборки образа"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:175
+msgid ""
+"The complete image building process is going through a lot of steps. The "
+"exact steps taken will depend on the chosen options when starting the "
+"script. Assuming the script is run with no particular options, this is what "
+"will happen."
+msgstr ""
+"Полный процесс сборки образа проходит через множество этапов. Точные шаги "
+"зависят от выбранных опций при запуске скрипта. При условии, что скрипт "
+"запущен без специальных опций, вот что произойдет."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:177
+msgid ""
+"`run_early_customize`: commands that are defined in a supplied configuration "
+"file."
+msgstr ""
+"`run_early_customize`: команды, определенные в предоставленном файле "
+"конфигурации."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:178
+msgid ""
+"`clean_build`: Just cleans the build environment by deleting the previously "
+"built files."
+msgstr ""
+"`clean_build`: Просто очищает среду сборки, удаляя ранее созданные файлы."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:179
+msgid ""
+"`make_conf_build`: Assemble make.conffrom the `CONF_WORLD` and `CONF_BUILD` "
+"variables."
+msgstr ""
+"`make_conf_build`: Собрать make.conf из переменных `CONF_WORLD` и "
+"`CONF_BUILD`."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:180
+msgid "`build_world`: Build world."
+msgstr "`build_world`: Сборка системы."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:181
+msgid "`build_kernel`: Build the kernel files."
+msgstr "`build_kernel`: Собрать файлы ядра."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:182
+msgid "`clean_world`: Clean the destination directory."
+msgstr "`clean_world`: Очистить целевую директорию."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:183
+msgid ""
+"`make_conf_install`: Assemble make.conf from the `CONF_WORLD` and "
+"`CONF_INSTALL` variables."
+msgstr ""
+"`make_conf_install`: Собрать make.conf из переменных `CONF_WORLD` и "
+"`CONF_INSTALL`."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:184
+msgid "`install_world`: Install all files built during `buildworld`."
+msgstr "`install_world`: Установить все файлы, собранные во время `buildworld`."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:185
+msgid ""
+"`install_etc`: Install the necessary files in the [.filename]#/etc# "
+"directory, based on the `make distribution` command."
+msgstr ""
+"`install_etc`: Установить необходимые файлы в директорию [.filename]#/etc#, "
+"используя команду `make distribution`."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:186
+msgid ""
+"`setup_nanobsd_etc`: the first configuration specific to NanoBSD takes place "
+"at this stage. The [.filename]#/etc/diskless# is created and the root "
+"filesystem is defined as read-only."
+msgstr ""
+"`setup_nanobsd_etc`: на этом этапе происходит первая специфичная для NanoBSD "
+"настройка. Создается [.filename]#/etc/diskless#, а корневая файловая система "
+"определяется как доступная только для чтения."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:187
+msgid "`install_kernel`: the kernel and modules files are installed."
+msgstr "`install_kernel`: устанавливаются файлы ядра и модулей."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:188
+msgid ""
+"`run_customize`: all the customizing routines defined by the user will be "
+"called."
+msgstr ""
+"`run_customize`: будут вызваны все пользовательские процедуры настройки."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:189
+msgid ""
+"`setup_nanobsd`: a special configuration directory layout is setup. The [."
+"filename]#/usr/local/etc# gets moved to [.filename]#/etc/local# and a "
+"symbolic link is created back from [.filename]#/etc/local# to [.filename]#/"
+"usr/local/etc#."
+msgstr ""
+"`setup_nanobsd`: создаётся специальная структура конфигурационных каталогов. "
+"Каталог [.filename]#/usr/local/etc# перемещается в [.filename]#/etc/local#, "
+"а затем создаётся символическая ссылка из [.filename]#/etc/local# обратно в ["
+".filename]#/usr/local/etc#."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:190
+msgid "`prune_usr`: the empty directories from [.filename]#/usr# are removed."
+msgstr "`prune_usr`: пустые директории в [.filename]#/usr# удаляются."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:191
+msgid ""
+"`run_late_customize`: the very last custom scripts can be run at this point."
+msgstr ""
+"`run_late_customize`: на этом этапе могут быть выполнены самые последние "
+"пользовательские скрипты."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:192
+msgid "`fixup_before_diskimage`: List all installed files in a metalog"
+msgstr ""
+"`fixup_before_diskimage`: Вывести список всех установленных файлов в metalog"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:193
+msgid ""
+"`create_diskimage`: creates the actual disk image, based on the disk "
+"geometries provides parameters."
+msgstr ""
+"`create_diskimage`: создает образ диска на основе предоставленных параметров "
+"геометрии диска."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:194
+msgid "`last_orders`: does nothing for now."
+msgstr "`last_orders`: в настоящее время ничего не делает."
+
+#. type: Title ===
+#: documentation/content/en/articles/nanobsd/_index.adoc:195
+#, no-wrap
+msgid "Customizing a NanoBSD Image"
+msgstr "Настройка образа NanoBSD"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:199
+msgid ""
+"This is probably the most important and most interesting feature of "
+"NanoBSD. This is also where you will be spending most of the time when "
+"developing with NanoBSD."
+msgstr ""
+"Вероятно, это самая важная и интересная функция NanoBSD. Здесь же вы "
+"проведёте большую часть времени при разработке с NanoBSD."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:201
+msgid ""
+"Invocation of the following command will force the [.filename]#nanobsd.sh# "
+"to read its configuration from [.filename]#myconf.nano# located in the "
+"current directory:"
+msgstr ""
+"Вызов следующей команды заставит [.filename]#nanobsd.sh# прочитать "
+"конфигурацию из файла [.filename]#myconf.nano#, расположенного в текущем "
+"каталоге:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:205
+#, no-wrap
+msgid "# sh nanobsd.sh -c myconf.nano\n"
+msgstr "# sh nanobsd.sh -c myconf.nano\n"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:208
+msgid "Customization is done in two ways:"
+msgstr "Настройка выполняется двумя способами:"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:210
+msgid "Configuration options"
+msgstr "Параметры конфигурации"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:211
+msgid "Custom functions"
+msgstr "Пользовательские функции"
+
+#. type: Title ====
+#: documentation/content/en/articles/nanobsd/_index.adoc:212
+#, no-wrap
+msgid "Configuration Options"
+msgstr "Параметры конфигурации"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:217
+msgid ""
+"With configuration settings, it is possible to configure options passed to "
+"both the `buildworld` and `installworld` stages of the NanoBSD build "
+"process, as well as internal options passed to the main build process of "
+"NanoBSD. Through these options it is possible to cut the system down, so it "
+"will fit on as little as 64MB. You can use the configuration options to "
+"trim down FreeBSD even more, until it will consists of just the kernel and "
+"two or three files in the userland."
+msgstr ""
+"С помощью настроек конфигурации можно задать параметры, передаваемые как на "
+"этапах `buildworld`, так и `installworld` процесса сборки NanoBSD, а также "
+"внутренние параметры, передаваемые основному процессу сборки NanoBSD. Эти "
+"параметры позволяют сократить систему так, чтобы она помещалась всего на 64 "
+"МБ. Вы можете использовать конфигурационные опции для ещё большего урезания "
+"FreeBSD, пока она не будет состоять только из ядра и двух-трёх файлов в "
+"пользовательском пространстве."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:220
+msgid ""
+"The configuration file consists of configuration options, which override the "
+"default values. The most important directives are:"
+msgstr ""
+"Файл конфигурации состоит из параметров конфигурации, которые переопределяют "
+"значения по умолчанию. Наиболее важные директивы:"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:222
+msgid "`NANO_NAME` - Name of build (used to construct the workdir names)."
+msgstr ""
+"`NANO_NAME` - Имя сборки (используется для формирования имен рабочих "
+"каталогов)."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:223
+msgid "`NANO_SRC` - Path to the source tree used to build the image."
+msgstr "`NANO_SRC` - Путь к исходному дереву, используемому для сборки образа."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:224
+msgid "`NANO_KERNEL` - Name of kernel configuration file used to build kernel."
+msgstr ""
+"`NANO_KERNEL` - Имя файла конфигурации ядра, используемого для сборки ядра."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:225
+msgid "`CONF_BUILD` - Options passed to the `buildworld` stage of the build."
+msgstr "`CONF_BUILD` - Параметры, передаваемые на этапе `buildworld` сборки."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:226
+msgid ""
+"`CONF_INSTALL` - Options passed to the `installworld` stage of the build."
+msgstr ""
+"`CONF_INSTALL` - Параметры, передаваемые на этапе `installworld` при сборке."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:227
+msgid ""
+"`CONF_WORLD` - Options passed to both the `buildworld` and the "
+"`installworld` stage of the build."
+msgstr ""
+"`CONF_WORLD` - Параметры, передаваемые на этапах `buildworld` и "
+"`installworld` сборки."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:228
+msgid ""
+"`FlashDevice` - Defines what type of media to use. Check [."
+"filename]#FlashDevice.sub# for more details."
+msgstr ""
+"`FlashDevice` - Определяет тип носителя для использования. Подробности "
+"смотрите в [.filename]#FlashDevice.sub#."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:230
+msgid ""
+"There are many more configuration options that could be relevant depending "
+"upon the kind of NanoBSD that is desired."
+msgstr ""
+"Существует множество дополнительных параметров конфигурации, которые могут "
+"быть актуальными в зависимости от типа NanoBSD."
+
+#. type: Title =====
+#: documentation/content/en/articles/nanobsd/_index.adoc:231
+#, no-wrap
+msgid "General Customization"
+msgstr "Общая настройка"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:234
+msgid ""
+"There are three stages, by design, at which it is possible to make changes "
+"that affect the building process, just by setting up a variable in the "
+"provided configuration file:"
+msgstr ""
+"Существует три этапа, на которых по замыслу можно внести изменения, влияющие "
+"на процесс сборки, просто установив переменную в предоставленном "
+"конфигурационном файле:"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:236
+msgid "`run_early_customize`: before anything else happens."
+msgstr "`run_early_customize`: до выполнения любых других действий."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:237
+msgid "`run_customize`: after all the standard files have been laid out"
+msgstr "`run_customize`: после того как все стандартные файлы будут размещены"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:238
+msgid ""
+"`run_late_customize`: at the very end of the process, just before the actual "
+"NanoBSD image is built."
+msgstr ""
+"`run_late_customize`: в самом конце процесса, непосредственно перед "
+"созданием фактического образа NanoBSD."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:240
+msgid ""
+"To customize a NanoBSD image, at any of these steps, it is best to add a "
+"specific value to one of the corresponding variables."
+msgstr ""
+"Для настройки образа NanoBSD на любом из этих этапов лучше всего добавить "
+"конкретное значение в одну из соответствующих переменных."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:243
+msgid ""
+"The `NANO_EARLY_CUSTOMIZE` variable is used at the first step of the "
+"building process. At this point, there is no example as to what can be done "
+"using that variable, but it may change in the future."
+msgstr ""
+"Переменная `NANO_EARLY_CUSTOMIZE` используется на первом этапе процесса "
+"сборки. На данный момент нет примера того, что можно сделать с помощью этой "
+"переменной, но это может измениться в будущем."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:246
+msgid ""
+"The `NANO_CUSTOMIZE` variable is used after the kernel, world and etc "
+"configuration files have been installed, and the etc files have been setup "
+"as to be a NanoBSD installation. So it is the correct step in the building "
+"process to tweak configuration options and add packages, like in the "
+"cust_nobeastie example."
+msgstr ""
+"Переменная `NANO_CUSTOMIZE` используется после установки ядра, системы и "
+"конфигурационных файлов etc, а также настройки файлов etc для установки "
+"NanoBSD. Таким образом, это правильный этап процесса сборки для изменения "
+"параметров конфигурации и добавления пакетов, как в примере cust_nobeastie."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:250
+msgid ""
+"The `NANO_LATE_CUSTOMIZE` variable is used just before the disk image is "
+"created, so it is the very last moment to change anything. Remember that "
+"the `setup_nanobsd` routine already executed and that the [.filename]#etc#, "
+"[.filename]#conf# and [.filename]#cfg# directories and subdirectories are "
+"already modified, so it is not time to change them at this point. Rather, "
+"it is possible to add or remove specific files."
+msgstr ""
+"Переменная `NANO_LATE_CUSTOMIZE` используется непосредственно перед "
+"созданием образа диска, поэтому это последний момент для внесения изменений. "
+"Помните, что процедура `setup_nanobsd` уже выполнена и каталоги [."
+"filename]#etc#, [.filename]#conf# и [.filename]#cfg#, включая подкаталоги, "
+"уже изменены, поэтому сейчас не время их корректировать. Вместо этого можно "
+"добавить или удалить конкретные файлы."
+
+#. type: Title =====
+#: documentation/content/en/articles/nanobsd/_index.adoc:251
+#, no-wrap
+msgid "Booting Options"
+msgstr "Параметры загрузки"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:255
+msgid ""
+"There are also variables that can change the way the NanoBSD image boots. "
+"Two options are passed to man:boot0cfg[8] to initialize the boot sector of "
+"the disk image:"
+msgstr ""
+"Существуют также переменные, которые могут изменить способ загрузки образа "
+"NanoBSD. Два параметра передаются в man:boot0cfg[8] для инициализации "
+"загрузочного сектора образа диска:"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:257
+msgid "`NANO_BOOT0CFG`"
+msgstr "`NANO_BOOT0CFG`"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:258
+msgid "`NANO_BOOTLOADER`"
+msgstr "`NANO_BOOTLOADER`"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:263
+msgid ""
+"With `NANO_BOOTLOADER` a bootloader file can be chosen. The most common "
+"possible options are between [.filename]#boot0sio# and [.filename]#boot0# "
+"depending on whether the appliance has a serial port or not. It is best to "
+"avoid supplying a different bootloader, but it is possible. To do so, it is "
+"best to have checked the extref:{handbook}boot[FreeBSD Handbook] chapter on "
+"the boot process."
+msgstr ""
+"С помощью `NANO_BOOTLOADER` можно выбрать файл загрузчика. Наиболее "
+"распространённые варианты — [.filename]#boot0sio# и [.filename]#boot0#, в "
+"зависимости от наличия последовательного порта у устройства. Лучше не "
+"указывать другой загрузчик, но это возможно. Для этого рекомендуется "
+"предварительно ознакомиться с extref:{handbook}boot[главой FreeBSD Handbook] "
+"о процессе загрузки."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:270
+msgid ""
+"With `NANO_BOOT0CFG`, the booting process can be tweaked, like selecting on "
+"which partition the NanoBSD image will actually boot. It is best to check "
+"the man:boot0cfg[8] page before changing the default value of this "
+"variable. One option that could be interesting to change is the timeout of "
+"the booting procedure. To do so, the `NANO_BOOT0CFG` variable can be "
+"changed to `\"-o packet -s 1 -m 3 -t 36\"`. That way the booting process "
+"would start after approximately 2 seconds; because it is rare that waiting "
+"10 seconds before actually booting is desired."
+msgstr ""
+"С помощью `NANO_BOOT0CFG` можно настроить процесс загрузки, например, "
+"выбрать раздел, с которого будет загружаться образ NanoBSD. Перед изменением "
+"значения этой переменной рекомендуется ознакомиться со страницей руководства "
+"man:boot0cfg[8]. Один из интересных параметров, который можно изменить, — "
+"это таймаут процедуры загрузки. Для этого переменную `NANO_BOOT0CFG` можно "
+"изменить на `\"-o packet -s 1 -m 3 -t 36\"`. В этом случае процесс загрузки "
+"начнётся примерно через 2 секунды, так как редко возникает необходимость "
+"ждать 10 секунд перед началом загрузки."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:273
+msgid ""
+"Good to know: the `NANO_BOOT2CFG` variable is only used in the "
+"`cust_comconsole` routine that can be called at the `NANO_CUSTOMIZE` step if "
+"the appliance has a serial port and all console input and output has to take "
+"place through it. Be sure to check the relevant parameters of the serial "
+"port, as setting a bad parameter value can make it useless."
+msgstr ""
+"Хорошо знать: переменная `NANO_BOOT2CFG` используется только в подпрограмме "
+"`cust_comconsole`, которая может вызываться на этапе `NANO_CUSTOMIZE`, если "
+"устройство имеет последовательный порт и весь ввод и вывод консоли должен "
+"осуществляться через него. Обязательно проверьте соответствующие параметры "
+"последовательного порта, так как установка некорректного значения параметра "
+"может сделать его бесполезным."
+
+#. type: Title =====
+#: documentation/content/en/articles/nanobsd/_index.adoc:274
+#, no-wrap
+msgid "Disk Image Creation"
+msgstr "Создание образа диска"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:278
+msgid ""
+"In the end of the boot process is the disk image creation. With this step, "
+"the NanoBSD script provides a file that can simply be copied onto a disk for "
+"the appliance, and that will make it boot and start."
+msgstr ""
+"В конце процесса загрузки происходит создание образа диска. На этом этапе "
+"скрипт NanoBSD предоставляет файл, который можно просто скопировать на диск "
+"для устройства, и это позволит ему загрузиться и запуститься."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:280
+msgid ""
+"There are many variable that need to be set just right for the script to "
+"produce a usable disk image."
+msgstr ""
+"Существует множество переменных, которые должны быть настроены правильно, "
+"чтобы скрипт создал пригодный для использования образ диска."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:282
+msgid ""
+"The `NANO_DRIVE` variable must be set to the drive name of the media at "
+"runtime. Usually, the default value `ada0`, which represents the first `IDE`/"
+"`ATA`/`SATA` device on the appliance is expected to be the correct one, but "
+"a different type of storage could also be used - like a USB key, in which "
+"case, it would rather be da0."
+msgstr ""
+"Переменная `NANO_DRIVE` должна быть установлена в имя накопителя носителя во "
+"время выполнения. Обычно ожидается, что значение по умолчанию `ada0`, "
+"которое представляет первое устройство `IDE`/`ATA`/`SATA` на устройстве, "
+"будет правильным, но также может использоваться другой тип накопителя — "
+"например, USB-ключ, в этом случае это скорее будет `da0`."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:283
+msgid ""
+"The `NANO_MEDIASIZE` variable must be set to the size (in 512 bytes sectors) "
+"of the storage media that will be used. If you set it wrong, it is possible "
+"that the NanoBSD image will not boot at all, and a message at boot time will "
+"be warning about incorrect disk geometry."
+msgstr ""
+"Переменная `NANO_MEDIASIZE` должна быть установлена в значение размера (в "
+"секторах по 512 байт) носителя данных, который будет использоваться. Если "
+"задать её неправильно, образ NanoBSD может вообще не загрузиться, а во время "
+"загрузки появится сообщение о некорректной геометрии диска."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:285
+msgid ""
+"The [.filename]#/etc#, [.filename]#/var#, and [.filename]#/tmp# directories "
+"are allocated as man:md[4] (malloc) disks at boot time; so their sizes can "
+"be tailored to suit the appliance needs. The `NANO_RAM_ETCSIZE` variable "
+"sets the size of the [.filename]#/etc#; and the `NANO_RAM_TMPVARSIZE` "
+"variable sets the size of both the [.filename]#/var# and [.filename]#/tmp# "
+"directory, as [.filename]#/tmp# is symbolically linked to [.filename]#/var/"
+"tmp#. By default, both malloc disks sizes are set at 20MB each. They can "
+"always be changed, but usually the [.filename]#/etc# does not grow too much "
+"in size, so 20MB is a good starting point, whereas the [.filename]#/var# and "
+"especially [.filename]#/tmp# can grow much larger if not careful about it. "
+"For memory constrained systems, smaller filesystem sizes may be chosen."
+msgstr ""
+"Каталоги [.filename]#/etc#, [.filename]#/var# и [.filename]#/tmp# выделяются "
+"как диски man:md[4] (malloc) при загрузке; их размеры могут быть настроены в "
+"соответствии с потребностями устройства. Переменная `NANO_RAM_ETCSIZE` "
+"задаёт размер [.filename]#/etc#, а переменная `NANO_RAM_TMPVARSIZE` "
+"определяет размер как [.filename]#/var#, так и [.filename]#/tmp#, поскольку ["
+".filename]#/tmp# символически ссылается на [.filename]#/var/tmp#. По "
+"умолчанию размер обоих дисков malloc установлен в 20 МБ каждый. Их можно "
+"изменить, но обычно [.filename]#/etc# не сильно увеличивается в размере, "
+"поэтому 20 МБ — хорошая начальная точка, тогда как [.filename]#/var# и "
+"особенно [.filename]#/tmp# могут стать значительно больше, если не следить "
+"за ними. Для систем с ограниченной памятью можно выбрать меньшие размеры "
+"файловых систем."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:286
+msgid ""
+"As NanoBSD is mainly designed to build a system image for an appliance, it "
+"is assumed that the storage media used will be relatively small. For that "
+"reason, the filesystem that is laid out is configured to have a small block "
+"size (4Kb) and a small fragment size (512b). The configuration options of "
+"the filesystem can be modified through the `NANO_NEWFS` variable, but the "
+"syntax must respect the man:newfs[8] command format. Also, by default, the "
+"filesystem has Soft Updates enabled. The extref:{handbook}[FreeBSD Handbook] "
+"can be checked about this."
+msgstr ""
+"Поскольку NanoBSD в основном предназначен для создания образа системы для "
+"устройства, предполагается, что используемые носители данных будут "
+"относительно небольшими. По этой причине файловая система настроена на "
+"использование небольшого размера блока (4 Кб) и небольшого размера фрагмента "
+"(512 байт). Параметры конфигурации файловой системы можно изменить с помощью "
+"переменной `NANO_NEWFS`, но синтаксис должен соответствовать формату команды "
+"man:newfs[8]. Кроме того, по умолчанию в файловой системе включены Soft "
+"Updates. Подробнее об этом можно узнать в extref:{handbook}[FreeBSD "
+"Handbook]."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:287
+msgid ""
+"The different partition sizes can be set through the use of `NANO_CODESIZE`, "
+"`NANO_CONFSIZE`, and `NANO_DATASIZE` as a multiple of 512 bytes sectors. "
+"`NANO_CODESIZE` defines the size of the first two image partitions: `code#1` "
+"and `code#2`. They have to be big enough to hold all the files that will be "
+"produced as a result of the `buildworld` and `buildkernel` processes. "
+"`NANO_CONFSIZE` defines the size of the configuration file partition, so it "
+"does not need to be very big; but do not make it so small that it will not "
+"hold all configuration files. Finally, `NANO_DATASIZE` defines the size of "
+"an optional partition, that can be used on the appliance. The last partition "
+"can be used, for example, to keep files created on the fly on disk."
+msgstr ""
+"Различные размеры разделов могут быть заданы с использованием `NANO_CODESIZE`"
+", `NANO_CONFSIZE` и `NANO_DATASIZE` в виде кратного 512-байтным секторам. "
+"`NANO_CODESIZE` определяет размер первых двух разделов образа: `code#1` и "
+"`code#2`. Они должны быть достаточно большими, чтобы вместить все файлы, "
+"созданные в результате процессов `buildworld` и `buildkernel`. "
+"`NANO_CONFSIZE` определяет размер раздела для конфигурационных файлов, "
+"поэтому он не должен быть очень большим; однако не стоит делать его слишком "
+"маленьким, чтобы он мог вместить все конфигурационные файлы. Наконец, "
+"`NANO_DATASIZE` определяет размер дополнительного раздела, который может "
+"использоваться на устройстве. Последний раздел может быть использован, "
+"например, для хранения файлов, создаваемых на лету на диске."
+
+#. type: Title ====
+#: documentation/content/en/articles/nanobsd/_index.adoc:288
+#, no-wrap
+msgid "Custom Functions"
+msgstr "Пользовательские Функции"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:292
+msgid ""
+"It is possible to fine-tune NanoBSD using shell functions in the "
+"configuration file. The following example illustrates the basic model of "
+"custom functions:"
+msgstr ""
+"Возможно тонко настроить NanoBSD с помощью функций оболочки в "
+"конфигурационном файле. Следующий пример иллюстрирует базовую модель "
+"пользовательских функций:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:300
+#, no-wrap
+msgid ""
+"cust_foo () (\n"
+"\techo \"bar=baz\" > \\\n"
+"\t\t${NANO_WORLDDIR}/etc/foo\n"
+")\n"
+"customize_cmd cust_foo\n"
+msgstr ""
+"cust_foo () (\n"
+"\techo \"bar=baz\" > \\\n"
+"\t\t${NANO_WORLDDIR}/etc/foo\n"
+")\n"
+"customize_cmd cust_foo\n"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:303
+msgid ""
+"A more useful example of a customization function is the following, which "
+"changes the default size of the [.filename]#/etc# directory from 5MB to 30MB:"
+msgstr ""
+"Более полезный пример функции настройки — следующий, который изменяет размер "
+"каталога [.filename]#/etc# по умолчанию с 5 МБ на 30 МБ:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:311
+#, no-wrap
+msgid ""
+"cust_etc_size () (\n"
+"\tcd ${NANO_WORLDDIR}/conf\n"
+"\techo 30000 > default/etc/md_size\n"
+")\n"
+"customize_cmd cust_etc_size\n"
+msgstr ""
+"cust_etc_size () (\n"
+"\tcd ${NANO_WORLDDIR}/conf\n"
+"\techo 30000 > default/etc/md_size\n"
+")\n"
+"customize_cmd cust_etc_size\n"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:314
+msgid ""
+"There are a few default pre-defined customization functions ready for use:"
+msgstr ""
+"Существует несколько предопределённых функций для настройки, готовых к "
+"использованию:"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:316
+msgid ""
+"`cust_comconsole` - Disables man:getty[8] on the VGA devices (the [."
+"filename]#/dev/ttyv*# device nodes) and enables the use of the COM1 serial "
+"port as the system console."
+msgstr ""
+"`cust_comconsole` - Отключает man:getty[8] на VGA-устройствах (узлы "
+"устройств [.filename]#/dev/ttyv*#) и позволяет использовать последовательный "
+"порт COM1 в качестве системной консоли."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:317
+msgid "`cust_allow_ssh_root` - Allow `root` to login via man:sshd[8]."
+msgstr "`cust_allow_ssh_root` - Разрешить `root` входить через man:sshd[8]."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:318
+msgid ""
+"`cust_install_files` - Installs files from the [.filename]#nanobsd/Files# "
+"directory, which contains some useful scripts for system administration."
+msgstr ""
+"`cust_install_files` - Устанавливает файлы из каталога [.filename]#nanobsd/"
+"Files#, который содержит полезные скрипты для администрирования системы."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:319
+msgid ""
+"`cust_pkgng` - Installs packages from the [.filename]#nanobsd/Pkg# directory "
+"(needs also pkg-* package to bootstrap)."
+msgstr ""
+"`cust_pkgng` - Устанавливает пакеты из каталога [.filename]#nanobsd/Pkg# ("
+"также требуется пакет pkg-* для начальной загрузки)."
+
+#. type: Title ====
+#: documentation/content/en/articles/nanobsd/_index.adoc:320
+#, no-wrap
+msgid "Adding Packages"
+msgstr "Добавление пакетов"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:323
+msgid ""
+"Packages can be added to a NanoBSD image, to provide specific "
+"functionalities on the appliance. To do so, either:"
+msgstr ""
+"Пакеты могут быть добавлены в образ NanoBSD для обеспечения специфических "
+"функциональных возможностей устройства. Для этого можно:"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:325
+msgid "Add the `cust_pkgng` to the `NANO_CUSTOMIZE` variable, or"
+msgstr "Добавьте `cust_pkgng` в переменную `NANO_CUSTOMIZE` или"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:326
+msgid ""
+"Add a `'customize_cmd cust_pkgng'` command in a customized configuration "
+"file."
+msgstr ""
+"Добавьте команду `'customize_cmd cust_pkgng'` в настраиваемый "
+"конфигурационный файл."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:329
+msgid ""
+"Both methods achieve the same result: launching the `cust_pkgng` routine. "
+"This routine will go through `NANO_PACKAGE_DIR` directory to find either all "
+"packages or just the list of packages in the `NANO_PACKAGE_LIST` variable."
+msgstr ""
+"Оба метода приводят к одному результату: запуск процедуры `cust_pkgng`. Эта "
+"процедура проверит каталог `NANO_PACKAGE_DIR` для поиска всех пакетов или "
+"только списка пакетов, указанных в переменной `NANO_PACKAGE_LIST`."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:335
+msgid ""
+"It is common, when installing applications through pkg on a standard FreeBSD "
+"environment, that the install process puts configuration files, in the [."
+"filename]#usr/local/etc# directory, and startup scripts in the [.filename]#/"
+"usr/local/etc/rc.d# directory. So, after the required packages have been "
+"installed, they need to be configured in order for them to start right out "
+"of the box. To do so, the necessary configuration files have to be "
+"installed in the correct directories. This can be achieved by writing "
+"dedicated routines or the generic `cust_install_files` routine can be used "
+"to lay out files properly from the [.filename]#/usr/src/tools/tools/nanobsd/"
+"Files# directory. Usually a statement, sometimes multiple statements, in "
+"the [.filename]#/etc/rc.conf# also needs to be added for each package."
+msgstr ""
+"Обычно при установке приложений через pkg в стандартной среде FreeBSD "
+"процесс установки размещает конфигурационные файлы в каталоге [.filename]#"
+"usr/local/etc#, а скрипты запуска — в каталоге [.filename]#/usr/local/etc/rc."
+"d#. Поэтому после установки необходимых пакетов их нужно настроить, чтобы "
+"они запускались сразу после установки. Для этого необходимо разместить "
+"соответствующие конфигурационные файлы в правильных каталогах. Это можно "
+"сделать, написав специализированные процедуры, или использовать общую "
+"процедуру `cust_install_files` для корректного размещения файлов из каталога "
+"[.filename]#/usr/src/tools/tools/nanobsd/Files#. Обычно также требуется "
+"добавить одну или несколько записей в файл [.filename]#/etc/rc.conf# для "
+"каждого пакета."
+
+#. type: Title ====
+#: documentation/content/en/articles/nanobsd/_index.adoc:336
+#, no-wrap
+msgid "Configuration File Example"
+msgstr "Пример файла конфигурации"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:339
+msgid ""
+"A complete example of a configuration file for building a custom NanoBSD "
+"image can be:"
+msgstr ""
+"Полный пример конфигурационного файла для создания пользовательского образа "
+"NanoBSD может выглядеть следующим образом:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:346
+#, no-wrap
+msgid ""
+"NANO_NAME=custom\n"
+"NANO_SRC=/usr/src\n"
+"NANO_KERNEL=MYKERNEL\n"
+"NANO_IMAGES=2\n"
+msgstr ""
+"NANO_NAME=custom\n"
+"NANO_SRC=/usr/src\n"
+"NANO_KERNEL=MYKERNEL\n"
+"NANO_IMAGES=2\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:352
+#, no-wrap
+msgid ""
+"CONF_BUILD='\n"
+"WITHOUT_KLDLOAD=YES\n"
+"WITHOUT_NETGRAPH=YES\n"
+"WITHOUT_PAM=YES\n"
+"'\n"
+msgstr ""
+"CONF_BUILD='\n"
+"WITHOUT_KLDLOAD=YES\n"
+"WITHOUT_NETGRAPH=YES\n"
+"WITHOUT_PAM=YES\n"
+"'\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:368
+#, no-wrap
+msgid ""
+"CONF_INSTALL='\n"
+"WITHOUT_ACPI=YES\n"
+"WITHOUT_BLUETOOTH=YES\n"
+"WITHOUT_FORTRAN=YES\n"
+"WITHOUT_HTML=YES\n"
+"WITHOUT_LPR=YES\n"
+"WITHOUT_MAN=YES\n"
+"WITHOUT_SENDMAIL=YES\n"
+"WITHOUT_SHAREDOCS=YES\n"
+"WITHOUT_EXAMPLES=YES\n"
+"WITHOUT_INSTALLLIB=YES\n"
+"WITHOUT_CALENDAR=YES\n"
+"WITHOUT_MISC=YES\n"
+"WITHOUT_SHARE=YES\n"
+"'\n"
+msgstr ""
+"CONF_INSTALL='\n"
+"WITHOUT_ACPI=YES\n"
+"WITHOUT_BLUETOOTH=YES\n"
+"WITHOUT_FORTRAN=YES\n"
+"WITHOUT_HTML=YES\n"
+"WITHOUT_LPR=YES\n"
+"WITHOUT_MAN=YES\n"
+"WITHOUT_SENDMAIL=YES\n"
+"WITHOUT_SHAREDOCS=YES\n"
+"WITHOUT_EXAMPLES=YES\n"
+"WITHOUT_INSTALLLIB=YES\n"
+"WITHOUT_CALENDAR=YES\n"
+"WITHOUT_MISC=YES\n"
+"WITHOUT_SHARE=YES\n"
+"'\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:379
+#, no-wrap
+msgid ""
+"CONF_WORLD='\n"
+"WITHOUT_BIND=YES\n"
+"WITHOUT_MODULES=YES\n"
+"WITHOUT_KERBEROS=YES\n"
+"WITHOUT_GAMES=YES\n"
+"WITHOUT_RESCUE=YES\n"
+"WITHOUT_LOCALES=YES\n"
+"WITHOUT_SYSCONS=YES\n"
+"WITHOUT_INFO=YES\n"
+"'\n"
+msgstr ""
+"CONF_WORLD='\n"
+"WITHOUT_BIND=YES\n"
+"WITHOUT_MODULES=YES\n"
+"WITHOUT_KERBEROS=YES\n"
+"WITHOUT_GAMES=YES\n"
+"WITHOUT_RESCUE=YES\n"
+"WITHOUT_LOCALES=YES\n"
+"WITHOUT_SYSCONS=YES\n"
+"WITHOUT_INFO=YES\n"
+"'\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:381
+#, no-wrap
+msgid "FlashDevice SanDisk 1G\n"
+msgstr "FlashDevice SanDisk 1G\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:386
+#, no-wrap
+msgid ""
+"cust_nobeastie() (\n"
+"\ttouch ${NANO_WORLDDIR}/boot/loader.conf\n"
+"\techo \"beastie_disable=\\\"YES\\\"\" >> ${NANO_WORLDDIR}/boot/loader.conf\n"
+")\n"
+msgstr ""
+"cust_nobeastie() (\n"
+"\ttouch ${NANO_WORLDDIR}/boot/loader.conf\n"
+"\techo \"beastie_disable=\\\"YES\\\"\" >> ${NANO_WORLDDIR}/boot/loader.conf\n"
+")\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:391
+#, no-wrap
+msgid ""
+"customize_cmd cust_comconsole\n"
+"customize_cmd cust_install_files\n"
+"customize_cmd cust_allow_ssh_root\n"
+"customize_cmd cust_nobeastie\n"
+msgstr ""
+"customize_cmd cust_comconsole\n"
+"customize_cmd cust_install_files\n"
+"customize_cmd cust_allow_ssh_root\n"
+"customize_cmd cust_nobeastie\n"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:395
+msgid ""
+"All the build and install compilation options can be found in the man:src."
+"conf[5] man page, but not all options can or should be used when building a "
+"NanoBSD image. The build and install options should be defined according to "
+"the needs of the image being built."
+msgstr ""
+"Все параметры сборки и установки можно найти на странице Справочника man:src."
+"conf[5], но не все параметры можно или следует использовать при создании "
+"образа NanoBSD. Параметры сборки и установки должны определяться в "
+"соответствии с потребностями создаваемого образа."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:399
+msgid ""
+"For example, the ftp client and server might not be needed. Adding "
+"`WITHOUT_FTP=TRUE` to a configuration file in the `CONF_BUILD` section will "
+"avoid having them built. Also, if the NanoBSD appliance will not be used to "
+"build programs then it is possible to add the `WITHOUT_BINUTILS=TRUE` in the "
+"`CONF_INSTALL` section; but not in the `CONF_BUILD` section as they will be "
+"used to build the NanoBSD image."
+msgstr ""
+"Например, FTP-клиент и сервер могут не потребоваться. Добавление "
+"`WITHOUT_FTP=TRUE` в файл конфигурации в разделе `CONF_BUILD` позволит "
+"избежать их сборки. Также, если устройство NanoBSD не будет использоваться "
+"для сборки программ, можно добавить `WITHOUT_BINUTILS=TRUE` в раздел "
+"`CONF_INSTALL`, но не в раздел `CONF_BUILD`, так как они будут "
+"использоваться для сборки образа NanoBSD."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:401
+msgid ""
+"Not building a particular set of programs - through a compilation option - "
+"shortens the overall building time and lowers the required size for the disk "
+"image, whereas not installing the same specific set of programs does not "
+"lower the overall building time."
+msgstr ""
+"Не сборка определенного набора программ — через опцию компиляции — сокращает "
+"общее время сборки и уменьшает требуемый размер дискового образа, тогда как "
+"отсутствие установки того же набора программ не сокращает общее время сборки."
+
+#. type: Title ===
+#: documentation/content/en/articles/nanobsd/_index.adoc:402
+#, no-wrap
+msgid "Updating NanoBSD"
+msgstr "Обновление NanoBSD"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:405
+msgid "The update process of NanoBSD is relatively simple:"
+msgstr "Процесс обновления NanoBSD относительно прост:"
+
+#. type: delimited block = 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:409
+msgid "Build a new NanoBSD image, as usual."
+msgstr "Соберите новый образ NanoBSD, как обычно."
+
+#. type: delimited block = 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:410
+msgid ""
+"Upload the new image into an unused partition of a running NanoBSD appliance."
+msgstr ""
+"Загрузите новый образ в неиспользуемый раздел работающего устройства NanoBSD."
+
+#. type: delimited block = 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:412
+msgid ""
+"The most important difference of this step from the initial NanoBSD "
+"installation is that now instead of using [.filename]#\\_.disk.full# (which "
+"contains an image of the entire disk), the [.filename]#_.disk.image# image "
+"is installed (which contains an image of a single system partition)."
+msgstr ""
+"Важнейшее отличие этого шага от первоначальной установки NanoBSD заключается "
+"в том, что теперь вместо использования [.filename]#\\_.disk.full# (который "
+"содержит образ всего диска), устанавливается образ [.filename]#_.disk.image# "
+"(который содержит образ одного системного раздела)."
+
+#. type: delimited block = 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:413
+msgid "Reboot, and start the system from the newly installed partition."
+msgstr ""
+"Перезагрузите систему и запустите её с только что установленного раздела."
+
+#. type: delimited block = 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:414
+msgid "If all goes well, the upgrade is finished."
+msgstr "Если все прошло успешно, обновление завершено."
+
+#. type: delimited block = 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:415
+msgid ""
+"If anything goes wrong, reboot back into the previous partition (which "
+"contains the old, working image), to restore system functionality as fast as "
+"possible. Fix any problems of the new build, and repeat the process."
+msgstr ""
+"Если что-то пойдет не так, перезагрузитесь обратно в предыдущий раздел ("
+"который содержит старую, рабочую версию), чтобы восстановить "
+"работоспособность системы как можно быстрее. Исправьте все проблемы новой "
+"сборки и повторите процесс."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:418
+msgid ""
+"To install new image onto the running NanoBSD system, it is possible to use "
+"either the [.filename]#updatep1# or [.filename]#updatep2# script located in "
+"the [.filename]#/root# directory, depending from which partition is running "
+"the current system."
+msgstr ""
+"Для установки нового образа на работающую систему NanoBSD можно использовать "
+"скрипт [.filename]#updatep1# или [.filename]#updatep2#, расположенный в "
+"директории [.filename]#/root#, в зависимости от того, с какого раздела "
+"запущена текущая система."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:420
+msgid ""
+"According to which services are available on host serving new NanoBSD image "
+"and what type of transfer is preferred, it is possible to examine one of "
+"these three ways:"
+msgstr ""
+"В зависимости от того, какие службы доступны на хосте, предоставляющем новый "
+"образ NanoBSD, и какой тип передачи предпочтителен, можно рассмотреть один "
+"из этих трех способов:"
+
+#. type: Title ====
+#: documentation/content/en/articles/nanobsd/_index.adoc:421
+#, no-wrap
+msgid "Using man:ftp[1]"
+msgstr "Использование man:ftp[1]"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:424
+msgid "If the transfer speed is in first place, use this example:"
+msgstr ""
+"Если скорость передачи данных стоит на первом месте, используйте этот пример:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:429
+#, no-wrap
+msgid ""
+"# ftp myhost\n"
+"get _.disk.image \"| sh updatep1\"\n"
+msgstr ""
+"# ftp myhost\n"
+"get _.disk.image \"| sh updatep1\"\n"
+
+#. type: Title ====
+#: documentation/content/en/articles/nanobsd/_index.adoc:431
+#, no-wrap
+msgid "Using man:ssh[1]"
+msgstr "Использование man:ssh[1]"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:434
+msgid "If a secure transfer is preferred, consider using this example:"
+msgstr ""
+"Если предпочтителен безопасный способ передачи, рассмотрите следующий пример:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:438
+#, no-wrap
+msgid "# ssh myhost cat _.disk.image.gz | zcat | sh updatep1\n"
+msgstr "# ssh myhost cat _.disk.image.gz | zcat | sh updatep1\n"
+
+#. type: Title ====
+#: documentation/content/en/articles/nanobsd/_index.adoc:440
+#, no-wrap
+msgid "Using man:nc[1]"
+msgstr "Использование man:nc[1]"
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:443
+msgid ""
+"Try this example if the remote host is not running neither man:ftpd[8] or "
+"man:sshd[8] service:"
+msgstr ""
+"Попробуйте этот пример, если на удалённом хосте не запущены ни служба "
+"man:ftpd[8], ни служба man:sshd[8]:"
+
+#. type: delimited block = 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:447
+msgid ""
+"At first, open a TCP listener on host serving the image and make it send the "
+"image to client:"
+msgstr ""
+"Сначала откройте TCP-слушатель на хосте, обслуживающем образ, и настройте "
+"его на отправку образа клиенту:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:451
+#, no-wrap
+msgid "myhost# nc -l 2222 < _.disk.image\n"
+msgstr "myhost# nc -l 2222 < _.disk.image\n"
+
+#. type: delimited block = 6
+#: documentation/content/en/articles/nanobsd/_index.adoc:456
+msgid ""
+"Make sure that the used port is not blocked to receive incoming connections "
+"from NanoBSD host by firewall."
+msgstr ""
+"Убедитесь, что используемый порт не заблокирован для приёма входящих "
+"подключений с хоста NanoBSD межсетевым экраном."
+
+#. type: Plain text
+#: documentation/content/en/articles/nanobsd/_index.adoc:458
+msgid ""
+"Connect to the host serving new image and execute [.filename]#updatep1# "
+"script:"
+msgstr ""
+"Подключитесь к хосту, предоставляющему новый образ, и выполните скрипт [."
+"filename]#updatep1#:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/nanobsd/_index.adoc:462
+#, no-wrap
+msgid "# nc myhost 2222 | sh updatep1\n"
+msgstr "# nc myhost 2222 | sh updatep1\n"