MFen:
1.214 -> 1.215 config/chapter.sgml 1.63 -> 1.64 desktop/chapter.sgml 1.241 -> 1.247 disks/chapter.sgml Whitespace cleanups. Obtained from: The FreeBSD Russian Documentation Project
This commit is contained in:
parent
5459838f71
commit
d3bf51fc7b
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=27106
3 changed files with 418 additions and 93 deletions
|
@ -2,9 +2,9 @@
|
|||
The FreeBSD Documentation Project
|
||||
|
||||
$FreeBSD$
|
||||
$FreeBSDru: frdp/doc/ru_RU.KOI8-R/books/handbook/config/chapter.sgml,v 1.41 2006/01/07 14:09:14 gad Exp $
|
||||
$FreeBSDru: frdp/doc/ru_RU.KOI8-R/books/handbook/config/chapter.sgml,v 1.43 2006/02/13 11:15:57 marck Exp $
|
||||
|
||||
Original revision: 1.214
|
||||
Original revision: 1.215
|
||||
-->
|
||||
|
||||
<chapter id="config-tuning">
|
||||
|
@ -357,7 +357,7 @@
|
|||
однако важнее всего учитывать, что их начальную конфигурацию
|
||||
можно задать с помощью простых стартовых скриптов.</para>
|
||||
|
||||
<para>До появления rcNG приложения должны были помещать
|
||||
<para>До появления <filename>rc.d</filename> приложения должны были помещать
|
||||
простой стартовый скрипт в
|
||||
каталог <filename class="directory">/usr/local/etc/rc.d</filename>,
|
||||
который затем читался скриптами инициализации системы. Эти скрипты
|
||||
|
@ -367,7 +367,7 @@
|
|||
старый стиль конфигурирования в новую систему, остаётся фактом,
|
||||
что для некоторых утилит сторонних производителей по-прежнему
|
||||
необходим скрипт, помещённый в указанный выше каталог. Незначительные
|
||||
различия в скриптах зависят от того, используется ли rcNG. До
|
||||
различия в скриптах зависят от того, используется ли <filename>rc.d</filename>. До
|
||||
версии &os; 5.1 использовались скрипты в старом стиле,
|
||||
и почти во всех случаях скрипты в новом стиле должны подойти так же
|
||||
хорошо.</para>
|
||||
|
@ -417,16 +417,16 @@ exit 0</programlisting>
|
|||
подобную конфигурацию. Поищите в результатах, выдаваемых после
|
||||
установки более детальную информацию по конкретному приложению.
|
||||
Некоторые программы сторонних производителей будут включать стартовые
|
||||
скрипты, позволяющие использовать приложение с rcNG; но это мы еще
|
||||
скрипты, позволяющие использовать приложение с <filename>rc.d</filename>; но это мы еще
|
||||
обсудим в следующем разделе.</para>
|
||||
|
||||
<sect2>
|
||||
<title>Расширенное конфигурирование приложения</title>
|
||||
|
||||
<para>Теперь, когда &os; включает rcNG, конфигурирование запуска
|
||||
<para>Теперь, когда &os; включает <filename>rc.d</filename>, конфигурирование запуска
|
||||
приложений стало более оптимальным; фактически, оно стало более
|
||||
тщательным. С помощью ключевых слов, рассмотренных в разделе
|
||||
<link linkend="configtuning-rcNG">rcNG</link>, приложения теперь
|
||||
<link linkend="configtuning-rcd">rc.d</link>, приложения теперь
|
||||
можно настроить для запуска после других заданных сервисов,
|
||||
например, <acronym>DNS</acronym>; можно разрешить передачу
|
||||
дополнительных флагов через <filename>rc.conf</filename> вместо
|
||||
|
@ -437,8 +437,7 @@ exit 0</programlisting>
|
|||
#
|
||||
# PROVIDE: utility
|
||||
# REQUIRE: DAEMON
|
||||
# BEFORE: LOGIN
|
||||
# KEYWORD: FreeBSD shutdown
|
||||
# KEYWORD: shutdown
|
||||
|
||||
#
|
||||
# НЕ МЕНЯЙТЕ ЗДЕСЬ ЭТИ СТАНДАРТНЫЕ ЗНАЧЕНИЯ
|
||||
|
@ -465,8 +464,7 @@ start_cmd="echo \"Starting ${name}.\"; /usr/bin/nice -5 ${command} ${utility_fla
|
|||
run_rc_command "$1"</programlisting>
|
||||
|
||||
<para>Этот скрипт будет гарантировать, что указанное приложение
|
||||
<application>utility</application> будет запущено перед сервисом
|
||||
<literal>login</literal>, но после сервиса
|
||||
<application>utility</application> будет запущено после сервиса
|
||||
<literal>daemon</literal>. Он также предоставляет метод
|
||||
для создания и отслеживания файла идентификатора процесса,
|
||||
<acronym>PID</acronym>.</para>
|
||||
|
@ -480,11 +478,7 @@ run_rc_command "$1"</programlisting>
|
|||
командной строки, включать стандартные функции из файла
|
||||
<filename>/etc/rc.subr</filename>, обеспечивает совместимость
|
||||
с утилитой &man.rcorder.8; и упрощает конфигурирование с помощью
|
||||
файла <filename>rc.conf</filename>. По сути, этот сценарий
|
||||
можно даже поместить в каталог
|
||||
<filename class="directory">/etc/rc.d</filename>. Это, однако,
|
||||
потенциально может сбить с толку утилиту &man.mergemaster.8;
|
||||
при обновлениях программного обеспечения.</para>
|
||||
файла <filename>rc.conf</filename>.</para>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
|
@ -694,7 +688,7 @@ HOME=/var/log
|
|||
</sect2>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="configtuning-rcNG">
|
||||
<sect1 id="configtuning-rcd">
|
||||
<sect1info>
|
||||
<authorgroup>
|
||||
<author>
|
||||
|
@ -720,7 +714,7 @@ HOME=/var/log
|
|||
<screen>&prompt.root; <userinput>/etc/rc.d/sshd restart</userinput></screen>
|
||||
|
||||
<para>Эта процедура похожа для других сервисов. Конечно, сервисы
|
||||
обычно запускаются автоматически, как указано в &man.rc.conf.5;.
|
||||
обычно запускаются автоматически при загрузке системы, как указано в &man.rc.conf.5;.
|
||||
Например, включение даемона Network Address Translation
|
||||
при запуске выполняется простым добавлением следующей строки
|
||||
в <filename>/etc/rc.conf</filename>:</para>
|
||||
|
@ -774,11 +768,12 @@ $sshd_enable=YES</screen>
|
|||
<screen>&prompt.root; <userinput>/etc/rc.d/sshd status</userinput>
|
||||
sshd is running as pid 433.</screen>
|
||||
|
||||
<para>Возможна также перегрузка (<option>reload</option>) сервиса.
|
||||
<para>В некоторых случаях возможна также перегрузка (<option>reload</option>) сервиса.
|
||||
Скрипт, запущенный с этим параметром, попытается отправить сервису
|
||||
сигнал, вызывающий перезагрузку файлов настройки. В большинстве
|
||||
случаев это означает отправку сервису сигнала
|
||||
<literal>SIGHUP</literal>.</para>
|
||||
<literal>SIGHUP</literal>. Следует помнить, что эту функцию
|
||||
поддерживают не все сервисы.</para>
|
||||
|
||||
<para>Система <filename>rc.d</filename> используется не только для
|
||||
сетевых серверов, она отвечает также за большую часть инициализации
|
||||
|
@ -820,11 +815,6 @@ sshd is running as pid 433.</screen>
|
|||
файл будет запущен <emphasis>до</emphasis> указанных
|
||||
сервисов.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>KEYWORD: &os; или NetBSD. Используется для функций,
|
||||
зависящих от версии *BSD.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>Используя этот метод, администратор может легко контролировать
|
||||
|
@ -2100,7 +2090,7 @@ device_probe_and_attach: cbb0 attach returned 12</screen>
|
|||
<quote>автоматически клонирующим</quote>; вы просто используйте
|
||||
<literal>device pty</literal> в вашем конфигурационном файле.</para>
|
||||
</note>
|
||||
|
||||
|
||||
</sect3>
|
||||
|
||||
<sect3>
|
||||
|
|
|
@ -2,9 +2,9 @@
|
|||
The FreeBSD Russian Documentation Project
|
||||
|
||||
$FreeBSD$
|
||||
$FreeBSDru: frdp/doc/ru_RU.KOI8-R/books/handbook/desktop/chapter.sgml,v 1.18 2006/01/30 18:28:28 gad Exp $
|
||||
$FreeBSDru: frdp/doc/ru_RU.KOI8-R/books/handbook/desktop/chapter.sgml,v 1.19 2006/02/13 11:02:41 marck Exp $
|
||||
|
||||
Original revision: 1.63
|
||||
Original revision: 1.64
|
||||
-->
|
||||
|
||||
<chapter id="desktop">
|
||||
|
@ -188,9 +188,8 @@
|
|||
<primary><application>Mozilla</application></primary>
|
||||
</indexterm>
|
||||
|
||||
<para><application>Mozilla</application> это возможно наиболее
|
||||
подходящий браузер для десктопа FreeBSD. Он современный,
|
||||
стабильный и полностью портирован на FreeBSD. Его достоинство
|
||||
<para><application>Mozilla</application> это наиболее современный и
|
||||
стабильный браузер; он полностью портирован на FreeBSD. Его достоинство
|
||||
в высокой совместимости со стандартами HTML. В нем есть
|
||||
почтовая и новостная программы. В нем даже найдется редактор HTML,
|
||||
если вам потребуется самостоятельно написать несколько веб-страничек.
|
||||
|
@ -331,9 +330,12 @@
|
|||
</indexterm>
|
||||
|
||||
<para><application>Opera</application> это очень быстрый,
|
||||
полноценный и совместимый со стандартами браузер. Он поставляется
|
||||
в двух вариантах: <quote>родная</quote> для FreeBSD версия и версия,
|
||||
запускаемая в режиме эмуляции Linux.</para>
|
||||
полноценный и совместимый со стандартами браузер. Он также идет в
|
||||
комплекте с почтовой и новостной программами, клиентом IRC, модулем
|
||||
чтения RSS/Atom и другими. Несмотря на все это, браузер
|
||||
<application>Opera</application> относительно легок и быстр. Он
|
||||
поставляется в двух вариантах: <quote>родная</quote> для FreeBSD версия
|
||||
и версия, запускаемая в режиме эмуляции Linux.</para>
|
||||
|
||||
<para>Для работы в сети с помощью FreeBSD версии
|
||||
<application>Opera</application> установите
|
||||
|
|
|
@ -2,9 +2,9 @@
|
|||
The FreeBSD Russian Documentation Project
|
||||
|
||||
$FreeBSD$
|
||||
$FreeBSDru: frdp/doc/ru_RU.KOI8-R/books/handbook/disks/chapter.sgml,v 1.76 2005/08/16 10:55:09 marck Exp $
|
||||
$FreeBSDru: frdp/doc/ru_RU.KOI8-R/books/handbook/disks/chapter.sgml,v 1.78 2006/02/13 11:15:58 marck Exp $
|
||||
|
||||
Original revision: 1.241
|
||||
Original revision: 1.247
|
||||
-->
|
||||
|
||||
<chapter id="disks">
|
||||
|
@ -286,8 +286,8 @@
|
|||
<title>Использование <application>Sysinstall</application></title>
|
||||
|
||||
<para>Вы можете использовать простые меню утилиты
|
||||
<command>sysinstall</command> (<command>/stand/sysinstall</command>
|
||||
во &os; версий, более старых, чем 5.2) для разбиения на разделы и
|
||||
<command>sysinstall</command> (<command>/stand/sysinstall</command>
|
||||
во &os; версий, более старых, чем 5.2) для разбиения на разделы и
|
||||
разметки нового диска. Войдите как пользователь
|
||||
<username>root</username> или воспользуйтесь командой
|
||||
<command>su</command>. Запустите команду
|
||||
|
@ -309,8 +309,8 @@
|
|||
команды <userinput>W</userinput>. А теперь выйдите из редактора
|
||||
FDISK, нажав <userinput>q</userinput>. В этот момент вам будет
|
||||
задан вопрос о <quote>Master Boot Record</quote> (главной
|
||||
загрузочной записи). Так как вы добавляете диск к уже работающей
|
||||
системе, выберите <literal>None</literal>.</para>
|
||||
загрузочной записи). Так как вы добавляете диск к уже работающей
|
||||
системе, выберите <literal>None</literal>.</para>
|
||||
</step>
|
||||
|
||||
<step>
|
||||
|
@ -807,10 +807,11 @@ ar0: ATA RAID1 subdisks: ad4 ad6 status: DEGRADED</screen>
|
|||
|
||||
<procedure>
|
||||
<step>
|
||||
<para>Сначала вам нужно отключить диск от массива, чтобы его можно
|
||||
было без последствий извлечь:</para>
|
||||
<para>Сначала вам нужно отключить канал контроллера ATA, содержащий
|
||||
отказавший диск, чтобы его можно было без последствий
|
||||
извлечь:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>atacontrol detach 3</userinput></screen>
|
||||
<screen>&prompt.root; <userinput>atacontrol detach ata3</userinput></screen>
|
||||
</step>
|
||||
|
||||
<step>
|
||||
|
@ -818,13 +819,19 @@ ar0: ATA RAID1 subdisks: ad4 ad6 status: DEGRADED</screen>
|
|||
</step>
|
||||
|
||||
<step>
|
||||
<para>Повторно подключите диск в качестве резервного:</para>
|
||||
<para>Повторно подключите канал дискового контроллера:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>atacontrol attach 3</userinput>
|
||||
<screen>&prompt.root; <userinput>atacontrol attach ata3</userinput>
|
||||
Master: ad6 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5
|
||||
Slave: no device present</screen>
|
||||
</step>
|
||||
|
||||
<step>
|
||||
<para>Добавьте новый диск к массиву в качестве резервного:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>atacontrol addspare ar0 ad6</userinput></screen>
|
||||
</step>
|
||||
|
||||
<step>
|
||||
<para>Перестройте массив:</para>
|
||||
|
||||
|
@ -832,11 +839,7 @@ Slave: no device present</screen>
|
|||
</step>
|
||||
|
||||
<step>
|
||||
<para>Команда перестроения будет работать, пока не закончит. Однако
|
||||
имеется возможность открыть другой терминал (комбинацией клавиш
|
||||
<keycombo action="simul"><keycap>Alt</keycap>
|
||||
<keycap>F<replaceable>n</replaceable></keycap></keycombo>) и
|
||||
проверить состояние дел при помощи следующей команды:</para>
|
||||
<para>Проверить состояние дел можно при помощи следующей команды:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>dmesg | tail -10</userinput>
|
||||
[выдача удалена]
|
||||
|
@ -1323,17 +1326,19 @@ scsibus1:
|
|||
<filename>/dev/acd0t03</filename> и так далее.</para>
|
||||
|
||||
<para>Удостоверьтесь, что соответствующий файл имеется в каталоге
|
||||
<filename>/dev</filename>.</para>
|
||||
<filename>/dev</filename>. При его отсутствии следует
|
||||
принудительно перечитать оглавление диска:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>dd if=/dev/acd0 of=/dev/null count=1</userinput></screen>
|
||||
|
||||
<note><para>В версиях &os; 4.X номера треков не предваряются нулем.
|
||||
В случае отсутствия нужных файлов устройств, создайте их при
|
||||
помощи команды <command>MAKEDEV</command>:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>cd /dev</userinput>
|
||||
&prompt.root; <userinput>sh MAKEDEV acd0t99</userinput></screen>
|
||||
|
||||
<note>
|
||||
<para>Во FreeBSD 5.0 &man.devfs.5; будет автоматически создавать
|
||||
объекты в каталоге <filename>/dev</filename> и управлять ими, так
|
||||
что использовать <command>MAKEDEV</command> не
|
||||
обязательно.</para>
|
||||
</note>
|
||||
|
||||
</step>
|
||||
|
||||
<step>
|
||||
|
@ -1973,7 +1978,7 @@ cd0: Attempt to query device size failed: NOT READY, Medium not present - tray c
|
|||
<para>Иногда записи в каталоге <filename>/dev</filename> необходимо
|
||||
создавать повторно. Для этого выполните следующее:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>cd /dev && ./MAKEDEV "fd*"</userinput></screen>
|
||||
<screen>&prompt.root; <userinput>cd /dev && ./MAKEDEV "fd*"</userinput></screen>
|
||||
</sect4>
|
||||
|
||||
<sect4>
|
||||
|
@ -2440,6 +2445,102 @@ sa0(ncr1:4:0): Logical unit is in process of becoming ready</screen>
|
|||
</sect2>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="backup-strategies">
|
||||
<sect1info>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<firstname>Lowell</firstname>
|
||||
<surname>Gilbert</surname>
|
||||
<contrib>Первоначально написано</contrib>
|
||||
</author>
|
||||
</authorgroup>
|
||||
<!-- 3 Dec 2005 -->
|
||||
</sect1info>
|
||||
|
||||
<title>Стратегии резервного копирования</title>
|
||||
|
||||
<para>При разработке плана резервного копирования первым делом надо
|
||||
продумать методы защиты от следующих проблем:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>Отказ жесткого диска</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Случайное удаление файлов</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Повреждение содержимого файлов</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Полное уничтожение компьютера (например, при пожаре), при
|
||||
котором погибнут также резервные копии, физически находящиеся
|
||||
рядом.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>Вполне возможно, что для ваших нужд нет единой стратегии, наилучшим
|
||||
образом покрывающей все описанные проблемы; более того, скорее всего,
|
||||
ее и не может быть (разве что для персональных систем, где ценность
|
||||
данных очень низка).</para>
|
||||
|
||||
<para>Вот несколько наиболее распространенных технологий, применяемых
|
||||
для резервного копирования:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>Архивация системы целиком с копированием на какой-либо надежный
|
||||
внешний носитель и размещение его вдалеке от основной системы.
|
||||
При этом вы защищены от всех перечисленных проблемы, однако этот
|
||||
метод требует много времени и неудобен в процессе восстановления.
|
||||
Вы можете хранить резервные копии рядом или даже смонтированными,
|
||||
однако все равно столкнетесь с неудобствами при восстановлении,
|
||||
в особенности для непривилегированных пользователей.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Снэпшоты файловых систем. Помогают только от случайного
|
||||
удаления файлов, но как раз в этом случае
|
||||
<emphasis>очень</emphasis> полезны и эффективны.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Полные копии файловых систем или дисков (например, периодический
|
||||
запуск программы rsync для машины целиком).
|
||||
<!-- XXX А что здесь хотел сказать автор???
|
||||
This is generally most useful in networks with
|
||||
unique requirements. -->
|
||||
Для защиты от отказа жестких дисков этот способ обычно несколько
|
||||
уступает <acronym>RAID</acronym>; для восстановления случайно
|
||||
удаленных файлов может быть сравним по удобству со снэпшотами
|
||||
<acronym>UFS</acronym>, в зависимости от вашей ситуации.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><acronym>RAID</acronym>. Минимизирует или исключает вовсе
|
||||
простои при отказе жестких дисков. При этом средняя частота
|
||||
таких отказов увеличивается (поскольку количество дисков больше),
|
||||
но разбираться с ними становится много спокойнее.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Проверка отпечатков файлов (fingerprints). Для этого весьма
|
||||
полезна утилита &man.mtree.8;. Не являясь собственно технологией
|
||||
резервного копирования, этот метод помогает выяснять, когда вам
|
||||
пока обращаться к резервным копиям. В особенности это важно для
|
||||
"оффлайновых" резервных копий.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>Довольно легко придумать и другие стратегии резервного копирования;
|
||||
многие из них будут композициями уже упомянутых. Наличие специальных
|
||||
требований, как правило, приводит к специализированным же технологиям
|
||||
(например, резервное копирование базы данных, как правило, требует
|
||||
использования методов, специфичных для соответствующей СУБД).
|
||||
Главным остается знание опасностей потери данных, от которых вы хотите
|
||||
себя оградить, и методов защиты от них.</para>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="backup-basics">
|
||||
<title>Основы технологии резервного копирования</title>
|
||||
|
||||
|
@ -2598,9 +2699,9 @@ targetuser@targetmachine.example.com dd of=/mybigfiles/dump-usr-l0.gz</userinput
|
|||
накопитель.</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>for f in <replaceable>directory_list; do</replaceable></userinput>
|
||||
<userinput>find $f >> backup.list</userinput>
|
||||
<userinput>find $f >> backup.list</userinput>
|
||||
<userinput>done</userinput>
|
||||
&prompt.root; <userinput>cpio -v -o --format=newc < backup.list | ssh <replaceable>user</replaceable>@<replaceable>host</replaceable> "cat > <replaceable>backup_device</replaceable>"</userinput></screen>
|
||||
&prompt.root; <userinput>cpio -v -o --format=newc < backup.list | ssh <replaceable>user</replaceable>@<replaceable>host</replaceable> "cat > <replaceable>backup_device</replaceable>"</userinput></screen>
|
||||
|
||||
<para>Где directory_list это список директорий, c которых Вы хотите
|
||||
создать резервные копии,
|
||||
|
@ -2794,7 +2895,7 @@ targetuser@targetmachine.example.com dd of=/mybigfiles/dump-usr-l0.gz</userinput
|
|||
<example>
|
||||
<title>Скрипт для создания загрузочной дискеты</title>
|
||||
|
||||
<programlisting><![ CDATA [#!/bin/sh
|
||||
<programlisting><![ CDATA [#!/bin/sh
|
||||
#
|
||||
# create a restore floppy
|
||||
#
|
||||
|
@ -2840,7 +2941,7 @@ mkdir /mnt/var
|
|||
#
|
||||
if [ ! -x /sys/compile/MINI/kernel ]
|
||||
then
|
||||
cat << EOM
|
||||
cat << EOM
|
||||
The MINI kernel does not exist, please create one.
|
||||
Here is an example config file:
|
||||
#
|
||||
|
@ -2888,14 +2989,14 @@ fi
|
|||
|
||||
cp -f /sys/compile/MINI/kernel /mnt
|
||||
|
||||
gzip -c -best /sbin/init > /mnt/sbin/init
|
||||
gzip -c -best /sbin/fsck > /mnt/sbin/fsck
|
||||
gzip -c -best /sbin/mount > /mnt/sbin/mount
|
||||
gzip -c -best /sbin/halt > /mnt/sbin/halt
|
||||
gzip -c -best /sbin/restore > /mnt/sbin/restore
|
||||
gzip -c -best /sbin/init > /mnt/sbin/init
|
||||
gzip -c -best /sbin/fsck > /mnt/sbin/fsck
|
||||
gzip -c -best /sbin/mount > /mnt/sbin/mount
|
||||
gzip -c -best /sbin/halt > /mnt/sbin/halt
|
||||
gzip -c -best /sbin/restore > /mnt/sbin/restore
|
||||
|
||||
gzip -c -best /bin/sh > /mnt/bin/sh
|
||||
gzip -c -best /bin/sync > /mnt/bin/sync
|
||||
gzip -c -best /bin/sh > /mnt/bin/sh
|
||||
gzip -c -best /bin/sync > /mnt/bin/sync
|
||||
|
||||
cp /root/.profile /mnt/root
|
||||
|
||||
|
@ -2922,18 +3023,18 @@ cd /
|
|||
#
|
||||
# create minimum filesystem table
|
||||
#
|
||||
cat > /mnt/etc/fstab <<EOM
|
||||
cat > /mnt/etc/fstab <<EOM
|
||||
/dev/fd0a / ufs rw 1 1
|
||||
EOM
|
||||
|
||||
#
|
||||
# create minimum passwd file
|
||||
#
|
||||
cat > /mnt/etc/passwd <<EOM
|
||||
cat > /mnt/etc/passwd <<EOM
|
||||
root:*:0:0:Charlie &:/root:/bin/sh
|
||||
EOM
|
||||
|
||||
cat > /mnt/etc/master.passwd <<EOM
|
||||
cat > /mnt/etc/master.passwd <<EOM
|
||||
root::0:0::0:0:Charlie &:/root:/bin/sh
|
||||
EOM
|
||||
|
||||
|
@ -2973,9 +3074,9 @@ echo "The floppy has been unmounted and is now ready."]]></programlisting>
|
|||
floppy</literal>. После вывода приглашения вставьте
|
||||
<filename>fixit.flp</filename>. <command>restore</command> и другие
|
||||
нужные вам программы находятся в каталоге <filename
|
||||
class="directory">/mnt2/rescue</filename> (<filename
|
||||
class="directory">/mnt2/stand</filename> во &os; версий, предшествующих
|
||||
5.2).</para>
|
||||
class="directory">/mnt2/rescue</filename> (<filename
|
||||
class="directory">/mnt2/stand</filename> во &os; версий, предшествующих
|
||||
5.2).</para>
|
||||
|
||||
<para>Восстановите по отдельности каждую файловую систему.</para>
|
||||
|
||||
|
@ -3764,17 +3865,18 @@ rquotad/1 dgram rpc/udp wait root /usr/libexec/rpc.rquotad rpc.rquotad
|
|||
другую машину для копирования и дальнейшего анализа важных данных.</para>
|
||||
|
||||
<para>Вне зависимости от того, как атакующий завладел жёстким диском или
|
||||
выключенным компьютером, технология <application>gbde</application> (GEOM
|
||||
Based Disk Encryption - шифрование диска на уровне GEOM) может защитить
|
||||
выключенным компьютером, технологии <application>gbde</application> (GEOM
|
||||
Based Disk Encryption - шифрование диска на уровне GEOM) и
|
||||
криптографическая подсистема <command>geli</command> &os; могут защитить
|
||||
данные файловой системы компьютера даже против очень заинтересованной
|
||||
атакующей стороны с достаточными ресурсами. В отличие от громоздких
|
||||
систем шифрования, которые шифруют отдельные файлы,
|
||||
<application>gbde</application> шифрует в прозрачном режиме файловую
|
||||
<command>gbde</command> и <command>geli</command> шифруют в прозрачном режиме файловую
|
||||
систему в целом, при этом данные в открытом виде на диск никогда не
|
||||
записываются.</para>
|
||||
|
||||
<sect2>
|
||||
<title>Включение gbde в ядре</title>
|
||||
<title>Шифрование диска при помощи gbde</title>
|
||||
|
||||
<procedure>
|
||||
<step>
|
||||
|
@ -3800,21 +3902,20 @@ rquotad/1 dgram rpc/udp wait root /usr/libexec/rpc.rquotad rpc.rquotad
|
|||
<title>Включите поддержку &man.gbde.4; в конфигурационный
|
||||
файл ядра</title>
|
||||
|
||||
<para>При помощи вашего любимого текстового редактора добавьте
|
||||
<para>Добавьте
|
||||
следующую строку в файл конфигурации вашего ядра:</para>
|
||||
|
||||
<para><literal>options GEOM_BDE</literal></para>
|
||||
|
||||
<para>Выполните конфигурацию, компиляцию и установку нового ядра
|
||||
<para>Перестройте ядро
|
||||
FreeBSD. Этот процесс описан в <xref
|
||||
linkend="kernelconfig">.</para>
|
||||
|
||||
<para>Перезагрузитесь, запустив новое ядро.</para>
|
||||
</step>
|
||||
</procedure>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<sect3>
|
||||
<title>Подготовка зашифрованного жёсткого диска</title>
|
||||
|
||||
<para>В следующем примере предполагается, что в вашу систему вы
|
||||
|
@ -3983,9 +4084,9 @@ for-->FreeBSD: src/sbin/gbde/template.txt,v 1.1 2002/10/20 11:16:13 phk Exp $
|
|||
/dev/ad4s1c.bde 150G 4.1K 138G 0% /private</screen>
|
||||
</step>
|
||||
</procedure>
|
||||
</sect2>
|
||||
</sect3>
|
||||
|
||||
<sect2>
|
||||
<sect3>
|
||||
<title>Монтирование имеющихся зашифрованных файловых систем</title>
|
||||
|
||||
<para>После каждой загрузки для каждой защищённой файловой системы перед
|
||||
|
@ -4000,7 +4101,7 @@ for-->FreeBSD: src/sbin/gbde/template.txt,v 1.1 2002/10/20 11:16:13 phk Exp $
|
|||
<screen>&prompt.root; <userinput>gbde attach /dev/ad4s1c -l /etc/gbde/ad4s1c</userinput></screen>
|
||||
|
||||
<para>Будет выдан запрос на ввод ключевой фразы, выбранной на этапе
|
||||
инициализации зашифрованного раздела gbde.</para>
|
||||
инициализации зашифрованного раздела <application>gbde</application>.</para>
|
||||
</step>
|
||||
|
||||
<step>
|
||||
|
@ -4023,18 +4124,31 @@ for-->FreeBSD: src/sbin/gbde/template.txt,v 1.1 2002/10/20 11:16:13 phk Exp $
|
|||
</step>
|
||||
</procedure>
|
||||
|
||||
<sect3>
|
||||
<sect4>
|
||||
<title>Автоматическое монтирование зашифрованных разделов</title>
|
||||
|
||||
<para>Для автоматического подключения, проверки и монтирования
|
||||
зашифрованного раздела можно создать скрипт, но во соображениям
|
||||
зашифрованного раздела можно создать скрипт, но по соображениям
|
||||
безопасности в этом скрипте пароля для &man.gbde.8; быть не должно.
|
||||
Поэтому рекомендуется запускать такие скрипты вручную, а пароль
|
||||
задавать с консоли или сеанса &man.ssh.1;.</para>
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<para>Начиная с версии &os; 5.2-RELEASE, базовая система содержит
|
||||
скрипт <filename>rc.d</filename> для автоматического монтирования шифрованных разделов.
|
||||
Его аргументы могут быть указаны в файле &man.rc.conf.5;:</para>
|
||||
|
||||
<screen>gbde_autoattach_all="YES"
|
||||
gbde_devices="ad4s1c"</screen>
|
||||
|
||||
<para>При этом ключевая фраза для <application>gbde</application>
|
||||
должна быть введена на этапе загрузки. После введения ключевой
|
||||
фразы зашифрованный раздел будет смонтирован автоматически.
|
||||
Такой подход может быть очень удобным для использования
|
||||
<application>gbde</application> на ноутбуках.</para>
|
||||
</sect4>
|
||||
</sect3>
|
||||
|
||||
<sect3>
|
||||
<title>Криптографическая защита, применяемая в gbde</title>
|
||||
|
||||
<para>&man.gbde.8; шифрует содержимое секторов при помощи 128-битного
|
||||
|
@ -4043,9 +4157,9 @@ for-->FreeBSD: src/sbin/gbde/template.txt,v 1.1 2002/10/20 11:16:13 phk Exp $
|
|||
<application>gbde</application>, включая алгоритм генерации ключей
|
||||
для секторов из ключевой фразы, вводимой пользователем, можно найти
|
||||
на страницах справочной системы о &man.gbde.4;.</para>
|
||||
</sect2>
|
||||
</sect3>
|
||||
|
||||
<sect2>
|
||||
<sect3>
|
||||
<title>Вопросы совместимости</title>
|
||||
|
||||
<para>&man.sysinstall.8; несовместим с устройствами, зашифрованными
|
||||
|
@ -4062,6 +4176,225 @@ for-->FreeBSD: src/sbin/gbde/template.txt,v 1.1 2002/10/20 11:16:13 phk Exp $
|
|||
подсистему &man.geom.4;, то вы не можете использовать тома
|
||||
<application>vinum</application> с
|
||||
<application>gbde</application>.</para>
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<sect2info>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<firstname>Daniel</firstname>
|
||||
<surname>Gerzo</surname>
|
||||
<contrib>Предоставлено </contrib>
|
||||
</author>
|
||||
</authorgroup>
|
||||
<!-- Date of writing: 28 November 2005 -->
|
||||
</sect2info>
|
||||
|
||||
<title>Шифрование дисков при помощи <command>geli</command></title>
|
||||
|
||||
<para>Начиная с версии 6.0 &os; поддерживается новый класс GEOM —
|
||||
<command>geli</command>. В настоящий момент он поддерживается
|
||||
&a.pjd;. Класс <command>Geli</command> отличается от
|
||||
<command>gbde</command>; он предоставляет другой комплекс
|
||||
возможностей и использует иную схему криптования.</para>
|
||||
|
||||
<para>Наиболее значимыми особенностями &man.geli.8; являются:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>Использование инфраструктуры &man.crypto.9;: при наличии
|
||||
аппаратной криптографической поддержки, <command>geli</command>
|
||||
автоматически использует ее.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Поддержка разнообразных криптоалгоритмов (в настоящее время
|
||||
AES, Blowfish и 3DES).</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Поддержка шифрованного корневого раздела. Для загрузки
|
||||
в такой ситуации потребуется ввести ключевую фразу.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Поддержка двух независимых ключей шифрования (например,
|
||||
<quote>основного ключа</quote> и <quote>ключа
|
||||
компании</quote>).</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Высокая скорость работы <command>geli</command> за счет
|
||||
простого криптования сектор-сектор.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Поддержка архивирования основных ключей. При необходимости
|
||||
текущие ключи могут быть уничтожены, а в дальнейшем доступ к
|
||||
данным восстановлен при помощи архивированных ключей.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Поддержка криптования файловых систем случайным одноразовым
|
||||
ключом — например, для разделов подкачки или временных
|
||||
файловых систем.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>Другие возможности класса <command>geli</command> описаны в его
|
||||
странице справочника: &man.geli.8;.</para>
|
||||
|
||||
<para>Несколько следующих страниц будут посвящены описанию процесса
|
||||
конфигурации <command>geli</command> в ядре &os; и создания
|
||||
нового криптографического провайдера <command>geli</command>.
|
||||
В завершение, мы продемонстрируем, как создать шифрованный раздел
|
||||
подкачки при помощи <command>geli</command>.</para>
|
||||
|
||||
<para>Для того чтобы использовать <command>geli</command>, вам
|
||||
потребуется &os; версии 6.0-RELEASE или более поздней. Поскольку
|
||||
необходимо внести изменения в конфигурацию ядра, потребуются также
|
||||
привилегии суперпользователя.</para>
|
||||
|
||||
<procedure>
|
||||
<step>
|
||||
<title>Изменение конфигурацию ядра: включение
|
||||
<command>geli</command></title>
|
||||
|
||||
<para>Добавьте в конфигурационный файл ядра следующие строки:</para>
|
||||
|
||||
<screen>options GEOM_ELI
|
||||
device crypto</screen>
|
||||
|
||||
<para>Перестройте ядро, как описано в разделе <xref
|
||||
linkend="kernelconfig">.</para>
|
||||
|
||||
<para>Помимо этого, поддержка <command>geli</command> может быть
|
||||
активирована модулем ядра на этапе загрузки. Для этого добавьте
|
||||
в файл <filename>/boot/loader.conf</filename> строку:</para>
|
||||
|
||||
<para><literal>geom_eli_load="YES"</literal></para>
|
||||
|
||||
<para>Теперь ядро должно поддерживать &man.geli.8;.</para>
|
||||
</step>
|
||||
|
||||
<step>
|
||||
<title>Генерация главного ключа</title>
|
||||
|
||||
<para>Предлагаемый пример описывает процесс генерации ключевого
|
||||
файла, который послужит частью главного ключа для шифрованного
|
||||
провайдера, монтируемого в каталог <filename
|
||||
role="directory">/private</filename>. При помощи содержимого
|
||||
ключевого файла создается набор случайных данных, которым
|
||||
зашифровывается главный ключ. Кроме того, он будет защищен
|
||||
кодовой фразой. Размер сектора провайдера будет составлять
|
||||
4kB. Наконец, мы обсудим, как присоединиться к провайдеру
|
||||
<command>geli</command>, создать на базе его файловую систему,
|
||||
как ее смонтировать и работать с ней, и, в заключение, как
|
||||
корректно завершить работу.</para>
|
||||
|
||||
<para>Больший чем обычно размер сектора (как в нашем примере, 4 кБ)
|
||||
рекомендуется для увеличения производительности.</para>
|
||||
|
||||
<para>Главный ключ будет защищен кодовой фразой; данные для
|
||||
ключевого файла берутся из <filename>/dev/random</filename>.
|
||||
Размер сектора создаваемого нами шифрованного провайдера
|
||||
<filename>/dev/da2.eli</filename> — 4кБ.</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>dd if=/dev/random of=/root/da2.key bs=64 count=1</userinput>
|
||||
&prompt.root; <userinput>geli init -s 4096 -K /root/da2.key /dev/da2</userinput>
|
||||
Enter new passphrase:
|
||||
Reenter new passphrase:</screen>
|
||||
|
||||
<para>Использование одновременно кодовой фразы и ключевого файла
|
||||
не обязательно: любой из этих методов защиты главного ключа может
|
||||
применяться независимо.</para>
|
||||
|
||||
<para>Если в качестве имени ключевого файла указан <quote>-</quote>,
|
||||
используется стандартный ввод. Это позволяет использовать более
|
||||
одного ключевого файла:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>cat keyfile1 keyfile2 keyfile3 | geli init -K - /dev/da2</userinput></screen>
|
||||
</step>
|
||||
|
||||
<step>
|
||||
<title>Свяжите сгенерированный ключ с провайдером</title>
|
||||
|
||||
<screen>&prompt.root; <userinput>geli attach -k /root/da2.key /dev/da2</userinput>
|
||||
Enter passphrase:</screen>
|
||||
|
||||
<para>Созданный при этом файл дискового устройства будет называться
|
||||
<filename>/dev/<replaceable>da2</replaceable>.eli</filename>.</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>ls /dev/da2*</userinput>
|
||||
/dev/da2 /dev/da2.eli</screen>
|
||||
</step>
|
||||
|
||||
<step>
|
||||
<title>Создайте новую файловую систему</title>
|
||||
|
||||
<screen>&prompt.root; <userinput>dd if=/dev/random of=/dev/da2.eli bs=1m</userinput>
|
||||
&prompt.root; <userinput>newfs /dev/da2.eli</userinput>
|
||||
&prompt.root; <userinput>mount /dev/da2.eli /private</userinput></screen>
|
||||
|
||||
<para>Зашифрованная файловая система будет видна в выводе утилиты
|
||||
&man.df.1; и готова к использованию:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>df -H</userinput>
|
||||
Filesystem Size Used Avail Capacity Mounted on
|
||||
/dev/ad0s1a 248M 89M 139M 38% /
|
||||
/devfs 1.0K 1.0K 0B 100% /dev
|
||||
/dev/ad0s1f 7.7G 2.3G 4.9G 32% /usr
|
||||
/dev/ad0s1d 989M 1.5M 909M 0% /tmp
|
||||
/dev/ad0s1e 3.9G 1.3G 2.3G 35% /var
|
||||
/dev/da2.eli 150G 4.1K 138G 0% /private</screen>
|
||||
|
||||
</step>
|
||||
|
||||
<step>
|
||||
<title>Размонтирование и деактивация провайдера</title>
|
||||
|
||||
<para>После завершения работы с шифрованным разделом, когда
|
||||
содержимое каталога <filename role="directory">/private</filename>
|
||||
больше не нужно, будет разумным отключить раздел от
|
||||
системы.</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>umount /private</userinput>
|
||||
&prompt.root; <userinput>geli detach da2.eli</userinput></screen>
|
||||
</step>
|
||||
</procedure>
|
||||
|
||||
<para>Дополнительную информацию о &man.geli.8; можно найти на
|
||||
соответствующей странице справочника.</para>
|
||||
|
||||
<sect3>
|
||||
<title>Шифрование раздела подкачки</title>
|
||||
|
||||
<para>Данный пример описывает создание шифрованного при помощи
|
||||
<command>geli</command> раздела подкачки.</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>dd if=/dev/random of=/dev/ad0s1b bs=1m</userinput>
|
||||
&prompt.root; <userinput>geli onetime -d -a 3des ad0s1b</userinput>
|
||||
&prompt.root; <userinput>swapon /dev/ad0s1b.eli</userinput></screen>
|
||||
</sect3>
|
||||
|
||||
<sect3>
|
||||
<title>Использование стартового скрипта <filename>rc.d</filename>
|
||||
<filename>geli</filename></title>
|
||||
|
||||
<para>Для удобства использования подсистемы <command>geli</command>
|
||||
в комплект базовой системы &os; входит стартовый скрипт, работой
|
||||
которого можно управлять из &man.rc.conf.5;:</para>
|
||||
|
||||
<screen>geli_devices="da2"
|
||||
geli_da2_flags="-p -k /root/da2.key"</screen>
|
||||
|
||||
<para>При этом дисковый раздел <filename>/dev/da2</filename> будет
|
||||
сконфигурирован как провайдер <command>geli</command>, связан с
|
||||
ключевым файлом <filename>/root/da2.key</filename>, а кодовая
|
||||
фраза не будет использоваться (отметим, что это возможно только
|
||||
в том случае, если при инициализации <command>geli</command> был
|
||||
указан ключ -P). Шифрованный провайдер <command>geli</command>
|
||||
будет отсоединен перед выключением системы.</para>
|
||||
|
||||
<para>Дополнительную информацию о конфигурации скриптов <filename>rc.d</filename> можно
|
||||
найти в соответствующей
|
||||
<link linkend="configtuning-rcd">главе</link> Руководства.</para>
|
||||
</sect3>
|
||||
</sect2>
|
||||
</sect1>
|
||||
</chapter>
|
||||
|
|
Loading…
Reference in a new issue