# SOME DESCRIPTIVE TITLE # Copyright (C) YEAR The FreeBSD Project # This file is distributed under the same license as the FreeBSD Documentation package. # Vladlen Popolitov , 2025, 2026. msgid "" msgstr "" "Project-Id-Version: FreeBSD Documentation VERSION\n" "POT-Creation-Date: 2026-02-22 15:58+0000\n" "PO-Revision-Date: 2026-03-08 09:11+0000\n" "Last-Translator: Vladlen Popolitov \n" "Language-Team: Russian \n" "Language: ru\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Generator: Weblate 4.17\n" #. type: Title = #: documentation/content/en/articles/gjournal-desktop/_index.adoc:1 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:13 #, no-wrap msgid "Implementing UFS Journaling on a Desktop PC" msgstr "Настройка журналирования UFS для настольного компьютера" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:46 msgid "Abstract" msgstr "Аннотация" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:52 msgid "" "A journaling file system uses a log to record file system updates and " "preserves consistency in the event of a system crash or power failure. " "Although unsaved changes to files may still be lost, journaling greatly " "reduces the risk of file system corruption caused by an unclean shutdown and " "significantly shortens recovery time. While the UFS file system employed by " "FreeBSD does not implement journaling as an inherent on-disk feature, " "FreeBSD provides journaling support through file system-level mechanisms " "(Soft Updates with journaling) as well as through the GEOM framework " "(`gjournal`). This article describes the available UFS journaling " "mechanisms and explains their appropriate use on modern FreeBSD systems. " "_The content has been reviewed and updated for FreeBSD versions 13 through " "15_." msgstr "" "Журналируемая файловая система использует журнал для записи обновлений " "файловой системы и обеспечивает целостность данных в случае сбоя системы или " "отключения питания. Несмотря на то, что несохранённые изменения в файлах всё " "ещё могут быть утеряны, журналирование значительно снижает риск повреждения " "файловой системы из-за некорректного завершения работы и существенно " "сокращает время восстановления. Хотя файловая система UFS, используемая в " "FreeBSD, не реализует журналирование как встроенную функцию на уровне диска, " "FreeBSD предоставляет поддержку журналирования через механизмы на уровне " "файловой системы (Soft Updates с журналированием), а также через фреймворк " "GEOM (`gjournal`). В этой статье описываются доступные механизмы " "журналирования UFS и объясняется их целесообразное использование в " "современных системах FreeBSD. _Содержание было проверено и обновлено для " "версий FreeBSD с 13 по 15_." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:54 msgid "'''" msgstr "'''" #. type: Title == #: documentation/content/en/articles/gjournal-desktop/_index.adoc:58 #, no-wrap msgid "Introduction" msgstr "Введение" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:63 msgid "" "While professional servers are usually well protected from unforeseen " "shutdowns, the typical desktop is at the mercy of power failures, accidental " "resets, and other user related incidents that can lead to unclean shutdowns " "and leave a file system in an inconsistent state. Traditionally, this " "required running `fsck`, which on large file systems could take a " "significant amount of time. On rare occasions, file system corruption " "reaches a point where user intervention is required and data may be lost." msgstr "" "Серверное оборудование обычно хорошо защищено от потери питания. Настольный " "компьютер часто подвержен неожиданным пропаданиям питания, случайным " "нажатиям кнопки Reset и другим происшествиям (часто связанным с " "неосторожностью пользователей), которые могут привести к непредвиденным " "выключениям и оставить файловую систему в несогласованном состоянии. " "Традиционно это требовало запуска `fsdk`, что на больших файловых системах " "требует значительного времени. В очень редких случаях повреждения файловой " "системы достигают того уровня, при котором становится необходимым " "вмешательство пользователя и данные могут быть утерянными." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:65 msgid "" "FreeBSD provides two distinct journaling mechanisms for the UFS file system:" msgstr "" "FreeBSD предоставляет два различных механизма журналирования для файловой " "системы UFS:" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:67 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:155 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:158 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:161 #, no-wrap msgid "Soft Updates with journaling" msgstr "Журналирование с Soft Updates" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:68 msgid "GEOM journaling (`gjournal`)" msgstr "Журналирование с командой GEOM `gjournal`" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:70 msgid "" "These mechanisms operate at different layers of the system and have " "different performance and semantic characteristics." msgstr "" "Эти механизмы функционируют на различных уровнях системы и обладают разными " "характеристиками производительности и семантики." #. type: delimited block = 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:74 msgid "" "For most modern FreeBSD systems, including desktops and general-purpose " "servers, *Soft Updates with journaling* is the recommended solution." msgstr "" "Для большинства современных систем FreeBSD, включая настольные компьютеры и " "серверы общего назначения, рекомендуется использовать *Soft Updates с " "журналированием*." #. type: delimited block = 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:76 msgid "" "GEOM journaling is a legacy and specialized mechanism and should only be " "used when its specific semantics are required." msgstr "" "GEOM журналирование — это устаревший и специализированный механизм, и его " "следует использовать только тогда, когда требуются его специфические " "семантики." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:79 msgid "" "This article explains both mechanisms, their differences, and correct modern " "usage." msgstr "" "В этой статье объясняются оба механизма, их различия и правильное " "современное использование." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:81 msgid "Read this chapter to learn:" msgstr "Прочтите эту главу, чтобы узнать:" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:83 msgid "" "The journaling mechanisms available for the UFS file system in FreeBSD and " "how they differ." msgstr "" "Доступные механизмы журналирования для файловой системы UFS в FreeBSD и их " "различия." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:84 msgid "" "When to use file system-level Soft Updates journaling and when GEOM " "journaling may be appropriate." msgstr "" "Когда использовать журналирование на уровне файловой системы с Soft Updates " "и когда может быть уместно журналирование GEOM." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:85 msgid "" "How to enable or disable Soft Updates journaling on existing UFS file " "systems." msgstr "" "Как включить или отключить журналирование Soft Updates на существующих " "файловых системах UFS." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:86 msgid "" "How to configure GEOM journaling on new or existing partitions, including " "required kernel support and journal sizing considerations." msgstr "" "Как настроить журналирование GEOM на новых или существующих разделах, " "включая необходимую поддержку ядра и вопросы определения размера журнала." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:87 msgid "" "What configuration changes are required to mount journaled file systems and " "how journaling affects system behavior." msgstr "" "Какие изменения конфигурации необходимы для монтирования журналируемых " "файловых систем и как журналирование влияет на поведение системы." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:88 msgid "How to diagnose and resolve common issues related to UFS journaling." msgstr "" "Как диагностировать неполадки и разрешать проблемы, связанные с " "журналированием файловой системы UFS." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:90 msgid "Before reading this article:" msgstr "Перед прочтением этой статьи вам необходимо:" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:92 msgid "Understand basic UNIX(R) and FreeBSD concepts." msgstr "" "Понимать базовые концепции таких операционных систем, как UNIX(R) и FreeBSD." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:93 msgid "Be familiar with the FreeBSD installation process using bsdinstall." msgstr "Быть знакомым с процедурой установки FreeBSD, используя bsdinstall." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:94 msgid "" "Have basic knowledge of disk partitioning and file systems, including tools " "such as gpart(8), newfs(8), and mount(8)." msgstr "" "Иметь базовые знания о разбиении дисков и файловых системах, включая такие " "инструменты, как gpart(8), newfs(8) и mount(8)." #. type: delimited block = 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:99 msgid "" "Some of the procedures described in this article involve modifying file " "system or disk configuration and may require unmounting file systems or " "changing on-disk metadata. Before making such changes on a system in " "production, ensure that reliable _backups_ of all important data are " "available." msgstr "" "Некоторые процедуры, описанные в данной статье, включают изменение " "конфигурации файловой системы или диска и могут потребовать размонтирования " "файловых систем или изменения метаданных на диске. Перед внесением подобных " "изменений в работающей системе убедитесь, что доступны надежные _резервные " "копии_ всех важных данных." #. type: delimited block = 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:102 msgid "" "Enabling file system-level Soft Updates journaling is generally safe and " "does not require disk repartitioning. However, configuring GEOM journaling " "involves low-level disk operations and should be attempted only by " "experienced administrators who fully understand the implications." msgstr "" "Включение журналирования Soft Updates на уровне файловой системы обычно " "безопасно и не требует переразбивки диска. Однако настройка журналирования " "GEOM включает низкоуровневые операции с диском и должна выполняться только " "опытными администраторами, полностью понимающими последствия." #. type: Title == #: documentation/content/en/articles/gjournal-desktop/_index.adoc:105 #, no-wrap msgid "Understanding Journaling in FreeBSD" msgstr "Реализация журналирования в FreeBSD" #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:107 #, no-wrap msgid "Soft Updates with Journaling (Recommended)" msgstr "Soft Updates с журналированием (рекомендуется)" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:109 msgid "" "Soft Updates is the default UFS consistency mechanism in FreeBSD. When " "combined with journaling, it provides *metadata journaling* within the file " "system itself." msgstr "" "Soft Updates — это механизм обеспечения согласованности UFS по умолчанию в " "FreeBSD. В сочетании с журналированием он обеспечивает *журналирование " "метаданных* в самой файловой системе." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:111 msgid "Advantages of Soft Updates with journaling include:" msgstr "Преимущества Soft Updates с журналированием включают:" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:113 msgid "Very fast crash recovery (typically seconds)" msgstr "Очень быстрое восстановление после сбоя (обычно за секунды)" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:114 msgid "Normal `sync(2)` and `fsync(2)` semantics" msgstr "Обычная семантика `sync(2)` и `fsync(2)`" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:115 msgid "No additional partitions or GEOM layers" msgstr "Никаких дополнительных разделов или слоев GEOM" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:116 msgid "Simple configuration and maintenance" msgstr "Простая настройка и обслуживание" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:118 msgid "From `tunefs(8)`:" msgstr "Из `tunefs(8)`:" #. type: delimited block _ 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:121 msgid "" "Enabling journaling reduces the time spent by fsck_ffs(8) cleaning up a file " "system after a crash to a few seconds from minutes to hours." msgstr "" "Включение журналирования сокращает время, затрачиваемое fsck_ffs(8) на " "очистку файловой системы после сбоя, с нескольких минут или часов до " "нескольких секунд." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:124 msgid "" "This mechanism is suitable for nearly all UFS-based systems and is the " "default recommendation." msgstr "" "Этот механизм подходит практически для всех систем на основе UFS и является " "рекомендуемым по умолчанию." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:125 #, no-wrap msgid "GEOM Journaling (`gjournal`)" msgstr "Журналирование с командой GEOM `gjournal`" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:128 msgid "" "GEOM journaling operates at the block level, below the file system. It " "journals all block writes, including *both metadata and file data*." msgstr "" "GEOM журналирование работает на блочном уровне, ниже файловой системы. Оно " "журналирует все записи блоков, включая *как метаданные, так и данные файлов*." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:130 msgid "Key characteristics of GEOM journaling:" msgstr "Ключевые характеристики журналирования GEOM:" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:132 msgid "Implemented as a GEOM class (`geom_journal`)" msgstr "Реализовано как класс GEOM (`geom_journal`)" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:133 msgid "Journals all block I/O, not just metadata" msgstr "Журналирует весь блочный ввод-вывод, а не только метаданные" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:134 msgid "Requires explicit cooperation from UFS using the `-J` flag" msgstr "Требует явного согласования от UFS с использованием флага `-J`" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:135 msgid "Disables Soft Updates" msgstr "Отключает Soft Updates" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:136 msgid "Alters the semantics of `sync(2)` and `fsync(2)`" msgstr "Изменяет семантику `sync(2)` и `fsync(2)`" #. type: delimited block = 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:140 msgid "" "On GEOM-journaled file systems, `sync(2)` and `fsync(2)` do not guarantee " "that data has been committed to stable storage. To ensure persistence, " "`gjournal sync` must be used." msgstr "" "На файловых системах с журналированием GEOM, `sync(2)` и `fsync(2)` не " "гарантируют, что данные были записаны на постоянное хранилище. Для " "обеспечения сохранности необходимо использовать `gjournal sync`." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:143 msgid "" "Because of these differences, GEOM journaling is not recommended for general-" "purpose desktop or server use." msgstr "" "Из-за этих различий журналирование GEOM не рекомендуется для общего " "использования на настольных компьютерах или серверах." #. type: Title == #: documentation/content/en/articles/gjournal-desktop/_index.adoc:144 #, no-wrap msgid "Choosing the Appropriate Journaling Method" msgstr "Выбор подходящего метода журналирования" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:147 msgid "The following table summarizes recommended usage:" msgstr "В следующей таблице приведены рекомендуемые варианты использования:" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:150 #, no-wrap msgid "Use case" msgstr "Вариант использования" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:152 #, no-wrap msgid "Recommended mechanism" msgstr "Рекомендуемый механизм" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:153 #, no-wrap msgid "Desktop or laptop system" msgstr "Настольная или портативная система" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:156 #, no-wrap msgid "General-purpose server" msgstr "Универсальный сервер" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:159 #, no-wrap msgid "Legacy UFS systems" msgstr "Устаревшие системы UFS" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:162 #, no-wrap msgid "File system-independent journaling requirements" msgstr "Требования к журналированию, не зависящие от файловой системы" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:164 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:166 #, no-wrap msgid "GEOM journaling" msgstr "Журналирование GEOM" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:165 #, no-wrap msgid "Specialized block-level logging needs" msgstr "Специализированное журналирование на уровне блоков" #. type: Title == #: documentation/content/en/articles/gjournal-desktop/_index.adoc:168 #, no-wrap msgid "Using Soft Updates with Journaling" msgstr "Использование Soft Updates с журналированием" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:173 msgid "" "Soft Updates with journaling provide file system-level journaling for UFS. " "This mechanism preserves file system consistency while retaining the " "allocation and ordering optimizations of Soft Updates. Unlike GEOM " "journaling, no separate journal device or partition is required." msgstr "" "Soft Updates с журналированием обеспечивают журналирование на уровне " "файловой системы для UFS. Этот механизм сохраняет целостность файловой " "системы, одновременно сохраняя оптимизации выделения и упорядочивания, " "характерные для Soft Updates. В отличие от журналирования GEOM, отдельное " "журналирующее устройство или раздел не требуется." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:174 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:254 #, no-wrap msgid "Overview" msgstr "Обзор" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:179 msgid "" "Soft Updates with journaling record file system metadata changes in a " "journal stored inside the file system itself, implemented as a hidden file " "named [.filename]#.sujournal# in the root of the file system. In the event " "of a crash or power failure, pending metadata operations are replayed from " "the journal, allowing the file system to be mounted quickly without a full " "consistency check." msgstr "" "Soft Updates с журналированием записывают изменения метаданных файловой " "системы в журнал, хранящийся внутри самой файловой системы, реализованный " "как скрытый файл с именем [.filename]#.sujournal# в корне файловой системы. " "В случае сбоя или отключения питания ожидающие операции с метаданными " "воспроизводятся из журнала, что позволяет быстро смонтировать файловую " "систему без полной проверки согласованности." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:182 msgid "" "This form of journaling applies to file system metadata only. File data " "integrity remains the responsibility of applications." msgstr "" "Эта форма журналирования применяется только к метаданным файловой системы. " "Целостность данных файлов остается ответственностью приложений." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:183 #, no-wrap msgid "Enabling Journaling on an Existing File System" msgstr "Включение журналирования на существующей файловой системе" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:186 msgid "" "The file system must be unmounted or mounted read-only before changing " "journaling settings." msgstr "" "Файловая система должна быть размонтирована или смонтирована в режиме только " "для чтения перед изменением настроек журналирования." #. type: delimited block - 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:192 #, no-wrap msgid "" "# umount /usr\n" "# tunefs -n enable -j enable /dev/ada0p2\n" "# mount /usr\n" msgstr "" "# umount /usr\n" "# tunefs -n enable -j enable /dev/ada0p2\n" "# mount /usr\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:195 msgid "" "No additional configuration is required. Standard mount options may be used." msgstr "" "Дополнительная настройка не требуется. Можно использовать стандартные " "параметры монтирования." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:196 #, no-wrap msgid "Journal Storage and Size" msgstr "Хранение журналов и их размер" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:200 msgid "" "A default journal size is selected automatically when journaling is " "enabled. In most cases, the default size is sufficient and does not require " "adjustment." msgstr "" "Размер журнала по умолчанию выбирается автоматически при включении ведения " "журнала. В большинстве случаев размер по умолчанию достаточен и не требует " "корректировки." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:202 msgid "" "If necessary, the journal size in bytes can be specified explicitly using " "the `-S` option to `tunefs(8)`:" msgstr "" "При необходимости размер журнала в байтах может быть явно указан с помощью " "опции `-S` для `tunefs(8)`:" #. type: delimited block - 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:206 #, no-wrap msgid "# tunefs -S 64000000 /dev/ada0p2\n" msgstr "# tunefs -S 64000000 /dev/ada0p2\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:209 msgid "" "Journal size tuning is rarely required and should be considered only for " "file systems with unusually high metadata update rates." msgstr "" "Настройка размера журнала редко требуется и должна рассматриваться только " "для файловых систем с необычно высокой частотой обновления метаданных." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:210 #, no-wrap msgid "Checking Soft Updates with Journaling" msgstr "Проверка Soft Updates с журналированием" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:213 msgid "" "The journaling status of a UFS file system using Soft Updates can be " "verified with `tunefs(8)` or `dumpfs(8)`." msgstr "" "Статус журналирования файловой системы UFS с использованием Soft Updates " "можно проверить с помощью `tunefs(8)` или `dumpfs(8)`." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:215 msgid "To display the current file system settings, run:" msgstr "Чтобы отобразить текущие настройки файловой системы, выполните:" #. type: delimited block - 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:221 #, no-wrap msgid "" "# tunefs -p /dev/ada0p2 | grep -i journal\n" "tunefs: soft updates journaling: (-j) enabled\n" "tunefs: gjournal: (-J) disabled\n" msgstr "" "# tunefs -p /dev/ada0p2 | grep -i journal\n" "tunefs: soft updates journaling: (-j) enabled\n" "tunefs: gjournal: (-J) disabled\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:224 msgid "Look for the following indicators in the output:" msgstr "Ищите следующие индикаторы в выводе:" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:226 msgid "Soft Updates enabled" msgstr "Soft Updates включены" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:227 msgid "Soft Updates journaling enabled" msgstr "Soft Updates с журналированием включены" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:229 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:644 msgid "" "Alternatively, `dumpfs(8)` can be used to inspect the file system superblock:" msgstr "" "Или для проверки суперблока файловой системы можно использовать `dumpfs(8)`:" #. type: delimited block - 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:234 #, no-wrap msgid "" "# dumpfs /dev/ada0p2 | grep -i journal\n" "flags soft-updates+journal\n" msgstr "" "English type: delimited block - 4\n" "# dumpfs /dev/ada0p2 | grep -i journal\n" "flags soft-updates+journal\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:237 msgid "These commands are read-only and do not modify file system state." msgstr "" "Эти команды предназначены только для чтения и не изменяют состояние файловой " "системы." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:238 #, no-wrap msgid "File System Checks and Maintenance" msgstr "Проверка и обслуживание файловой системы" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:241 msgid "" "Although journaling dramatically reduces recovery time after a crash, it " "does not eliminate the need for periodic full file system checks." msgstr "" "Хотя журналирование значительно сокращает время восстановления после сбоя, " "оно не устраняет необходимость периодических полных проверок файловой " "системы." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:243 msgid "Journaling guarantees consistency, not correctness" msgstr "Журналирование гарантирует целостность, а не корректность" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:244 msgid "Media errors are not repaired by journaling" msgstr "Ошибки носителя не исправляются журналированием" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:245 msgid "Periodic `fsck` should still be scheduled" msgstr "Периодическая проверка `fsck` все еще должна быть запланирована" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:246 msgid "Background `fsck` can be used on live file systems" msgstr "Фоновый `fsck` может использоваться на работающих файловых системах" #. type: Title == #: documentation/content/en/articles/gjournal-desktop/_index.adoc:247 #, no-wrap msgid "Using GEOM Journaling (Advanced)" msgstr "Использование журналирования GEOM (Продвинутый уровень)" #. type: delimited block = 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:252 msgid "" "This section is intended for advanced users who understand the implications " "of block-level journaling and altered sync semantics." msgstr "" "Данный раздел предназначен для опытных пользователей, которые понимают " "последствия журналирования на уровне блоков и изменения семантики " "синхронизации." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:259 msgid "" "This functionality is provided by loading the [.filename]#geom_journal.ko# " "module into the kernel (or building it into a custom kernel) and using the " "`gjournal` command to configure the file systems. In general, you would " "like to journal large file systems, like [.filename]#/usr#. You will need " "however (see the following section) to reserve some free disk space." msgstr "" "Возможность журналирования обеспечивается загрузкой модуля [." "filename]#geom_journal.ko# в ядро (или сборкой собственного ядра с " "активированием соответствующих опций) и использованием команды `gjournal` " "для конфигурирования файловой системы. В общем, вы предпочтете журналировать " "файловые системы большого размера, к примеру - [.filename]#/usr#. Однако, " "вам придется зарезервировать некоторое количество свободного места (см. " "следующий раздел)." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:262 msgid "" "GEOM journaling is implemented by the `geom_journal` kernel module and is " "configured using the `gjournal(8)` utility. It provides block-level " "journaling below the file system layer and requires explicit cooperation " "from UFS." msgstr "" "Журналирование GEOM реализовано модулем ядра `geom_journal` и настраивается " "с помощью утилиты `gjournal(8)`. Оно обеспечивает журналирование на уровне " "блоков ниже слоя файловой системы и требует явной поддержки со стороны UFS." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:265 msgid "" "When GEOM journaling is used, some disk space is needed to keep the journal " "itself. The provider that contains the file system data is referred to as " "the _data provider_, while the provider that stores the journal is referred " "to as the _journal provider_." msgstr "" "При использовании журналирования GEOM требуется некоторое дисковое " "пространство для хранения самого журнала. Провайдер, содержащий данные " "файловой системы, называется _провайдером данных_, а провайдер, хранящий " "журнал, называется _провайдером журнала_." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:270 msgid "" "When journaling an existing (non-empty) file system, the data and journal " "providers must be separate. When journaling a new, empty file system, a " "single provider may be used to store both data and journal information. In " "both cases, `gjournal(8)` combines the data and journal providers to create " "a new journaled provider, which is then mounted by the file system. For " "example:" msgstr "" "При журналировании существующей (непустой) файловой системы провайдеры " "данных и журнала должны быть раздельными. При журналировании новой, пустой " "файловой системы, один провайдер может использоваться для хранения как " "данных, так и информации журнала. В обоих случаях `gjournal(8)` объединяет " "провайдеры данных и журнала для создания нового журналируемого провайдера, " "который затем монтируется файловой системой. Например:" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:272 msgid "" "The `/usr` file system resides on `/dev/ada0p2` and already contains data." msgstr "" "Файловая система `/usr` расположена на `/dev/ada0p2` и уже содержит данные." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:273 msgid "" "Free disk space has been allocated in a separate partition, `/dev/ada0p4`, " "to hold the journal." msgstr "" "Свободное дисковое пространство выделено в отдельном разделе, `/dev/ada0p4`, " "для хранения журнала." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:275 msgid "" "After configuring GEOM journaling, a new provider `/dev/ada0p2.journal` is " "created. This journaled provider combines `/dev/ada0p2` as the data " "provider and `/dev/ada0p4` as the journal provider and is used for all " "subsequent file system operations." msgstr "" "После настройки журналирования GEOM создается новый провайдер `/dev/ada0p2." "journal`. Этот журналируемый провайдер объединяет `/dev/ada0p2` в качестве " "провайдера данных и `/dev/ada0p4` в качестве провайдера журнала и " "используется для всех последующих операций файловой системы." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:278 msgid "" "The amount of disk space required for the journal depends primarily on the " "write workload of the file system rather than on the size of the data " "provider. Systems with sustained or bursty write activity require larger " "journals to avoid excessive journal switching or write throttling." msgstr "" "Объем дискового пространства, необходимого для журнала, в первую очередь " "зависит от интенсивности записи в файловую систему, а не от размера " "поставщика данных. Системам с постоянной или импульсной активностью записи " "требуются журналы большего размера, чтобы избежать чрезмерного переключения " "журналов или ограничения записи." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:280 msgid "From the man page `gjournal(8)`:" msgstr "Из справочной страницы `gjournal(8)`:" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:282 msgid "The default journal size is 1 GB." msgstr "Размер журнала по умолчанию составляет 1 ГБ." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:283 msgid "" "The recommended minimum journal size is twice the amount of installed " "physical memory." msgstr "" "Рекомендуемый минимальный размер журнала составляет удвоенный объем " "установленной оперативной памяти." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:284 msgid "" "The journal size should be chosen based on expected write load, not file " "system size." msgstr "" "Размер журнала должен выбираться на основе ожидаемой нагрузки записи, а не " "размера файловой системы." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:286 msgid "" "An undersized journal may result in degraded performance or forced journal " "switches under heavy write load." msgstr "" "Недостаточный размер журнала может привести к снижению производительности " "или вынужденным переключениям журнала при высокой нагрузке на запись." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:288 msgid "" "For more information about journaling, please read the manual page of man:" "gjournal[8]." msgstr "" "Для получения дополнительной информации о журналировании, пожалуйста, " "прочитайте страницу справочника, посвященную man:gjournal[8]." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:290 #, no-wrap msgid "Steps During the Installation of FreeBSD" msgstr "Действия, необходимые во время установки FreeBSD" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:294 msgid "" "This section describes optional installation-time preparation for systems " "that are configured to use GEOM journaling. The goal is to reserve disk " "space for journal providers that will later be associated with the `/usr` " "and `/var` file systems." msgstr "" "В этом разделе описывается необязательная подготовка во время установки для " "систем, настроенных на использование журналирования GEOM. Цель — " "зарезервировать дисковое пространство для журнальных провайдеров, которые " "впоследствии будут связаны с файловыми системами `/usr` и `/var`." #. type: Title ==== #: documentation/content/en/articles/gjournal-desktop/_index.adoc:295 #, no-wrap msgid "Reserving Space for Journaling" msgstr "Выделение места под журналирование" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:299 msgid "" "On a typical system with a single disk, the operating system, installed " "software, and user data all reside on the same device. The default " "automatic partitioning performed by the FreeBSD installer allocates most " "available space to `/usr`, with smaller partitions for `/var` and other " "mount points." msgstr "" "На типичной системе с одним диском операционная система, установленное " "программное обеспечение и пользовательские данные находятся на одном " "устройстве. Стандартное автоматическое разбиение, выполняемое установщиком " "FreeBSD, выделяет большую часть доступного пространства под `/usr`, с " "меньшими разделами для `/var` и других точек монтирования." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:303 msgid "" "By default, the installer allocates all available disk space to file systems " "and does not leave unused space. When GEOM journaling is planned for " "existing (non-empty) file systems, additional disk space must be reserved to " "hold journal providers. Each file system that will be journaled requires " "its own journal provider." msgstr "" "По умолчанию установщик выделяет всё доступное дисковое пространство для " "файловых систем и не оставляет неиспользуемого места. Если планируется " "использование журналирования GEOM для существующих (непустых) файловых " "систем, необходимо зарезервировать дополнительное дисковое пространство для " "размещения журнальных провайдеров. Каждая файловая система, которая будет " "журналироваться, требует собственного журнального провайдера." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:305 msgid "" "Since `/usr` typically occupies the largest portion of the disk, it is " "usually the most practical partition to reduce slightly in order to make " "room for journal providers." msgstr "" "Поскольку `/usr` обычно занимает наибольшую часть диска, это наиболее " "практичный раздел для небольшого уменьшения, чтобы освободить место для " "журналируемых провайдеров." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:307 msgid "In our example GEOM journaling is planned for both `/usr` and `/var`." msgstr "" "В нашем примере журналирование GEOM планируется как для `/usr`, так и для " "`/var`." #. type: Title ==== #: documentation/content/en/articles/gjournal-desktop/_index.adoc:308 #, no-wrap msgid "Partitioning Strategy" msgstr "Стратегия разбиения на разделы" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:312 msgid "" "During installation, use the manual partitioning mode provided by the " "installer. Create any supported file system type for `/`, and create " "standard UFS partitions for `/usr` and `/var`, but reduce the size of `/usr` " "to leave sufficient unallocated space at the end of the disk." msgstr "" "Во время установки используйте режим ручного разбиения, предоставляемый " "установщиком. Создайте любую поддерживаемую файловую систему для `/`, а " "также стандартные разделы UFS для `/usr` и `/var`, но уменьшите размер `/usr`" ", чтобы оставить достаточно нераспределенного пространства в конце диска." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:314 msgid "" "From the remaining unallocated space, create two additional partitions that " "will be used exclusively as journal providers:" msgstr "" "Из оставшегося нераспределенного пространства создайте два дополнительных " "раздела, которые будут использоваться исключительно в качестве журнальных " "провайдеров:" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:316 msgid "One partition for the `/usr` journal" msgstr "Один раздел для журнала `/usr`" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:317 msgid "One partition for the `/var` journal" msgstr "Один раздел для журнала `/var`" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:320 msgid "" "These partitions must not be assigned mount points and must not be used for " "swap. They will remain unused until they are explicitly associated with " "their corresponding data providers using `gjournal(8)` after installation." msgstr "" "Эти разделы не должны иметь назначенных точек монтирования и не должны " "использоваться для подкачки. Они останутся неиспользованными до тех пор, " "пока не будут явно связаны с соответствующими поставщиками данных с помощью " "`gjournal(8)` после установки." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:322 msgid "A typical layout may look like the following:" msgstr "Типичная схема может выглядеть следующим образом:" #. type: Block title #: documentation/content/en/articles/gjournal-desktop/_index.adoc:323 #, no-wrap msgid "Partitions Reserved for GEOM Journaling" msgstr "Разделы, Зарезервированные для Журналирования GEOM" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:327 #, no-wrap msgid "Provider" msgstr "Поставщик" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:328 #, no-wrap msgid "Intended Use" msgstr "Предназначение" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:330 #, no-wrap msgid "Notes" msgstr "Заметки" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:331 #, no-wrap msgid "/dev/ada0p2" msgstr "/dev/ada0p2" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:332 #, no-wrap msgid "/var" msgstr "/var" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:334 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:338 #, no-wrap msgid "UFS file system (data provider)" msgstr "Файловая система UFS (поставщик данных)" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:335 #, no-wrap msgid "/dev/ada0p3" msgstr "/dev/ada0p3" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:336 #, no-wrap msgid "/usr" msgstr "/usr" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:339 #, no-wrap msgid "/dev/ada0p4" msgstr "/dev/ada0p4" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:340 #, no-wrap msgid "Journal for /var" msgstr "Журнал для /var" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:342 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:345 #, no-wrap msgid "Unformatted, unused partition" msgstr "Неформатированный, неиспользуемый раздел" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:343 #, no-wrap msgid "/dev/ada0p5" msgstr "/dev/ada0p5" #. type: Table #: documentation/content/en/articles/gjournal-desktop/_index.adoc:344 #, no-wrap msgid "Journal for /usr" msgstr "Журнал для /usr" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:349 msgid "" "The exact device names will vary depending on the disk layout and " "partitioning scheme. It is strongly recommended to record the provider " "names during installation, as they will be required during journal " "configuration." msgstr "" "Точные названия устройств могут различаться в зависимости от структуры диска " "и схемы разделов. Настоятельно рекомендуется записать имена провайдеров во " "время установки, так как они потребуются при настройке журнала." #. type: Title ==== #: documentation/content/en/articles/gjournal-desktop/_index.adoc:350 #, no-wrap msgid "Journal Size Considerations" msgstr "Соображения по размеру журнала" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:355 msgid "" "Journal size depends on the expected write workload rather than on the size " "of the file system. For general-purpose systems, journal sizes of 1–2 GB " "are commonly sufficient. Systems with sustained or bursty write activity " "may require larger journals." msgstr "" "Размер журнала зависит от ожидаемой нагрузки на запись, а не от размера " "файловой системы. Для систем общего назначения обычно достаточно журналов " "размером 1–2 ГБ. Системам с постоянной или импульсной активностью записи " "могут потребоваться журналы большего размера." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:357 msgid "" "Allocate journal space conservatively during installation, as resizing " "partitions later may require additional downtime." msgstr "" "Выделяйте пространство под журнал экономно во время установки, так как " "изменение размера разделов позже может потребовать дополнительного времени " "простоя." #. type: Title ==== #: documentation/content/en/articles/gjournal-desktop/_index.adoc:358 #, no-wrap msgid "Completing the Installation" msgstr "Завершение инсталляции" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:362 msgid "" "After reserving the required partitions, complete the FreeBSD installation " "normally. It is recommended to postpone the installation of third-party " "software and additional system configuration until GEOM journaling has been " "fully configured." msgstr "" "После резервирования необходимых разделов завершите установку FreeBSD в " "обычном режиме. Рекомендуется отложить установку стороннего программного " "обеспечения и дополнительную настройку системы до полной настройки " "журналирования GEOM." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:365 msgid "" "At this stage, the system will boot using the standard UFS file systems. " "The reserved journal partitions will remain unused until journaling is " "explicitly enabled." msgstr "" "На этом этапе система загрузится с использованием стандартных файловых " "систем UFS. Зарезервированные журнальные разделы останутся неиспользованными " "до тех пор, пока журналирование не будет явно включено." #. type: Title ==== #: documentation/content/en/articles/gjournal-desktop/_index.adoc:367 #, no-wrap msgid "First Boot After Installation" msgstr "Первая загрузка после установки" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:371 msgid "" "After the first successful boot, no immediate configuration changes are " "required. The system should be verified to boot and operate normally before " "proceeding." msgstr "" "После первого успешного запуска немедленные изменения конфигурации не " "требуются. Следует убедиться, что система загружается и работает нормально, " "прежде чем продолжить." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:373 msgid "" "Once the base system is confirmed to be functional, the next steps involve:" msgstr "" "После того, как подтверждено, что базовая система работоспособна, следующие " "шаги включают:" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:375 msgid "Loading or enabling GEOM journaling support" msgstr "Загрузка или включение поддержки журналирования GEOM" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:376 msgid "Associating journal providers with their corresponding data providers" msgstr "" "Связывание журнальных провайдеров с соответствующими провайдерами данных" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:377 msgid "Updating `/etc/fstab` to mount the journaled devices" msgstr "Обновление `/etc/fstab` для монтирования журналируемых устройств" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:379 msgid "These steps are described in the following section." msgstr "Эти шаги описаны в следующем разделе." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:381 #, no-wrap msgid "Setting Up Journaling" msgstr "Настройка журналирования" #. type: Title ==== #: documentation/content/en/articles/gjournal-desktop/_index.adoc:384 #, no-wrap msgid "Enabling GEOM Journaling on Existing File Systems" msgstr "Включение журналирования GEOM в существующих файловых системах" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:387 msgid "" "This section describes how to enable GEOM journaling on the `/usr` and `/" "var` file systems using the partitions prepared during installation." msgstr "" "В этом разделе описывается, как включить журналирование GEOM для файловых " "систем `/usr` и `/var`, используя разделы, подготовленные в процессе " "установки." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:390 msgid "" "Once the required journal providers have been reserved, GEOM journaling can " "be configured. Because the file systems to be journaled must not be " "mounted, the system must be switched to single-user mode." msgstr "" "После резервирования необходимых журнальных провайдеров можно настроить " "журналирование GEOM. Поскольку файловые системы, подлежащие журналированию, " "не должны быть смонтированы, систему необходимо переключить в " "однопользовательский режим." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:392 msgid "Log in as `root` and enter:" msgstr "Залогиньтесь `root` и введите:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:396 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:719 #, no-wrap msgid "# shutdown now\n" msgstr "# shutdown now\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:401 msgid "" "Press kbd:[Enter] to obtain a root shell. Unmount the file systems that " "will be journaled. In this example, `/usr` and `/var`:" msgstr "" "Нажмите kbd:[Enter] для получения приглашения командного интерпретатора в " "режиме root. Нам необходимо будет размонтировать разделы, которые подлежат " "журналированию, в нашем примере это [.filename]#/usr# и [.filename]#/var#:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:405 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:726 #, no-wrap msgid "# umount /usr /var\n" msgstr "# umount /usr /var\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:408 msgid "Load the GEOM journaling kernel module:" msgstr "Загрузите модуль ядра GEOM journaling:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:412 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:691 #, no-wrap msgid "# gjournal load\n" msgstr "# gjournal load\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:416 msgid "" "Next, associate each data provider with its corresponding journal provider. " "Use your notes to determine which partition will be used for each journal." msgstr "" "Далее, свяжите каждого поставщика данных с соответствующим поставщиком " "журналов. Используйте свои заметки, чтобы определить, какой раздел будет " "использоваться для каждого журнала." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:418 msgid "In this example:" msgstr "В этом примере:" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:420 msgid "" "`/usr` resides on `/dev/ada0p3` and its journal provider is `/dev/ada0p5`" msgstr "" "`/usr` находится на `/dev/ada0p3`, а его журнальный провайдер — `/dev/ada0p5`" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:421 msgid "" "`/var` resides on `/dev/ada0p2` and its journal provider is `/dev/ada0p4`" msgstr "" "`/var` находится на `/dev/ada0p2`, а его журнальный провайдер — `/dev/ada0p4`" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:423 msgid "Create the journaled providers using `gjournal(8)`:" msgstr "Создайте журналируемые провайдеры с помощью `gjournal(8)`:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:430 #, no-wrap msgid "" "# gjournal label ada0p3 ada0p5\n" "GEOM_JOURNAL: Journal 2948326772: ada0p5 contains journal.\n" "GEOM_JOURNAL: Journal 2948326772: ada0p3 contains data.\n" "GEOM_JOURNAL: Journal ada0p3 clean.\n" msgstr "" "# gjournal label ada0p3 ada0p5\n" "GEOM_JOURNAL: Journal 2948326772: ada0p5 contains journal.\n" "GEOM_JOURNAL: Journal 2948326772: ada0p3 contains data.\n" "GEOM_JOURNAL: Journal ada0p3 clean.\n" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:435 #, no-wrap msgid "" "# gjournal label ada0p2 ada0p4\n" "GEOM_JOURNAL: Journal 3193218002: ada0p4 contains journal.\n" "GEOM_JOURNAL: Journal 3193218002: ada0p2 contains data.\n" "GEOM_JOURNAL: Journal ada0p2 clean.\n" msgstr "" "# gjournal label ada0p2 ada0p4\n" "GEOM_JOURNAL: Journal 3193218002: ada0p4 contains journal.\n" "GEOM_JOURNAL: Journal 3193218002: ada0p2 contains data.\n" "GEOM_JOURNAL: Journal ada0p2 clean.\n" #. type: delimited block = 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:442 msgid "" "If `gjournal` reports that the last sector of a provider is in use, the " "command will fail. On freshly created or unused partitions, it is safe to " "retry the operation with the `-f` flag to force initialization:" msgstr "" "Если `gjournal` сообщает, что последний сектор провайдера используется, " "команда завершится неудачей. На свежесозданных или неиспользуемых разделах " "безопасно повторить операцию с флагом `-f` для принудительной инициализации:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:446 #, no-wrap msgid "# gjournal label -f /dev/ada0p2 /dev/ada0p4\n" msgstr "# gjournal label -f /dev/ada0p2 /dev/ada0p4\n" #. type: delimited block = 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:450 msgid "After labeling, two new journaled providers are created:" msgstr "После маркировки создаются два новых журналируемых провайдера:" #. type: delimited block = 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:452 msgid "`/dev/ada0p3.journal` for `/usr`" msgstr "`/dev/ada0p3.journal` для `/usr`" #. type: delimited block = 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:453 msgid "`/dev/ada0p2.journal` for `/var`" msgstr "`/dev/ada0p2.journal` для `/var`" #. type: delimited block = 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:455 msgid "" "These devices will replace the original data providers when mounting the " "file systems." msgstr "" "Эти устройства заменят исходные источники данных при монтировании файловых " "систем." #. type: delimited block = 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:457 msgid "" "Before mounting, we must however set the journal flag on them and clear the " "Soft Updates flag:" msgstr "" "Перед монтированием необходимо установить для них флаг журнала и снять флаг " "Soft Updates:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:465 #, no-wrap msgid "" "# tunefs -J enable -n disable -j disable /dev/ada0p3.journal\n" "tunefs: soft updates journaling cleared but soft updates still set\n" "tunefs: remove .sujournal to reclaim space\n" "tunefs: gjournal set\n" "tunefs: soft updates cleared\n" msgstr "" "# tunefs -J enable -n disable -j disable /dev/ada0p3.journal\n" "tunefs: soft updates journaling cleared but soft updates still set\n" "tunefs: remove .sujournal to reclaim space\n" "tunefs: gjournal set\n" "tunefs: soft updates cleared\n" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:471 #, no-wrap msgid "" "# tunefs -J enable -n disable -j disable /dev/ada0p2.journal\n" "tunefs: soft updates journaling cleared but soft updates still set\n" "tunefs: remove .sujournal to reclaim space\n" "tunefs: gjournal set\n" "tunefs: soft updates cleared\n" msgstr "" "# tunefs -J enable -n disable -j disable /dev/ada0p2.journal\n" "tunefs: soft updates journaling cleared but soft updates still set\n" "tunefs: remove .sujournal to reclaim space\n" "tunefs: gjournal set\n" "tunefs: soft updates cleared\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:474 msgid "" "Now, mount the new devices manually at their respective places to verify " "correct operation (note that we can now use the `async` mount option) and " "remove [.filename]#.sujournal# to reclaim space:" msgstr "" "Теперь, смонтируйте новые устройства в соответствующие места файловой " "системы (обратите внимание на то, что мы можем использовать опцию " "монтирования `async`) и удалите [.filename]#.sujournal#, чтобы освободить " "место на диске:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:481 #, no-wrap msgid "" "# mount -o async /dev/ada0p2.journal /var\n" "# rm /var/.sujournal\n" "# mount -o async /dev/ada0p3.journal /usr\n" "# rm /usr/.sujournal\n" msgstr "" "# mount -o async /dev/ada0p2.journal /var\n" "# rm /var/.sujournal\n" "# mount -o async /dev/ada0p3.journal /usr\n" "# rm /usr/.sujournal\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:484 msgid "" "Edit [.filename]#/etc/fstab# and update the entries for [.filename]#/usr# " "and [.filename]#/var#:" msgstr "" "Откройте [.filename]#/etc/fstab# и исправьте записи для следующих файловых " "систем: [.filename]#/usr# и [.filename]#/var#:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:489 #, no-wrap msgid "" "/dev/ada0p3.journal /usr ufs rw,async 2 2\n" "/dev/ada0p2.journal /var ufs rw,async 2 2\n" msgstr "" "/dev/ada0p3.journal /usr ufs rw,async 2 2\n" "/dev/ada0p2.journal /var ufs rw,async 2 2\n" #. type: delimited block = 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:494 msgid "" "Make sure the above entries are correct, or you will have trouble starting " "up normally after you reboot!" msgstr "" "Проверьте корректность всех указанных параметров - в противном случае после " "перезагрузки возможны проблемы со стандартным запуском системы!" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:497 msgid "" "Finally, edit [.filename]#/boot/loader.conf# and add the following line so " "the man:gjournal[8] module is loaded at every boot:" msgstr "" "Наконец, внесите изменения в [.filename]#/boot/loader.conf#, добавив строку " "для автоматической загрузки модуля man:gjournal[8] при каждом старте системы:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:501 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:683 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:817 #, no-wrap msgid "geom_journal_load=\"YES\"\n" msgstr "geom_journal_load=\"YES\"\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:505 msgid "" "Congratulations! Your system is now set for journaling. You can either type " "`exit` to return to multi-user mode, or reboot to test your configuration " "(recommended)." msgstr "" "Поздравляем! Ваша система теперь настроена для журналирования. Вы можете " "ввести команду `exit` для возврата в многопользовательский режим или " "перезагрузить систему для проверки конфигурации (рекомендуется)." #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:509 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:763 #, no-wrap msgid "# shutdown -r now\n" msgstr "# shutdown -r now\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:512 msgid "During the boot you will see messages like the following:" msgstr "Во время перезагрузки вы увидите сообщение следующего вида:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:522 #, no-wrap msgid "" "# dmesg | grep GEOM_JOURNAL\n" "GEOM_JOURNAL: Journal 2948326772: ada0p4 contains journal.\n" "GEOM_JOURNAL: Journal 3193218002: ada0p5 contains journal.\n" "GEOM_JOURNAL: Journal 2948326772: ada0p2 contains data.\n" "GEOM_JOURNAL: Journal ada0p2 clean.\n" "GEOM_JOURNAL: Journal 3193218002: ada0p3 contains data.\n" "GEOM_JOURNAL: Journal ada0p3 clean.\n" msgstr "" "# dmesg | grep GEOM_JOURNAL\n" "GEOM_JOURNAL: Journal 2948326772: ada0p4 contains journal.\n" "GEOM_JOURNAL: Journal 3193218002: ada0p5 contains journal.\n" "GEOM_JOURNAL: Journal 2948326772: ada0p2 contains data.\n" "GEOM_JOURNAL: Journal ada0p2 clean.\n" "GEOM_JOURNAL: Journal 3193218002: ada0p3 contains data.\n" "GEOM_JOURNAL: Journal ada0p3 clean.\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:525 msgid "After an unclean shutdown, the messages will vary slightly, i.e.:" msgstr "" "После некорректного завершения работы сообщения будут немного отличаться, " "например:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:529 #, no-wrap msgid "GEOM_JOURNAL: Journal ada0p2 consistent.\n" msgstr "GEOM_JOURNAL: Journal ada0p2 consistent.\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:532 msgid "" "This usually means that man:gjournal[8] used the information in the journal " "provider to return the file system to a consistent state." msgstr "" "Обычно это означает, что man:gjournal[8] использовал информацию из журнала " "для приведения файловой системы в согласованное состояние." #. type: Title ==== #: documentation/content/en/articles/gjournal-desktop/_index.adoc:534 #, no-wrap msgid "Enabling GEOM Journaling on Newly Created Partitions" msgstr "Включение журналирования GEOM на вновь созданных разделах" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:538 msgid "" "The procedure described earlier is required when enabling GEOM journaling on " "file systems that already contain data. When journaling a newly created, " "empty partition, the process is simpler because both the data and journal " "providers can reside within the same partition." msgstr "" "Процедура, описанная ранее, необходима при включении журналирования GEOM на " "файловых системах, которые уже содержат данные. При журналировании только " "что созданного, пустого раздела процесс проще, так как и данные, и " "журнальные провайдеры могут находиться в одном разделе." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:540 msgid "" "This approach is typically used for new disks or newly allocated partitions " "that have not yet been formatted with a file system." msgstr "" "Такой подход обычно используется для новых дисков или недавно выделенных " "разделов, которые еще не были отформатированы под файловую систему." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:545 msgid "" "While the above procedure is necessary for journaling partitions that " "already contain data, journaling an empty partition is somewhat easier, " "since both the data and the journal provider can be stored in the same " "partition. For example, assume a new disk was installed, and a new " "partition [.filename]#/dev/ada1p1# was created. Creating the journal would " "be as simple as:" msgstr "" "Процедура, описанная выше, необходима для подключения журналирования " "разделов, содержащих данные. Журналирование пустых разделов немного проще, " "ввиду того, что поставщик данных и поставщик журнала могут быть размещены на " "одном и том же разделе. Например, предположим, что был установлен новый " "жёсткий диск и был создан новый раздел [.filename]#/dev/ada1p1#. Создание " "журнала не сложнее набора:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:549 #, no-wrap msgid "# gjournal label /dev/ada1p1\n" msgstr "# gjournal label /dev/ada1p1\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:555 msgid "" "The journal size will be 1 GB by default. You may adjust it by using the `-" "s` option. The value can be given in bytes, or appended by `K`, `M` or `G` " "to denote Kilobytes, Megabytes or Gigabytes respectively. Note that " "`gjournal` will not allow you to create unsuitably small journal sizes." msgstr "" "Размер журнала - 1 Гб по умолчанию. Однако, вы можете изменить это значение " "используя ключ `-s`. Значение можно задавать в байтах, в килобайтах, " "мегабайтах или гигабайтах (используя суффикс `K`, `M` или `G`). Имейте " "ввиду, что команда `gjournal` не позволит вам создать журнал недопустимо " "малого размера." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:557 msgid "" "For example, to create a 2 GB journal, you could use the following command:" msgstr "" "К примеру, чтобы создать журнал размером в 2Гб, можно использовать следующую " "команду:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:561 #, no-wrap msgid "# gjournal label -s 2G /dev/ada1p1\n" msgstr "# gjournal label -s 2G /dev/ada1p1\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:564 msgid "" "You can then initialyze a UFS file system on your new partition, enable " "journaling using `newfs(8)` on the `.journal` device, and disable Soft " "Updates using `tunefs(8)`:" msgstr "" "Далее, вы можете создать файловую систему UFS на новом разделе, разрешить " "журналирование, используя `newfs(8)` на устройстве `.journal`, и запретить " "Soft Updates, используя `tunefs(8)`:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:569 #, no-wrap msgid "" "# newfs -J /dev/ada1p1.journal\n" "# tunefs -n disable -j disable /dev/ada1p1.journal\n" msgstr "" "# newfs -J /dev/ada1p1.journal\n" "# tunefs -n disable -j disable /dev/ada1p1.journal\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:573 msgid "" "After the file system has been created, it can be mounted normally. For " "example, to mount it at `/data`:" msgstr "" "После создания файловой системы её можно смонтировать обычным способом. " "Например, чтобы смонтировать её в `/data`:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:577 #, no-wrap msgid "# mount /dev/ada1p1.journal /data\n" msgstr "# mount /dev/ada1p1.journal /data\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:580 msgid "" "To ensure the file system is mounted automatically at boot, add an entry to " "[.filename]#/etc/fstab#:" msgstr "" "Чтобы обеспечить автоматическое монтирование файловой системы при загрузке, " "добавьте запись в [.filename]#/etc/fstab#:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:584 #, no-wrap msgid "/dev/ada1p1.journal /data ufs rw,async 2 2\n" msgstr "/dev/ada1p1.journal /data ufs rw,async 2 2\n" #. type: Title ===== #: documentation/content/en/articles/gjournal-desktop/_index.adoc:586 #, no-wrap msgid "Notes on Usage" msgstr "Заметки по использованию" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:589 msgid "When using a single provider for both data and journal storage:" msgstr "При использовании одного провайдера для хранения данных и журналов:" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:591 msgid "The partition must be empty before labeling" msgstr "Раздел должен быть пустым перед выполнением `gjournal label`" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:592 msgid "The journal space is allocated from within the partition" msgstr "Журнальное пространство выделяется внутри раздела диска" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:593 msgid "The file system size will be reduced by the size of the journal" msgstr "Размер файловой системы будет уменьшен на размер журнала" #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:595 #, no-wrap msgid "Building Journaling into Your Custom Kernel" msgstr "Встраивание журналирования в собственное ядро" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:599 msgid "" "If you do not wish to load `geom_journal` as a module, you can build its " "functions right into your kernel. Edit your custom kernel configuration " "file, and make sure it includes these two lines:" msgstr "" "Если вы не желаете загружать `geom_journal` как модуль, то можно встроить " "его функции прямо в ваше специализированное ядро. Редактируя " "конфигурационный файл ядра, убедитесь, что в нём находятся следующие две " "строки:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:603 #, no-wrap msgid "options UFS_GJOURNAL <1>\n" msgstr "options UFS_GJOURNAL <1>\n" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:605 #, no-wrap msgid "options GEOM_JOURNAL <2>\n" msgstr "options GEOM_JOURNAL <2>\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:608 msgid "Note: This is already in GENERIC" msgstr "Обратите внимание — это уже есть в GENERIC" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:609 msgid "You will have to add this one" msgstr "Вам надо добавить эту опцию" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:612 msgid "" "Rebuild and reinstall your kernel following the relevant extref:{handbook}" "kernelconfig[instructions in the FreeBSD Handbook., kernelconfig]" msgstr "" "Соберите и установите новое ядро следуя указаниям extref:{handbook}" "kernelconfig[Руководства FreeBSD., kernelconfig]" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:614 msgid "" "Do not forget to remove the relevant \"load\" entry from [.filename]#/boot/" "loader.conf# if you have previously used it." msgstr "" "И не забудьте удалить соответствующую строку загрузки модуля (\"load\") из [." "filename]#/boot/loader.conf# (если на предыдущем этапе она была туда " "внесена)." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:615 #, no-wrap msgid "Checking GEOM Journaling" msgstr "Проверка GEOM журналирования" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:618 msgid "" "GEOM journaling status can be verified by inspecting active GEOM providers." msgstr "" "Статус журналирования GEOM можно уточнить, проверив активные провайдеры GEOM." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:620 msgid "To list all active GEOM journal devices, run:" msgstr "" "Чтобы вывести список всех активных устройств журналирования GEOM, выполните:" #. type: delimited block - 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:624 #, no-wrap msgid "# gjournal list\n" msgstr "# gjournal list\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:627 msgid "Or to view a summary of journal status:" msgstr "Или для просмотра сводки состояния журнала:" #. type: delimited block - 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:631 #, no-wrap msgid "# gjournal status\n" msgstr "# gjournal status\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:635 msgid "" "Journaled file systems are identified by device names ending in `.journal`. " "The presence of these providers indicates that GEOM journaling is active." msgstr "" "Журналируемые файловые системы обозначаются именами устройств, " "оканчивающимися на `.journal`. Наличие этих провайдеров указывает на " "активность журналирования GEOM." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:637 msgid "Additional information about GEOM device stacking can be obtained with:" msgstr "" "Дополнительную информацию о цепочке устройств GEOM можно получить с помощью:" #. type: delimited block - 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:641 #, no-wrap msgid "# geom -t\n" msgstr "# geom -t\n" #. type: delimited block - 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:649 #, no-wrap msgid "" "# dumpfs /dev/ada0p2.journal | grep -i journal\n" "flags gjournal\n" msgstr "" "# dumpfs /dev/ada0p2.journal | grep -i journal\n" "flags gjournal\n" #. type: Title == #: documentation/content/en/articles/gjournal-desktop/_index.adoc:653 #, no-wrap msgid "Troubleshooting Journaling" msgstr "Устранение неполадок с журналированием" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:656 msgid "" "The following section covers frequently asked questions regarding problems " "related to journaling." msgstr "" "Этот раздел содержит часто задаваемые вопросы касательно неполадок, " "связанных с журналированием." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:657 #, no-wrap msgid "I am experiencing kernel panics during periods of high disk activity. Is this related to GEOM journaling?" msgstr "" "Я получаю паники ядра во время высокой дисковой активности. Это связано с " "журналированием GEOM?" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:660 msgid "" "On modern FreeBSD systems, kernel panics caused solely by an undersized GEOM " "journal are rare." msgstr "" "На современных системах FreeBSD аварийные остановки системы, вызванные " "исключительно недостаточным размером журнала GEOM, встречаются редко." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:663 msgid "" "Under sustained or burst-heavy write workloads, an undersized journal " "typically results in write throttling or temporary I/O stalls while the " "journal is flushed to the data provider. A kernel panic may occur only in " "exceptional cases, usually in combination with additional problems such as I/" "O errors or resource exhaustion, where continuing operation could risk file " "system integrity." msgstr "" "При продолжительных или интенсивных всплесках нагрузки на запись, " "недостаточный размер журнала обычно приводит к регулированию записи или " "временным задержкам ввода-вывода во время сброса журнала на устройство " "хранения данных. Аварийная остановка системы может возникнуть лишь в " "исключительных случаях, обычно в сочетании с дополнительными проблемами, " "такими как ошибки ввода-вывода или исчерпание ресурсов, когда продолжение " "работы может угрожать целостности файловой системы." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:665 msgid "" "If panics are observed during heavy write activity, increasing the size of " "the journal provider for the affected file system is recommended." msgstr "" "Если наблюдаются аварийные остановки при интенсивной активности записи, " "рекомендуется увеличить размер журнала для затронутой файловой системы." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:666 #, no-wrap msgid "I made some mistake during configuration, and I cannot boot normally now. Can this be fixed some way?" msgstr "Я допустил некоторые ошибки во время конфигурирования, теперь система не загружается. Можно это как-нибудь исправить?" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:672 msgid "" "You either forgot (or misspelled) the entry in [.filename]#/boot/loader." "conf#, or there are errors in your [.filename]#/etc/fstab# file. These are " "usually easy to fix. During system startup, when the boot process stops and " "prompts for single-user mode (for example after a failed mount or `fsck` " "error), press kbd:[Enter] to get to the default single user shell. Then " "locate the root of the problem:" msgstr "" "Вы либо забыли внести запись (опечатались) в [.filename]#/boot/loader.conf#, " "либо есть ошибки в файле [.filename]#/etc/fstab#. Это легко исправить. Во " "время загрузки системы, когда процесс загрузки остановится и появится запрос " "входа в однопользовательский режим (например, после сбоя монтирования или " "ошибки `fsck`), нажмите kbd:[Enter], чтобы получить приглашение командного " "интерпретатора в однопользовательском режиме. Потом, проверьте возможные " "варианты:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:676 #, no-wrap msgid "# cat /boot/loader.conf\n" msgstr "# cat /boot/loader.conf\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:679 msgid "Ensure that the following line exists and is spelled correctly:" msgstr "Убедитесь, что следующая строка существует и написана правильно:" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:687 msgid "" "If the `geom_journal_load` entry is missing or misspelled, the journaled " "devices are never created. Load the module manually, mount all partitions, " "and continue with multi-user boot:" msgstr "" "Если отсутствует запись `geom_journal_load`, или она содержит ошибки, " "журналируемые устройства не создадутся. Загрузите модуль вручную, " "примонтируйте все разделы и переходите в многопользовательский режим " "(продолжайте загрузку):" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:698 #, no-wrap msgid "" "GEOM_JOURNAL: Journal 2948326772: ada0p4 contains journal.\n" "GEOM_JOURNAL: Journal 3193218002: ada0p5 contains journal.\n" "GEOM_JOURNAL: Journal 2948326772: ada0p2 contains data.\n" "GEOM_JOURNAL: Journal ada0p2 clean.\n" "GEOM_JOURNAL: Journal 3193218002: ada0p3 contains data.\n" "GEOM_JOURNAL: Journal ada0p3 clean.\n" msgstr "" "GEOM_JOURNAL: Journal 2948326772: ada0p4 contains journal.\n" "GEOM_JOURNAL: Journal 3193218002: ada0p5 contains journal.\n" "GEOM_JOURNAL: Journal 2948326772: ada0p2 contains data.\n" "GEOM_JOURNAL: Journal ada0p2 clean.\n" "GEOM_JOURNAL: Journal 3193218002: ada0p3 contains data.\n" "GEOM_JOURNAL: Journal ada0p3 clean.\n" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:702 #, no-wrap msgid "" "# mount -a\n" "# exit\n" "(boot continues)\n" msgstr "" "# mount -a\n" "# exit\n" "(boot continues)\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:707 msgid "" "If, on the other hand, this entry is correct, have a look at [.filename]#/" "etc/fstab#. You will probably find a misspelled or missing entry. In this " "case, mount all remaining partitions by hand and continue with the multi-" "user boot." msgstr "" "Если же запись о `geom_journal_load` верна, то проверьте [.filename]#/etc/" "fstab#. Вероятней всего, что вы обнаружите опечатку или отсутствие " "необходимой записи. В этом случае смонтируйте вручную оставшиеся разделы и " "продолжите загрузку в многопользовательский режим." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:708 #, no-wrap msgid "Can I remove journaling and return to my standard file system with Soft Updates?" msgstr "Возможно ли отказаться от журналирования и вернуться к моей привычной файловой системе с механизмом Soft Updates?" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:713 msgid "" "Sure. Use the following procedure, which reverses the changes. The " "partitions you created for the journal providers can then be used for other " "purposes, if you so wish." msgstr "" "Несомненно. Используйте приведённую ниже последовательность действий, " "которая обращает изменения. Разделы, созданные для поставщиков журналов, " "могут позже быть использованы для других целей." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:715 msgid "Login as `root` and switch to single user mode:" msgstr "Залогиньтесь `root` и переведите систему в однопользовательский режим:" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:722 msgid "Unmount the journaled partitions:" msgstr "Размонтируйте журналируемые разделы:" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:729 msgid "Synchronize the journals:" msgstr "Синхронизируйте журналы:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:733 #, no-wrap msgid "# gjournal sync\n" msgstr "# gjournal sync\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:736 msgid "Stop the journaling providers:" msgstr "Остановите поставщиков журналов:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:741 #, no-wrap msgid "" "# gjournal stop ada0p2.journal\n" "# gjournal stop ada0p3.journal\n" msgstr "" "# gjournal stop ada0p2.journal\n" "# gjournal stop ada0p3.journal\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:745 msgid "" "Next step should be done with unloaded gjournal kernel module. If the " "following command fails:" msgstr "" "Следующий шаг должен быть выполнен с выгруженным модулем ядра gjournal. Если " "следующая команда завершится неудачей:" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:750 msgid "... # gjournal unload ..." msgstr "... # gjournal unload ..." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:752 msgid "" "ensure that the following line exists in [.filename]#/boot/loader.conf# and " "is spelled correctly:" msgstr "" "Убедитесь, что следующая строка присутствует в [.filename]#/boot/loader.conf#" " и написана правильно:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:756 #, no-wrap msgid "geom_journal_load=\"NO\"\n" msgstr "geom_journal_load=\"NO\"\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:759 msgid "Reboot your desktop without gjournal kernel module:" msgstr "Перезагрузите ваш компьютер без модуля ядра gjournal:" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:766 msgid "" "Boot into single-user mode again. Clear the journaling metadata from all the " "devices used:" msgstr "" "Войдите в систему в однопользовательском режиме еще раз. Удалите метаданные " "журналирования со всех задействованных устройств:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:773 #, no-wrap msgid "" "# gjournal clear ada0p2\n" "# gjournal clear ada0p3\n" "# gjournal clear ada0p4\n" "# gjournal clear ada0p5\n" msgstr "" "# gjournal clear ada0p2\n" "# gjournal clear ada0p3\n" "# gjournal clear ada0p4\n" "# gjournal clear ada0p5\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:776 msgid "" "Clear the file system journaling flag, and restore the Soft Updates flags:" msgstr "Снимите флаг журналирования и установите флаги механизма Soft Updates:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:783 #, no-wrap msgid "" "# tunefs -J disable -n enable -j enable ada0p2\n" "tunefs: soft updates journaling set\n" "tunefs: gjournal cleared\n" "tunefs: soft updates set\n" msgstr "" "# tunefs -J disable -n enable -j enable ada0p2\n" "tunefs: soft updates journaling set\n" "tunefs: gjournal cleared\n" "tunefs: soft updates set\n" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:788 #, no-wrap msgid "" "# tunefs -J disable -n enable -j enable ada0p3\n" "tunefs: soft updates journaling set\n" "tunefs: gjournal cleared\n" "tunefs: soft updates set\n" msgstr "" "# tunefs -J disable -n enable -j enable ada0p3\n" "tunefs: soft updates journaling set\n" "tunefs: gjournal cleared\n" "tunefs: soft updates set\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:791 msgid "Remount the old devices by hand:" msgstr "Смонтируйте вручную старые (первоначальные) устройства:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:796 #, no-wrap msgid "" "# mount -o rw /dev/ada0p2 /var\n" "# mount -o rw /dev/ada0p3 /usr\n" msgstr "" "# mount -o rw /dev/ada0p2 /var\n" "# mount -o rw /dev/ada0p3 /usr\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:799 msgid "Edit [.filename]#/etc/fstab# and restore it to its original state:" msgstr "" "Откройте файл [.filename]#/etc/fstab# и приведите его к изначальному виду:" #. type: delimited block . 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:804 #, no-wrap msgid "" "/dev/ada0p2 /usr ufs rw 2 2\n" "/dev/ada0p3 /var ufs rw 2 2\n" msgstr "" "/dev/ada0p2 /usr ufs rw 2 2\n" "/dev/ada0p3 /var ufs rw 2 2\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:807 msgid "" "Finally, edit [.filename]#/boot/loader.conf#, remove the entry that loads " "the `geom_journal` module (or re-enable it if gjournal is still required for " "other partitions), and reboot." msgstr "" "И напоследок, удалите строку, загружающую модуль `geom_journal`, из файла [." "filename]#/boot/loader.conf# (или включите его опять, если он по прежнему " "требуется для других разделов диска), и перезагрузите операционную систему." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:808 #, no-wrap msgid "How do I temporarily boot without GEOM journaling?" msgstr "Как временно загрузиться без журналирования GEOM?" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:811 msgid "" "To boot the system without GEOM journaling, prevent the journal module from " "loading during startup." msgstr "" "Чтобы загрузить систему без журналирования GEOM, предотвратите загрузку " "модуля журнала во время запуска." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:813 msgid "" "Comment out or remove the following line from [.filename]#/boot/loader.conf# " "and reboot:" msgstr "" "Закомментируйте или удалите соответствующую строку из [.filename]#/boot/" "loader.conf# и перезагрузитесь:" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:821 msgid "" "After booting without GEOM journaling, journaled devices (`*.journal`) will " "not be created. File Systems must be mounted using their original (non-" "journaled) providers, or mounted manually as needed for recovery or " "maintenance." msgstr "" "После загрузки без журналирования GEOM, журналируемые устройства (`*." "journal`) не будут созданы. Файловые системы должны быть смонтированы с " "использованием их исходных (не журналируемых) провайдеров или вручную по " "мере необходимости для восстановления или обслуживания." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:823 msgid "" "This method does not modify on-disk journal metadata and can be safely used " "for troubleshooting." msgstr "" "Этот метод не изменяет метаданные журнала на диске и может безопасно " "использоваться для устранения неполадок." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:824 #, no-wrap msgid "Can I resize a GEOM journal after it has been created?" msgstr "Можно ли изменить размер журнала GEOM после его создания?" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:827 msgid "" "No. A GEOM journal cannot be resized in place after it has been created." msgstr "" "Нет. Журнал GEOM не может быть изменен в размере на месте после его создания." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:831 msgid "" "The journal size is fixed at the time the journal is labeled. To change the " "journal size, GEOM journaling must be removed and reconfigured with a new " "journal provider of the desired size. For file systems containing data, " "this requires unmounting the file system and recreating the journal using " "appropriately sized providers, as described earlier in this article." msgstr "" "Размер журнала фиксируется в момент выполнения `gjournal label` . Чтобы " "изменить размер журнала, необходимо удалить журналирование GEOM и " "переконфигурировать его с новым провайдером журнала желаемого размера. Для " "файловых систем, содержащих данные, это требует размонтирования файловой " "системы и воссоздания журнала с использованием провайдеров соответствующего " "размера, как описано ранее в этой статье." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:833 msgid "" "Plan journal sizes conservatively to accommodate peak write activity, as " "resizing requires reinitialization of the journal configuration." msgstr "" "Планируйте размеры журналов консервативно, чтобы они соответствовали пиковой " "активности записи, так как изменение размера требует повторной инициализации " "конфигурации журнала." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:834 #, no-wrap msgid "What happens after an unclean shutdown or power failure?" msgstr "Что происходит после некорректного завершения работы или сбоя питания?" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:837 msgid "" "After an unclean shutdown or power failure, GEOM journaling and Soft Updates " "with journaling replay the pending journal records during the next boot to " "return the file system to a consistent state." msgstr "" "После некорректного завершения работы или сбоя питания, журналирование GEOM " "и Soft Updates с журналированием воспроизводят ожидающие записи журнала во " "время следующей загрузки, чтобы вернуть файловую систему в согласованное " "состояние." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:840 msgid "" "If the journal replay completes successfully, the file system is mounted " "normally and no full file system check is required. Journal replay " "typically takes only a few seconds and depends on the amount of recent write " "activity rather than the size of the file system." msgstr "" "Если восстановление журнала завершается успешно, файловая система " "монтируется в обычном режиме, и полная проверка файловой системы не " "требуется. Восстановление журнала обычно занимает всего несколько секунд и " "зависит от объема недавней активности записи, а не от размера файловой " "системы." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:842 msgid "" "A full file system check may still be required in rare cases, such as when " "underlying storage errors are detected or the journal itself is inconsistent." msgstr "" "Полная проверка файловой системы может потребоваться в редких случаях, " "например, при обнаружении ошибок в устройстве хранения или несоответствии " "самого журнала." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:843 #, no-wrap msgid "How does GEOM journaling interact with fsck?" msgstr "Как взаимодействует журналирование GEOM с fsck?" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:846 msgid "" "GEOM journaling and Soft Updates with journaling interact with `fsck_ffs(8)` " "in different ways, reflecting their different integration levels in the " "FreeBSD storage stack." msgstr "" "Журналирование GEOM и Soft Updates с журналированием взаимодействуют с " "`fsck_ffs(8)` различными способами, отражая их разные уровни интеграции в " "стеке хранения FreeBSD." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:851 msgid "" "For GEOM journaling, crash recovery is performed by the GEOM framework " "itself. During system startup, the `geom_journal` class detects journal " "metadata and replays any pending journal records while the provider is being " "tasted by GEOM, before the journaled device becomes visible to higher layers " "of the system. If journal replay completes successfully, the file system is " "returned to a consistent state and the UFS superblock is updated to indicate " "that no file system check is required. When `fsck_ffs(8)` is later invoked " "during boot, it reads this state from the superblock and skips the file " "system check." msgstr "" "Для журналирования GEOM восстановление после сбоя выполняется самой " "структурой GEOM. Во время запуска системы класс `geom_journal` обнаруживает " "метаданные журнала и воспроизводит все ожидающие записи журнала, пока " "провайдер обрабатывается GEOM, до того как журналируемое устройство станет " "видимым для более высоких уровней системы. Если воспроизведение журнала " "завершается успешно, файловая система возвращается в согласованное " "состояние, и суперблок UFS обновляется, чтобы указать, что проверка файловой " "системы не требуется. Когда позже во время загрузки вызывается `fsck_ffs(8)`" ", он считывает это состояние из суперблока и пропускает проверку файловой " "системы." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:856 msgid "" "For Soft Updates with journaling, recovery is initiated by `fsck_ffs(8)` " "itself. During the file system check phase at boot time, `fsck_ffs(8)` " "detects that the files ystem supports Soft Updates with journaling and " "invokes the journal replay logic. If journal replay reports that the file " "system is consistent, `fsck_ffs(8)` terminates early without performing a " "full check. If journal replay cannot complete successfully, a traditional " "file system check is performed." msgstr "" "Для Soft Updates с журналированием восстановление инициируется самим " "`fsck_ffs(8)`. Во время проверки файловой системы при загрузке, `fsck_ffs(8)`" " обнаруживает, что файловая система поддерживает Soft Updates с " "журналированием, и запускает логику воспроизведения журнала. Если " "воспроизведение журнала сообщает, что файловая система непротиворечива, " "`fsck_ffs(8)` завершается досрочно без выполнения полной проверки. Если " "воспроизведение журнала не может быть успешно завершено, выполняется " "традиционная проверка файловой системы." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:858 msgid "" "As a result, the recovery path during system startup depends on the " "journaling mechanism in use, as illustrated by the following boot sequence:" msgstr "" "В результате, путь восстановления во время загрузки системы зависит от " "используемого механизма журналирования, что иллюстрируется следующей " "последовательностью загрузки:" #. type: delimited block - 4 #: documentation/content/en/articles/gjournal-desktop/_index.adoc:885 #, no-wrap msgid "" "Firmware / Boot Loader\n" " |\n" " v\n" "Kernel initialization\n" " |\n" " v\n" "GEOM framework (provider tasting)\n" " |\n" " +--> GEOM journaling (gjournal)\n" " | - Journal replay occurs here\n" " | - Filesystem consistency is restored\n" " | - Superblock is updated\n" " |\n" " v\n" "Filesystem check phase (fsck_ffs)\n" " |\n" " +--> Soft Updates with journaling\n" " | - Journal replay initiated by fsck\n" " | - fsck exits early if consistent\n" " |\n" " v\n" "Filesystem mount\n" " |\n" " v\n" "Normal system operation\n" msgstr "" "Загрузчик системы\n" " |\n" " v\n" "Инициализация ядра\n" " |\n" " v\n" "Фреймворк GEOM framework (обнаружение поставщиков - tasting)\n" " |\n" " +--> Журналирование GEOM (gjournal)\n" " | - Выполнение записи на диск из журнала выполняется на этом " "этапе\n" " | - Согласованность файловой системы восстановлена\n" " | - Суперблок обновлен\n" " |\n" " v\n" "Фаза проверки файловой системы (fsck_ffs)\n" " |\n" " +--> Журналирование с Soft Updates\n" " | - Выполнение записи на диск из журнала, инициированное " "командой fsck\n" " | - fsck сразу выходит, если файловая система в согласованном " "состоянии\n" " |\n" " v\n" "Монтирование файловой системы\n" " |\n" " v\n" "Обычная работа системы\n" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:889 msgid "" "`fsck_ffs(8)` is still used when journal replay cannot be completed, when " "underlying storage errors are detected, or during periodic manual or " "scheduled file system checks. GEOM journaling reduces recovery time after " "crashes but does not replace `fsck_ffs(8)` entirely." msgstr "" "`fsck_ffs(8)` всё ещё используется, когда восстановление журнала не может " "быть завершено, при обнаружении ошибок базового хранилища или во время " "периодических ручных или запланированных проверок файловой системы. " "Журналирование GEOM сокращает время восстановления после сбоев, но не " "заменяет `fsck_ffs(8)` полностью." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:890 #, no-wrap msgid "Why does `gjournal clear` report \"Operation not permitted\" even in single-user mode?" msgstr "" "Почему команда `gjournal clear` сообщает \"Операция не разрешена\" даже в " "однопользовательском режиме?" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:895 msgid "" "In GEOM, the same underlying storage can be exposed through multiple " "provider names at the same time. For example, a partition may be visible " "both under its disk-based name (e.g. `vtbd0p7`) and under a GPT label (e.g. " "`/dev/gpt/labelname`). These are different GEOM providers referring to the " "same physical storage." msgstr "" "В GEOM одно и то же базовое хранилище может быть представлено через " "несколько имён провайдеров одновременно. Например, раздел может быть виден " "как под своим именем, основанным на диске (например, `vtbd0p7`), так и под " "меткой GPT (например, `/dev/gpt/labelname`). Это разные провайдеры GEOM, " "ссылающиеся на одно и то же физическое хранилище." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:898 msgid "" "When `gjournal stop` or `gjournal clear` is executed on one provider name, " "the GEOM framework may immediately detect the journal metadata again through " "another provider name during the tasting process. As a result, the journal " "is re-attached automatically, and attempts to clear its metadata fail with " "an \"Operation not permitted\" error." msgstr "" "Когда команды `gjournal stop` или `gjournal clear` выполняются на одном " "имени провайдера, фреймворк GEOM может немедленно снова обнаружить " "метаданные журнала через другое имя провайдера в процессе распознавание " "устройства (tasting). В результате журнал автоматически повторно " "присоединяется, и попытки очистить его метаданные завершаются ошибкой " "\"Операция не разрешена\"." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:901 msgid "" "It is technically possible to suppress this behavior by disabling GEOM " "tasting or by preventing the creation of alternative provider names, but " "doing so is strongly discouraged. Such changes may negatively affect other " "GEOM classes and system components that rely on normal provider discovery." msgstr "" "Технически возможно подавить это поведение, отключив GEOM tasting или " "предотвратив создание альтернативных имён провайдеров, однако это крайне не " "рекомендуется. Такие изменения могут негативно повлиять на другие классы " "GEOM и системные компоненты, которые полагаются на обычное обнаружение " "провайдеров." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:904 msgid "" "For this reason, the recommended and safe procedure is to unload the " "`geom_journal` module entirely before removing journal metadata, as " "described earlier in this article. With the module unloaded, no tasting " "occurs and the journal cannot be re-attached, allowing `gjournal clear` to " "complete successfully." msgstr "" "По этой причине рекомендованная и безопасная процедура заключается в полной " "выгрузке модуля `geom_journal` перед удалением журнальных метаданных, как " "описано ранее в этой статье. При выгруженном модуле не происходит " "автоматического распознавания, и журнал не может быть повторно подключен, " "что позволяет команде `gjournal clear` завершиться успешно." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:905 #, no-wrap msgid "Can GEOM journaling be used on the root file system?" msgstr "Можно ли использовать журналирование GEOM на корневой файловой системе?" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:908 msgid "" "Yes. GEOM journaling can be used on the root file system, but it requires " "additional care during system configuration." msgstr "" "Да. Журналирование GEOM может использоваться на корневой файловой системе, " "но требует дополнительной осторожности при настройке системы." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:911 msgid "" "The GEOM journal module must be loaded early during the boot process so that " "the journaled root device is available before the root file system is " "mounted. Misconfiguration may prevent the system from booting normally, so " "this setup is generally recommended only for experienced users who fully " "understand the boot sequence and recovery procedures." msgstr "" "Модуль GEOM journal должен быть загружен на раннем этапе процесса загрузки, " "чтобы журналируемое корневое устройство было доступно до монтирования " "корневой файловой системы. Неправильная конфигурация может помешать системе " "загрузиться в обычном режиме, поэтому данная настройка, как правило, " "рекомендуется только опытным пользователям, которые полностью понимают " "последовательность загрузки и процедуры восстановления." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:913 msgid "" "For these reasons, GEOM journaling is more commonly applied to non-root file " "systems such as `/usr` and `/var`." msgstr "" "По этим причинам журналирование GEOM чаще применяется к некорневым файловым " "системам, таким как `/usr` и `/var`." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:914 #, no-wrap msgid "What are the performance implications of using GEOM journaling?" msgstr "" "Каковы последствия для производительности при использовании журналирования " "GEOM?" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:918 msgid "" "GEOM journaling introduces additional write I/O because all write operations " "are first recorded in the journal before being committed to the data " "provider. This results in increased write latency and higher overall write " "amplification compared to non-journaled file systems." msgstr "" "Ведение журнала GEOM вводит дополнительные операции записи ввода-вывода, " "поскольку все операции записи сначала регистрируются в журнале перед " "фиксацией на устройстве хранения данных. Это приводит к увеличению задержки " "записи и более высокому коэффициенту увеличения объёма записи по сравнению с " "файловыми системами без журналирования." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:922 msgid "" "Read performance is typically unaffected. The performance impact is most " "noticeable on write-heavy workloads and depends on journal size, placement, " "and the speed of the underlying storage. Using a sufficiently sized journal " "and fast storage for the journal provider minimizes performance penalties." msgstr "" "Производительность чтения обычно не страдает. Наиболее заметное влияние на " "производительность наблюдается при интенсивных нагрузках на запись и зависит " "от размера журнала, его размещения и скорости базового хранилища. " "Использование журнала достаточного размера и быстрого хранилища для " "поставщика журнала минимизирует потери в производительности." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:923 #, no-wrap msgid "Can GEOM journaling be used together with other GEOM classes?" msgstr "" "Может ли журналирование GEOM использоваться вместе с другими классами GEOM?" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:926 msgid "Yes. GEOM journaling can be stacked with other GEOM classes." msgstr "Да. GEOM журналирование может быть объединено с другими классами GEOM." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:929 msgid "" "When used together, GEOM journaling typically operates on top of providers " "created by other GEOM classes such as `gmirror(8)` or `graid3(8)`. The " "order of stacking is important and should follow the documented layering " "requirements of the involved GEOM classes." msgstr "" "При совместном использовании журналирование GEOM обычно работает поверх " "провайдеров, созданных другими классами GEOM, такими как `gmirror(8)` или " "`graid3(8)`. Порядок наложения важен и должен соответствовать " "задокументированным требованиям к слоям задействованных классов GEOM." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:931 msgid "" "GEOM journaling maintains file system consistency across the stacked " "providers, but it does not replace redundancy or error detection provided by " "other GEOM classes." msgstr "" "GEOM журналирование обеспечивает целостность файловой системы на всех " "уровнях поставщиков, но не заменяет избыточность или обнаружение ошибок, " "предоставляемые другими классами GEOM." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:932 #, no-wrap msgid "Can GEOM journaling and Soft Updates be enabled at the same time?" msgstr "Можно ли одновременно включить журналирование GEOM и Soft Updates?" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:935 msgid "" "No. GEOM journaling and Soft Updates must not be enabled at the same time on " "the same file system." msgstr "" "Нет. GEOM журналирование и Soft Updates не должны быть включены одновременно " "на одной файловой системе." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:938 msgid "" "GEOM journaling requires exclusive control over write ordering and " "consistency guarantees. If Soft Updates are enabled together with GEOM " "journaling, the file system may behave unpredictably and data integrity " "cannot be guaranteed." msgstr "" "GEOM журналирование требует исключительного контроля над порядком записи и " "гарантиями согласованности. Если Soft Updates включены вместе с GEOM " "журналированием, файловая система может вести себя непредсказуемо, и " "целостность данных не может быть гарантирована." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:940 msgid "" "When using GEOM journaling, Soft Updates must be disabled on the affected " "file system, as described earlier in this article." msgstr "" "При использовании журналирования GEOM необходимо отключить Soft Updates на " "затронутой файловой системе, как описано ранее в этой статье." #. type: Title === #: documentation/content/en/articles/gjournal-desktop/_index.adoc:942 #, no-wrap msgid "What is the difference between Soft Updates and Soft Updates with Journaling?" msgstr "В чем разница между Soft Updates и Soft Updates с журналированием?" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:945 msgid "" "Both Soft Updates and Soft Updates with Journaling are designed to maintain " "file system consistency, but they use different mechanisms and behave " "differently after a system crash." msgstr "" "Как Soft Updates, так и Soft Updates with Journaling предназначены для " "поддержания целостности файловой системы, но используют разные механизмы и " "ведут себя по-разному после сбоя системы." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:949 msgid "" "_Soft Updates_ ensure consistency by carefully ordering metadata writes in " "memory so that only safe states are written to disk. If a crash occurs, any " "metadata updates that have not yet been written are simply lost, leaving the " "file system in a consistent but possibly older state. However, resource " "accounting may be temporarily inaccurate, and a full `fsck_ffs(8)` run is " "required to reclaim unused blocks and inodes." msgstr "" "_Soft Updates_ обеспечивают целостность за счёт тщательного упорядочивания " "записи метаданных в памяти, так что на диск записываются только безопасные " "состояния. При сбое любые обновления метаданных, ещё не записанные на диск, " "просто теряются, оставляя файловую систему в целостном, но, возможно, более " "старом состоянии. Однако учёт ресурсов может временно быть неточным, и для " "освобождения неиспользуемых блоков и индексных дескрипторов требуется полный " "запуск `fsck_ffs(8)`." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:953 msgid "" "_Soft Updates with Journaling_ build on top of _Soft Updates_ by adding a " "metadata journal stored within the file system. Metadata changes are first " "recorded in the journal and are replayed automatically during the next boot " "after an unclean shutdown. This allows the file system to be restored to a " "consistent state quickly, usually without requiring a full `fsck_ffs(8)` run." msgstr "" "_Soft Updates с журналированием_ расширяют функциональность _Soft Updates _, " "добавляя журнал метаданных, хранящийся в файловой системе. Изменения " "метаданных сначала записываются в журнал и автоматически воспроизводятся при " "следующей загрузке после некорректного завершения работы. Это позволяет " "быстро восстановить файловую систему в согласованное состояние, обычно без " "необходимости полного запуска `fsck_ffs(8)`." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:955 msgid "" "In short, _Soft Updates_ provide consistency without a journal, while _Soft " "Updates with Journaling_ add fast and automatic recovery after crashes at " "the cost of additional disk space and minor performance overhead." msgstr "" "Короче говоря, _Soft Updates_ обеспечивают согласованность без " "журналирования, тогда как _Soft Updates с журналированием_ добавляют быстрое " "и автоматическое восстановление после сбоев ценой дополнительного дискового " "пространства и незначительного снижения производительности." #. type: Title == #: documentation/content/en/articles/gjournal-desktop/_index.adoc:958 #, no-wrap msgid "Further Reading" msgstr "Для дальнейшего ознакомления" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:962 msgid "" "Journaling is a fairly new feature of FreeBSD, and as such, it is not very " "well documented yet. You may however find the following additional " "references useful:" msgstr "" "Журналирование - относительно новая функциональная возможность FreeBSD, и " "она ещё недостаточно документирована. Однако, могут быть полезными следующие " "источники:" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:964 msgid "" "A extref:{handbook}geom[section on journaling, geom-gjournal] is now part of " "the FreeBSD Handbook." msgstr "" "extref:{handbook}geom[Раздел Руководства FreeBSD, geom-gjournal], " "посвященный журналированию." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:965 msgid "" "https://lists.freebsd.org/pipermail/freebsd-current/2006-June/064043." "html[This post] in {freebsd-current} by man:gjournal[8]'s developer, `{pjd}`." msgstr "" "http://lists.freebsd.org/pipermail/freebsd-current/2006-June/064043." "html[Этот пост] в списке рассылки {freebsd-current}, написанный `{pjd}` - " "автором man:gjournal[8]." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:966 msgid "" "https://lists.freebsd.org/pipermail/freebsd-questions/2008-April/173501." "html[This post] in {freebsd-questions} by `{ivoras}`." msgstr "" "http://lists.freebsd.org/pipermail/freebsd-questions/2008-April/173501." "html[Этот пост] от `{ivoras}` в списке рассылки {freebsd-questions}." #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:967 msgid "" "https://www.youtube.com/watch?v=_NuhRkiInvA[Journaled Soft-Updates, Dr. Kirk " "McKusick, BSDCan 2010] on YouTube" msgstr "" "https://www.youtube.com/watch?v=_NuhRkiInvA[Journaled Soft-Updates, Dr. Kirk " "McKusick, BSDCan 2010] на YouTube" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:968 msgid "" "https://www.youtube.com/watch?v=xMpmOezBJZo[GEOM - in Infrastructure We " "Trust, Pawel Jakub Dawidek, AsiaBSDCon 2008] on YouTube" msgstr "" "https://www.youtube.com/watch?v=xMpmOezBJZo[GEOM - in Infrastructure We " "Trust, Pawel Jakub Dawidek, AsiaBSDCon 2008] на YouTube" #. type: Plain text #: documentation/content/en/articles/gjournal-desktop/_index.adoc:968 msgid "The manual pages of man:gjournal[8], man:geom[8], and man:tunefs[8]." msgstr "Страницы Справочника man:gjournal[8], man:geom[8] и man:tunefs[8]." #~ msgid "" #~ "The new journaling capability provided by GEOM can greatly assist in such " #~ "scenarios, by virtually eliminating the time required for file system " #~ "checking, and ensuring that the file system is quickly restored to a " #~ "consistent state." #~ msgstr "" #~ "Новая возможность журналирования, предоставленная системой GEOM, может " #~ "существенно выручить в подобных случаях, исключая время, необходимое для " #~ "проверки файловых систем и удостовериваясь, что файловая система быстро " #~ "восстановлена в целостное состояние." #~ msgid "" #~ "This article describes a procedure for implementing UFS journaling on a " #~ "typical desktop PC scenario (one hard disk used for both operating system " #~ "and data). It should be followed during a fresh installation of " #~ "FreeBSD. The steps are simple enough and do not require overly complex " #~ "interaction with the command line." #~ msgstr "" #~ "Эта статья описывает порядок действий, необходимых для конфигурирования " #~ "журналирования UFS на типичном настольном компьютере, в котором один " #~ "жёсткий диск используется для размещения как операционной системы, так и " #~ "данных. В статье подразумевается установка FreeBSD \"с нуля\". Шаги " #~ "достаточно просты и не требуют чрезмерно сложных манипуляций с командной " #~ "строкой." #~ msgid "After reading this article, you will know:" #~ msgstr "После прочтения данной статьи вы будете знать:" #~ msgid "" #~ "How to reserve space for journaling during a new installation of FreeBSD." #~ msgstr "" #~ "Как зарезервировать место для журнала во время новой установки FreeBSD." #~ msgid "" #~ "How to load and enable the `geom_journal` module (or build support for it " #~ "in your custom kernel)." #~ msgstr "" #~ "Как загрузить модуль `geom_journal` (или включить поддержку " #~ "журналирования в специализированном ядре системы)." #~ msgid "" #~ "How to convert your existing file systems to utilize journaling, and what " #~ "options to use in [.filename]#/etc/fstab# to mount them." #~ msgstr "" #~ "Как преобразовать существующую файловую систему, в систему, использующую " #~ "журналирование, и какие опции монтирования использовать в [.filename]#/" #~ "etc/fstab#." #~ msgid "How to implement journaling in new (empty) partitions." #~ msgstr "Как реализовать журналирование на новых (пустых) разделах." #~ msgid "" #~ "The procedure described here is intended for preparing a new installation " #~ "where no actual user data is stored on the disk yet. While it is " #~ "possible to modify and extend this procedure for systems already in " #~ "production, you should _backup_ all important data before doing so. " #~ "Messing around with disks and partitions at a low level can lead to fatal " #~ "mistakes and data loss." #~ msgstr "" #~ "Процедура, описанная здесь, подразумевает подготовку к новой установке, в " #~ "которой на дисках ещё нет пользовательских данных. Так как эту процедуру " #~ "можно модифицировать и расширить на системы, которые уже используются, " #~ "вам настоятельно рекомендуется сделать _резервную копию_ всех ценных " #~ "данных. Путаница в низкоуровневых операциях с дисками и разделами может " #~ "привести к фатальным ошибкам и потере данных." #~ msgid "" #~ "The journaling provided by GEOM in FreeBSD 7._X_ is not file system " #~ "specific (unlike for example the ext3 file system in Linux(R)) but is " #~ "functioning at the block level. Though this means it can be applied to " #~ "different file systems, for FreeBSD 7.0-RELEASE, it can only be used on " #~ "UFS2." #~ msgstr "" #~ "Журналирование, предоставляемое системой GEOM в FreeBSD 7._X_, не " #~ "является особенностью файловой системы (в отличие от, например, файловой " #~ "системы ext3 в Linux(R)), оно функционирует на блочном уровне. А это " #~ "значит, что оно может быть применено к разным типам файловых систем, " #~ "однако для FreeBSD 7.0-RELEASE журналирование может быть применено только " #~ "для UFS2." #~ msgid "" #~ "When a file system is journaled, some disk space is needed to keep the " #~ "journal itself. The disk space that holds the actual data is referred to " #~ "as the __data provider__, while the one that holds the journal is " #~ "referred to as the __journal provider__. The data and journal providers " #~ "need to be on different partitions when journaling an existing (non-" #~ "empty) partition. When journaling a new partition, you have the option " #~ "to use a single provider for both data and journal. In any case, the " #~ "`gjournal` command combines both providers to create the final journaled " #~ "file system. For example:" #~ msgstr "" #~ "Когда файловая система журналируется, некоторая часть дискового " #~ "пространства требуется для хранения самого журнала. Дисковое " #~ "пространство, содержащее данные, называется __поставщиком данных (data " #~ "provider)__, а часть пространства, содержащая журнал, называется " #~ "__поставщиком журнала (journal provider)__. Поставщики данных и журнала " #~ "должны быть на разных разделах, если журналирование достраивается к " #~ "содержащему данные разделу. А если журналирование включается для нового " #~ "раздела, у вас есть возможность использовать один поставщик для данных и " #~ "журнала. В любом из двух вышеупомянутых случаев команда `gjournal` " #~ "задействует поставщики и создаст конечную журналируемую файловую систему. " #~ "Например:" #~ msgid "" #~ "You wish to journal your [.filename]#/usr# file system, stored in [." #~ "filename]#/dev/ad0s1f# (which already contains data)." #~ msgstr "" #~ "Вы намереваетесь журналировать файловую систему [.filename]#/usr#, " #~ "размещенную на [.filename]#/dev/ad0s1f#, файловая система уже содержит " #~ "данные." #~ msgid "" #~ "You reserved some free disk space in a partition in [.filename]#/dev/" #~ "ad0s1g#." #~ msgstr "" #~ "Вы зарезервировали часть дискового пространства на разделе [.filename]#/" #~ "dev/ad0s1g#." #~ msgid "" #~ "The amount of disk space you need to reserve for the journal provider " #~ "depends on the usage load of the file system and not on the size of the " #~ "data provider. For example on a typical office desktop, a 1 GB journal " #~ "provider for the [.filename]#/usr# file system will suffice, while a " #~ "machine that deals with heavy disk I/O (i.e. video editing) may need " #~ "more. A kernel panic will occur if the journal space is exhausted before " #~ "it has a chance to be committed." #~ msgstr "" #~ "Размер дискового пространства, отводимого под поставщик журнала, зависит " #~ "от нагруженности файловой системы, а не от размера самого поставщика " #~ "данных. Например, для типичного настольного компьютера достаточно отвести " #~ "1 Гб под поставщик журнала для файловой системы [.filename]#/usr#, в то " #~ "время как компьютеру, имеющему интенсивный дисковый ввод/вывод (например, " #~ "редактирование видео) может потребоваться больше. Если свободное место на " #~ "поставщике журнала заканчивается раньше, чем происходит сброс журнала на " #~ "диск, - вы получите панику ядра." #~ msgid "" #~ "The journal sizes suggested here, are highly unlikely to cause problems " #~ "in typical desktop use (such as web browsing, word processing and " #~ "playback of media files). If your workload includes intense disk " #~ "activity, use the following rule for maximum reliability: Your RAM size " #~ "should fit in 30% of the journal provider's space. For example, if your " #~ "system has 1 GB RAM, create an approximately 3.3 GB journal provider. " #~ "(Multiply your RAM size with 3.3 to obtain the size of the journal)." #~ msgstr "" #~ "Очень маловероятно то, что размеры журнала, предложенные здесь, станут " #~ "причиной проблем с обычным настольным компьютером (на котором вы " #~ "просматриваете веб-страницы, обрабатываете текст или проигрываете " #~ "мультимедийные файлы). Если работа вашего компьютера подразумевает " #~ "интенсивную дисковую активность, то для обеспечения стабильности следует " #~ "придерживаться следующего правила: размер ОЗУ должен уместиться в 30% " #~ "размера, отведенного под журнал. Например, если в вашем компьютере " #~ "установлен 1 Гб ОЗУ, создайте под поставщик журнала раздел размером около " #~ "3.3 Гб. (Умножьте размер ОЗУ в 3.3 раза, чтоб получить размер журнала)." #~ msgid "" #~ "A typical desktop machine usually has one hard disk that stores both the " #~ "OS and user data. Arguably, the default partitioning scheme selected by " #~ "sysinstall is more or less suitable: A desktop machine does not need a " #~ "large [.filename]#/var# partition, while [.filename]#/usr# is allocated " #~ "the bulk of the disk space, since user data and a lot of packages are " #~ "installed into its subdirectories." #~ msgstr "" #~ "Типичный настольный компьютер обычно имеет один жёсткий диск, на котором " #~ "хранится как операционная система, так и пользовательские данные. " #~ "Вероятно, что схема разбития винчестера (по умолчанию), выбранная в меню " #~ "Sysinstall, является более или менее подходящей: настольному компьютеру " #~ "не требуется большой раздел [.filename]#/var#, в то время, как для " #~ "раздела [.filename]#/usr# выделяется значительный объём дискового " #~ "пространства, ввиду того, что пользовательские данные и множество пакетов " #~ "инсталлируются в подкаталоги [.filename]#/usr#." #~ msgid "" #~ "The default partitioning (the one obtained by pressing kbd:[A] at the " #~ "FreeBSD partition editor, called Disklabel) does not leave any " #~ "unallocated space. Each partition that will be journaled, requires " #~ "another partition for the journal. Since the [.filename]#/usr# partition " #~ "is the largest, it makes sense to shrink this partition slightly, to " #~ "obtain the space required for journaling." #~ msgstr "" #~ "Разбиение по умолчанию (получаемое при нажатии kbd:[A] в редакторе " #~ "разделов FreeBSD, называемом Disklabel) не оставляет свободного места. " #~ "Каждый подлежащий журналированию раздел требует отдельного раздела для " #~ "журнала. Ввиду того, что раздел [.filename]#/usr# - наибольший, есть " #~ "смысл немного уменьшить его размер, чтобы получить пространство, " #~ "необходимое для журнала." #~ msgid "" #~ "In our example, an 80 GB disk is used. The following screenshot shows " #~ "the default partitions created by Disklabel during installation:" #~ msgstr "" #~ "В нашем примере используется жёсткий диск размером 80 Гб. Следующий " #~ "скриншот показывает результаты разбиения по умолчанию, выполненного при " #~ "помощи Disklabel в процессе установки операционной системы:" #, no-wrap #~ msgid "disklabel1.png" #~ msgstr "disklabel1.png" #~ msgid "" #~ "If this is more or less what you need, it is very easy to adjust for " #~ "journaling. Simply use the arrow keys to move the highlight to the [." #~ "filename]#/usr# partition and press kbd:[D] to delete it." #~ msgstr "" #~ "Если это разбиение более или менее вас устраивает, то его легко " #~ "модифицировать для журналирования. Используйте клавиши со стрелками для " #~ "того, чтобы выделить раздел, отведенный под [.filename]#/usr#, потом " #~ "нажмите kbd:[D] чтобы удалить его." #~ msgid "" #~ "Now, move the highlight to the disk name at the top of the screen and " #~ "press kbd:[C] to create a new partition for [.filename]#/usr#. This new " #~ "partition should be smaller by 1 GB (if you intend to journal [." #~ "filename]#/usr# only), or 2 GB (if you intend to journal both [." #~ "filename]#/usr# and [.filename]#/var#). From the pop-up that appears, " #~ "opt to create a file system, and type [.filename]#/usr# as the mount " #~ "point." #~ msgstr "" #~ "Теперь переведите подсвечивание к имени диска, находящемуся вверху " #~ "экрана, и нажмите kbd:[C] - создайте новый раздел [.filename]#/usr#. " #~ "Новый раздел должен быть меньше на 1 Гб (если вы собираетесь " #~ "журналировать только [.filename]#/usr#) или на 2 Гб (если журналированию " #~ "подлежат как [.filename]#/usr#, так и [.filename]#/var#). Во всплывающем " #~ "окне выберите \"создать файловую систему\" и укажите [.filename]#/usr# " #~ "точкой монтирования." #~ msgid "" #~ "Should you journal the [.filename]#/var# partition? Normally, journaling " #~ "makes sense on quite large partitions. You may decide not to journal [." #~ "filename]#/var#, although doing so on a typical desktop will cause no " #~ "harm. If the file system is lightly used (quite probable for a desktop) " #~ "you may wish to allocate less disk space for its journal." #~ msgstr "" #~ "Следует ли журналировать [.filename]#/var# раздел? Обычно есть смысл " #~ "журналировать большие разделы. Вы можете решить не журналировать [." #~ "filename]#/var#, однако журналирование на обычном настольном компьютере " #~ "не причинит вреда. Если файловая система не нагружена (что типично для " #~ "настольной системы), то можно выделить меньше дискового пространства под " #~ "журнал." #~ msgid "" #~ "In our example, we journal both [.filename]#/usr# and [.filename]#/var#. " #~ "You may of course adjust the procedure to your own needs." #~ msgstr "" #~ "В этом примере подразумевается журналирование двух файловых систем: [." #~ "filename]#/usr# и [.filename]#/var#. Естественно, вы можете " #~ "подкорректировать процедуру под свои задачи." #~ msgid "" #~ "To keep things as easy going as possible, we are going to use sysinstall " #~ "to create the partitions required for journaling. However, during " #~ "installation, sysinstall insists on asking a mount point for each " #~ "partition you create. At this point, you do not have any mount points " #~ "for the partitions that will hold the journals, and in reality you __do " #~ "not even need them__. These are not partitions that we are ever going to " #~ "mount somewhere." #~ msgstr "" #~ "Чтобы не усложнять описываемую методику, для создания разделов, " #~ "необходимых для размещения журналов, мы будем использовать утилиту " #~ "Sysinstall. Однако, во время установки утилита Sysinstall требует " #~ "указания точек монтирования для каждого созданного вами раздела. Но " #~ "разделы, содержащие журналы, вам никогда и никуда монтировать не придется." #~ msgid "" #~ "To avoid these problems with sysinstall, we are going to create the " #~ "journal partitions as swap space. Swap is never mounted, and sysinstall " #~ "has no problem creating as many swap partitions as needed. After the " #~ "first reboot, [.filename]#/etc/fstab# will have to be edited, and the " #~ "extra swap space entries removed." #~ msgstr "" #~ "Чтобы избежать вопросов о точках монтирования, мы создадим разделы под " #~ "журналы и установим их тип в swap. Раздел, предназначенный для свопа, " #~ "никогда и никуда не монтируется, плюс к тому, утилита Sysinstall " #~ "позволяет создавать столько разделов под своп, сколько необходимо. После " #~ "первой перезагрузки необходимо подредактировать файл [.filename]#/etc/" #~ "fstab#, удалив в нём лишние записи о своп-разделах." #~ msgid "" #~ "To create the swap, again use the arrow keys to move the highlight to the " #~ "top of Disklabel screen, so that the disk name itself is highlighted. " #~ "Then press kbd:[N], enter the desired size (_1024M_), and select \"swap " #~ "space\" from the pop-up menu that appears. Repeat for every journal you " #~ "wish to create. In our example, we create two partitions to provide for " #~ "the journals of [.filename]#/usr# and [.filename]#/var#. The final " #~ "result is shown in the following screenshot:" #~ msgstr "" #~ "Для создания своп-раздела, используя клавиши со стрелками, перемещайте " #~ "подсвечивание к верхней части экрана в утилите Disklabel так, чтобы стало " #~ "подсвеченным имя диска. Потом, нажмите kbd:[N], введите необходимый " #~ "размер раздела (_1024M_), а после - выберите во всплывшем окне \"swap " #~ "space\". Повторите эти шаги для всех оставшихся журналов. В этом примере " #~ "мы создаем два раздела, на которых будут размещаться журналы для [." #~ "filename]#/usr# и [.filename]#/var#. Конечный результат показан на " #~ "следующем скриншоте:" #, no-wrap #~ msgid "disklabel2.png" #~ msgstr "disklabel2.png" #~ msgid "" #~ "When you have completed creating the partitions, we suggest you write " #~ "down the partition names, and mount points, so you can easily refer to " #~ "this information during the configuration phase. This will help " #~ "alleviate mistakes that may damage your installation. The following " #~ "table shows our notes for the sample configuration:" #~ msgstr "" #~ "По завершении создания разделов мы рекомендуем вам записать на бумагу " #~ "названия разделов и их точек монтирования: с этой информацией вы будете " #~ "сверяться во время конфигурирования. Это также поможет уменьшить " #~ "количество ошибок, приводящих к повреждению установки. Следующая табличка " #~ "отображает наши заметки, сделанные для данного примера:" #, no-wrap #~ msgid "Mount Point" #~ msgstr "Точка монтирования" #, no-wrap #~ msgid "ad0s1d" #~ msgstr "ad0s1d" #, no-wrap #~ msgid "ad0s1h" #~ msgstr "ad0s1h" #, no-wrap #~ msgid "ad0s1f" #~ msgstr "ad0s1f" #, no-wrap #~ msgid "ad0s1g" #~ msgstr "ad0s1g" #~ msgid "" #~ "Continue the installation as you would normally do. We would however " #~ "suggest you postpone installation of third party software (packages) " #~ "until you have completely setup journaling." #~ msgstr "" #~ "Дальше продолжайте обычную установку. Однако, мы рекомендуем вам отложить " #~ "инсталляцию приложений сторонних разработчиков (пакетов) до полной " #~ "настройки журналирования." #, no-wrap #~ msgid "Booting for the first time" #~ msgstr "Первая загрузка" #~ msgid "" #~ "Your system will come up normally, but you will need to edit [.filename]#/" #~ "etc/fstab# and remove the extra swap partitions you created for the " #~ "journals. Normally, the swap partition you will actually use is the one " #~ "with the \"b\" suffix (i.e. ad0s1b in our example). Remove all other " #~ "swap space entries and reboot so that FreeBSD will stop using them." #~ msgstr "" #~ "Ваша система загрузится нормально, однако вам необходимо будет " #~ "подредактировать [.filename]#/etc/fstab# и удалить те лишние своп-" #~ "разделы, которые вы создавали под журналы. Как правило, в названии файла " #~ "устройства, созданного автоматически утилитой Sysinstall, присутствует " #~ "суффикс \"b\" (в нашем примере это ad0s1b). Удалите другие записи о своп-" #~ "разделах и перезагрузите компьютер, после чего FreeBSD перестанет их " #~ "использовать." #~ msgid "" #~ "Having prepared all the required partitions, it is quite easy to " #~ "configure journaling. We will need to switch to single user mode, so " #~ "login as `root` and type:" #~ msgstr "" #~ "Подготовив необходимые разделы, перейдем к конфигурированию " #~ "журналирования. Нам будет необходимо загрузиться в однопользовательском " #~ "режиме, для этого залогинимся пользователем `root` и напечатаем:" #~ msgid "Load the module required for journaling:" #~ msgstr "Загрузите модуль ядра, необходимый для журналирования:" #~ msgid "" #~ "Now, use your notes to determine which partition will be used for each " #~ "journal. In our example, [.filename]#/usr# is [.filename]#ad0s1f# and " #~ "its journal will be [.filename]#ad0s1g#, while [.filename]#/var# is [." #~ "filename]#ad0s1d# and will be journaled to [.filename]#ad0s1h#. The " #~ "following commands are required:" #~ msgstr "" #~ "На данном этапе сверьтесь со своими записями и определите, какие разделы " #~ "будут использоваться под какой журнал. В нашем примере [.filename]#/usr# " #~ "располагается на [.filename]#ad0s1f#, а его журнал будет располагаться на " #~ "[.filename]#ad0s1g#, и, по аналогии, для [.filename]#/var#: файловая " #~ "система располагается на [.filename]#ad0s1d#, а её журнал - на [." #~ "filename]#ad0s1h#. Наберите следующие команды:" #~ msgid "" #~ "If the last sector of either partition is used, `gjournal` will return an " #~ "error. You will have to run the command using the `-f` flag to force an " #~ "overwrite, i.e.:" #~ msgstr "" #~ "Если последний сектор любого из двух разделов (поставщиков данных) " #~ "используется, команда `gjournal` возвратит ошибку. Вам необходимо будет " #~ "использовать флаг `-F` для принудительной перезаписи, например:" #~ msgid "" #~ "Since this is a new installation, it is highly unlikely that anything " #~ "will be actually overwritten." #~ msgstr "" #~ "Так как это - новая установка, очень маловероятен факт, что что-нибудь " #~ "будет действительно переписано." #~ msgid "" #~ "At this point, two new devices are created, namely [.filename]#ad0s1d." #~ "journal# and [.filename]#ad0s1f.journal#. These represent the [." #~ "filename]#/var# and [.filename]#/usr# partitions we have to mount. " #~ "Before mounting, we must however set the journal flag on them and clear " #~ "the Soft Updates flag:" #~ msgstr "" #~ "На данном этапе созданы два устройства: [.filename]#ad0s1d.journal# и [." #~ "filename]#ad0s1f.journal#. Они представляют [.filename]#/var# и [." #~ "filename]#/usr# соответственно. Перед монтированием, нам необходимо " #~ "установить флаг журналирования и снять флаг механизма Soft Updates:" #, no-wrap #~ msgid "" #~ "# tunefs -J enable -n disable ad0s1d.journal\n" #~ "tunefs: gjournal set\n" #~ "tunefs: soft updates cleared\n" #~ msgstr "" #~ "# tunefs -J enable -n disable ad0s1d.journal\n" #~ "tunefs: gjournal set\n" #~ "tunefs: soft updates cleared\n" #, no-wrap #~ msgid "" #~ "# tunefs -J enable -n disable ad0s1f.journal\n" #~ "tunefs: gjournal set\n" #~ "tunefs: soft updates cleared\n" #~ msgstr "" #~ "# tunefs -J enable -n disable ad0s1f.journal\n" #~ "tunefs: gjournal set\n" #~ "tunefs: soft updates cleared\n" #, no-wrap #~ msgid "" #~ "ad0: 76293MB XEC XE800JD-00HBC0 08.02D08 at ata0-master SATA150\n" #~ "GEOM_JOURNAL: Journal 2948326772: ad0s1g contains journal.\n" #~ "GEOM_JOURNAL: Journal 3193218002: ad0s1h contains journal.\n" #~ "GEOM_JOURNAL: Journal 3193218002: ad0s1d contains data.\n" #~ "GEOM_JOURNAL: Journal ad0s1d clean.\n" #~ "GEOM_JOURNAL: Journal 2948326772: ad0s1f contains data.\n" #~ "GEOM_JOURNAL: Journal ad0s1f clean.\n" #~ msgstr "" #~ "ad0: 76293MB XEC XE800JD-00HBC0 08.02D08 at ata0-master SATA150\n" #~ "GEOM_JOURNAL: Journal 2948326772: ad0s1g contains journal.\n" #~ "GEOM_JOURNAL: Journal 3193218002: ad0s1h contains journal.\n" #~ "GEOM_JOURNAL: Journal 3193218002: ad0s1d contains data.\n" #~ "GEOM_JOURNAL: Journal ad0s1d clean.\n" #~ "GEOM_JOURNAL: Journal 2948326772: ad0s1f contains data.\n" #~ "GEOM_JOURNAL: Journal ad0s1f clean.\n" #~ msgid "" #~ "The journal probably fills up before it has a chance to get committed " #~ "(flushed) to disk. Keep in mind the size of the journal depends on the " #~ "usage load, and not the size of the data provider. If your disk activity " #~ "is high, you need a larger partition for the journal. See the note in " #~ "the crossref:gjournal-desktop[understanding-journaling, Understanding " #~ "Journaling in FreeBSD] section." #~ msgstr "" #~ "Вероятно, что журнал заполняется раньше, чем происходит сброс его на " #~ "диск. Помните, размер журнала зависит от загруженности диска, а не от " #~ "размера поставщика данных. Если загрузка диска высокая, вам потребуется " #~ "раздел большего размера для журнала. См. замечания в разделе crossref:" #~ "gjournal-desktop[understanding-journaling, Understanding Journaling in " #~ "FreeBSD]." #, no-wrap #~ msgid "" #~ "# tunefs -J disable -n enable ad0s1f\n" #~ "tunefs: gjournal cleared\n" #~ "tunefs: soft updates set\n" #~ msgstr "" #~ "# tunefs -J disable -n enable ad0s1f\n" #~ "tunefs: gjournal cleared\n" #~ "tunefs: soft updates set\n"