diff --git a/ru_RU.KOI8-R/books/handbook/advanced-networking/chapter.sgml b/ru_RU.KOI8-R/books/handbook/advanced-networking/chapter.sgml
index 4b5af55d44..07f4066099 100644
--- a/ru_RU.KOI8-R/books/handbook/advanced-networking/chapter.sgml
+++ b/ru_RU.KOI8-R/books/handbook/advanced-networking/chapter.sgml
@@ -1,4391 +1,4385 @@
АндрейЗахватовПеревод на русский язык: Сложные вопросы работы в сетиКраткий обзорЭта глава охватывает множество различных сетевых тематик
повышенной сложности.После чтения этой главы вы будете знать:Основные понятия о маршрутизации и маршрутах.Как настроить IEEE 802.11 и &bluetooth;.Как заставить FreeBSD работать в качестве сетевого
моста.Как настроить загрузку по сети для бездисковой машины.Как настроить трансляцию сетевых адресов.Как соединить два компьютера посредством PLIP.Как настроить IPv6 на машине FreeBSD.Как настроить ATM в &os; 5.X.Перед чтением этой главы вы должны:Понимать основы работы скриптов
/etc/rc.Свободно владеть основными сетевыми терминами.Знать как настраивать и устанавливать новое ядро FreeBSD
().Знать как устанавливать дополнительное программное
обеспечение сторонних разработчиков
().CoranthGryphonТекст предоставил Сетевые шлюзы и маршрутымаршрутизацияшлюзподсетьЧтобы некоторая машина могла найти в сети другую, должен иметься
механизм описания того, как добраться от одной машине к другой. Такой
механизм называется маршрутизацией.
Маршрут задаётся
парой адресов: адресом назначения (destination) и
сетевым шлюзом (gateway). Эта пара указывает на то, что
если Вы пытаетесь соединиться с адресом назначения,
то вам нужно устанавливать связь через сетевой шлюз.
Существует три типа адресов назначения: отдельные хосты, подсети и
маршрут по умолчанию (default). Маршрут по
умолчанию (default route) используется, если не подходит ни один
из других маршрутов. Мы поговорим немного подробнее о маршрутах по
умолчанию позже. Также имеется и три типа сетевых шлюзов: отдельные
хосты, интерфейсы (также называемые подключениями
(links)) и аппаратные адреса Ethernet (MAC-адреса).ПримерДля иллюстрации различных аспектов маршрутизации мы будем
использовать следующий пример использования команды
netstat:&prompt.user; netstat -r
Routing tables
Destination Gateway Flags Refs Use Netif Expire
default outside-gw UGSc 37 418 ppp0
localhost localhost UH 0 181 lo0
test0 0:e0:b5:36:cf:4f UHLW 5 63288 ed0 77
10.20.30.255 link#1 UHLW 1 2421
example.com link#1 UC 0 0
host1 0:e0:a8:37:8:1e UHLW 3 4601 lo0
host2 0:e0:a8:37:8:1e UHLW 0 5 lo0 =>
host2.example.com link#1 UC 0 0
224 link#1 UC 0 0маршрут по умолчаниюВ первых двух строках задаются маршрут по умолчанию (который
будет описан в следующем
разделе) и маршрут на localhost.устройство loopbackИнтерфейс (колонка Netif), который указан в
этой таблице маршрутов для использования с
localhost и который назван
lo0, имеет также второе название, устройство
loopback. Это значит сохранение всего трафика для указанного адреса
назначения внутри, без посылки его по сети, так как он все равно
будет направлен туда, где был создан.EthernetMAC адресСледующими выделяющимися адресами являются адреса, начинающиеся с
0:e0:.... Это аппаратные адреса Ethernet,
или MAC-адреса. FreeBSD будет автоматически распознавать любой хост
(в нашем примере это test0) в локальной сети Ethernet
и добавит маршрут для этого хоста, указывающий непосредственно на
интерфейс Ethernet, ed0. С этим типом
маршрута также связан параметр таймаута (колонка
Expire), используемый в случае неудачной попытки
услышать этот хост в течении некоторого периода времени. Если такое
происходит, то маршрут до этого хоста будет автоматически удалён.
Такие хосты поддерживаются
при помощи механизма, известного как RIP (Routing Information
Protocol), который вычисляет маршруты к хостам локальной сети при
помощи определения кратчайшего расстояния.подсетьFreeBSD добавит также все маршруты к подсетям для локальных
подсетей (10.20.30.255 является
широковещательным адресом для подсети 10.20.30, а имя example.com является именем домена, связанным
с этой подсетью). Назначение link#1 соответствует
первому адаптеру Ethernet в машине. Отметьте отсутствие
дополнительного интерфейса для этих строк.В обеих этих группах (хосты и подсети локальной сети) маршруты
конфигурируются автоматически даемоном, который называется
routed. Если он не запущен, то будут
существовать только статически заданные (то есть введенные явно)
маршруты.Строка host1 относится к нашему хосту, который
известен по адресу Ethernet. Так как мы являемся посылающим хостом,
FreeBSD знает, что нужно использовать loopback-интерфейс
(lo0) вместо того, чтобы осуществлять
посылку в интерфейс Ethernet.Две строки host2 являются примером того, что
происходит при использовании алиасов в команде &man.ifconfig.8;
(обратитесь к разделу об Ethernet для объяснения того, почему мы это
делаем). Символ => после интерфейса
lo0 указывает на то, что мы используем не
просто интерфейс loopback (так как это адрес, обозначающий локальный
хост), но к тому же это алиас. Такие маршруты появляются только
на хосте, поддерживающем алиасы; для всех остальных хостов в локальной
сети для таких маршрутов будут показаны просто строчки
link#1.Последняя строчка (подсеть назначения 224) имеет отношение к многоадресной посылке,
которая будет рассмотрена в другом разделе.И наконец, различные атрибуты каждого маршрута перечисляются в
колонке Flags. Ниже приводится краткая таблица
некоторых из этих флагов и их значений:UUp: Маршрут актуален.HHost: Адресом назначения является отдельный хост.GGateway: Посылать все для этого адреса назначения на
указанную удаленную систему, которая будет сама определять
дальнейший путь прохождения информации.SStatic: Маршрут был настроен вручную, а не автоматически
сгенерирован системой.CClone: Новый маршрут сгенерирован на основе указанного для
машин, к которым мы подключены. Такой тип маршрута обычно
используется для локальных сетей.WWasCloned: Указывает на то, что маршрут был автоматически
сконфигурирован на основе маршрута в локальной
сети (Clone).LLink: Маршрут включает ссылку на аппаратный адрес
Ethernet.Маршруты по умолчаниюмаршрут по умолчаниюКогда локальной системе нужно установить соединение с удаленным
хостом, она обращается к таблице маршрутов для того, чтобы определить,
существует ли такой маршрут. Если удаленный хост попадает в подсеть,
для которой известен способ ее достижения (маршруты типа Cloned), то
система определяет возможность подключиться к ней по этому
интерфейсу.Если все известные маршруты не подходят, у системы имеется
последняя возможность: маршрут default. Это маршрут
с особым типом сетевого шлюза (обычно единственным, присутствующим
в системе), и в поле флагов он всегда помечен как c.
Для хостов в локальной сети этот сетевой шлюз указывает на машину,
имеющую прямое подключение к внешнему миру (неважно, используется ли
связь по протоколу PPP, канал DSL, кабельный модем, T1 или какой-то
другой сетевой интерфейс).Если вы настраиваете маршрут по умолчанию на машине, которая сама
является сетевым шлюзом во внешний мир, то маршрутом по умолчанию
будет являться сетевой шлюз у Вашего провайдера Интернет (ISP).Давайте взглянем на примеры маршрутов по умолчанию. Вот типичная
конфигурация:
[Local2] <--ether--> [Local1] <--PPP--> [ISP-Serv] <--ether--> [T1-GW]
Хосты Local1 и Local2 находятся в
нашей сети. Local1 подключён к ISP через
коммутируемое соединение по протоколу PPP. Этот компьютер с сервером
PPP подключён посредством локальной сети к другому шлюзовому компьютеру
через внешний интерфейс самого ISP к Интернет.Маршруты по умолчанию для каждой из ваших машин будут
следующими:ХостМаршрут по умолчаниюИнтерфейсLocal2Local1EthernetLocal1T1-GWPPPЧасто задаётся вопрос Почему (или каким образом) в качестве
шлюза по умолчанию для машины Local1 мы указываем
T1-GW, а не сервер провайдера, к которому
подключаемся?.Запомните, что из-за использования PPP-интерфейсом адреса в сети
провайдера Интернет с вашей стороны соединения, маршруты для всех
других машин в локальной сети провайдера будут сгенерированы
автоматически. Таким образом, вы уже будете знать, как достичь машины
T1-GW, так что нет нужды в промежуточной точке при
посылке трафика к серверу ISP.В локальных сетях адрес X.X.X.1 часто используется в качестве адреса
сетевого шлюза. Тогда (при использовании того же самого примера)
если пространство адресов класса C вашей локальной сети было задано
как 10.20.30, а ваш провайдер использует
10.9.9, то маршруты по умолчанию будут
такие:ХостМаршрут по умолчаниюLocal2 (10.20.30.2)Local1 (10.20.30.1)Local1 (10.20.30.1, 10.9.9.30)T1-GW (10.9.9.1)Вы можете легко задать используемый по умолчанию маршрутизатор
посредством файла /etc/rc.conf. В нашем примере
на машине Local2 мы добавили такую строку в файл
/etc/rc.conf:defaultrouter="10.20.30.1"Это также возможно сделать и непосредственно из командной строки
при помощи команды &man.route.8;:&prompt.root; route add default 10.20.30.1Для получения дополнительной информации об управлении таблицами
маршрутизации, обратитесь к справочной странице по команде
&man.route.8;.Хосты с двойным подключениемхосты с двойным подключениемЕсть еще один тип подключения, который мы должны рассмотреть, и это
случай, когда хост находится в двух различных сетях. Технически,
любая машина, работающая как сетевой шлюз (в примере выше
использовалось PPP-соединение), считается хостом с двойным
подключением. Однако этот термин реально используется для описания
машины, находящейся в двух локальных сетях.В одном случае у машины имеется два адаптера Ethernet, каждый
имеющий адрес в разделенных подсетях. Как альтернативу можно
рассмотреть вариант с одним Ethernet-адаптером и использованием
алиасов в команде &man.ifconfig.8;. В первом случае используются два
физически разделённые сети Ethernet, в последнем имеется один
физический сегмент сети, но две логически разделённые подсети.В любом случае таблицы маршрутизации настраиваются так, что для
каждой подсети эта машина определена как шлюз (входной маршрут) в
другую подсеть. Такая конфигурация, при которой машина выступает в
роли маршрутизатора между двумя подсетями, часто используется, если
нужно реализовать систему безопасности на основе фильтрации пакетов или
функций межсетевого экрана в одном или обоих направлениях.Если вы хотите, чтобы эта машина действительно перемещала пакеты
между двумя интерфейсами, то вам нужно указать FreeBSD на включение
этой функции. Обратитесь к следующей главе, чтобы узнать, как это
сделать.Построение маршрутизаторамаршрутизаторСетевой маршрутизатор является обычной системой, которая
пересылает пакеты с одного интерфейса на другой. Стандарты Интернет и
хорошая инженерная практика не позволяют Проекту FreeBSD включать эту
функцию по умолчанию во FreeBSD. Вы можете включить эту возможность,
изменив значение следующей переменной в YES в файле
&man.rc.conf.5;:gateway_enable=YES # Set to YES if this host will be a gatewayЭтот параметр изменит значение &man.sysctl.8;-переменной
net.inet.ip.forwarding в
1. Если вам временно нужно выключить маршрутизацию,
вы можете на время сбросить это значение в 0.Вашему новому маршрутизатору нужна информация о маршрутах для того,
чтобы знать, куда пересылать трафик. Если ваша сеть достаточно проста,
то вы можете использовать статические маршруты. С FreeBSD также
поставляется стандартный даемон BSD для маршрутизации &man.routed.8;,
который умеет работать с RIP (как версии 1, так и версии 2) и IRDP.
Поддержка BGP v4, OSPF v2 и других сложных протоколов маршрутизации
имеется в пакете net/zebra. Также
существуют и коммерческие продукты, применяемые как более комплексное
решение проблемы маршрутизации в сети, такие как
&gated;.BGPRIPOSPFДаже когда FreeBSD настроена таким образом, она не полностью
соответствует стандартным требованиям Интернет для маршрутизаторов.
Однако для обычного использования такое неполное соответствие
достаточно.AlHoangПредоставил Настройка статических маршрутовРучная настройкаПредположим, что у нас есть следующая сеть:
INTERNET
| (10.0.0.1/24) Default Router to Internet
|
|Interface xl0
|10.0.0.10/24
+------+
| | RouterA
| | (FreeBSD gateway)
+------+
| Interface xl1
| 192.168.1.1/24
|
+--------------------------------+
Internal Net 1 | 192.168.1.2/24
|
+------+
| | RouterB
| |
+------+
| 192.168.2.1/24
|
Internal Net 2
В этом сценарии, RouterA это наш
компьютер с &os;, который выступает в качестве
маршрутизатора в сеть Интернет. Его маршрут по умолчанию
настроен на 10.0.0.1, что позволяет ему
соединяться с внешним миром. Мы будем предполагать, что
RouterB уже правильно настроен и
знает все необходимые маршруты (на этом рисунке все
просто; добавьте на RouterB маршрут
по умолчанию, используя 192.168.1.1 в качестве шлюза).Если мы посмотрим на таблицу маршрутизации
RouterA, то увидим примерно следующее:&prompt.user; netstat -nr
Routing tables
Internet:
Destination Gateway Flags Refs Use Netif Expire
default 10.0.0.1 UGS 0 49378 xl0
127.0.0.1 127.0.0.1 UH 0 6 lo0
10.0.0/24 link#1 UC 0 0 xl0
192.168.1/24 link#2 UC 0 0 xl1С текущей таблицей маршрутизации RouterA
не сможет достичь внутренней сети 2 (Internal Net 2).
Один из способов обхода этой проблемы — добавление
маршрута вручную. Следующая команда добавляет
внутреннюю сеть 2 к таблице маршрутизации
RouterA с 192.168.1.2 в качестве следующего
узла:&prompt.root; route add -net 192.168.2.0/24 192.168.1.2Теперь RouterA сможет достичь любого хоста
в сети
192.168.2.0/24.Постоянная конфигурацияПредыдущий пример прекрасно подходит для настройки статического
маршрута в работающей системе. Однако, проблема заключается в
том, что маршрутная информация не сохранится после перезагрузки
&os;. Способ сохранения добавленного маршрута заключается в
добавлении его в файл /etc/rc.conf:# Добавление статического маршрута в Internal Net 2
static_routes="internalnet2"
route_internalnet2="-net 192.168.2.0/24 192.168.1.2"В переменной static_routes находятся
строки, разделенные пробелами. Каждая строка означает имя
маршрута. В примере выше в static_routes
есть только одна строка, это
internalnet2. Затем мы добавили
переменную
route_internalnet2,
куда помещены все параметры, которые необходимо передать
команде &man.route.8;. В примере выше была использована
команда:&prompt.root; route add -net 192.168.2.0/24 192.168.1.2поэтому нам потребуется
"-net 192.168.2.0/24 192.168.1.2".Как было сказано выше, мы можем добавить в
static_routes более чем одну строку.
Это позволит создать несколько статических маршрутов.
В следующем примере показано добавление маршрутов для сетей 192.168.0.0/24 и 192.168.1.0/24 (этот маршрутизатор не
показан на рисунке выше:static_routes="net1 net2"
route_net1="-net 192.168.0.0/24 192.168.0.1"
route_net2="-net 192.168.1.0/24 192.168.1.1"Распространение маршрутовраспространение маршрутовМы уже говорили о том, как мы задаем наши маршруты во внешний мир,
но не упоминали о том, как внешний мир находит нас.Мы уже знаем, что таблицы маршрутизации могут быть настроены так,
что весь трафик для некоторого диапазона адресов (в нашем примере это
подсеть класса C) может быть направлен заданному хосту в той сети,
которая будет перенаправлять входящие пакеты дальше.При получении адресного пространства, выделенного Вашей сети,
Ваш провайдер настроит свои таблицы маршрутизации так, что весь трафик
для Вашей подсети будет пересылаться по PPP-соединению к Вашей сети.
Но как серверы по всей стране узнают, что Ваш трафик нужно посылать
Вашему ISP?Существует система (подобная распределению информации DNS), которая
отслеживает все назначенные пространства адресов и определяет точку
подключения к магистрали Интернет. Магистралью называют
главные каналы, по которым идет трафик Интернет внутри страны и по
всему миру. Каждая магистральная машина имеет копию основного набора
таблиц, согласно которой трафик для конкретной сети направляется по
конкретному магистральному каналу, и затем, передаваясь по цепочке
провайдеров, он достигает вашей сети.Задачей вашего провайдера является объявить на магистрали о том,
что он отвечает за подключение (и поэтому на него указывает маршрут)
вашей сети. Этот процесс называется распространением маршрута.Устранение неполадокtracerouteИногда с распространением маршрута возникают проблемы, и некоторые
сайты не могут к вам подключиться. Наверное, самой полезной командой
для определения точки неверной работы маршрутизации является
&man.traceroute.8;. Она также полезна и когда вы сами не можете
подключиться к удаленной машине (то есть команда &man.ping.8; не
срабатывает).Команда &man.traceroute.8; запускается с именем удаленного хоста, с
которым вы хотите установить соединение, в качестве параметра. Она
показывает промежуточные сетевые шлюзы по пути следования, в конце
концов достигая адрес назначения или прерывая свою работу из-за
отсутствия соединения.За дополнительной информацией обратитесь к странице Справочника по
&man.traceroute.8;.Маршрутизация многоадресного трафикаmulticastoptions MROUTINGFreeBSD изначально поддерживает как приложения, работающие с
многоадресным трафиком, так и его маршрутизацию. Такие приложения не
требуют особой настройки FreeBSD; обычно они работают сразу.
Для маршрутизации многоадресного трафика требуется, чтобы поддержка
этого была включена в ядро:options MROUTINGКроме того, даемон многоадресной маршрутизации, &man.mrouted.8;,
должен быть настроен посредством файла
/etc/mrouted.conf на использование туннелей и
DVMRP. Дополнительную информацию о настройки
многоадресного трафика
можно найти на страницах справочной системы, посвящённых даемону
&man.mrouted.8;.EricAndersonТекст предоставил АндрейЗахватовПеревёл на русский язык Беспроводные сетибеспроводные сети802.11беспроводные сетиВведениеБыло бы весьма полезным иметь возможность использовать компьютер
без хлопот, связанных с постоянно подключенным сетевым кабелем.
FreeBSD может использоваться как клиент беспроводной сети, и даже
в качестве точки доступа к ней.Режимы работы беспроводной связиСуществуют два варианта конфигурации устройств беспроводного
доступа 802.11: BSS и IBSS.Режим BSSРежим BSS является наиболее часто используемым. Режим BSS также
называют режимом инфраструктуры. В этом режиме несколько точек
доступа беспроводной сети подключаются к проводной сети передачи
данных. Каждое беспроводная сеть имеет собственное имя. Это имя
является идентификатором SSID сети.Клиенты беспроводной сети подключаются к этим точкам доступа
беспроводной сети. Стандарт IEEE 802.11 определяет протокол,
используемый для связи в беспроводных сетях. Клиент сети
беспроводного доступа может подключаться к некоторой сети, если
задан её SSID. Клиент может также подключаться к любой сети, если
SSID не задан.Режим IBSSРежим IBSS, также называемый ad-hoc, предназначен для соединений
точка-точка. На самом деле существуют два типа режима ad-hoc. Один
из них является режимом IBSS, называемый также режимом ad-hoc или
IEEE ad-hoc. Этот режим определён стандартами IEEE 802.11. Второй
режим называется демонстрационным режимом ad-hoc, или Lucent ad-hoc
(или, иногда неправильно, режимом ad-hoc). Это старый,
существовавший до появления 802.11, режим ad-hoc, и он должен
использоваться только для старых сетей. В дальнейшем мы не будем
рассматривать ни один из режимов ad-hoc.Режим инфраструктурыТочки доступаТочки доступа представляют собой беспроводные сетевые устройства,
позволяющие одному или большему количеству клиентов беспроводной сети
использовать эти устройства в качестве центрального сетевого
концентратора. При использовании точки доступа все клиенты работают
через неё. Зачастую используются несколько точек доступа для полного
покрытия беспроводной сетью некоторой зоны, такой, как дом, офис или
парк.Точки доступа обычно имеют несколько подключений к сети: адаптер
беспроводной связи и один или большее количество сетевых
ethernet-адаптеров для подключения к остальной части сети.Точки доступа могут быть либо приобретены уже настроенными, либо
вы можете создать собственную при помощи FreeBSD и поддерживаемого
адаптера беспроводной связи. Несколько производителей выпускают
точки беспроводного доступа и адаптеры беспроводной связи с
различными возможностями.Построение точки доступа с FreeBSDбеспроводные сетиточка доступаТребованияДля того, чтобы создать беспроводную точку доступа на FreeBSD,
вам нужно иметь совместимый адаптер беспроводной связи. На данный
момент поддерживаются адаптеры только на основе набора микросхем
Prism. Вам также потребуется поддерживаемый FreeBSD адаптер
проводной сети (найти такой будет нетрудно, FreeBSD поддерживает
множество различных устройств). В этом руководстве мы будем
полагать, что вы будете строить сетевой мост (&man.bridge.4;) для
пропуска всего трафика между устройством беспроводной связи и
сетью, подключенной к обычному Ethernet-адаптеру.Функциональность hostap, которая используется FreeBSD для
организации точки доступа, работает лучше всего с некоторыми
версиями микрокода. Адаптеры Prism 2 должны использовать микрокод
версии 1.3.4 или более новый. Адаптеры Prism 2.5 и Prism 3 должны
использовать микрокод версии 1.4.9. Более старые версии микрокода
могут работать нормально, а могут и некорректно. В настоящее время
единственным способом обновления адаптеров является использование
утилит обновления для &windows;, которые можно получить у
производителя ваших адаптеров.НастройкаПервым делом убедитесь, что ваша система распознаёт адаптер
беспроводной связи:&prompt.root; ifconfig -a
wi0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet6 fe80::202:2dff:fe2d:c938%wi0 prefixlen 64 scopeid 0x7
inet 0.0.0.0 netmask 0xff000000 broadcast 255.255.255.255
ether 00:09:2d:2d:c9:50
media: IEEE 802.11 Wireless Ethernet autoselect (DS/2Mbps)
status: no carrier
ssid ""
stationname "FreeBSD Wireless node"
channel 10 authmode OPEN powersavemode OFF powersavesleep 100
wepmode OFF weptxkey 1На данном этапе не беспокойтесь о деталях, просто убедитесь,
что выдаётся нечто, указывающее на установленный адаптер
беспроводной связи. Если при этом у вас есть проблемы с
недоступностью интерфейса беспроводной связи, и вы используете
PC Card, то обратитесь к страницам справочной системы, описывающим
&man.pccardc.8; и &man.pccardd.8; для получения более полной
информации.Теперь вам нужно загрузить модуль для подготовки той части
FreeBSD, что отвечает за организацию сетевых мостов, для работы
с точкой доступа. Для загрузки модуля &man.bridge.4; просто
выполните следующую команду:&prompt.root; kldload bridgeПри загрузке модуля никаких сообщений об ошибках быть не
должно. Если это всё же произошло, вам может потребоваться
вкомпилировать код для модуля &man.bridge.4; в ядро. В этом вам
должен помочь раздел этого Руководства об организации сетевых
мостов.Теперь, когда вы завершили с той частью, что касается
организации сетевого моста, нам нужно указать ядру FreeBSD, какие
интерфейсы должны объединяться в сетевом мосте. Это мы делаем
при помощи &man.sysctl.8;:&prompt.root; sysctl net.link.ether.bridge=1
&prompt.root; sysctl net.link.ether.bridge_cfg="wi0,xl0"
&prompt.root; sysctl net.inet.ip.forwarding=1Во &os; 5.2-RELEASE и последующих версиях нужно
использовать вместо указанных следующие параметры:&prompt.root; sysctl net.link.ether.bridge.enable=1
&prompt.root; sysctl net.link.ether.bridge.config="wi0,xl0"
&prompt.root; sysctl net.inet.ip.forwarding=1Теперь необходимо настроить адаптер беспроводной сети.
Следующая команда заставит адаптер работать в режиме точки
доступа:
&prompt.root; ifconfig wi0 ssid my_net channel 11 media DS/11Mbps mediaopt hostap up stationname "FreeBSD AP"Строчка &man.ifconfig.8; активизирует интерфейс
wi0, конфигурирует его SSID как
my_net, а имя станции как
FreeBSD AP.
переводит адаптер в
режим 11Mbps и нужен только для того, чтобы сработал параметр
. Параметр переводит интерфейс в режим точки доступа.
Параметр задаёт использование канала
802.11b. Страница справки по команде &man.wicontrol.8; перечисляет
корректные значения каналов для ваших нужд.Теперь у вас должна получиться полнофункциональная работающая
точка доступа. Настоятельно советуем прочесть страницы справочной
по &man.wicontrol.8;, &man.ifconfig.8;, и &man.wi.4; для
получения дополнительной информации.Также полагаем, что вы прочтёте следующий раздел о
шифровании.Информация о состоянииПосле того, как точка доступа сконфигурирована и начала свою
работу, операторам может понадобиться видеть клиентов, связанных
с этой точкой. В любой момент оператор может набрать:&prompt.root; wicontrol -l
1 station:
00:09:b7:7b:9d:16 asid=04c0, flags=3<ASSOC,AUTH>, caps=1<ESS>, rates=f<1M,2M,5.5M,11M>, sig=38/15Это показывает, что имеется одна связанная станция с
перечисленными характеристиками. Выдаваемое значение сигнала должно
использоваться только как сравнительный индикатор его силы. Его
перевод в dBm или другие единицы измерения различаются в разных
версиях микрокода.КлиентыКлиент в беспроводной сети представляет собой систему, которая
обращается к точке доступа или непосредственно к другому
клиенту.Как правило, клиенты беспроводной сети имеют только один сетевой
адаптер, а именно адаптер беспроводной сети.Существует несколько различных способов конфигурации клиента
беспроводной сети. Они основаны на различных режимах работы в
беспроводной сети, обычно BSS (режим инфраструктуры, который требует
точки доступа) или IBSS (ad-hoc или режим одноранговой сети). В
нашем примере мы будем использовать самый популярный их них, режим
BSS, для связи с точкой доступа.ТребованияСуществует только одно жёсткое условие для настройки FreeBSD в
качестве клиента беспроводной сети. Вам нужен адаптер беспроводной
связи, поддерживаемый FreeBSD.Конфигурация FreeBSD как клиента беспроводной сетиПеред тем, как подключиться к беспроводной сети, вам нужно
будет узнать о ней несколько вещей. В этом примере мы подключаемся
к сети, которая называется my_net,
и шифрование в ней отключено.В этом примере мы не используем шифрование, но
это небезопасно. В следующем разделе вы узнаете, как её включить,
почему это так важно, и почему некоторые технологии шифрования всё
же не могут полностью обеспечить вашу информационную
безопасность.Удостоверьтесь, что ваш адаптер распознаётся во FreeBSD:&prompt.root; ifconfig -a
wi0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet6 fe80::202:2dff:fe2d:c938%wi0 prefixlen 64 scopeid 0x7
inet 0.0.0.0 netmask 0xff000000 broadcast 255.255.255.255
ether 00:09:2d:2d:c9:50
media: IEEE 802.11 Wireless Ethernet autoselect (DS/2Mbps)
status: no carrier
ssid ""
stationname "FreeBSD Wireless node"
channel 10 authmode OPEN powersavemode OFF powersavesleep 100
wepmode OFF weptxkey 1Теперь мы можем изменить настройки адаптера на те, что соответствуют
нашей сети:&prompt.root; ifconfig wi0 inet 192.168.0.20 netmask 255.255.255.0 ssid my_netЗамените 192.168.0.20 и 255.255.255.0 на правильные IP-адрес и
сетевую маску в вашей проводной сети. Запомните, что наша точка
доступа выступает в роли моста для данных между беспроводной и
проводной сетями, так что они будут доступны для других устройств,
находящихся в сети, как будто они тоже находятся в проводной
сети.Как только вы это выполнили, то сможете получить ping от хостов
в проводной сети, как будто вы подключены посредством обычных
проводов.Если вы столкнулись с проблемами при работе в беспроводной
сети, удостоверьтесь, что вы ассоциированы (подключены) с точкой
доступа:&prompt.root; ifconfig wi0должна выдать некоторую информацию, и вы должны увидеть:status: associatedЕсли статус не будет соответствовать
associated, это
может значить, что вы оказались вне зоны досягаемости точки
доступа, включили шифрование или, возможно, имеются проблемы с
конфигурацией.Шифрованиебеспроводные сетишифрованиеШифрование в беспроводной сети имеет важное значение, потому что
у вас нет больше возможности ограничить сеть хорошо защищённой
областью. Данные вашей беспроводной сети вещаются по всей
окрестности, так что любой заинтересовавшийся может их считать. Вот
здесь используется шифрование. Шифруя данные, посылаемые в
эфир, вы делаете их прямой перехват гораздо более сложным для всех
любопытных.Двумя наиболее широко применяемыми способами шифрации данных
между вашим клиентом и точкой доступа являются WEP
и &man.ipsec.4;.WEPWEPWEP является сокращением от Wired Equivalency Protocol
(Протокол Соответствия Проводной сети). WEP является попыткой
сделать беспроводные сети такими же надёжными и безопасными, как
проводные. К сожалению, он был взломан и сравнительно легко
поддаётся вскрытию. Это означает также, что он не тот протокол,
на который следует опираться, когда речь идёт о шифровании
критически важных данных.Он лучше, чем ничего, так что используйте следующую команду для
включения WEP в вашей новой точке доступа FreeBSD:&prompt.root; ifconfig wi0 inet up ssid my_net wepmode on wepkey 0x1234567890 media DS/11Mbps mediaopt hostapВы можете включить WEP на клиенте следующей командой:&prompt.root; ifconfig wi0 inet 192.168.0.20 netmask 255.255.255.0 ssid my_net wepmode on wepkey 0x1234567890Отметьте, что вы должны заменить
0x1234567890 на более уникальный ключ.IPsec&man.ipsec.4; является гораздо более надёжным и мощным
средством шифрования данных в сети. Этот метод определённо
является предпочтительным для шифрования данных в беспроводной
сети. Более детально ознакомиться с безопасностью и применением
&man.ipsec.4; вы можете в разделе об IPsec этого Руководства.УтилитыИмеется несколько утилит, которые можно использовать для
настройки и отладки вашей беспроводной сети, и здесь мы попытаемся
описать некоторые из них и что они могут делать.Пакет bsd-airtoolsПакет bsd-airtools представляет
собой полный набор инструментов, включая инструменты для проверки
беспроводной сети на предмет взлома WEP-ключа,
обнаружения точки доступа и тому подобное.Утилиты bsd-airtools можно
установить из порта net/bsd-airtools. Информацию
об установке портов можно найти в Главе
этого Руководства.Программа dstumbler является инструментом,
предназначенным для обнаружения точки доступа и выдачи отношения
уровня сигнала к шуму. Если у вас с трудом получается запустить
точку доступа, dstumbler может помочь вам
начать.Для тестирования информационной безопасности вашей беспроводной
сети, вы можете воспользоваться набором dweputils
(dwepcrack, dwepdump и
dwepkeygen), который может помочь
понять, является ли WEP подходящим решением для обеспечения ваших
потребностей в информационной безопасности.Утилиты wicontrol,
ancontrol и
raycontrolЭто инструменты, которые могут быть использованы для
управления поведением
адаптера беспроводной связи в сети. В примере выше мы выбирали
&man.wicontrol.8;, так как нашим адаптером беспроводной сети был
интерфейс wi0. Если у вас установлено
устройство беспроводного доступа от Cisco, этим интерфейсом будет
an0, и тогда вы будете
использовать &man.ancontrol.8;.Команда ifconfigifconfigКоманда &man.ifconfig.8; может использоваться для установки
многих из тех параметров, что задаёт &man.wicontrol.8;, однако
работа с некоторыми параметрами в ней отсутствует. Обратитесь к
&man.ifconfig.8; для выяснения параметров и опций командной
строки.Поддерживаемые адаптерыТочки доступаЕдинственными адаптерами, которые на данный момент
поддерживаются в режиме BSS (как точка доступа), являются те
устройства, что сделаны на основе набора микросхем Prism 2, 2.5
или 3). Полный список можно увидеть в &man.wi.4;.КлиентыПрактически все адаптеры беспроводной связи 802.11b на данный
момент во FreeBSD поддерживаются. Большинство адаптеров,
построенных на основе Prism, Spectrum24, Hermes, Aironet и Raylink,
будут работать в качестве адаптера беспроводной сети в режиме
IBSS (ad-hoc, одноранговая сеть и BSS).PavLucistnikТекст предоставил pav@oook.czBluetoothBluetoothВведениеBluetooth является беспроводной технологией для создания
персональных сетей на расстоянии не более 10 метров, работающей на
частоте 2.4 ГГц, которая не подлежит лицензированию. Обычно такие
сети формируются из портативных устройств, таких, как сотовые телефоны,
КПК и лаптопы. В отличие от Wi-Fi, другой популярной беспроводной
технологии, Bluetooth предоставляет более высокий уровень сервиса,
например, файловые серверы типа FTP, передачу файлов, голоса, эмуляцию
последовательного порта и другие.Стек протоколов Bluetooth во &os; реализован на основе технологии
Netgraph (обратитесь к &man.netgraph.4;). Широкий спектр USB-устройств
Bluetooth поддерживается драйвером &man.ng.ubt.4;. Устройства
Bluetooth на основе набора микросхем Broadcom BCM2033 поддерживается
драйвером &man.ng.bt3c.4;. Устройства Bluetooth, работающие через
последовательные и UART-порты, поддерживаются драйверами &man.sio.4;,
&man.ng.h4.4; и &man.hcseriald.8;. В этом разделе описывается
использование Bluetooth-устройств, подключаемых через USB. Поддержка
Bluetooth имеется во &os; 5.0 и более новых версиях системы.Подключение устройстваПо умолчанию драйверы устройств Bluetooth поставляются в виде
модулей ядра. Перед подключением устройства вам необходимо подгрузить
драйвер в ядро:&prompt.root; kldload ng_ubtЕсли Bluetooth-устройство в момент запуска системы подключено, то
загружайте модуль из файла
/boot/loader.conf:ng_ubt_load="YES"Подключите ваше USB-устройство. На консоли (или в журнале
syslog) появится примерно такое сообщение:ubt0: vendor 0x0a12 product 0x0001, rev 1.10/5.25, addr 2
ubt0: Interface 0 endpoints: interrupt=0x81, bulk-in=0x82, bulk-out=0x2
ubt0: Interface 1 (alt.config 5) endpoints: isoc-in=0x83, isoc-out=0x3,
wMaxPacketSize=49, nframes=6, buffer size=294Скопируйте файл
/usr/share/examples/netgraph/bluetooth/rc.bluetooth
в какое-нибудь подходящее место, например, в файл
/etc/rc.bluetooth. Этот скрипт используется для
запуска и остановки работы Bluetooth-стека. Перед отключением
устройства рекомендуется остановить его работы, хотя (обычно) это не
фатально. При запуске стека вы получите сообщения, подобные
следующим:&prompt.root; /etc/rc.bluetooth start ubt0
BD_ADDR: 00:02:72:00:d4:1a
Features: 0xff 0xff 0xf 00 00 00 00 00
<3-Slot> <5-Slot> <Encryption> <Slot offset>
<Timing accuracy> <Switch> <Hold mode> <Sniff mode>
<Park mode> <RSSI> <Channel quality> <SCO link>
<HV2 packets> <HV3 packets> <u-law log> <A-law log> <CVSD>
<Paging scheme> <Power control> <Transparent SCO data>
Max. ACL packet size: 192 bytes
Number of ACL packets: 8
Max. SCO packet size: 64 bytes
Number of SCO packets: 8HCIHost Controller Interface (HCI)Host Controller Interface (HCI) предоставляет интерфейс для
управления контроллером передатчика и менеджером соединений, а также
доступ к данным о состоянии оборудования и его управляющим регистрам.
Этот интерфейс предоставляет унифицированный метод доступа к
передающим возможностям Bluetooth. Уровень HCI на управляющей машине
обменивается данными и командами с микрокодом HCI в оборудовании
Bluetooth. Драйвер для Host Controller Transport Layer (то есть
физической шины) предоставляет обоим слоям HCI возможность обмениваться
данными друг с другом.Для одного Bluetooth-устройства создаётся один узел Netgraph типа
hci. HCI-узел обычно подключается к узлу драйвера
устройства Bluetooth (входящий поток) и к узлу L2CAP (исходящий поток).
Все операции с HCI должны выполняться на узле HCI, но не на узле
драйвера устройства. В качестве имени по умолчанию для узла HCI
используется devicehci. Дополнительные подробности
можно найти на справочной странице &man.ng.hci.4;.Одной из самой часто выполняемой задач является обнаружение
Bluetooth-устройств в радиусе RF-доступности. Эта операция называется
опросом (inquiry). Опрос и другие операции,
связанные с HCI, выполняются при помощи утилиты &man.hccontrol.8;.
Пример ниже показывает, как найти доступные устройства Bluetooth.
Список таких устройств должен быть получен в течение нескольких секунд.
Заметьте, что удалённые устройства будут отвечать на опрос, если только
они находятся в режиме обнаруживаемости
(discoverable).&prompt.user; hccontrol -n ubt0hci inquiry
Inquiry result, num_responses=1
Inquiry result #0
BD_ADDR: 00:80:37:29:19:a4
Page Scan Rep. Mode: 0x1
Page Scan Period Mode: 00
Page Scan Mode: 00
Class: 52:02:04
Clock offset: 0x78ef
Inquiry complete. Status: No error [00]BD_ADDR является уникальным адресом устройства
Bluetooth, вроде MAC-адресов сетевых адаптеров. Этот адрес необходим
для дальнейшей работы с устройством. Адресу BD_ADDR можно присвоить
удобное для чтения имя. Файл /etc/bluetooth/hosts
содержит информацию об известных хостах Bluetooth. В следующем примере
показано, как получить имя, назначенное удалённому устройству:&prompt.user; hccontrol -n ubt0hci remote_name_request 00:80:37:29:19:a4
BD_ADDR: 00:80:37:29:19:a4
Name: Pav's T39Если вы выполните опрос на другом Bluetooth-устройстве, но ваш
компьютер будет опознан как your.host.name (ubt0).
Имя, назначаемое локальному устройству, может быть в любой момент
изменено.Система Bluetooth предоставляет услуги по соединениям типа
точка-точка (при этом задействованы только два устройства Bluetooth)
или точка-ко-многим-точкам. В последнем случае соединение используется
совместно несколькими устройствам Bluetooth. В следующем примере
показывается, как получить список активных для локального устройства
соединений:&prompt.user; hccontrol -n ubt0hci read_connection_list
Remote BD_ADDR Handle Type Mode Role Encrypt Pending Queue State
00:80:37:29:19:a4 41 ACL 0 MAST NONE 0 0 OPENИдентификатор соединения (connection handle)
полезен, когда необходимо прекратить соединение. Заметьте, что обычно
нет нужды делать это вручную. Стек будет автоматически разрывать
неактивные соединения.&prompt.root; hccontrol -n ubt0hci disconnect 41
Connection handle: 41
Reason: Connection terminated by local host [0x16]Обратитесь к помощи посредством hccontrol help
для получения полного списка доступных HCI-команд. Большинство команд
HCI для выполнения не требуют прав администратора системы.L2CAPLogical Link Control and Adaptation Protocol (L2CAP)Протокол L2CAP (Logical Link Control and Adaptation Protocol)
предоставляет услуги по работе с данными, как ориентированные на
соединения, так и без ориентации на них, протоколам более высокого
уровня с возможностями мультиплексирования и обеспечением операций по
сегментации и обратной сборке. L2CAP позволяет протоколам более
высокого уровня и приложениям передавать и получать пакеты данных
L2CAP длиной до 64 Кбайт.L2CAP основан на концепции каналов. Каналом
является логическое соединение поверх соединения по радиоканалу.
Каждый канал привязан к некоторому протоколу по принципу
многие-к-одному. Несколько каналов могут быть привязаны к одному и
тому же протоколу, но канал не может быть привязан к нескольким
протоколам. Каждый пакет L2CAP, получаемый каналом, перенаправляется
к соответствующему протоколу более высокого уровня. Несколько каналов
могут совместно использовать одно и то же радиосоединение.Для одного Bluetooth-устройства создается один узел Netgraph типа
l2cap. Узел L2CAP обычно подключается к узлу
Bluetooth HCI (нижестоящий) и узлам Bluetooth-сокетов (вышестоящие).
По умолчанию для узла L2CAP используется имя
devicel2cap. Для получения дополнительной информации
обратитесь к справочной странице по &man.ng.l2cap.4;.Полезной является программа &man.l2ping.8;, которая может
использоваться для проверки связи с другими устройствами. Некоторые
реализации Bluetooth могут не возвращать все данные, посылаемые им,
так что 0 bytes в следующем примере - это
нормально.&prompt.root; l2ping -a 00:80:37:29:19:a4
0 bytes from 0:80:37:29:19:a4 seq_no=0 time=48.633 ms result=0
0 bytes from 0:80:37:29:19:a4 seq_no=1 time=37.551 ms result=0
0 bytes from 0:80:37:29:19:a4 seq_no=2 time=28.324 ms result=0
0 bytes from 0:80:37:29:19:a4 seq_no=3 time=46.150 ms result=0Утилита &man.l2control.8; используется для выполнения различных
операций с узлами L2CAP. В этом примере показано, как получить список
логических соединений (каналов) и перечень радиосоединений локального
устройства:&prompt.user; l2control -a 00:02:72:00:d4:1a read_channel_list
L2CAP channels:
Remote BD_ADDR SCID/ DCID PSM IMTU/ OMTU State
00:07:e0:00:0b:ca 66/ 64 3 132/ 672 OPEN
&prompt.user; l2control -a 00:02:72:00:d4:1a read_connection_list
L2CAP connections:
Remote BD_ADDR Handle Flags Pending State
00:07:e0:00:0b:ca 41 O 0 OPENЕщё одним диагностическим инструментом является &man.btsockstat.1;.
Она выполняет действия, подобные тем, что обычно выполняет
&man.netstat.1;, но со структурами данных, связанных с работой в сети
Bluetooth. В примере ниже описывается то же самое логическое
соединение, что и с &man.l2control.8; выше.&prompt.user; btsockstat
Active L2CAP sockets
PCB Recv-Q Send-Q Local address/PSM Foreign address CID State
c2afe900 0 0 00:02:72:00:d4:1a/3 00:07:e0:00:0b:ca 66 OPEN
Active RFCOMM sessions
L2PCB PCB Flag MTU Out-Q DLCs State
c2afe900 c2b53380 1 127 0 Yes OPEN
Active RFCOMM sockets
PCB Recv-Q Send-Q Local address Foreign address Chan DLCI State
c2e8bc80 0 250 00:02:72:00:d4:1a 00:07:e0:00:0b:ca 3 6 OPENRFCOMMПротокол RFCOMMПротокол RFCOMM эмулирует последовательные порты поверх протокола
L2CAP. Он основан на ETSI-стандарте TS 07.10. RFCOMM представляет
собой простой транспортный протокол, с дополнительными возможностями по
эмуляции 9 цепей последовательных портов RS-232 (EIATIA-232-E).
Протокол RFCOMM поддерживает одновременно до 60 соединений (каналов
RFCOMM) между двумя устройствами Bluetooth.В рамках RFCOMM полный коммуникационный маршрут включает два
приложения, работающие на разных устройствах (конечные коммуникационные
точки) с коммуникационным сегментом между ними. RFCOMM предназначен
для сокрытия приложений, использующих последовательные порты устройств,
в которых они расположены. Коммуникационный сегмент по сути является
Bluetooth-связью от одного устройства к другому (прямое
соединение).RFCOMM имеет дело с соединением между устройствами в случае прямого
соединения, или между устройством и модемом в сетевом случае. RFCOMM
может поддерживать и другие конфигурации, такие, как модули, работающие
через беспроводную технологию Bluetooth с одной стороны и
предоставляющие проводное соединение с другой стороны.Во &os; протокол RFCOMM реализован на уровне сокетов
Bluetooth.pairingPairing of DevicesПо умолчанию связь Bluetooth не аутентифицируется, поэтому любое
устройство может общаться с любым другим. Устройство Bluetooth
(например, сотовый телефон) может задать обязательность аутентификации
для предоставления определённого сервиса (в частности, услугу доступа
по коммутируемой линии). Bluetooth-аутентификация обычно выполняется
через PIN-коды. PIN-код представляет из себя
ASCII-строку длиной до 16 символов. Пользователь обязан ввести один и
тот же PIN-код на обоих устройствах. Как только он введёт PIN-код,
оба устройства сгенерируют ключ связи. После
этого ключ может быть сохранён либо в самом устройстве, либо на
постоянном носителе. В следующий раз оба устройства будут использовать
ранее сгенерированный ключ соединения. Процедура, описанная выше,
носит название подгонки пары (pairing). Заметьте,
что если ключ связи потерян любой из сторон, то подбор пары должен быть
повторен.За обработку всех запросов на Bluetooth-аутентификацию отвечает
даемон &man.hcsecd.8;. По умолчанию файл конфигурации называется
/etc/bluetooth/hcsecd.conf. Пример раздела,
содержащего информацию о сотовом телефоне с явно заданным PIN-кодом
1234 приведен ниже:device {
bdaddr 00:80:37:29:19:a4;
name "Pav's T39";
key nokey;
pin "1234";
}Кроме длины, на PIN-коды не накладывается никаких ограничений.
Некоторые устройства (например, Bluetooth-гарнитуры) могут иметь
фиксированный встроенный PIN-код. Параметр
позволяет запустить &man.hcsecd.8; как нефоновый процесс, что облегчает
просмотр происходящих событий. Задайте получение парного ключа на
удалённом устройстве и инициируйте Bluetooth-соединение с этим
устройством. Удалённое устройство должно подтвердить получение пары и
запросить PIN-код. Введите тот же самый код, что находится в
hcsecd.conf. Теперь ваш ПК и удалённое устройство
спарены. Альтернативным способом является инициация процесса создания
пары на удалённом устройстве. Ниже даётся пример выдачи протокола
команды hcsecd:hcsecd[16484]: Got Link_Key_Request event from 'ubt0hci', remote bdaddr 0:80:37:29:19:a4
hcsecd[16484]: Found matching entry, remote bdaddr 0:80:37:29:19:a4, name 'Pav's T39', link key doesn't exist
hcsecd[16484]: Sending Link_Key_Negative_Reply to 'ubt0hci' for remote bdaddr 0:80:37:29:19:a4
hcsecd[16484]: Got PIN_Code_Request event from 'ubt0hci', remote bdaddr 0:80:37:29:19:a4
hcsecd[16484]: Found matching entry, remote bdaddr 0:80:37:29:19:a4, name 'Pav's T39', PIN code exists
hcsecd[16484]: Sending PIN_Code_Reply to 'ubt0hci' for remote bdaddr 0:80:37:29:19:a4SDPService Discovery Protocol (SDP)Протокол обнаружения сервисов SDP даёт возможность клиентским
приложениям осуществлять поиск услуг, предоставляемых серверными
приложениями, а также характеристик этих услуг. В перечень атрибутов
сервиса включается тип класса предлагаемого сервиса и информация о
механизме или протоколе, требуемом для использования сервиса.SDP подразумевает коммуникации между SDP-сервером и SDP-клиентом.
Сервер поддерживает список сервисов, в котором описываются параметры
сервисов, связанных с сервером. Каждая запись об услуге содержит
информацию об одном сервисе. Клиент может запросить информацию об
определённом сервисе, обслуживаемом SDP-сервером, выдавая SDP-запрос.
Если клиент или приложение, связанное с клиентом, решат воспользоваться
сервисом, то для его использования необходимо открыть отдельное
соединение к устройству, предоставляющему сервис. SDP предоставляет
механизм обнаружения услуг и их параметров, но не даёт механизма
использования этих сервисов.Обычно SDP-клиент выполняет поиск услуг на основе некоторых
желаемых характеристик услуг. Однако иногда возникает необходимость
выяснить полный перечень типов услуг, предоставляемых SDP-сервером,
не имея никакой информации об имеющихся сервисах. Такой процесс
всех предлагаемых сервисов называется обзором
(browsing).Bluetooth SDP сервер &man.sdpd.8; и клиент с интерфейсом
командной строки &man.sdpcontrol.8; включены в стандартную поставку
&os;. В следующем примере показано, как выполнять
запрос на SDP-обзор.&prompt.user; sdpcontrol -a 00:01:03:fc:6e:ec browse
Record Handle: 00000000
Service Class ID List:
Service Discovery Server (0x1000)
Protocol Descriptor List:
L2CAP (0x0100)
Protocol specific parameter #1: u/int/uuid16 1
Protocol specific parameter #2: u/int/uuid16 1
Record Handle: 0x00000001
Service Class ID List:
Browse Group Descriptor (0x1001)
Record Handle: 0x00000002
Service Class ID List:
LAN Access Using PPP (0x1102)
Protocol Descriptor List:
L2CAP (0x0100)
RFCOMM (0x0003)
Protocol specific parameter #1: u/int8/bool 1
Bluetooth Profile Descriptor List:
LAN Access Using PPP (0x1102) ver. 1.0
... и так далее. Заметьте, что каждый сервис имеет перечень
атрибутов (например, канал RFCOMM). В зависимости от сервиса вам может
потребоваться где-то сохранить эти атрибуты. Некоторые реализации
Bluetooth не поддерживают просмотр сервисов и могут возвращать пустой
список. В этом случае возможен поиск конкретной услуги. В примере
ниже показано, как выполнить поиск службы OBEX Object Push
(OPUSH):&prompt.user; sdpcontrol -a 00:01:03:fc:6e:ec search OPUSHВо &os; предоставление сервисов клиентам Bluetooth осуществляется
сервером &man.sdpd.8;:&prompt.root; sdpdПриложение на локальном сервере, желающее предоставить сервис
Bluetooth удаленным клиентам, регистрирует сервис через локального
даемона SDP. Пример такого приложения — &man.rfcomm.pppd.8;.
После запуска оно регистрирует Bluetooth LAN сервис через локального
даемона SDP.Список сервисов, зарегистрированных через локальный SDP сервер,
может быть получен путем выдачи запроса на просмотр SDP через
локальный контрольный канал:&prompt.root; sdpcontrol -l browseДоступ к сети по коммутируемой линии связи (DUN) и по протоколу
PPP (LAN)Модуль работы с коммутируемым доступом к сети (DUN - Dial-Up
Networking) в большинстве случаев используется с модемами и сотовыми
телефонами. Этот модуль покрывает следующие случаи:сотовый телефон или модем используется вместе с компьютером
в качестве беспроводного модема для подключения к серверу
коммутируемого доступа в Интернет, или другой коммутируемой
услуге;сотовый телефон или модем используется компьютером для приёма
входящих соединений.Модуль доступа к сети по протоколу PPP (Network Access with
PPP - LAN) может использоваться в следующих ситуациях:доступ к ЛВС для одного Bluetooth-устройства;доступ к ЛВС для нескольких Bluetooth-устройств;связь между двумя ПК (при помощи протокола PPP поверх
эмулируемого последовательного канала связи).Во &os; оба случая реализуются при помощи сервисных программ
&man.ppp.8; и &man.rfcomm.pppd.8; - это обработчик, преобразующий
RFCOMM-соединения Bluetooth в нечто, с чем может работать PPP. Перед
тем, как использовать любой модуль, в файле
/etc/ppp/ppp.conf должна быть создана новая
PPP-метка. Примеры использования можно найти в справочной странице к
&man.rfcomm.pppd.8;.В следующем примере &man.rfcomm.pppd.8; будет использоваться для
открытия RFCOMM-соединения к удалённому устройству с BD_ADDR
00:80:37:29:19:a4 на DUN RFCOMM-канале. Реальный номер RFCOMM-канала
будет получаться с удалённого устройства через SDP. Возможно указать
RFCOMM-канал вручную, и в этом случае &man.rfcomm.pppd.8; не будет
выполнять SDP-запрос. Для нахождения RFCOMM-канала на удалённом
устройстве используйте утилиту &man.sdpcontrol.8;.&prompt.root; rfcomm_pppd -a 00:80:37:29:19:a4 -c -C dun -l rfcomm-dialupДля того, чтобы организовать сервис Network Access with PPP (LAN),
необходимо запустить сервер &man.sdpd.8;. В файле
/etc/ppp/ppp.conf должна быть создана новая запись
для клиентов LAN. Примеры можно найти в справке по
&man.rfcomm.pppd.8;. Наконец, запустите RFCOMM PPP сервер на
существующем номере канала RFCOMM. Сервер RFCOMM PPP автоматически
зарегистрирует Bluetooth LAN сервис через локальный SDP даемон.
В примере ниже показано, как запустить сервер RFCOMM PPP.&prompt.root; rfcomm_pppd -s -C 7 -l rfcomm-serverOBEXOBEX Object Push (OPUSH) ProfileOBEX является широко используемым протоколом для простой передачи
файлов между мобильными устройствами. В основном он используется в
коммуникациях через инфракрасный порт для передачи файлов между
ноутбуками или КПК, а также для пересылки визитных
карточек или календарных планов между сотовыми телефонами и
другими устройствами с персональными информационными
менеджерами.Сервер и клиент OBEX реализованы в виде пакета стороннего
разработчика obexapp, который доступен
в виде порта comms/obexapp.Клиент OBEX используется для посылки или приёма объектов с сервера
OBEX. Объектом, к примеру, может быть визитная карточка или
указание. Клиент OBEX может получить номер RFCOMM-канала, указав
вместо него имя сервиса. Поддерживаются следующие имена сервиса: IrMC,
FTRN и OPUSH. Канал RFCOMM можно задать его номером. Ниже даётся
пример сеанса OBEX, где с сотового телефона забирается объект с
информацией об устройстве, а новый объект (визитная карточка)
передаётся в каталог сотового телефона.&prompt.user; obexapp -a 00:80:37:29:19:a4 -C IrMC
obex> get
get: remote file> telecom/devinfo.txt
get: local file> devinfo-t39.txt
Success, response: OK, Success (0x20)
obex> put
put: local file> new.vcf
put: remote file> new.vcf
Success, response: OK, Success (0x20)
obex> di
Success, response: OK, Success (0x20)Для того, чтобы предоставить сервис OBEX Push, должен быть запущен
сервер &man.sdpd.8;. Должен быть создан
корневой каталог, в котором будут сохраняться все поступающие объекты.
По умолчанию корневым каталогом является
/var/spool/obex. Наконец, запустите OBEX
сервер на существующем номере канала RFCOMM. OBEX сервер
автоматически зарегистрирует сервис OBEX Object Push через локального
даемона SDP. В примере ниже показано, как запустить
OBEX-сервер.&prompt.root; obexapp -s -C 10Профиль последовательного порта (SPP)Профиль последовательного порта (SPP - Serial Port Profile) позволяет
Bluetooth-устройствам осуществлять эмуляцию последовательного порта
RS232 (или подобного). Этот профиль покрывает случаи, касающиеся
работы унаследованных приложений с Bluetooth в качестве замены
кабельному соединению, при это используется абстракция виртуального
последовательного порта.Утилита &man.rfcomm.sppd.1; реализует профиль
последовательного порта. В качестве виртуального последовательного порта
используется псевдотерминал. В примере ниже показано, как подключиться
к сервису Serial Port удалённого устройства. Заметьте, что вы не
указываете RFCOMM-канал - &man.rfcomm.sppd.1; может получить его с
удалённого устройства через SDP. Если вы хотите переопределить это,
укажите RFCOMM-канал явно в командной строке.&prompt.root; rfcomm_sppd -a 00:07:E0:00:0B:CA -t /dev/ttyp6
rfcomm_sppd[94692]: Starting on /dev/ttyp6...После подключения псевдотерминал можно использовать как
последовательный порт:&prompt.root; cu -l ttyp6Решение проблемУдалённое устройство не подключаетсяНекоторые старые Bluetooth-устройства не поддерживают
переключение ролей. По умолчанию, когда &os; подтверждает новое
соединение, она пытается выполнить переключение роли и стать ведущим
устройством. Устройства, которые это не поддерживают, не смогут
подключиться. Заметьте, что переключение ролей выполняется при
установлении нового соединения, поэтому невозможно выяснить,
поддерживает ли удалённое устройство переключение ролей. На
локальной машине имеется возможность отключить переключение ролей при
помощи HCI-параметра:&prompt.root; hccontrol -n ubt0hci write_node_role_switch 0Что-то идёт не так, можно ли посмотреть, что в точности
происходит?Да, можно. Воспользуйтесь пакетом
hcidump-1.5 стороннего разработчика,
который доступен для загрузки с . Утилита
hcidump похожа на &man.tcpdump.1;. Она
может быть использована для вывода на терминал содержимого
Bluetooth-пакетов и сбрасывать пакеты Bluetooth в файл.StevePetersonТекст создал МостыВведениеподсеть IPсетевой мостИногда полезно разделить одну физическую сеть (такую, как
сегмент Ethernet) на два отдельных сегмента сети без необходимости
создания подсетей IP и использования маршрутизатора для соединения
сегментов. Устройство, которое соединяет две сети на такой манер,
называется сетевым мостом (bridge).
Система FreeBSD с двумя сетевыми адаптерами может выступать в роли
моста.Мост работает на основе изучения адресов уровня MAC (адресов
Ethernet) устройств на каждом из своих сетевых интерфейсах.
Он перенаправляет трафик между двумя сетями, только когда адреса
отправителя и получателя находятся в разных сетях.По многим параметрам мост работает также, как коммутатор Ethernet
с малым количеством портов.Ситуации, когда можно использовать мостыНа сегодняшний день есть две ситуации, когда можно использовать
мост.Большой трафик в сегментеПервая ситуация возникает, когда ваша физическая сеть перегружена
трафиком, но по каким-то соображениям вы не хотите разделять сеть
на подсети и соединять их с помощью маршрутизатора.Давайте рассмотрим в качестве примера газету, в которой
редакторский и производственный отделы находятся в одной и той же
подсети. Пользователи в редакторском отделе все используют сервер
A для служб доступа к файлам, а пользователи
производственного отдела используют сервер B. Для
объединения всех пользователей используется сеть Ethernet, а высокая
нагрузка на сеть замедляет работу.Если пользователи редакторского отдела могут быть собраны в
одном сегменте сети, а пользователи производственного отдела в
другом, то два сетевых сегмента можно объединить мостом. Только
сетевой трафик, предназначенный для интерфейсов с
другой стороны моста, будет посылаться в другую сеть,
тем самым снижая уровень нагрузки на каждый сегмент сети.Межсетевой экран с возможностями фильтрации/ограничения
пропускной способности трафикамежсетевой экрантрансляция сетевых адресовВторой распространенной ситуацией является необходимость в
обеспечении функций межсетевого экрана без трансляции
сетевых адресов (NAT).Для примера можно взять маленькую компанию, которая подключена
к своему провайдеру по каналу DSL или ISDN. Для неё провайдер выделил
13 глобально доступных IP-адресов для имеющихся в сети 10 персональных
компьютеров. В такой ситуации использование межсетевого экрана
на основе маршрутизатора затруднено из-за проблем с разделением на
подсети.маршрутизаторDSLISDNМежсетевой экран на основе моста может быть настроен и включен
между маршрутизаторами DSL/ISDN без каких-либо проблем с
IP-адресацией.Настройка мостаВыбор сетевого адаптераДля работы моста требуются по крайней мере два сетевых адаптера.
К сожалению, не все сетевые адаптеры во FreeBSD 4.0 поддерживают
функции моста. Прочтите страницу Справочника по &man.bridge.4; для
выяснения подробностей о поддерживаемых адаптерах.Перед тем, как продолжить, сначала установите и протестируйте
два сетевых адаптера.Изменения в конфигурации ядрапараметры ядраoptions BRIDGEДля включения поддержки функций моста в ядре, добавьте
строчкуoptions BRIDGEв файл конфигурации вашего ядра, и перестройте ядро.Поддержка функций межсетевого экранамежсетевой экранЕсли вы планируете использовать мост в качестве межсетевого
- экрана, вам нужно также добавить опции
- IPFIREWALL и PFIL_HOOKS.
+ экрана, вам нужно также добавить опцию
+ IPFIREWALL.
Прочтите , содержащий общую
информацию о настройке моста в качестве межсетевого экрана.Если вам необходимо обеспечить прохождение не-IP пакетов (таких,
как ARP) через мост, то имеется опция межсетевого
экрана, которую можно задать. Это опция
IPFIREWALL_DEFAULT_TO_ACCEPT. Заметьте, что при
этом правило, используемое межсетевым экраном по умолчанию, меняется
на разрешительное для всех пакетов. Перед тем, как задавать эту
опцию, убедитесь, что вы понимаете работу вашего набора
правил.Поддержка функций ограничения пропускной способностиЕсли вы хотите использовать мост в качестве машины,
ограничивающей пропускную способность, то добавьте в файл
конфигурации ядра опцию DUMMYNET. Дополнительную
информацию можно почерпнуть из страницы Справочника по
&man.dummynet.4;.Включение функций мостаДобавьте строкуnet.link.ether.bridge=1в файл /etc/sysctl.conf для включения функций
моста во время работы системы, и строку:net.link.ether.bridge_cfg=if1,if2для включения функций моста для указанных интерфейсов (замените
if1 и if2 на
имена двух ваших сетевых интерфейсов). Если вы хотите, чтобы
проходящие через мост пакеты фильтровались посредством &man.ipfw.8;,
вы должны добавить строчку:net.link.ether.bridge_ipfw=1Во &os; 5.2-RELEASE и последующих версиях нужно использовать
вместо указанных следующие строки:net.link.ether.bridge.enable=1
net.link.ether.bridge.config=if1,if2
net.link.ether.bridge.ipfw=1Дополнительные замечанияЕсли вы хотите осуществлять удалённый доступ на мост через
&man.ssh.1; из сети, то корректно назначить одному из сетевых
адаптеров IP-адрес. Общепринято, что назначение адреса обоим сетевым
адаптерам является не самой хорошей идеей.Если в вашей сети присутствует несколько мостов, не должно быть
более одного маршрута между любыми двумя рабочими станциями. С
технической точки зрения это означает отсутствие поддержки протокола
spanning tree.Сетевой мост может увеличить задержки в замерах командой
&man.ping.8;, особенно для трафика между двумя разными
сегментами.Jean-FrançoisDockèsТекст обновил AlexDupreРеорганизовал и улучшил Работа с бездисковыми станциямиработа без дискаМашина с FreeBSD может загружаться по сети и работать без наличия
локального диска, используя файловые системы, монтируемые с сервера NFS.
Кроме стандартных конфигурационных файлов, не нужны никакие модификации
в системе. Такую систему легко настроить, потому что все необходимые
элементы уже готовы:Имеется по крайней мере два возможных способа загрузки ядра по
сети:PXE: Система &intel; Preboot eXecution
Environment является формой загрузочного ПЗУ, встроенного в
некоторые сетевые адаптеры или материнские платы. Обратитесь к
справочной странице по &man.pxeboot.8; для получения более полной
информации.Порт Etherboot (net/etherboot) генерирует код,
который может применяться в ПЗУ для загрузки ядра по сети. Код
может быть либо прошит в загрузочный PROM на сетевом адаптере,
либо загружен с локальной дискеты (или винчестера), или с
работающей системы &ms-dos;. Поддерживаются многие сетевые
адаптеры.Примерный скрипт
(/usr/share/examples/diskless/clone_root)
облегчает создание и поддержку корневой файловой системы рабочей
станции на сервере. Скрипт, скорее всего, потребует некоторых
настроек, но он позволит вам быстро начать работу.Стандартные файлы начального запуска системы, располагающиеся в
/etc, распознают и поддерживают загрузку системы
в бездисковом варианте.Подкачка, если она нужна, может выполняться через файл NFS либо
на локальный диск.Существует много способов настройки бездисковой рабочей станции. При
этом задействованы многие компоненты, и большинство из них могут быть
настроены для удовлетворения ваших вкусов. Далее будет описаны варианты
полной настройки системы, при этом упор будет делаться на простоту и
совместимость с стандартной системой скриптов начальной загрузки FreeBSD.
Описываемая система имеет такие характеристики:Бездисковые рабочие станции совместно используют
файловую систему / в режиме только
чтения, а также используют /usr совместно тоже
в режиме только чтения.Корневая файловая система является копией
стандартной корневой системы FreeBSD (обычно сервера), с некоторыми
настроечными файлами, измененными кем-то специально для бездисковых
операций или, возможно, для рабочей станции, которой она
предназначена.Части корневой файловой системы, которые
должны быть доступны для записи, перекрываются файловыми системами
&man.mfs.8; (&os; 4.X) или &man.md.4; (&os; 5.X).
Любые изменения будут потеряны при перезагрузках
системы.Ядро передается и загружается посредством
Etherboot или PXE,
и в некоторых ситуациях может быть использован любой из
этих методов.Как описано, эта система не защищена. Она должна располагаться в
защищенной части сети, а другие хосты не должны на нее
полагаться.Вся информация этого раздела была протестирована с
релизами &os; 4.9-RELEASE и 5.2.1-RELEASE. Текст структурирован
преимущественно для использования с 4.X. Отличия
для 5.X упоминаются особо.Общая информацияНастройка бездисковых рабочих станций относительно проста,
но в то же время легко сделать ошибку. Иногда сложно
диагностировать эти ошибки по нескольким причинам.
Например:Параметры компиляции могут по-разному проявлять
себя во время работы.Сообщения об ошибках бывают загадочны или вовсе
отсутствуют.В данной ситуации некоторые знания, касающиеся используемых
внутренних механизмов, очень полезны при разрешении проблем,
которые могут возникнуть.Для выполнения успешной загрузки необходимо произвести
несколько операций:Компьютеру необходимо получить начальные параметры, такие
как собственный IP адрес, имя исполняемого файла, корневой
каталог. Для этого используются протоколы DHCP
или BOOTP. DHCP это совместимое расширение
BOOTP, используются те же номера портов и основной формат
пакетов.Возможна настройка системы для использования только BOOTP.
Серверная программа &man.bootpd.8; включена в основную систему
&os;.Тем не менее, у DHCP есть множество
преимуществ над BOOTP (лучше файлы настройки, возможность
использования PXE, плюс многие другие
преимущества, не относящиеся непосредственно к бездисковым
операциям), и мы в основном будем описывать настройку
DHCP, с эквивалентными примерами
для &man.bootpd.8;, когда это возможно. Пример
конфигурации будет использовать пакет
ISC DHCP (релиз
3.0.1.r12 был установлен на тестовом сервере).Компьютеру требуется загрузить в локальную память одну
или несколько программ. Используются TFTP
или NFS. Выбор между
TFTP или NFS
производится во время компилирования в нескольких местах.
Часто встречающаяся ошибка это указание имен файлов для
другого протокола: TFTP обычно
загружает все файлы с одного каталога сервера, и принимает
имена файлов относительно этого каталога. NFS
нужны абсолютные пути к файлам.Необходимо инициализировать и выполнить возможные
промежуточные программы загрузки и ядро. В этой области
существует несколько важных вариаций:PXE загрузит &man.pxeboot.8;,
являющийся модифицированной версией загрузчика
третьей стадии &os;. &man.loader.8; получит большинство
параметров, необходимых для старта системы, и оставит
их в окружении ядра до контроля передачи. В этом
случае возможно использование ядра
GENERIC.Etherboot, непосредственно
загрузит ядро, с меньшей подготовкой. Вам потребуется
собрать ядро со специальными параметрами.PXE и Etherboot
работают одинаково хорошо с системами 4.X. Поскольку ядро
5.X обычно позволяет &man.loader.8; выполнить больше
предварительной работы, метод PXE на системах
5.X предпочтителен.Если ваш BIOS и сетевые карты поддерживают
PXE, используйте его. Однако, все же возможен
запуск системы 5.X с Etherboot.Наконец, компьютеру требуется доступ к файловым системам.
NFS используется во всех случаях.Обратитесь также к странице справочника &man.diskless.8;.Инструкции по настройкеКонфигурация с использованием ISC DHCPDHCPбездисковые конфигурацииСервер ISC DHCP может обрабатывать
как запросы BOOTP, так и запросы DHCP.Начиная с релиза 4.9, ISC DHCP 3.0
не включается в поставку системы. Сначала вам нужно будет
установить порт net/isc-dhcp3-server
или соответствующий пакет.После установки ISC DHCP ему для
работы требуется конфигурационный файл (обычно называемый
/usr/local/etc/dhcpd.conf). Вот
прокомментированный пример, где хост margaux
использует Etherboot, а хост
corbieres использует
PXE:
default-lease-time 600;
max-lease-time 7200;
authoritative;
option domain-name "example.com";
option domain-name-servers 192.168.4.1;
option routers 192.168.4.1;
subnet 192.168.4.0 netmask 255.255.255.0 {
use-host-decl-names on;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.4.255;
host margaux {
hardware ethernet 01:23:45:67:89:ab;
fixed-address margaux.example.com;
next-server 192.168.4.4;
filename "/data/misc/kernel.diskless";
option root-path "192.168.4.4:/data/misc/diskless";
}
host corbieres {
hardware ethernet 00:02:b3:27:62:df;
fixed-address corbieres.example.com;
next-server 192.168.4.4;
filename "pxeboot";
option root-path "192.168.4.4:/data/misc/diskless";
}
}
Этот параметр указывает dhcpd посылать
значения деклараций host как имя хоста для
бездисковой машины. Альтернативным способом было бы добавление
option host-name
margaux внутри объявлений
host.Директива next-server определяет сервер
TFTP или NFS,
используемый для получения загрузчика или файла ядра
(по умолчанию используется тот же самый хост, на котором
расположен сервер DHCP).Директива filename определяет файл,
который Etherboot или
PXE будут загружать для следующего шага
выполнения. Он должен быть указан в соответствии с
используемым методом передачи.
Etherboot может быть скомпилирован
для использования NFS или
TFTP. &os; порт по умолчанию использует
NFS. PXE использует
TFTP, поэтому здесь применяются
относительные пути файлов (это может зависеть от настроек
TFTP сервера, но обычно довольно типично).
Кроме того, PXE загружает
pxeboot, а не ядро. Существуют другие
интересные возможности, такие как загрузка
pxeboot из каталога
/boot &os; CD-ROM
(поскольку &man.pxeboot.8; может загружать
GENERIC ядро, это делает возможной
загрузку с удаленного CD-ROM).Параметр root-path определяет путь к
корневой файловой системе, в обычной нотации
NFS. При использовании
PXE, можно оставить IP хоста отключенным,
если параметр ядра BOOTP не используется. Затем
NFS сервер может использоваться так же,
как и TFTP.Настройка с использованием BOOTPBOOTPбездисковые конфигурацииДалее описана эквивалентная конфигурация с использованием
bootpd (для одного клиента).
Она будет располагаться в
/etc/bootptab.Пожалуйста, отметьте, что Etherboot
должен быть откомпилирован с нестандартной опцией
NO_DHCP_SUPPORT для того, чтобы можно было
использовать BOOTP, и что для работы PXE
необходим DHCP.
Единственным очевидным
преимуществом bootpd является его
наличие в поставке системы.
.def100:\
:hn:ht=1:sa=192.168.4.4:vm=rfc1048:\
:sm=255.255.255.0:\
:ds=192.168.4.1:\
:gw=192.168.4.1:\
:hd="/tftpboot":\
:bf="/kernel.diskless":\
:rp="192.168.4.4:/data/misc/diskless":
margaux:ha=0123456789ab:tc=.def100
Подготовка программы загрузки при помощи
EtherbootEtherbootСайт
Etherboot содержит
подробную документацию, в основном предназначенную для систем
Linux, но несомненно, она полезна. Далее будет просто кратко
описано, как вы должны использовать
Etherboot в системе FreeBSD.Сначала вы должны установить пакет или порт net/etherboot.Вы можете изменить настройку
Etherboot (например, для использования
TFTP вместо NFS) путем
редактирования файла Config
в каталоге исходных текстов
Etherboot.В нашей ситуации мы будем использовать загрузочную дискету. Для
других методов (PROM или программа &ms-dos;) пожалуйста, обратитесь к
документации по Etherboot.Для создания загрузочной дискеты, вставьте дискету в дисковод на
машине, где установлен Etherboot, затем
перейдите в каталог src в дереве
Etherboot и наберите:
&prompt.root; gmake bin32/devicetype.fd0devicetype зависит от типа адаптера
Ethernet на бездисковой рабочей станции. Обратитесь к файлу
NIC в том же самом каталоге для определения
правильного значения для
devicetype.Загрузка с PXEПо умолчанию, &man.pxeboot.8; загружает ядро через
NFS. Он может быть скомпилирован для
использования вместо него TFTP путем
указания параметра LOADER_TFTP_SUPPORT в
/etc/make.conf. Смотрите комментарии в
/etc/defaults/make.conf (или
/usr/share/examples/etc/make.conf систем
5.X) с инструкциями.Есть два не документированных параметра
make.conf, которые могут быть полезны для
настройки бездискового компьютера с последовательной консолью:
BOOT_PXELDR_PROBE_KEYBOARD, и
BOOT_PXELDR_ALWAYS_SERIAL (последняя существует
только в &os; 5.X).Для использования PXE при загрузке компьютера
вам обычно потребуется выбрать параметр Boot from
network (загрузка по сети) в настройках
BIOS, или нажать функциональную клавишу во
время загрузки PC.Настройка серверов TFTP и NFSTFTPбездисковые конфигурацииNFSбездисковые конфигурацииЕсли вы используете PXE или
Etherboot, настроенные для
использования TFTP, вам нужно включить
tftpd на файловом сервере:Создайте каталог, файлы которого будет обслуживать
tftpd, например,
/tftpboot.Добавьте в ваш /etc/inetd.conf такую
строчку:tftp dgram udp wait root /usr/libexec/tftpd tftpd -l -s /tftpbootБывает, что некоторым версиям PXE
требуется TCP-вариант
TFTP. В таком случае добавьте вторую
строчку, заменяющую
dgram udp на stream
tcp.Укажите inetd на повторное чтение своего
конфигурационного файла:&prompt.root; kill -HUP `cat /var/run/inetd.pid`Вы можете поместить каталог tftpboot в любом
месте на сервере. Проверьте, что это местоположение указано как в
inetd.conf, так и в
dhcpd.conf.Во всех случаях, вам также нужно включить
NFS и экспортировать
соответствующую файловую систему на сервере
NFS.Добавьте следующее в
/etc/rc.conf:nfs_server_enable="YES"Экспортируйте файловую систему, в которой расположен
корневой каталог для бездисковой рабочей станции, добавив
следующую строку в /etc/exports (подправьте
точку монтирования и замените margaux
corbieres
именами бездисковых рабочих станций):/data/misc -alldirs -ro margaux corbieresУкажите mountd на повторное чтение
настроечного файла. На самом деле если вам потребовалось на
первом шаге включить NFS в /etc/rc.conf, то
вам нужно будет выполнить перезагрузку.&prompt.root; kill -HUP `cat /var/run/mountd.pid`Построение ядра для бездисковой рабочей станциибездисковые конфигурациинастройка ядраПри использовании Etherboot, вам
потребуется создать конфигурационный файл ядра для бездискового
клиента со
следующими параметрами (вдобавок к обычным):
options BOOTP # Use BOOTP to obtain IP address/hostname
options BOOTP_NFSROOT # NFS mount root filesystem using BOOTP info
Вам может потребоваться использовать
BOOTP_NFSV3, BOOT_COMPAT
и BOOTP_WIRED_TO
(посмотрите LINT в 4.X или
NOTES в 5.X).Эти имена параметров сложились исторически, и могут немного
ввести в заблуждение, поскольку включают необязательное
использование DHCP и BOOTP в ядре (возможно
включение обязательного использования BOOTP
или DHCP use).Постройте ядро (обратитесь к ) и
скопируйте его в каталог, указанный в
dhcpd.conf.При использовании PXE, сборка ядра
с вышеприведенными параметрами не является совершенно необходимой
(хотя желательна). Включение этих параметров приведет к
выполнению большинства DHCP запросов во время
загрузки ядра, с небольшим риском несоответствия новых значений
и значений, полученных &man.pxeboot.8; в некоторых особых
случаях. Преимущество использования в том, что в качестве
побочного эффекта будет установлено имя хоста. Иначе вам
потребуется установить имя хоста другим методом, например
в клиент-специфичном файле rc.conf.Для включения возможности загрузки с
Etherboot, в ядро 5.X необходимо
включить устройство hints. Вам потребуется установить
в файле конфигурации следующий параметр (см. файл
комментариев NOTES):hints "GENERIC.hints"Подготовка корневой файловой системыкорневая файловая системабездисковые конфигурацииВам нужно создать корневую файловую систему для бездисковых
рабочих станций, в местоположении, заданном как
root-path в
dhcpd.conf. В следующем разделе
описаны два способа, чтобы сделать это.Использование скрипта clone_rootЭто самый простой способ создания корневой файловой системы,
но на данный момент он не поддерживается в &os; 4.X. Этот
shell скрипт находится в
/usr/share/examples/diskless/clone_root,
и требует настройки, по крайней мере, задания того места, где
будет создана файловая система (переменная
DEST).Прочтите комментарии в начале скрипта для получения указаний.
Там описано, как строится основная файловая система, и как файлы
могут быть выборочно заменены версиями, предназначенными для работы
без диска, для подсети или для отдельной рабочей станции. Также
здесь даются примеры бездисковых файлов
/etc/fstab и
/etc/rc.conf.Файлы README в
/usr/share/examples/diskless много интересной
информации, но вместе с другими примерами из каталога
diskless они на самом деле описывают метод
настройки, который отличается от того, что используется в
clone_root и
стартовых скриптах системы из
/etc, этим несколько запутывая
дело. Используйте их только для справки, за исключением того случая,
когда вы выберете метод, ими описываемый, и тогда вам нужны
исправленные скрипты rc.Использование стандартной процедуры
make worldЭтот метод может быть применен к &os; 4.X или 5.X и
установит новую систему (не только корневую) в
DESTDIR. Все, что вам потребуется сделать,
это просто выполнить следующий скрипт:#!/bin/sh
export DESTDIR=/data/misc/diskless
mkdir -p ${DESTDIR}
cd /usr/src; make world && make kernel
cd /usr/src/etc; make distributionКак только это будет сделано, вам может потребоваться
настроить /etc/rc.conf и
/etc/fstab, помещенные в
DESTDIR, в соответствии с вашими
потребностями.Настройка области подкачкиЕсли это нужно, то файл подкачки, расположенный на сервере, можно
использовать посредством NFS. Один из методов,
используемых для этого, не поддерживается в релизах 5.X.Подкачка по NFS в &os; 4.XМестоположение и размер файла подкачки могут быть указаны
&os;-специфичными параметрами BOOTP/DHCP
128 и 129. Примеры файлов настройки для
ISC DHCP 3.0 или
bootpd приведены ниже:Добавьте следующие строки в
dhcpd.conf:
# Global section
option swap-path code 128 = string;
option swap-size code 129 = integer 32;
host margaux {
... # Standard lines, see above
option swap-path "192.168.4.4:/netswapvolume/netswap";
option swap-size 64000;
}
swap-path это путь к каталогу, где
находятся файлы подкачки. Название каждого файла имеет вид
swap.client-ip.Старые версии dhcpd использовали
синтаксис
option option-128 "..., который больше не
поддерживается.Во /etc/bootptab будет использоваться
такой синтаксис:T128="192.168.4.4:/netswapvolume/netswap":T129=0000fa00В файле /etc/bootptab размер файла
подкачки должен быть записан в шестнадцатеричном формате.На файловом сервере NFS создайте файл (или файлы)
подкачки:
&prompt.root; mkdir /netswapvolume/netswap
&prompt.root; cd /netswapvolume/netswap
&prompt.root; dd if=/dev/zero bs=1024 count=64000 of=swap.192.168.4.6
&prompt.root; chmod 0600 swap.192.168.4.6192.168.4.6 является IP-адресом
бездискового клиента.На файловом сервере NFS, в /etc/exports
добавьте такую строку:/netswapvolume -maproot=0:10 -alldirs margaux corbieresЗатем укажите mountd на повторное
чтение файла exports, как описано
ранее.Подкачка по NFS в &os; 4.XПоложение и размер файла подкачки могут быть указаны в
&os;-специфичных параметрах BOOTP/DHCP
с номерами 128 и 129. Ниже приведены примеры файлов
настройки для ISC DHCP 3.0 или
bootpd:Добавьте следующие строки к
dhcpd.conf:
# Global section
option swap-path code 128 = string;
option swap-size code 129 = integer 32;
host margaux {
... # Standard lines, see above
option swap-path "192.168.4.4:/netswapvolume/netswap";
option swap-size 64000;
}
swap-path это путь к каталогу, где
расположены файлы подкачки. Файлы называются
swap.client-ip.Старые версии dhcpd используют
синтаксис option option-128 "..., которые
более не поддерживаются./etc/bootptab вместо этого использует
следующий синтаксис:T128="192.168.4.4:/netswapvolume/netswap":T129=0000fa00В /etc/bootptab, размер
подкачки должен вычисляться в шестнадцатеричном
формате.Создайте на NFS сервере с файлами подкачки
файлы:
&prompt.root; mkdir /netswapvolume/netswap
&prompt.root; cd /netswapvolume/netswap
&prompt.root; dd if=/dev/zero bs=1024 count=64000 of=swap.192.168.4.6
&prompt.root; chmod 0600 swap.192.168.4.6192.168.4.6 это IP адрес
бездискового клиента.На файловом сервере NFS с файлами
подкачки добавьте следующую строку к
/etc/exports:/netswapvolume -maproot=0:10 -alldirs margaux corbieresЗатем заставьте mountd перечитать
конфигурационные файлы как было показано выше.Различные проблемыРабота с /usr, доступной только для
чтениябездисковые конфигурации/usr только для чтенияЕсли бездисковая рабочая станция настроена на запуск X, вам
нужно подправить настроечный файл для
XDM, который по умолчанию
помещает протокол ошибок в /usr.Использование не-FreeBSD сервераЕсли сервер с корневой файловой системой работает не под
управлением FreeBSD, вам потребуется создать корневую файловую
систему на машине FreeBSD, а затем скопировать ее в нужно место,
при помощи tar или
cpio.В такой ситуации иногда возникают проблемы со
специальными файлами в /dev из-за различной
разрядности целых чисел для старшего/младшего чисел. Решением
этой проблемы является экспортирование каталога с не-FreeBSD
сервера, монтирование его на машине с FreeBSD и запуск
скрипта MAKEDEV на машине с FreeBSD для создания
правильных файлов устройств (во FreeBSD 5.0 и более поздних версиях
используется &man.devfs.5; для создания файлов устройств прозрачно
для пользователя, запуск MAKEDEV в этих версиях
бессмысленно).ISDNISDNПолезным источником информации о технологии ISDN и его аппаратном
обеспечении является
Страница Дэна Кегела (Dan Kegel) об ISDN.Быстрое введение в ISDN:Если вы живёте в Европе, то вам может понадобиться изучить раздел
об ISDN-адаптерах.Если вы планируете использовать ISDN в основном для соединений
с Интернет через провайдера по коммутируемому, невыделенному
соединению, рекомендуется посмотреть информацию о терминальных
адаптерах. Это даст вам самую большую гибкость и наименьшее
количество проблем при смене провайдера.Если вы объединяете две локальные сети или подключаетесь к
Интернет через постоянное ISDN-соединение, рекомендуем остановить свой
выбор на отдельном мосте/маршрутизаторе.Стоимость является важным фактором при выборе вашего решения.
Далее перечислены все возможности от самого дешевого до самого дорогого
варианта.HellmuthMichaelisТекст предоставил Адаптеры ISDNISDNадаптерыРеализация ISDN во FreeBSD поддерживает только стандарт DSS1/Q.931
(или Евро-ISDN) при помощи пассивных адаптеров. Начиная с
FreeBSD 4.4 поддерживаются некоторые активные адаптеры, прошивки
которых поддерживают также другие сигнальные протоколы; также сюда
впервые включена поддержка адаптеров ISDN Primary Rate (PRI).Пакет программ isdn4bsd позволяет вам
подключаться к другим маршрутизаторам ISDN при помощи IP поверх DHLC,
либо при помощи синхронного PPP; либо при помощи PPP на уровне ядра с
isppp, модифицированного драйвера &man.sppp.4;, или
при помощи пользовательского
&man.ppp.8;. При использовании пользовательского &man.ppp.8; возможно
использование двух и большего числа B-каналов ISDN. Также имеется
приложение, работающее как автоответчик, и много утилит, таких, как
программный модем на 300 Бод.Во FreeBSD поддерживается все возрастающее число адаптеров ISDN для
ПК, и сообщения показывают, что они успешно используются по всей Европе
и других частях света.Из пассивных адаптеров ISDN поддерживаются в основном те, которые
сделаны на основе микросхем Infineon (бывший Siemens) ISAC/HSCX/IPAC
ISDN, а также адаптеры ISDN с микросхемами от Cologne Chip (только для
шины ISA), адаптеры PCI с микросхемами Winbond W6692, некоторые
адаптеры с набором микросхем Tiger300/320/ISAC и несколько адаптеров,
построенных на фирменных наборах микросхем, такие, как AVM Fritz!Card
PCI V.1.0 и AVM Fritz!Card PnP.На данный момент из активных адаптеров ISDN поддерживаются AVM B1
(ISA и PCI) адаптеры BRI и AVM T1 PCI адаптеры PRI.Документацию по isdn4bsd можно найти в
каталоге /usr/share/examples/isdn/ вашей системы
FreeBSD или на домашней
странице isdn4bsd, на которой также размещены ссылки на советы,
замечания по ошибкам и более подробную информацию, например, на руководство по
isdn4bsd.Если вы заинтересованы в добавлении поддержки для различных
протоколов ISDN, не поддерживаемых на данный момент адаптеров ISDN для
PC или каких-то других усовершенствованиях
isdn4bsd, пожалуйста, свяжитесь с
&a.hm;.Для обсуждения вопросов, связанных с установкой, настройкой и
устранением неисправностей isdn4bsd,
имеется список рассылки &a.isdn.name;.subscribe freebsd-isdnТерминальные адаптеры ISDNТерминальные адаптеры (TA) для ISDN выполняют ту же роль, что и
модемы для обычных телефонных линий.модемБольшинство TA используют стандартный набор AT-команд Hayes-модемов,
и могут использоваться в качестве простой замены для модемов.TA будут работать точно так же, как и модемы, за исключением
скорости соединения и пропускной способности, которые будут гораздо
выше, чем у вашего старого модема. Вам потребуется настроить PPP точно также, как и в случае использования
модема. Проверьте, что вы задали скорость работы последовательного
порта максимально высокой.PPPГлавным преимуществом использования TA для подключения к провайдеру
Интернет является возможность использования динамического PPP. Так
как пространство адресов IP истощается все больше, большинство
провайдеров не хочет больше выдавать вам статический IP-адрес.
Большинство же маршрутизаторов не может использовать динамическое
выделение IP-адресов.TA полностью полагаются на даемон PPP, который используете из-за
его возможностей и стабильности соединения. Это позволяет вам при
использовании FreeBSD легко заменить модем на ISDN, если у вас уже
настроено соединение PPP. Однако, в тоже время любые проблемы, которые
возникают с программой PPP, отражаются и здесь.Если вы хотите максимальной надёжности, используйте PPP на уровне параметра ядра, а не пользовательский PPP.Известно, что следующие TA работают с FreeBSD:Motorola BitSurfer и Bitsurfer ProAdtranБольшинство остальных TA, скорее всего, тоже будут работать,
производители TA прилагают все усилия для обеспечения поддержки
практически всего набора стандартных AT-команд модема.Как и в случае модемов проблемой использования внешнего TA является
потребность в хорошем последовательном адаптере на вашем
компьютере.Вы должны прочесть учебник Последовательные устройства
во FreeBSD для того, чтобы в деталях понять работу
последовательных устройств и осознать различие между асинхронными и
синхронными последовательными портами.TA, работающий со стандартным последовательным (асинхронным) портом
PC, ограничивает вас скоростью 115.2 Кбит/с, хотя реально у вас
соединение на скорости 128 Кбит/с. Чтобы использовать
128 Кбит/с, которые обеспечивает ISDN, полностью, вы должны
подключить TA к синхронному последовательному адаптеру.Не обманывайте себя, думая, что покупка встроенного TA поможет
избежать проблемы синхронности/асинхронности. Встроенные TA просто
уже имеют внутри стандартный последовательный порт PC. Все, что при
этом достигается - это экономия дополнительных последовательного
кабеля и электрической розетки.Синхронный адаптер с TA по крайней мере так же быстр, как и
отдельный маршрутизатор, а если он работает под управлением машины
класса 386 с FreeBSD, то это гораздо более гибкое решение.Выбор между использованием синхронного адаптера/TA или отдельного
маршрутизатора в большей степени является религиозным вопросом. По этому
поводу в списках рассылки была некоторая дискуссия. Рекомендуем поискать
в архивах обсуждение
полностью.Отдельные мосты/маршрутизаторы ISDNISDNотдельно стоящие мосты/маршрутизаторыМосты или маршрутизаторы ISDN не так уж специфичны для FreeBSD
или для любой другой операционной системы. Для более подробного
описания технологий маршрутизации и работы мостов, пожалуйста,
обратитесь к справочникам по сетевым технологиям.В контексте этого раздела термины маршрутизатор и сетевой мост будут
использоваться как взаимозаменяемые.Вместе с падением цен на простые мосты/маршрутизаторы ISDN, они
становятся все более популярными. Маршрутизатор ISDN представляет
собой маленькую коробочку, которая подключается непосредственно в
вашу сеть Ethernet, и поддерживает связь с другим мостом/маршрутизатором.
Всё программное обеспечение для работы по PPP и другим протоколам
встроено в маршрутизатор.Маршрутизатор обладает гораздо большей пропускной способностью, чем
стандартный TA, так как он использует полное синхронное соединение
ISDN.Основной проблемой с маршрутизаторами и мостами ISDN является то,
что их совместная работа с оборудованием других производителей может
оказаться под вопросом. Если вы собираетесь подключаться к провайдеру,
то вы должны обсудить с ним то, что вам нужно.Если вы планируете объединить два сегмента локальной сети, например,
домашнюю сеть с сетью офиса, это самое простое решение с минимальными
издержками на обслуживание. Так как вы покупаете оборудование для
обоих сторон соединения, то можете быть уверены, что связь будет
работать нормально.Например, для соединения домашнего компьютера или сети
подразделения к сети центрального офиса, может использоваться такая
настройка:Офис подразделения или домашняя сеть10 base 2Сеть построена в топологии общей шины на основе 10 base 2 Ethernet
(thinnet - тонкий Ethernet). Подключите
маршрутизатор к сетевому кабелю с помощью трансивера AUI/10BT, если
это нужно.---Рабочая станция Sun
|
---Машина с FreeBSD
|
---Windows 95
|
Отдельный маршрутизатор
|
Канал ISDN BRI10 Base 2 EthernetЕсли ваш домашний или удаленный офис представляет собой один
компьютер, то для непосредственного подключения к маршрутизатору вы
вы можете использовать витую пару с перекрестным соединениям.Центральный офис или другая локальная сеть10 base TСеть построена в топологии звезды на основе 10 Base T Ethernet
(витая пара). -------Сервер Novell
| H |
| ---Sun
| |
| U ---FreeBSD
| |
| ---Windows 95
| B |
|___---Отдельно стоящий маршрутизатор
|
Канал ISDN BRIСхема сети с ISDNОдним большим преимуществом большинства маршрутизаторов/мостов
является то, что они позволяют иметь 2 отдельных
независимых соединения PPP к 2 различным сайтам
одновременно. Это не поддерживается в большинстве
TA, кроме специальных (обычно дорогих) моделей, имеющих по два
последовательных порта. Не путайте это с балансировкой нагрузки,
MPP и так далее.Это может оказаться весьма полезной особенностью, например, если
у вас имеется постоянное ISDN-соединение в вашем офисе, и вы хотите
им воспользоваться, но не хотите задействовать дополнительный канал
ISDN на работе. Маршрутизатор, расположенный в офисе, может
использовать выделенное соединение по каналу B (64 Кбит/с) для
Интернет,
и одновременно другой канал B для отдельного соединения для передачи
данных. Второй канал B может использоваться для входящих, исходящих
и динамически распределяемых соединений (MPP и так далее) совместно с
первым каналом B для повышения пропускной способности.IPX/SPXМост Ethernet также позволяет вам передавать больше, чем просто
трафик IP. Вы сможете передавать IPX/SPX и любые другие протоколы,
которые вы используете.ChernLeeТекст предоставил Даемон преобразования сетевых адресов (natd)ОбзорnatdДаемон преобразования сетевых адресов (Network Address
Translation) во FreeBSD, широко известный как &man.natd.8;, является
даемоном, который принимает входящие IP-пакеты, изменяет адрес
отправителя на адрес локальной машины и повторно отправляет эти пакеты
в потоке исходящих пакетов. &man.natd.8; делает это, меняя IP-адрес
отправителя и порт таким образом, что когда данные принимаются
обратно, он может определить расположение источника начальных данных
и переслать их машине, которая запрашивала данные изначально.совместное использование доступа в Интернетсокрытие IPЧаще всего NAT используется для организации так называемого
Совместного Использования Интернет.НастройкаИз-за исчерпания пространства адресов в IPv4 и увеличения
количества пользователей высокоскоростных каналов связи, таких, как
кабельное подключение или DSL, необходимость в решении по Совместному
Использованию Интернет растёт. Возможность подключить несколько
компьютеров через единственное соединение и IP-адрес делает
&man.natd.8; подходящим решением.Чаще всего у пользователя имеется машина, подключенная к кабельному
каналу или каналу DSL с одним IP-адресом и есть желание использовать
этот единственный подключенный компьютер для организации доступа в
Интернет другим компьютерам в локальной сети.Для этого машина FreeBSD, находящаяся в Интернет, должна выступать
в роли шлюза. Эта шлюзовая машина должна иметь два сетевых
адаптера—один для подключения к маршрутизатору Интернет, а
другой для подключения к ЛВС. Все машины в локальной сети
подключаются через сетевой концентратор или коммутатор. _______ __________ ________
| | | | | |
| Hub |-----| Client B |-----| Router |----- Internet
|_______| |__________| |________|
|
____|_____
| |
| Client A |
|__________|Структура сетиПодобная конфигурация часто используется для совместного
использования доступа в Интернет. Одна из подключенных к локальной
сети машин подключается к Интернет. Остальные машины работают с
Интернет посредством этой шлюзовой машины.ядронастройкаНастройкаВ файле конфигурации ядра должны присутствовать следующие
параметры:options IPFIREWALL
-options IPDIVERT
-options PFIL_HOOKS
-
-
- Версиям &os; до 5.3-RELEASE не требуется строка
- options PFIL_HOOKS.
-
+options IPDIVERT
Дополнительно, если это нужно, можно добавить следующее:options IPFIREWALL_DEFAULT_TO_ACCEPT
options IPFIREWALL_VERBOSEВ файле /etc/rc.conf должны быть такие
строки:gateway_enable="YES"
firewall_enable="YES"
firewall_type="OPEN"
natd_enable="YES"
natd_interface="fxp0"
natd_flags="" Указывает машине выступать в качестве шлюза. Выполнение
команды sysctl net.inet.ip.forwarding=1
приведёт к тому же самому результату.При загрузке включает использование правил межсетевого
экрана из файла /etc/rc.firewall.Здесь задается предопределенный набор правил межсетевого
экрана, который разрешает все. Посмотрите файл
/etc/rc.firewall для нахождения
дополнительных типов.Указывает, через какой интерфейс передавать пакеты
(интерфейс, подключенный к Интернет).Любые дополнительный параметры, передаваемые при запуске
даемону &man.natd.8;.При использовании вышеуказанных параметров в файле
/etc/rc.conf при загрузке будет запущена команда
natd -interface fxp0. Эту команду можно запустить и
вручную.Если для передачи &man.natd.8; набирается слишком много
параметров, возможно также использовать конфигурационный файл. В
этом случае имя настроечного файла должно быть задано добавлением
следующей строки в /etc/rc.conf:natd_flags="-f /etc/natd.conf"Файл /etc/natd.conf будет содержать перечень
конфигурационных параметров, по одному в строке. К примеру, для
примера из следующего раздела будет использоваться такой файл:redirect_port tcp 192.168.0.2:6667 6667
redirect_port tcp 192.168.0.3:80 80Для получения более полной информации о конфигурационном файле
прочтите страницу справки по &man.natd.8; относительно параметра
.Каждой машине и интерфейсу в ЛВС должен быть назначен IP-адрес из
адресного пространства частных сетей, как это определено в RFC 1918, а в
качестве маршрутизатора по умолчанию должен быть задан IP-адрес машины
с natd из внутренней сети.Например, клиенты A и B в ЛВС
имеют IP-адреса 192.168.0.2 и 192.168.0.3, а интерфейс машины с natd в
локальной сети имеет IP-адрес 192.168.0.1. Маршрутизатором по умолчанию для
клиентов A и B должна быть назначена
машина с natd, то есть 192.168.0.1. Внешний, или Интернет-интерфейс
машины с natd не требует особых
настроек для работы &man.natd.8;.Перенаправление портовМинусом использования &man.natd.8; является то, что машины в
локальной сети
недоступны из Интернет. Клиенты в ЛВС могут выполнять исходящие
соединения во внешний мир, но не могут обслуживать входящие. Это
является проблемой при запуске служб Интернет на клиентских машинах в
локальной сети. Простым решением является перенаправление некоторых
портов Интернет машины с natd на клиента
локальной сети.Пусть, к примеру, сервер IRC запущен на клиенте A,
а веб-сервер работает на клиенте B. Чтобы это
работало, соединения, принимаемые на портах 6667 (IRC) и 80 (веб),
должны перенаправляться на соответствующие машины.Программе &man.natd.8; должна быть передана команда
с соответствующими параметрами.
Синтаксис следующий: -redirect_port proto targetIP:targetPORT[-targetPORT]
[aliasIP:]aliasPORT[-aliasPORT]
[remoteIP[:remotePORT[-remotePORT]]]В примере выше аргументы должен быть такими: -redirect_port tcp 192.168.0.2:6667 6667
-redirect_port tcp 192.168.0.3:80 80При этом будут перенаправлены соответствующие порты
tcp на клиентские машины в локальной сети.Аргумент может использоваться для
указания диапазонов портов, а не конкретного порта. Например,
tcp 192.168.0.2:2000-3000 2000-3000 будет
перенаправлять все соединения, принимаемые на портах от 2000 до 3000,
на порты от 2000 до 3000 клиента A.Эти параметры можно указать при непосредственном запуске
&man.natd.8;, поместить их в параметр
natd_flags="" файла
/etc/rc.conf, либо передать через
конфигурационный файл.Для получение информации о других параметрах настройки обратитесь
к справочной странице по &man.natd.8;Перенаправление адресаперенаправление адресаПеренаправление адреса полезно, если имеется несколько адресов IP,
и они должны быть на одной машине. В этой ситуации &man.natd.8; может
назначить каждому клиенту ЛВС свой собственный внешний IP-адрес. Затем
&man.natd.8; преобразует исходящие от клиентов локальной сети пакеты,
заменяя IP-адреса на соответствующие внешние, и перенаправляет весь
трафик, входящий на некоторый IP-адрес, обратно конкретному клиенту
локальной сети. Это также называют статическим NAT. К примеру, пусть
IP-адреса 128.1.1.1, 128.1.1.2 и 128.1.1.3 принадлежат шлюзовой машине
natd. 128.1.1.1 может использоваться в качестве
внешнего IP-адреса шлюзовой машины natd,
тогда как 128.1.1.2 и 128.1.1.3 будут перенаправляться обратно
к клиентам ЛВС A и B.Синтаксис для таков:-redirect_address localIP publicIPlocalIPВнутренний IP-адрес клиента локальной сети.publicIPВнешний IP, соответствующий клиенту локальной сети.В примере этот аргумент будет выглядеть так:-redirect_address 192.168.0.2 128.1.1.2
-redirect_address 192.168.0.3 128.1.1.3Как и для , эти аргументы также
помещаются в строку natd_flags="" файла
/etc/rc.conf или передаются через конфигурационный
файл. При перенаправлении адресов нет нужды в перенаправлении портов,
потому что перенаправляются все данные, принимаемые для конкретного
IP-адреса.Внешние IP-адреса машины с natd должны
быть активизированы и являться синонимами для внешнего интерфейса.
Обратитесь к &man.rc.conf.5;, чтобы это сделать.IP по параллельному порту (PLIP)PLIPIP по параллельному портуPLIP позволяет нам работать с TCP/IP по параллельному порту. Это
полезно для машин без сетевых адаптеров или для установки на лаптопы.
В этом разделе мы обсудим:создание кабеля для параллельного порта (laplink).Соединение двух компьютеров посредством PLIP.Создание параллельного кабеляВы можете приобрести кабель для параллельного порта в большинстве
магазинов, торгующих комплектующими. Если вы его не найдете, или же
просто хотите знать, как он делается, то следующая таблица поможет вам
сделать такой кабель из обычного принтерного кабеля для параллельного
порта.
Настройка PLIPПрежде всего вы должны найти laplink-кабель. Затем
удостоверьтесь, что на обоих компьютерах в ядро включена поддержка
драйвера &man.lpt.4;:&prompt.root; grep lp /var/run/dmesg.boot
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven portУправление параллельным портом должно выполняться по прерываниям.
Во &os; 4.X в файле конфигурации ядра должна присутствовать
строка, подобная следующей:device ppc0 at isa? irq 7Во &os; 5.X файл /boot/device.hints
должен содержать следующие строки:hint.ppc.0.at="isa"
hint.ppc.0.irq="7"Затем проверьте, что файл конфигурации ядра имеет строку
device plip, или загружен ли модуль ядра
plip.ko. В обоих случаях интерфейс работы с
сетью по параллельному порту должен присутствовать на момент прямого
использования команды &man.ifconfig.8;. Во &os; 4.X это должно
быть примерно так:&prompt.root; ifconfig lp0
lp0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> mtu 1500а для &os; 5.X:&prompt.root; ifconfig plip0
plip0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> mtu 1500Имя устройства, используемого для параллельного интерфейса,
во &os; 4.X
(lpX) и
&os; 5.X
(plipX).Подключите кабель laplink к параллельным интерфейсам на обоих
компьютерах.Настройте параметры сетевого интерфейса с обеих сторон, работая как
пользователь root. К примеру, если вы хотите
соединить хост host1, на котором работает
&os; 4.X, с хостом host2 под управлением
&os; 5.X: host1 <-----> host2
IP Address 10.0.0.1 10.0.0.2Настройте интерфейс на машине host1,
выполнив:&prompt.root; ifconfig plip0 10.0.0.1 10.0.0.2Настройте интерфейс на машине host2,
выполнив:&prompt.root; ifconfig lp0 10.0.0.2 10.0.0.1Теперь вы должны получить работающее соединение. Пожалуйста,
прочтите страницы руководства по &man.lp.4; и &man.lpt.4; для выяснения
деталей.Вы должны также добавить оба хоста в
/etc/hosts:127.0.0.1 localhost.my.domain localhost
10.0.0.1 host1.my.domain host1
10.0.0.2 host2.my.domainЧтобы проверить работу соединения, перейдите к каждому хосту и
выполните тестирование соединения с другой машиной посредством команды
ping. К примеру, на машине host1:&prompt.root; ifconfig lp0
lp0: flags=8851<UP,POINTOPOINT,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet 10.0.0.1 --> 10.0.0.2 netmask 0xff000000
&prompt.root; netstat -r
Routing tables
Internet:
Destination Gateway Flags Refs Use Netif Expire
host2 host1 UH 0 0 lp0
&prompt.root; ping -c 4 host2
PING host2 (10.0.0.2): 56 data bytes
64 bytes from 10.0.0.2: icmp_seq=0 ttl=255 time=2.774 ms
64 bytes from 10.0.0.2: icmp_seq=1 ttl=255 time=2.530 ms
64 bytes from 10.0.0.2: icmp_seq=2 ttl=255 time=2.556 ms
64 bytes from 10.0.0.2: icmp_seq=3 ttl=255 time=2.714 ms
--- host2 ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max/stddev = 2.530/2.643/2.774/0.103 msAaronKaplanПервоначальный текст написал TomRhodesРеструктуризацию и добавления внёс BradDavisРасширил IPv6IPv6 (также называемый IPng IP next generation -
следующее поколение IP) является новой версией широко известного
протокола IP (называемого также IPv4). Как и другие
современные системы *BSD, FreeBSD включает эталонную реализацию IPv6 от
KAME. Так что система FreeBSD поставляется со всем,
что вам нужно для экспериментирования с IPv6. Этот раздел посвящён
настройке и запуску в работу IPv6.В начале 1990-х люди стали беспокоиться о быстро иссякающем адресном
пространстве IPv4. Принимая во внимание темпы роста Интернет, имелись
основные проблемы:Нехватка адресов. Сегодня это не такая большая проблема, так как
стали применяться адресные пространства для частных сетей
(10.0.0.0/8, 192.168.0.0/24 и так далее) и технология
преобразования сетевых адресов (NAT - Network
Address Translation).Таблицы маршрутов становятся чересчур большими. Это всё ещё
является проблемой сегодня.IPv6 решает эти и многие другие вопросы:128-битное адресное пространство. Другими словами, теоретически
доступны 340,282,366,920,938,463,463,374,607,431,768,211,456 адреса.
Это означает плотность примерно в 6.67 * 10^27 адресов IPv6 на
квадратный метр нашей планеты.Маршрутизаторы будут хранить в своих таблицах только
агрегированные адреса сетей, что уменьшает средний размер таблицы
маршрутизации до 8192 записей.Имеется также множество других полезных особенностей IPv6, таких,
как:Автоматическая настройка адреса (RFC2462)Групповые адреса (один к нескольким из
многих)Обязательные адреса множественной рассылкиIPsec (IP security - безопасный IP)Упрощённая структура заголовкаМобильный IPМеханизмы преобразования IPv6-в-IPv4Для получения дополнительной информации посмотрите:Обзор IPv6 на сайте playground.sun.comKAME.net6bone.netОсновы адресации IPv6Существуют различные типы адресов IPv6: одноадресные (Unicast),
групповые (Anycast) и многоадресные (Multicast).Адреса типа Unicast хорошо всем известны. Пакет, посланный на
такой адрес, достигает в точности интерфейса, который этому адресу
соответствует.Адреса типа Anycast синтаксически неотличимы от адресов Unicast,
но они адресуют группу интерфейсов. Пакет, направленный такому адресу,
попадёт в ближайший (согласно метрике маршрутизатора) интерфейс.
Адреса Anycast могут использоваться только маршрутизаторами.Адреса типа Multicast идентифицируют группу интерфейсов. Пакет,
посланный на такой адрес, достигнет всех интерфейсов, привязанных к
группе многоадресного вещания.Широковещательные адреса IPv4 (обычно xxx.xxx.xxx.255) выражаются адресами
многоадресного вещания IPv6.
Зарезервированные адреса IPv6IPv6 адресДлина префикса (биты)ОписаниеЗаметки::128 битнет описанияcf. 0.0.0.0 в
IPv4::1128 битloopback адресcf. 127.0.0.1 в
IPv4::00:xx:xx:xx:xx96 битвстроенный IPv4Нижние 32 бита это адрес IPv4. Также
называется IPv4 совместимым IPv6
адресом::ff:xx:xx:xx:xx96 битАдрес IPv6, отображенный на IPv4Нижние 32 бита это адрес IPv4.
Для хостов, не поддерживающих IPv6.fe80:: - feb::10 битlink-localcf. loopback адрес в IPv4fec0:: - fef::10 битsite-localff::8 битшироковещательный001 (основание
2)3 битglobal unicastВсе global unicast адреса присваиваются из этого
пула. Первые три бита
001.
Чтение адресов IPv6Каноническая форма представляется в виде x:x:x:x:x:x:x:x, где каждый символ
x является 16-битовым шестнадцатиричным числом. К
примеру, FEBC:A574:382B:23C1:AA49:4592:4EFE:9982Часто в адресе присутствуют длинные строчки, заполненные нулями,
поэтому одна такая последовательность на адрес может быть сокращена до
::. Кроме того, до трех ведущих 0
на шестнадцатеричную четверку могут быть пропущены.
К примеру, fe80::1
соответствует канонической форме fe80:0000:0000:0000:0000:0000:0000:0001.В третьей форме последние 32 бита записываются в широко известном
(десятичном) стиле IPv4 с точками . в качестве
разделителей. Например, f2002::10.0.0.1 соответствует
(шестнадцатеричному) каноническому представлению 2002:0000:0000:0000:0000:0000:0a00:0001,
которое, в свою очередь, равнозначно записи 2002::a00:1.Теперь читатель должен понять следующую запись:&prompt.root; ifconfigrl0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
inet 10.0.0.10 netmask 0xffffff00 broadcast 10.0.0.255
inet6 fe80::200:21ff:fe03:8e1%rl0 prefixlen 64 scopeid 0x1
ether 00:00:21:03:08:e1
media: Ethernet autoselect (100baseTX )
status: activefe80::200:21ff:fe03:8e1%rl0
является автоматически настроенным локальным адресом. Он
генерируется из MAC адреса в процессе автоматической
конфигурации.Для получения дополнительной информации о структуре адресов IPv6
обратитесь к RFC3513.Настройка подключенияНа данный момент существуют четыре способа подключиться к другим
хостам и сетям IPv6:Подключиться к экспериментальному 6boneПолучить сеть IPv6 от вышестоящего провайдера. Для получения
рекомендаций обратитесь к вашему провайдеру Интернет.Туннелировать посредством 6-в-4 (RFC3068)Использовать порт net/freenet6, если вы используете
коммутируемое соединение.Здесь мы будем рассматривать подключение к 6bone, так как на
данный момент это является самым популярным способом.Сначала взгляните на сайт 6bone и найдите ближайшую к вам точку
подключения к 6bone. Напишите ответственному и при некоторой удаче вам
дадут инструкции по настройке соединения. Обычно это касается
настройки туннеля GRE (gif).Вот типичный пример настройки туннеля &man.gif.4;:&prompt.root; ifconfig gif0 create
&prompt.root; ifconfig gif0
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
&prompt.root; ifconfig gif0 tunnel MY_IPv4_ADDRHIS_IPv4_ADDR
&prompt.root; ifconfig gif0 inet6 alias MY_ASSIGNED_IPv6_TUNNEL_ENDPOINT_ADDRЗамените слова, написанные заглавными буквами, информацией, которую
вам дал вышестоящий узел 6bone.При этом установится туннель. Проверьте работу туннеля утилитой
&man.ping6.8; с адресом ff02::1%gif0.
Вы должны получить два положительных ответа.Если вы заинтригованы адресом ff02:1%gif0, скажем, что это адрес
многоадресного вещания. %gif0 указывает на
использование такого адреса с сетевым интерфейсом
gif0. Так как мы выполняем
ping над адресом многоадресного вещания, то другая
сторона туннеля также должна ответить.Теперь настройка маршрута к вашей вышестоящей точке подключения
6bone должна быть весьма проста:&prompt.root; route add -inet6 default -interface gif0
&prompt.root; ping6 -n MY_UPLINK&prompt.root; traceroute6 www.jp.FreeBSD.org
(3ffe:505:2008:1:2a0:24ff:fe57:e561) from 3ffe:8060:100::40:2, 30 hops max, 12 byte packets
1 atnet-meta6 14.147 ms 15.499 ms 24.319 ms
2 6bone-gw2-ATNET-NT.ipv6.tilab.com 103.408 ms 95.072 ms *
3 3ffe:1831:0:ffff::4 138.645 ms 134.437 ms 144.257 ms
4 3ffe:1810:0:6:290:27ff:fe79:7677 282.975 ms 278.666 ms 292.811 ms
5 3ffe:1800:0:ff00::4 400.131 ms 396.324 ms 394.769 ms
6 3ffe:1800:0:3:290:27ff:fe14:cdee 394.712 ms 397.19 ms 394.102 msЭта выдача будет отличаться от машины к машине. Теперь вы должны
суметь достигнуть сайта IPv6 www.kame.net и увидеть танцующую
черепаху — в случае, если ваш браузер поддерживает IPv6, как,
например, www/mozilla или
Konqueror,
который входит в x11/kdebase3,
или www/epiphany.DNS в мире IPv6Для IPv6 использовались два типа записей DNS. IETF
объявил записи A6 устаревшими. Стандартом на данный момент
являются записи AAAA.Использование записей AAAA достаточно просто. Назначение вашему
имени хоста нового адреса IPv6 достигается просто добавлением:MYHOSTNAME AAAA MYIPv6ADDRк вашему первичному файлу DNS зоны. В случае, если вы не
обслуживаете собственные зоны DNS, обратитесь к
вашему провайдеру DNS. Имеющиеся версии
bind (версий 8.3 и 9) и
dns/djbdns (с патчем IPv6)
поддерживают записи AAAA.Внесение необходимых изменений в
/etc/rc.confНастройки клиентов IPv6Эти установки помогут вам настроить компьютер, который
будет работать в сети как клиент, а не как маршрутизатор.
Для включения настройки интерфейсов через &man.rtsol.8;
при загрузке, все, что вам потребуется, это добавить
следующую строку:ipv6_enable="YES"Для статического присвоения IP адреса, такого как 2001:471:1f11:251:290:27ff:fee0:2093,
интерфейсу fxp0, добавьте:ipv6_ifconfig_fxp0="2001:471:1f11:251:290:27ff:fee0:2093"Для назначения маршрутизатором по умолчанию
2001:471:1f11:251::1,
добавьте следующую строку к
/etc/rc.conf:ipv6_defaultrouter="2001:471:1f11:251::1"Настройки маршрутизатора/шлюза IPv6Этот раздел поможет вам использовать инструкции, которые выдал
провайдер туннеля, например, 6bone, и сделать эти настройки
постоянными. Для восстановления туннеля при загрузке системы
используйте в /etc/rc.conf нижеприведенные
настройки.Задайте список туннельных интерфейсов (Generic Tunneling
interfaces), которые необходимо настроить, например
gif0:gif_interfaces="gif0"Для настройки интерфейса с локальным подключением на
MY_IPv4_ADDR к удаленной точке
REMOTE_IPv4_ADDR:gifconfig_gif0="MY_IPv4_ADDR REMOTE_IPv4_ADDR"Для включения IPv6 адреса, который был вам присвоен для
использования в подключении к туннелю IPv6, добавьте:ipv6_ifconfig_gif0="MY_ASSIGNED_IPv6_TUNNEL_ENDPOINT_ADDR"Затем все, что вам потребуется сделать, это добавить маршрут
по умолчанию для IPv6. Это другая сторона туннеля IPv6:ipv6_defaultrouter="MY_IPv6_REMOTE_TUNNEL_ENDPOINT_ADDR"Распространение маршрутов и автоматическая настройка
хостовЭтот раздел поможет вам настроить &man.rtadvd.8; для
распространения маршрута IPv6 по умолчанию.Для включения &man.rtadvd.8; вам понадобится добавить в
/etc/rc.conf следующую строку:rtadvd_enable="YES"Важно указать интерфейс, на котором выполняется запрос
маршрутизатора IPv6. Например, для указания &man.rtadvd.8;
использовать fxp0:rtadvd_interfaces="fxp0"Теперь мы должны создать файл настройки,
/etc/rtadvd.conf. Вот пример:fxp0:\
:addrs#1:addr="2001:471:1f11:246::":prefixlen#64:tc=ether:Замените fxp0 на интерфейс, который вы
будете использовать.Затем, замените 2001:471:1f11:246:: на префикс вашего
размещения.Если у вас выделенная подсеть /64, больше ничего менять не потребуется.
Иначе, вам потребуется изменить prefixlen#
на корректное значение.HartiBrandtПредоставил Асинхронный режим передачи (ATM) в &os; 5.XКлассическая настройка IP через ATM (PVC)Классический IP через ATM (CLIP)
это простейший метод использования асинхронного режима
передачи (Asynchronous Transfer Mode, ATM) с IP. Он может
быть использован с коммутируемыми подключениями
(switched connections, SVC) и с постоянными подключениями
(permanent connections, PVC). В этом разделе будет описано
как настроить сеть на основе PVC.Полностью объединенные конфигурацииПервый метод для настройки CLIP с
PVC это подключение каждого компьютера к каждому в сети с
выделенным PVC. Хотя настройка проста, она непрактична
для большого количества компьютеров. В примере предполагается,
что в сети есть четыре компьютера, каждый подключенный к
ATM
сети с помощью карты ATM адаптера.
Первый шаг это планирование IP адресов и ATM подключений между
компьютерами. Мы используем:ХостIP адресhostA192.168.173.1hostB192.168.173.2hostC192.168.173.3hostD192.168.173.4Для сборки полностью объединенной сети нам потребуется по
одному ATM соединению между каждой парой компьютеров:КомпьютерыVPI.VCI соединениеhostA - hostB0.100hostA - hostC0.101hostA - hostD0.102hostB - hostC0.103hostB - hostD0.104hostC - hostD0.105Значения VPI и VCI на каждом конце соединения конечно могут
отличаться, но для упрощения мы предполагаем, что они одинаковы.
Затем нам потребуется настроить ATM интерфейсы на каждом
хосте:hostA&prompt.root; ifconfig hatm0 192.168.173.1 up
hostB&prompt.root; ifconfig hatm0 192.168.173.2 up
hostC&prompt.root; ifconfig hatm0 192.168.173.3 up
hostD&prompt.root; ifconfig hatm0 192.168.173.4 upпредполагая, что ATM интерфейс называется
hatm0 на всех хостах. Теперь PVC
необходимо настроить на hostA (мы предполагаем,
что ATM коммутаторы уже настроены, вам необходимо свериться
с руководством на коммутатор за информацией по
настройке).hostA&prompt.root; atmconfig natm add 192.168.173.2 hatm0 0 100 llc/snap ubr
hostA&prompt.root; atmconfig natm add 192.168.173.3 hatm0 0 101 llc/snap ubr
hostA&prompt.root; atmconfig natm add 192.168.173.4 hatm0 0 102 llc/snap ubr
hostB&prompt.root; atmconfig natm add 192.168.173.1 hatm0 0 100 llc/snap ubr
hostB&prompt.root; atmconfig natm add 192.168.173.3 hatm0 0 103 llc/snap ubr
hostB&prompt.root; atmconfig natm add 192.168.173.4 hatm0 0 104 llc/snap ubr
hostC&prompt.root; atmconfig natm add 192.168.173.1 hatm0 0 101 llc/snap ubr
hostC&prompt.root; atmconfig natm add 192.168.173.2 hatm0 0 103 llc/snap ubr
hostC&prompt.root; atmconfig natm add 192.168.173.4 hatm0 0 105 llc/snap ubr
hostD&prompt.root; atmconfig natm add 192.168.173.1 hatm0 0 102 llc/snap ubr
hostD&prompt.root; atmconfig natm add 192.168.173.2 hatm0 0 104 llc/snap ubr
hostD&prompt.root; atmconfig natm add 192.168.173.3 hatm0 0 105 llc/snap ubrКонечно, вместо UBR может быть использован другой тип, если ATM адаптер поддерживает это. В этом случае
имя типа дополняется параметрами трафика. Помощь по
&man.atmconfig.8; может быть получена командой:&prompt.root; atmconfig help natm addили на странице справочника &man.atmconfig.8;.Та же настройка может быть выполнена через
/etc/rc.conf. Для hostA
это будет выглядеть примерно так:network_interfaces="lo0 hatm0"
ifconfig_hatm0="inet 192.168.173.1 up"
natm_static_routes="hostB hostC hostD"
route_hostB="192.168.173.2 hatm0 0 100 llc/snap ubr"
route_hostC="192.168.173.3 hatm0 0 101 llc/snap ubr"
route_hostD="192.168.173.4 hatm0 0 102 llc/snap ubr"Текущий статус всех маршрутов CLIP
может быть получен командой:hostA&prompt.root; atmconfig natm show
diff --git a/ru_RU.KOI8-R/books/handbook/bibliography/chapter.sgml b/ru_RU.KOI8-R/books/handbook/bibliography/chapter.sgml
index 27d6f175c3..3b8e869e44 100644
--- a/ru_RU.KOI8-R/books/handbook/bibliography/chapter.sgml
+++ b/ru_RU.KOI8-R/books/handbook/bibliography/chapter.sgml
@@ -1,602 +1,649 @@
БиблиографияТак как страницы Справочника FreeBSD предоставляют лишь описание
отдельных частей операционной системы FreeBSD, они
не очень удобны для иллюстрации объединения этих частей вместе
для того, чтобы настроить ОС и сделать ее работу более гладкой.
Для этого незаменимы хорошая книга по системному администрированию
&unix; и хорошее руководство
пользователя.Книги и журналы, специализирующиеся на FreeBSDМеждународные книги и
журналы:Using FreeBSD (на Китайском).
+ url="http://jdli.tw.FreeBSD.org/publication/book/freebsd2/index.html">Using FreeBSD (на китайском).
-
+
+
+
+ FreeBSD Unleashed (перевод на китайский), опубликовано
+ China Machine
+ Press. ISBN 7-111-10201-0.
+
+
+
+
+ FreeBSD From Scratch First Edition (на китайском),
+ опубликовано China Machine Press. ISBN 7-111-07482-3.
+
+
+
+
+ FreeBSD From Scratch Second Edition (на китайском),
+ опубликовано China Machine Press. ISBN 7-111-10286-X.
+
+
+
+
+ FreeBSD Handbook (на китайском), опубликовано
+ Posts & Telecom
+ Press. ISBN 7-115-10541-3.
+
+
+
+
+ FreeBSD 3.x Internet (на китайском), опубликовано
+ Tsinghua
+ University Press. ISBN 7-900625-66-6.
+
+
+
+ FreeBSD & Windows (на китайском), ISBN 7-113-03845-X
+
+
+
+ FreeBSD Internet Services HOWTO (на китайском), ISBN 7-113-03423-3
+
+
FreeBSD for PC 98'ers (на японском), выпущено SHUWA System
Co, LTD. ISBN 4-87966-468-5 C3055 P2900E.FreeBSD (на японском), выпущено CUTT. ISBN 4-906391-22-2
C3055 P2400E.Complete
Introduction to FreeBSD (на японском), выпущено
Shoeisha Co.,
Ltd. ISBN 4-88135-473-6 P3600E.Personal UNIX Starter Kit FreeBSD (на японском), выпущено ASCII. ISBN 4-7561-1733-3 P3000E.FreeBSD Handbook (японский перевод), выпущено ASCII. ISBN 4-7561-1580-2
P3800E.FreeBSD mit Methode (на немецком), выпущено Computer und
Literatur Verlag/Vertrieb Hanser, 1998. ISBN 3-932311-31-0.FreeBSD 4 - Installieren, Konfigurieren, Administrieren
(на немецком), выпущено Computer und Literatur Verlag, 2001.
ISBN 3-932311-88-4.FreeBSD 5 - Installieren, Konfigurieren, Administrieren
(на немецком), выпущено Computer und Literatur Verlag, 2003.
ISBN 3-936546-06-1.
FreeBSD de Luxe (на немецком), выпущено
Verlag Modere Industrie,
2003. ISBN 3-8266-1343-0.
FreeBSD Install and Utilization Manual (на японском), выпущено Mainichi Communications Inc..Onno W Purbo, Dodi Maryanto, Syahrial Hubbany, Widjil Widodo
Создание Интернет
Сервера с использованием FreeBSD (на Индонезийском языке),
выпущено Elex Media
Komputindo.Книги и журналы на английском языке:Absolute
BSD: The Ultimate Guide to FreeBSD, выпущено
No Starch Press, 2002.
ISBN: 1886411743
The Complete FreeBSD, выпущено
O'Reilly, 2003.
ISBN: 0596005164The FreeBSD
Corporate Networker's Guide, выпущено
Addison-Wesley, 2000.
ISBN: 0201704811
FreeBSD: An Open-Source Operating System for Your Personal
Computer, выпущено The Bit Tree Press, 2001.
ISBN: 0971204500Teach Yourself FreeBSD in 24 Hours, выпущено
Sams, 2002.
ISBN: 0672324245FreeBSD unleashed, выпущено
Sams, 2002.
ISBN: 0672324563FreeBSD: The Complete Reference, выпущено
McGrawHill, 2003.
ISBN: 0072224096 Руководства для пользователейComputer Systems Research Group, UC Berkeley. 4.4BSD
User's Reference Manual. O'Reilly & Associates,
Inc., 1994. ISBN 1-56592-075-9Computer Systems Research Group, UC Berkeley. 4.4BSD
User's Supplementary Documents. O'Reilly &
Associates, Inc., 1994. ISBN 1-56592-076-7UNIX in a Nutshell. O'Reilly &
Associates, Inc., 1990. ISBN 093717520XMui, Linda. What You Need To Know When You Can't Find
Your UNIX System Administrator. O'Reilly &
Associates, Inc., 1995. ISBN 1-56592-104-6Ohio State
University написал
Ознакомительный Курс UNIX который доступен в Online в
HTML и PS форматах.Итальянский перевод
этого документа доступен как часть FreeBSD Italian
Documentation Project.Jpman Project, Japan
FreeBSD Users Group. FreeBSD User's
Reference Manual (Японский перевод). Mainichi Communications
Inc., 1998. ISBN4-8399-0088-4 P3800E.Эдинбургский
Университет составил Online Путеводитель
для новичков в UNIX.Руководства для администраторовAlbitz, Paul and Liu, Cricket. DNS and
BIND, 4th Ed. O'Reilly & Associates, Inc., 2001.
ISBN 1-59600-158-4Computer Systems Research Group, UC Berkeley. 4.4BSD
System Manager's Manual. O'Reilly & Associates,
Inc., 1994. ISBN 1-56592-080-5Costales, Brian, et al. Sendmail, 2nd Ed.
O'Reilly & Associates, Inc., 1997. ISBN 1-56592-222-0Frisch, Æleen. Essential System
Administration, 2nd Ed. O'Reilly & Associates,
Inc., 1995. ISBN 1-56592-127-5Hunt, Craig. TCP/IP Network
Administration, 2nd Ed. O'Reilly & Associates,
Inc., 1997. ISBN 1-56592-322-7Nemeth, Evi. UNIX System Administration
Handbook. 2nd Ed. Prentice Hall, 2000. ISBN
0-13-020601-6Stern, Hal Managing NFS and NIS O'Reilly
& Associates, Inc., 1991. ISBN 0-937175-75-7Jpman Project, Japan
FreeBSD Users Group. FreeBSD System
Administrator's Manual (Japanese translation). Mainichi Communications
Inc., 1998. ISBN4-8399-0109-0 P3300E.Dreyfus, Emmanuel. Cahiers
de l'Admin: BSD 2nd Ed. (на французском), Eyrolles, 2004.
ISBN 2-212-11463-XРуководства для программистовAsente, Paul, Converse, Diana, and Swick, Ralph.
X Window System Toolkit. Digital Press, 1998.
ISBN 1-55558-178-1Computer Systems Research Group, UC Berkeley. 4.4BSD
Programmer's Reference Manual. O'Reilly &
Associates, Inc., 1994. ISBN 1-56592-078-3Computer Systems Research Group, UC Berkeley. 4.4BSD
Programmer's Supplementary Documents. O'Reilly &
Associates, Inc., 1994. ISBN 1-56592-079-1Harbison, Samuel P. and Steele, Guy L. Jr. C: A
Reference Manual. 4rd ed. Prentice Hall, 1995.
ISBN 0-13-326224-3Kernighan, Brian and Dennis M. Ritchie. The C
Programming Language.. PTR Prentice Hall, 1988.
ISBN 0-13-110362-9Lehey, Greg. Porting UNIX Software.
O'Reilly & Associates, Inc., 1995. ISBN 1-56592-126-7Plauger, P. J. The Standard C Library.
Prentice Hall, 1992. ISBN 0-13-131509-9Spinellis, Diomidis. Code
Reading: The Open Source Perspective.
Addison-Wesley, 2003. ISBN 0-201-79940-5Stevens, W. Richard. Advanced Programming in the UNIX
Environment. Reading, Mass. : Addison-Wesley, 1992.
ISBN 0-201-56317-7Stevens, W. Richard. UNIX Network
Programming. 2nd Ed, PTR Prentice Hall, 1998. ISBN
0-13-490012-XWells, Bill. Writing Serial Drivers for UNIX.
Dr. Dobb's Journal. 19(15), December 1994.
pp68-71, 97-99.Внутренности операционной системыAndleigh, Prabhat K. UNIX System
Architecture. Prentice-Hall, Inc., 1990. ISBN
0-13-949843-5Jolitz, William. Porting UNIX to the 386.
Dr. Dobb's Journal. January 1991-July
1992.Leffler, Samuel J., Marshall Kirk McKusick, Michael J Karels and
John Quarterman The Design and Implementation of the
4.3BSD UNIX Operating System. Reading, Mass. :
Addison-Wesley, 1989. ISBN 0-201-06196-1Leffler, Samuel J., Marshall Kirk McKusick, The Design
and Implementation of the 4.3BSD UNIX Operating System: Answer
Book. Reading, Mass. : Addison-Wesley, 1991. ISBN
0-201-54629-9McKusick, Marshall Kirk, Keith Bostic, Michael J Karels, and
John Quarterman. The Design and Implementation of the
4.4BSD Operating System. Reading, Mass. :
Addison-Wesley, 1996. ISBN 0-201-54979-4(глава 2 этой книги доступна онлайн как часть
Проекта документирования FreeBSD, и глава 9 доступна
здесь.)
-
+
+
+ Marshall Kirk McKusick, George V. Neville-NeilThe Design
+ and Implementation of the FreeBSD UNIX Operating System.
+ Boston, Mass. : Addison-Wesley, 2004. ISBN 0-201-70245-2
+
+
Stevens, W. Richard. TCP/IP Illustrated, Volume 1:
The Protocols. Reading, Mass. : Addison-Wesley,
1996. ISBN 0-201-63346-9Schimmel, Curt. Unix Systems for Modern
Architectures. Reading, Mass. : Addison-Wesley, 1994.
ISBN 0-201-63338-8Stevens, W. Richard. TCP/IP Illustrated, Volume 3:
TCP for Transactions, HTTP, NNTP and the UNIX Domain
Protocols. Reading, Mass. : Addison-Wesley, 1996.
ISBN 0-201-63495-3Vahalia, Uresh. UNIX Internals -- The New
Frontiers. Prentice Hall, 1996. ISBN
0-13-101908-2Wright, Gary R. and W. Richard Stevens. TCP/IP
Illustrated, Volume 2: The Implementation. Reading,
Mass. : Addison-Wesley, 1995. ISBN 0-201-63354-XБезопасностьCheswick, William R. and Steven M. Bellovin. Firewalls
and Internet Security: Repelling the Wily Hacker.
Reading, Mass. : Addison-Wesley, 1995. ISBN
0-201-63357-4Garfinkel, Simson and Gene Spafford.
Practical UNIX & Internet Security.
2nd Ed. O'Reilly & Associates, Inc., 1996. ISBN
1-56592-148-8Garfinkel, Simson. PGP Pretty Good
Privacy O'Reilly & Associates, Inc., 1995. ISBN
1-56592-098-8ОборудованиеAnderson, Don and Tom Shanley. Pentium Processor
System Architecture. 2nd Ed. Reading, Mass. :
Addison-Wesley, 1995. ISBN 0-201-40992-5Ferraro, Richard F. Programmer's Guide to the EGA,
VGA, and Super VGA Cards. 3rd ed. Reading, Mass. :
Addison-Wesley, 1995. ISBN 0-201-62490-7Intel Corporation publishes documentation on their CPUs,
chipsets and standards on their developer web site,
usually as PDF files.Shanley, Tom. 80486 System Architecture.
3rd ed. Reading, Mass. : Addison-Wesley, 1995. ISBN
0-201-40994-1Shanley, Tom. ISA System Architecture.
3rd ed. Reading, Mass. : Addison-Wesley, 1995. ISBN
0-201-40996-8Shanley, Tom. PCI System Architecture.
4th ed. Reading, Mass. : Addison-Wesley, 1999. ISBN
0-201-30974-2Van Gilluwe, Frank. The Undocumented PC, 2nd Ed.
Reading, Mass: Addison-Wesley Pub. Co., 1996. ISBN
0-201-47950-8Messmer, Hans-Peter. The Indispensable PC Hardware Book, 4th Ed.
Reading, Mass: Addison-Wesley Pub. Co., 2002. ISBN
0-201-59616-4История &unix;Lion, John Lion's Commentary on UNIX, 6th Ed. With
Source Code. ITP Media Group, 1996. ISBN
1573980137Raymond, Eric S. The New Hacker's Dictionary, 3rd
edition. MIT Press, 1996. ISBN
0-262-68092-0. Also known as the Jargon
FileSalus, Peter H. A quarter century of UNIX.
Addison-Wesley Publishing Company, Inc., 1994. ISBN
0-201-54777-5Simon Garfinkel, Daniel Weise, Steven Strassmann. The
UNIX-HATERS Handbook. IDG Books Worldwide, Inc.,
1994. ISBN 1-56884-203-1Don Libes, Sandy Ressler Life with UNIX
— special edition. Prentice-Hall, Inc., 1989. ISBN
0-13-536657-7The BSD family tree.
или /usr/share/misc/bsd-family-tree
на современном компьютере FreeBSD.The BSD Release Announcements collection.
1997. Networked Computer Science Technical Reports
Library. Old BSD releases from the Computer Systems Research
group (CSRG).
:
The 4CD set covers all BSD versions from 1BSD to 4.4BSD and
4.4BSD-Lite2 (but not 2.11BSD, unfortunately). As well, the last
disk holds the final sources plus the SCCS files.Прочие изданияThe C/C++ Users Journal. R&D
Publications Inc. ISSN 1075-2838Sys Admin — The Journal for UNIX System
Administrators Miller Freeman, Inc., ISSN
1061-2688freeX — Das Magazin für Linux - BSD - UNIX
(на немецком) Computer- und Literaturverlag GmbH, ISSN 1436-7033
diff --git a/ru_RU.KOI8-R/books/handbook/disks/chapter.sgml b/ru_RU.KOI8-R/books/handbook/disks/chapter.sgml
index d9b7c19a12..509331e3b4 100644
--- a/ru_RU.KOI8-R/books/handbook/disks/chapter.sgml
+++ b/ru_RU.KOI8-R/books/handbook/disks/chapter.sgml
@@ -1,4065 +1,4076 @@
АндрейЗахватовПеревод на русский язык: Устройства храненияКраткий обзорВ этой главе описывается использование дисков во FreeBSD. К ним
относятся диски в памяти, диски, подключенные по сети, обычные
устройства хранения SCSI/IDE и устройства, использующие
интерфейс USB.После чтения этой главы вы будете знать:Терминологию, используемую во FreeBSD для описания организации
данных на физическом диске (разделы и слайсы).Как добавить дополнительные винчестеры к вашей системе.Как настроить &os; для использования дисковых устройств
USB.Как настроить виртуальные файловые системы, такие, как диски в
оперативной памяти.Как использовать квоты для ограничения использования дискового
пространства.Как зашифровать диски, чтобы защитить их от взлома.Как создавать и записывать CD и DVD во FreeBSD.Различные варианты использования устройств хранения для
резервных копий.Как использовать программы резервного копирования, имеющиеся
для FreeBSD.Как выполнять резервное копирование на дискеты.Что такое мгновенные копии файловых систем и как
их эффективно использоватьПеред прочтением этой главы вам потребуется:Узнать как настраивать и устанавливать новое ядро FreeBSD
().Имена устройствДалее приводится список физических устройств хранения информации,
которые поддерживаются во FreeBSD, и имена устройств, которые им
соответствуют.
Соглашения по именованию физических дисковТип дискаИмя дискового устройстваВинчестеры IDEadПриводы IDE CDROMacdВинчестеры SCSI и дисковые устройства USBdaПриводы SCSI CDROMcdРазличные нестандартные приводы CDROMmcd для Mitsumi CD-ROM,
scd для Sony CD-ROM,
matcd для Matsushita/Panasonic CD-ROM
5 октября 2002 года драйвер &man.matcd.4; был удалён
из ветки FreeBSD 4.X и отсутствует во FreeBSD 5.0
и 5.1. Однако этот драйвер вновь появился в ветке
FreeBSD 5.X, и присутствует там с 16 июня 2003
года.ДискетыfdЛенточные приводы SCSIsaЛенточные приводы IDEastФлэш-дискиfla для флэш-устройств
&diskonchip;Диски RAIDaacd для &adaptec; AdvancedRAID,
mlxd и mlyd для &mylex;,
amrd для AMI &megaraid;,
idad для Compaq Smart RAID,
twed для &tm.3ware; RAID.
DavidO'BrienИзначальный текст предоставил Добавление дисковдискидобавлениеПредположим, что мы хотим установить новый диск SCSI на машину,
имеющую в данный момент только один диск. Сначала выключим компьютер и
установим диск в компьютер согласно инструкциям к компьютеру,
контроллеру и от производителя диска. Из-за большого разнообразия
этих процедур их рассмотрение выходит за рамки этого документа..Войдите в систему как пользователь root.
После того, как вы установили диск, просмотрите файл
/var/run/dmesg.boot, чтобы убедиться, что новый
диск был найден. Продолжая наш пример, только что добавленный диск
будет называться da1 и мы хотим смонтировать его
в каталог /1 (если вы добавляете диск IDE, то
устройство будет называться wd1 в системах,
предшествовавших 4.0, и ad1 в большинстве систем
4.X).разделыслайсыfdiskТак как FreeBSD работает на IBM-PC совместимых компьютерах, она
должна принимать во внимание разделы PC BIOS. В этом заключается
отличие от традиционных разделов BSD. Диск PC может иметь до четырех
записей разделов BIOS. Если диск на самом деле будет использоваться
исключительно под FreeBSD, вы можете использовать режим
dedicated. В противном случае FreeBSD будет
располагаться в одном из разделов PC BIOS. Во FreeBSD разделы PC BIOS
называются слайсами, чтобы не путать их с
традиционными разделами BSD. Вы также можете использовать слайсы и с
диском, предназначенным исключительно для FreeBSD, однако используемым
в компьютере, на котором имеется дополнительная операционная система.
Это нужно для того, чтобы не было путаницы с утилитой
fdisk другой операционной системы.В случае слайсов диск будет добавлен как
/dev/da1s1e. Это интерпретируется следующим
образом: диск SCSI, устройство номер 1 (второй диск SCSI), слайс 1
(раздел PC BIOS 1), и раздел BSD e. В случае
использования в выделенном режиме диск будет добавлен просто как
/dev/da1e.
+ Вследствие использования 32-битных целых для хранения числа
+ секторов, &man.bsdlabel.8; (называемый &man.disklabel.8; в
+ &os; 4.X) ограничен 2^32-1 секторами на диск, или 2TB в
+ в большинстве случаев. Формат &man.fdisk.8; позволяет наличие
+ первого сектора со смещением не более 2^32-1 и длину не более
+ 2^32-1, что ограничивает размер раздела до 2TB, а размер диска
+ до 4TB в большинстве случаев. Формат &man.sunlabel.8; ограничен
+ 2^32-1 секторами на раздел и 8 разделами, что составляет 16TB.
+ Для дисков большего раздела могут быть использованы разделы
+ &man.gpt.8;.
+
Использование утилиты &man.sysinstall.8;sysinstallдобавление дисковsuИспользование SysinstallВы можете использовать простые меню утилиты
/stand/sysinstall для разбиения на разделы и
разметки нового диска. Войдите как пользователь
root или воспользуйтесь командой
su. Запустите команду
/stand/sysinstall и войдите в меню
Configure. Внутри FreeBSD
Configuration Menu, пролистайте и выберите пункт
Fdisk.Редактор разделов fdiskРаботая с утилитой fdisk, мы можем
выбрать A для того, чтобы использовать под
FreeBSD полностью весь диск. Когда будет задан вопрос о том,
хотите ли вы сохранить совместимость с другими возможными
операционными системами в будущем, ответьте
YES. Запишите изменения на диск при помощи
команды W. А теперь выйдите из редактора
FDISK, нажав q. В этот момент вам будет
задан вопрос о главной загрузочной записи. Так как вы добавляете
диск к уже работающей системе, выберите
None.Редактор метки дискаразделы BSDТеперь вам нужно выйти из sysinstall
и запустить эту утилиту снова. Следуйте указаниям выше, но на этот
раз выберите пункт Label. Вы перейдёте к
меню Disk Label Editor.
Здесь вы создадите традиционные разделы BSD. На диске может быть
до восьми разделов, имеющих метки a-h.
Некоторые из меток разделов
имеют особый смысл. Раздел a используется для
размещения корневого раздела (/). По этой
причине только ваш системный диск (например, тот, с которого
происходит загрузка), должен иметь раздел a.
Раздел b используется под раздел подкачки, и вы
можете иметь много дисков с разделами подкачки. Раздел
c используется для доступа ко всему диску в
режиме эксклюзивного использования или ко всему слайсу FreeBSD при
работе в режиме с использованием слайсов. Остальные разделы имеют
обычное предназначение.Редактор метки диска программы
sysinstall использует раздел
e для некорневого раздела и не для раздела
подкачки. Внутри редактора метки диска создайте отдельную файловую
систему, нажав C. Когда будет задан
вопрос о том, будет ли это раздел с файловой системой (FS) или это
будет раздел подкачки, выберите FS и наберите
точку монтирования (например, /mnt). При
добавлении диска после установки системы, программа
sysinstall не
будет автоматически создавать записи в файле
/etc/fstab, поэтому точка монтирования не так
уж и важна.Теперь вы готовы записать новую метку на диск и создать на нем
файловую систему. Сделайте это, набрав W.
Проигнорируйте сообщения об ошибках от
sysinstall о невозможности смонтировать
новый раздел. Полностью выйдите из редактора метки диска и из
программы sysinstall.ЗавершениеПоследний шаг заключается в редактировании файла
/etc/fstab и добавлении записи для вашего
нового диска.Использовании утилит командной строкиРабота со слайсамиСледующая настройка позволит вашему диску корректно работать с
другими операционными системами, которые могут быть установлены на
вашем компьютере, и не вызовет конфликта с утилитами
fdisk других операционных систем. Этот способ
рекомендуется использовать для установок новых дисков. Используйте
эксклюзивный режим, только если у вас есть
реальные причины делать это!&prompt.root; dd if=/dev/zero of=/dev/da1 bs=1k count=1
&prompt.root; fdisk -BI da1 # Инициализируем новый диск.
&prompt.root; disklabel -B -w -r da1s1 auto # Размечаем его.
&prompt.root; disklabel -e da1s1 # Редактируем только что созданную метку диска и добавляем разделы.
&prompt.root; mkdir -p /1
&prompt.root; newfs /dev/da1s1e # Повторяем этот шаг для всех созданных разделов.
&prompt.root; mount /dev/da1s1e /1 # Монтируем раздел(ы)
&prompt.root; vi /etc/fstab # Добавляем соответствующую запись/записи в файл /etc/fstab.Если у вас установлен диск IDE, подставьте
ad вместо da. На системах
версий ранее 4.X используйте wd.Эксклюзивный режимOS/2Если вы не будете использовать новый диск совместно с другой
операционной системой, то вы можете использовать режим
эксклюзивного использования. Отметьте, что этот
режим может ввести в заблуждение операционные системы от Microsoft;
однако информацию они не разрушат. А вот &os2; компании IBM будет
забирать себе любой раздел, который она найдет и не
сможет распознать.
&prompt.root; dd if=/dev/zero of=/dev/da1 bs=1k count=1
&prompt.root; disklabel -Brw da1 auto
&prompt.root; disklabel -e da1 # create the `e' partition
&prompt.root; newfs -d0 /dev/da1e
&prompt.root; mkdir -p /1
&prompt.root; vi /etc/fstab # add an entry for /dev/da1e
&prompt.root; mount /1Альтернативный метод заключается в следующем:&prompt.root; dd if=/dev/zero of=/dev/da1 count=2
&prompt.root; disklabel /dev/da1 | disklabel -BrR da1 /dev/stdin
&prompt.root; newfs /dev/da1e
&prompt.root; mkdir -p /1
&prompt.root; vi /etc/fstab # add an entry for /dev/da1e
&prompt.root; mount /1Начиная с &os; 5.1-RELEASE, на смену старой программе
&man.disklabel.8; пришла утилита &man.bsdlabel.8;. У
&man.bsdlabel.8; отсутствуют некоторые устаревшие опции и
параметры; в примере выше параметр не может
использоваться с &man.bsdlabel.8;. Для получения дополнительной
информации обратитесь к справочной странице п
о &man.bsdlabel.8;.RAIDПрограммный RAIDChristopherShumwayОригинальный текст предоставил JimBrownИзменения внёс RAIDпрограммныйRAIDCCDКонфигурация драйвера объединённого диска (CCD)При выборе решения для организации хранилища самыми важными
характеристиками являются скорость, надежность и стоимость. Редко
все эти характеристики наличествуют одновременно; обычно
быстрое и надёжное устройство хранения стоит дорого, а при
уменьшении стоимости в жертву приносятся скорость работы или
надёжность.При проектировании описываемой далее системы в качестве
самого важного фактора была выбрана её стоимость, затем
быстродействие и надёжность. Скорость передачи данных для этой
системы ограничивалась только пропускной способностью сети. И,
хотя надёжность очень важна, CCD-диск, описываемый ниже,
обслуживал работу с данными, полные копии которых уже хранились на
дисках CD-R, так они могли быть с лёгкостью обновлены.При выборе решения для массового хранения данных первым шагом
является определение ваших требований к нему. Если в ваших
требованиях главными являются скорость или надёжность, а не
стоимость, то ваш выбор будет отличаться от описываемой в этом
разделе системы.Установка оборудованияКроме системного IDE-диска, основу описываемого далее CCD-диска
общим объёмом примерно в 90 Гбайт составили три IDE-диска Western
Digital 30GB, 5400 RPM. В идеальном случае каждый диск IDE имеет
собственный контроллер и кабель, но для минимизации стоимости
дополнительные контроллеры IDE не использовались. Вместо этого
диски были настроены при помощи переключателей так, что на каждом
IDE-контроллере находилось по одному ведущему и одному ведомому
диску.До перезагрузки BIOS системы была настроена на автоматическое
распознавание подключенных дисков. Более важно то, что при
перезагрузке их распознала FreeBSD:ad0: 19574MB <WDC WD205BA> [39770/16/63] at ata0-master UDMA33
ad1: 29333MB <WDC WD307AA> [59598/16/63] at ata0-slave UDMA33
ad2: 29333MB <WDC WD307AA> [59598/16/63] at ata1-master UDMA33
ad3: 29333MB <WDC WD307AA> [59598/16/63] at ata1-slave UDMA33Если FreeBSD не распознала все диски, проверьте корректность
положения переключателей на них. На большинстве IDE-дисков
имеется также переключатель Cable Select. Он
не имеет отношения к выбору ведущего и
ведомого устройств. Для получения помощи по правильному
положению переключателей обратитесь к документации по
устройствам.Затем определите, как сделать их частью файловой системы.
Изучите справку по &man.vinum.8; () и
&man.ccd.4;. В нашем конкретном случае была выбрана технология
&man.ccd.4;.Настройка CCDДрайвер &man.ccd.4; позволяет вам взять несколько
идентичных дисков и объединить их в одну логическую файловую
систему. Для использования &man.ccd.4; нужно
ядро со встроенной поддержкой &man.ccd.4;.
Добавьте такую строку в файл конфигурации ядра, перестройте и
установите новое ядро:pseudo-device ccd 4В системах 5.X вместо этого вам нужно использовать такую
строку:device ccdВо FreeBSD 5.X нет нужды указывать количество устройств
&man.ccd.4; так как драйвер устройства &man.ccd.4; теперь
клонируется сам — новые экземпляры устройств будут
создаваться автоматически по необходимости.Во FreeBSD 3.0 и последующих версиях поддержка &man.ccd.4;
также может быть обеспечена загрузкой подгружаемого модуля
ядра.Для настройки &man.ccd.4; сначала вам
нужно воспользоваться утилитой &man.disklabel.8; для разметки
дисков:disklabel -r -w ad1 auto
disklabel -r -w ad2 auto
disklabel -r -w ad3 autoПри этом создаются метки для ad1c,
ad2c и ad3c,
которые занимают диск полностью.Начиная с &os; 5.1-RELEASE, на смену старой программе
&man.disklabel.8; пришла утилита &man.bsdlabel.8;. У
&man.bsdlabel.8; отсутствуют некоторые устаревшие опции и
параметры; в примере выше параметр не может
использоваться с &man.bsdlabel.8;. Для получения дополнительной
информации обратитесь к справочной странице п
о &man.bsdlabel.8;.Следующим шагом является изменение типа метки диска. Для
редактирования дисков можно использовать утилиту
&man.disklabel.8;:disklabel -e ad1
disklabel -e ad2
disklabel -e ad3При этом в редакторе, задаваемом переменной окружения
EDITOR (обычно это &man.vi.1;),
открывается текущая метка каждого диска.Немодифицированная метка диска будет выглядеть примерно
следующим образом:8 partitions:
# size offset fstype [fsize bsize bps/cpg]
c: 60074784 0 unused 0 0 0 # (Cyl. 0 - 59597)Добавьте новый раздел e для использования
драйвером &man.ccd.4;. Как правило, он может быть скопирован с
раздела c, но поле
должно иметь значение
4.2BSD. Теперь метка диска должна выглядеть
примерно так:8 partitions:
# size offset fstype [fsize bsize bps/cpg]
c: 60074784 0 unused 0 0 0 # (Cyl. 0 - 59597)
e: 60074784 0 4.2BSD 0 0 0 # (Cyl. 0 - 59597)Построение файловой системыФайл устройства для ccd0c может ещё
не существовать, так что для его создания предварительно выполните
такие команды:cd /dev
sh MAKEDEV ccd0Во FreeBSD 5.0 &man.devfs.5; будет управлять файлами
устройств в каталоге /dev автоматически, так
что в использовании MAKEDEV необходимости
нет.Теперь, когда все диски размечены, вы должны построить
&man.ccd.4;. Для этого используйте утилиту
&man.ccdconfig.8; с параметрами, подобными следующим:ccdconfig ccd0 32 0 /dev/ad1e /dev/ad2e /dev/ad3eИспользование и значение каждого параметра описывается
ниже:Первым аргументом является конфигурируемое устройство,
- в нашем случае /dev/ccd0c. Часть
+ в нашем случае /dev/ccd0c. Часть
/dev/ является необязательной.Чередование для файловой системы. Оно определяет размер
единицы блока данных в количестве дисковых блоков, каждый из
которых обычно имеет объём в 512 байт. Таким образом, при
чередовании в 32 это будет составлять 16384 байт.Опции для &man.ccdconfig.8;. Если вы хотите включить
зеркалирование диска, то можете задать это здесь. В нашей
конфигурации зеркалирование для &man.ccd.4; не предусмотрено,
поэтому здесь задан 0 (ноль).Последним параметром для &man.ccdconfig.8;
является список устройств для объединения в массив. Для
каждого устройства нужно задавать полное имя.После запуска &man.ccdconfig.8; устройство
&man.ccd.4; будет отконфигурировано. Может
будет построить файловую систему. Обратитесь к справке по
команде &man.newfs.8; для выяснения требуемых параметров, или
просто запустите: newfs /dev/ccd0cАвтоматическое выполнениеВообще говоря, вам потребуется монтировать
&man.ccd.4; при каждой перезагрузке. Для этого
сначала вы должны отконфигурировать это устройство. Запишите
вашу текущую конфигурацию в файл /etc/ccd.conf
при помощи такой команды:ccdconfig -g > /etc/ccd.confПри перезагрузке скрипт /etc/rc запускает
команду ccdconfig -C, если существует файл
/etc/ccd.conf. При этом
&man.ccd.4; автоматически конфигурируется так,
чтобы он мог быть смонтирован.Если при загрузке вы входите в однопользовательский режим, то
перед тем, как выполнять монтирование &man.ccd.4; по команде
&man.mount.8;, вам нужно для конфигурации массива
запустить следующую команду:ccdconfig -CДля автоматического монтирования &man.ccd.4;
поместите запись о &man.ccd.4; в файл
/etc/fstab, чтобы он мог быть
смонтирован во время загрузки системы:/dev/ccd0c /media ufs rw 2 2Менеджер томов VinumRAIDпрограммныйRAIDVinumМенеджер томов Vinum является драйвером блочного устройства,
который реализует виртуальные диски. Он отделяет дисковое
оборудование от интерфейса блочного устройства и работает с данными
таким образом, что в результате повышается гибкость,
производительность и надёжность по сравнению с традиционным
взглядом на дисковое хранилище как на кусок дискового пространства.
&man.vinum.8; реализует модели RAID-0, RAID-1 и RAID-5, как по
отдельности, так и в комбинациях.Обратитесь к для получения более
полной информации о &man.vinum.8;.Аппаратный RAIDRAIDОборудованиеFreeBSD поддерживает также целый ряд аппаратных контроллеров
RAID. Эти устройства самостоятельно управляют
RAID-подсистемой, без необходимости иметь
специфичное для FreeBSD программное обеспечения управления
массивом.При помощи встроенной в адаптер BIOS, он
сам управляет большинством дисковых операций. Далее следует краткое
описание установки при помощи контроллера Promise
IDE RAID.
После установки адаптера и запуска системы, выдаётся
запрос на ввод. Следуйте указаниям для входа в настройку адаптера.
Отсюда вы можете объединить все подключенные диски. После этого
во FreeBSD диск(и) будут выглядеть как один диск. Аналогично могут
быть настроены и другие уровни RAID.Перестроение массивов ATA RAID1FreeBSD позволяет вам выполнять горячую замену вышедшего из строя
диска. При этом требуется, чтобы вы заметили это до
перезагрузки.Вероятно, в файле /var/log/messages или в
выдаче команды &man.dmesg.8; вы увидите примерно следующее:ad6 on monster1 suffered a hard error.
ad6: READ command timeout tag=0 serv=0 - resetting
ad6: trying fallback to PIO mode
ata3: resetting devices .. done
ad6: hard error reading fsbn 1116119 of 0-7 (ad6 bn 1116119; cn 1107 tn 4 sn 11)\\
status=59 error=40
ar0: WARNING - mirror lostПри помощи &man.atacontrol.8; получите дополнительную
информацию:&prompt.root; atacontrol list
ATA channel 0:
Master: no device present
Slave: acd0 <HL-DT-ST CD-ROM GCR-8520B/1.00> ATA/ATAPI rev 0
ATA channel 1:
Master: no device present
Slave: no device present
ATA channel 2:
Master: ad4 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5
Slave: no device present
ATA channel 3:
Master: ad6 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5
Slave: no device present
&prompt.root; atacontrol status ar0
ar0: ATA RAID1 subdisks: ad4 ad6 status: DEGRADEDСначала вам нужно отключить диск от массива, чтобы его можно
было без последствий извлечь:&prompt.root; atacontrol detach 3Замените диск.Повторно подключите диск в качестве резервного:&prompt.root; atacontrol attach 3
Master: ad6 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5
Slave: no device presentПерестройте массив:&prompt.root; atacontrol rebuild ar0Команда перестроения будет работать, пока не закончит. Однако
имеется возможность открыть другой терминал (комбинацией клавиш
AltFn) и
проверить состояние дел при помощи следующей команды:&prompt.root; dmesg | tail -10
[выдача удалена]
ad6: removed from configuration
ad6: deleted from ar0 disk1
ad6: inserted into ar0 disk1 as spare
&prompt.root; atacontrol status ar0
ar0: ATA RAID1 subdisks: ad4 ad6 status: REBUILDING 0% completedДождитесь завершения этой операции.MarcFonvieilleПредоставил USB устройства храненияUSBдискиМножество современных устройств хранения используют Universal
Serial Bus (USB): жесткие диски, брелоки USB, CD-R приводы,
и т.д. &os; предоставляет поддержку этих устройств.НастройкаДрайвер &man.umass.4; предоставляет поддержку устройств
хранения USB. Если вы используете GENERIC
ядро, изменять что-либо в настройках не потребуется. Если вы
используете настроенное ядро, убедитесь, что в файле настройки
присутствуют следующие строки:device scbus
device da
device pass
device uhci
device ohci
device usb
device umassДля доступа к устройствам хранения USB драйвер &man.umass.4;
использует подсистему SCSI, ваши устройства USB будут видны
системе как SCSI устройства. В зависимости от чипсета USB
на материнской плате, вам потребуется только один из параметров
device uhci или device ohci.
Однако, наличие обоих этих параметров не помешает. Не забудьте
скомпилировать и установить новое ядро после добавления каких-либо
строк.Если ваше USB устройство это пишущий привод CD-R или DVD,
необходимо добавить
в ядро SCSI CD-ROM драйвер, &man.cd.4;, следующей строкой:device cdПоскольку устройство записи видно как SCSI диск, драйвер
&man.atapicam.4; не должен использоваться в файле
настройки.Поддержка USB 2.0 контроллеров предоставляется в
&os; 5.X, и в ветви 4.X с &os; 4.10-RELEASE.
Добавьте:device ehciв файл настройки ядра для поддержки USB 2.0. Обратите внимание,
что драйверы &man.uhci.4; и &man.ohci.4; все еще нужны, если
необходима поддержка USB 1.X.В &os; 4.X, необходимо запустить USB даемона
(&man.usbd.8;), чтобы увидеть некоторые USB устройства.
Для этого добавьте usbd_enable="YES"
в файл /etc/rc.conf и перезагрузите
компьютер.Тестирование конфигурацииКонфигурация готова к тестированию, подключите устройство USB,
и в буфере системных сообщений (&man.dmesg.8;), диск должен
отобразиться примерно так:umass0: USB Solid state disk, rev 1.10/1.00, addr 2
GEOM: create disk da0 dp=0xc2d74850
da0 at umass-sim0 bus 0 target 0 lun 0
da0: <Generic Traveling Disk 1.11> Removable Direct Access SCSI-2 device
da0: 1.000MB/s transfers
da0: 126MB (258048 512 byte sectors: 64H 32S/T 126C)Конечно, производитель, имя устройства
(da0) и другие детали могут
отличаться в зависимости от конфигурации.Поскольку устройство USB видится как SCSI, команда
camcontrol может быть использована для
вывода списка устройств хранения USB, подключенных к системе:&prompt.root; camcontrol devlist
<Generic Traveling Disk 1.11> at scbus0 target 0 lun 0 (da0,pass0)Если на диске есть файловая система, у вас должна быть
возможность смонтировать ее.
поможет вам создать и отформатировать разделы на диске
USB если потребуется.Если вы отключите устройство (диск должен быть сначала
размонтирован), вы должны увидеть в буфере системных сообщений
что-то подобное:umass0: at uhub0 port 1 (addr 2) disconnected
(da0:umass-sim0:0:0:0): lost device
(da0:umass-sim0:0:0:0): removing device entry
GEOM: destroy disk da0 dp=0xc2d74850
umass0: detachedДополнительная информацияПомимо разделов Добавление
дисков и Монтирование
и размонтирование файловых систем, также может быть полезно
чтение различных страниц справочника: &man.umass.4;,
&man.camcontrol.8;, и &man.usbdevs.8;.MikeMeyerТекст предоставил Запись и использование оптических носителей (CD)CDROMсозданиеВведениеКомпакт-диски (CD) имеют несколько особенностей, отличающих их от
обычных дисков. Во-первых, на них невозможно производить запись. Они
спроектированы с расчетом на то, что их можно читать последовательно без
задержек на перемещение головки между дорожками. К тому же их гораздо
проще переносить от системы к системе, чем носители близкого
объема.У CD имеются дорожки, но они представляют собой последовательность
данных, читаемую последовательно, и не являются физической
характеристикой диска. Для записи CD во FreeBSD вы готовите файлы
данных, которые будут формировать дорожки на компакт-диске, а затем
записываете дорожки на CD.ISO 9660файловые системыISO 9660Файловая система ISO 9660 была разработана с учетом этих отличий, К
сожалению, она унаследовала ограничения файловых систем, которые были
тогда. К счастью, она дает механизм расширений, которые позволяют
правильно записанным дискам обходить эти ограничения и при этом
продолжать работать с системами, которые не поддерживают эти
расширения.sysutils/cdrtoolsДля создания файла данных, содержащего файловую систему ISO 9660,
используется программа &man.mkisofs.8;, которая включена в порт
sysutils/cdrtools. Она имеет опции,
поддерживающие различные расширения, и описана ниже.устройство записи CDATAPIКакой инструмент использовать для записи CD, зависит от того,
является ли
ваше устройство для записи CD устройством ATAPI или каким-либо другим.
С устройствами для записи стандарта ATAPI используется программа
burncd, которая
является частью комплекта поставки системы. С устройствами SCSI и USB
нужно использовать cdrecord из порта
sysutils/cdrtools.burncd поддерживает не все устройства. Для
определения того, поддерживается ли устройство, посмотрите список
поддерживаемых приводов
CD-R/RW.устройство записи CDдрайвер ATAPI/CAMЕсли вы используете &os; 5.X, &os; 4.8-RELEASE или
более новые версии, то при работе с ATAPI-оборудованием через модуль ATAPI/CAM можно использовать
утилиту cdrecord и
другие инструменты для SCSI-приводов.Если для записи CD вам нужна программа с графическим
интерфейсом пользователя, взгляните на
X-CD-Roast или
K3b. Они доступны в виде пакетов
или из портов sysutils/xcdroast и sysutils/k3b.
Программам X-CD-Roast и
K3b для работы с оборудованием
ATAPI требуется модуль ATAPI/CAM.mkisofsПрограмма &man.mkisofs.8;, поставляемая с портом sysutils/cdrtools создаёт
файловую систему ISO 9660, которая является образом дерева каталогов в
пространстве имён файловой системы &unix;. В самом простом случае она
используется так:&prompt.root; mkisofs -o imagefile.iso/path/to/treeфайловые системыISO 9660Эта команда создаст файл imagefile.iso,
содержащий файловую систему ISO 9660, которая является копией дерева
каталогов /path/to/tree. Во время работы
она будет преобразовывать имена файлов в имена, которые удовлетворяют
ограничениям файловой системы ISO 9660, и исключит файлы, которые носят
имена, неподходящие для файловой системы ISO.файловые системыHFSфайловые системыJolietДля того, чтобы обойти эти ограничения, имеется несколько опций. В
частности, включает использование расширений
Rock Ridge, распространенных в &unix;-системах, с
будут применены расширения Joliet, используемые в системах от
Microsoft, а может использоваться для создания
файловых систем HFS, используемых в &macos;.Для CD, которые будут использоваться только с системами FreeBSD,
может использоваться опция , отменяющая все
ограничения на имена файлов. При использовании с опцией
генерируется образ файловой системы, идентичный начальному дереву
FreeBSD, хотя при этом стандарт ISO 9660 может нарушаться в нескольких
местах.CDROMсоздание загрузочногоПоследней часто используемой опцией является .
Она используется для указания загрузочного образа для использования при
создании загрузочного CD в стандарте El Torito. Этой
опции указывается аргумент, который является маршрутом к загрузочному
образу из корня дерева, записываемого на CD. Так что, положив, что
/tmp/myboot содержит загрузочную систему FreeBSD с
загрузочным образом в /tmp/myboot/boot/cdboot, вы
можете создать образ файловой системы ISO 9660 в
/tmp/bootable.iso следующим образом:&prompt.root; mkisofs -U -R -b boot/cdboot -o /tmp/bootable.iso /tmp/mybootСделав это, и имея в ядре отконфигурированное устройство
vn (для FreeBSD 4.X) или
md (при использовании FreeBSD 5.X), вы
можете смонтировать файловую систему, выполнив:&prompt.root; vnconfig -e vn0c /tmp/bootable.iso
&prompt.root; mount -t cd9660 /dev/vn0c /mntв случае использования FreeBSD 4.X, а для
FreeBSD 5.X:&prompt.root; mdconfig -a -t vnode -f /tmp/bootable.iso -u 0
&prompt.root; mount -t cd9660 /dev/md0 /mntВ этот момент вы можете проверить, что /mnt и
/tmp/myboot идентичны.Имеется много других опций, которые можно использовать с
программой &man.mkisofs.8; для
тонкой настройки её поведения. В частности: модификации в размещении
ISO 9660 и создание дисков в форматах Joliet и HFS. Обратитесь к
справочным страницам по &man.mkisofs.8; для получения более подробной
информации.burncdCDROMзаписьЕсли ваше устройство для записи CD соответствует стандарту ATAPI,
то для записи ISO-образа на компакт-диск вы можете воспользоваться
командой burncd. burncd входит
в базовый комплект операционной системы и установлена как
/usr/sbin/burncd. Использовать её очень просто,
так как параметров у ней немного:&prompt.root; burncd -f cddevice data imagefile.iso fixateПо этой команде файл imagefile.iso будет
скопирован на cddevice. По умолчанию
используется устройство /dev/acd0 (или
/dev/acd0c в &os; 4.X). Для получения
информации о параметрах, задающих скорость записи, выброс диска после
записи и запись звуковых данных, обратитесь к &man.burncd.8;.cdrecordЕсли ваше устройство для записи CD не соответствует стандарту
ATAPI, то для записи компакт-дисков вам нужно пользоваться программой
cdrecord. cdrecord не входит в
комплект поставки системы; вы должны установить её из порта
sysutils/cdrtools или из
соответствующего пакета. Изменения в системе могут приводить к тому,
что откомпилированные версии этой программы работать не будут, или
приводить к порче дисков. Поэтому вы должны при обновлении системы
либо обновить порт, либо, если вы следуете
-STABLE, обновить порт при появлении его новой версии.Хотя cdrecord имеет много опций, в основном
использовать её ещё проще, чем burncd. Запись образа
ISO 9660 делается такой командой:&prompt.root; cdrecord dev=deviceimagefile.isoТонким моментом при использовании cdrecord
является определение правильного устройства . Чтобы
задать параметр правильно, воспользуйтесь флагом
команды cdrecord, в
результате чего может получиться примерно такой результат:CDROMзапись&prompt.root; cdrecord -scanbus
Cdrecord 1.9 (i386-unknown-freebsd4.2) Copyright (C) 1995-2000 Jörg Schilling
Using libscg version 'schily-0.1'
scsibus0:
0,0,0 0) 'SEAGATE ' 'ST39236LW ' '0004' Disk
0,1,0 1) 'SEAGATE ' 'ST39173W ' '5958' Disk
0,2,0 2) *
0,3,0 3) 'iomega ' 'jaz 1GB ' 'J.86' Removable Disk
0,4,0 4) 'NEC ' 'CD-ROM DRIVE:466' '1.26' Removable CD-ROM
0,5,0 5) *
0,6,0 6) *
0,7,0 7) *
scsibus1:
1,0,0 100) *
1,1,0 101) *
1,2,0 102) *
1,3,0 103) *
1,4,0 104) *
1,5,0 105) 'YAMAHA ' 'CRW4260 ' '1.0q' Removable CD-ROM
1,6,0 106) 'ARTEC ' 'AM12S ' '1.06' Scanner
1,7,0 107) *Здесь приведены соответствующие значения параметров
для имеющихся устройств. Найдите здесь ваше
устройство для записи CD, а в качестве параметров для
задавайте три числа через запятые. В нашем случае
CRW-устройству соответствуют числа 1,5,0, так что правильным параметром
будет . Имеется более
простой способ задать эти значения; обратитесь к справочной информации
о &man.cdrecord.1; для выяснения подробностей. Там же находится
информация о записи звуковых дорожек, управлении скоростью и другим
вещам.Копирование аудио CDВы можете копировать музыкальные CD, извлекая данные аудио с CD
в набор файлов, а затем записывая эти файлы на чистый CD. Процесс
несколько различен в случаях использования устройств ATAPI и
SCSI.Устройства SCSIИспользуйте cdda2wav для извлечения
данных аудио.&prompt.user; cdda2wav -v255 -D2,0 -B -OwavВоспользуйтесь cdrecord для записи файлов
.wav.&prompt.user; cdrecord -v dev=2,0 -dao -useinfo *.wav
- Значение, соответствующее 2.0,
+ Значение, соответствующее 2,0,
должно быть установлено правильно, как это описано в .Устройства ATAPIДрайвер устройств ATAPI CD делает каждую дорожку доступной как
/dev/acddtnn,
где d является номером привода, а
nn соответствует номеру дорожки, который
записывается двумя десятичными цифрами с нулём в начале, если это
нужно. Таким образом, первая дорожка на первом диске будет носить
имя /dev/acd0t01, вторая будет именоваться
/dev/acd0t02, третья будет носить имя
/dev/acd0t03 и так далее.Удостоверьтесь, что соответствующий файл имеется в каталоге
/dev.&prompt.root; cd /dev
&prompt.root; sh MAKEDEV acd0t99Во FreeBSD 5.0 &man.devfs.5; будет автоматически создавать
объекты в каталоге /dev и управлять ими, так
что использовать MAKEDEV не
обязательно.Извлеките каждую дорожку при помощи команды &man.dd.1;. При
извлечении файлов вы должны также использовать специфическое
значение для размера блока.&prompt.root; dd if=/dev/acd0t01 of=track1.cdr bs=2352
&prompt.root; dd if=/dev/acd0t02 of=track2.cdr bs=2352
...
Запишите извлечённые файлы на диск при помощи утилиты
burncd. Вы должны указать, что это файлы с
аудио, и что burncd должна зафиксировать диск
по окончании работы.&prompt.root; burncd -f /dev/acd0 audio track1.cdr track2.cdr ... fixateКопирование компакт-дисков с даннымиВы можете скопировать CD с данными в файл образа, который
функционально эквивалентен файлу образа, созданному командой
&man.mkisofs.8;, и вы можете
использовать его для копирования любого CD с данными. В приводимом
здесь примере предполагается, что ваш привод CDROM называется
acd0. Подставьте название вашего привода
CDROM. В &os; 4.X к имени устройства должен быть добавлен
символ c
для указания на то, что берётся весь раздел, а в
случае CDROM, весь диск.&prompt.root; dd if=/dev/acd0 of=file.iso bs=2048Теперь, когда вы имеете образ, вы можете записать его на CD так,
как это описано выше.Использование компакт-диски с даннымиТеперь, после того, как вы создали стандартный CDROM с данными, вы,
наверное, захотите смонтировать его и считать с него данные. По
умолчанию &man.mount.8; предполагает, что файловая система имеет тип
ufs. Если вы попытаетесь выполнить что-то
вроде:&prompt.root; mount /dev/cd0 /mntвы получите сообщение Incorrect super block,
и диск не смонтируется. CDROM не является файловой системой
UFS, поэтому попытки смонтировать его таким образом
будут терпеть неудачу. Вам просто нужно указать команде &man.mount.8;,
что файловая система имеет тип ISO9660, и всё должно
заработать. Сделайте это, задав параметр
при вызове &man.mount.8;. К примеру, если вы хотите смонтировать
- устройство CDROM, /dev/cd0, в каталог
+ устройство CDROM, /dev/cd0, в каталог
/mnt, вы должны выполнить:&prompt.root; mount -t cd9660 /dev/cd0 /mntЗаметьте, что имя вашего устройства
- (/dev/cd0 в этом примере) может быть другим,
+ (/dev/cd0 в этом примере) может быть другим,
в зависимости от интерфейса, используемого в CDROM. Кроме того,
параметр всего лишь задаёт выполнение
утилиты &man.mount.cd9660.8;. Пример выше может быть упрощён
до:&prompt.root; mount_cd9660 /dev/cd0c /mntТаким способом, вообще говоря, вы можете использовать компакт-диски
любого производителя. Диски с некоторыми расширениями ISO 9660 могут,
однако, работать со странностями. К примеру диски Joliet хранят все
имена файлов в виде последовательностей двухбайтовых символов Unicode.
Ядро FreeBSD (пока ещё) не может работать с Unicode, поэтому не
английские символы выводятся в виде знаков вопроса. (Если в работаете
с FreeBSD 4.3 или более поздней версией, то в драйвере CD9660 имеется
механизм для динамической загрузки соответствующей таблицы
преобразования Unicode. Модули для некоторых распространённых
кодировок могут быть получены из порта
sysutils/cd9660_unicode.)Время от времени вы можете получать сообщения Device not
configured при попытке смонтировать CDROM. Это обычно
означает, что привод CDROM полагает, что в нём нет диска, или что
привод не виден на шине. Приводу CDROM может понадобиться несколько
секунд, чтобы понять, что он был закрыт, так что будьте
терпеливы.Иногда SCSI CDROM может потеряться из-за того, что у него не было
достаточно времени, чтобы ответить на сброс шины. Если у вас имеется
SCSI CDROM, то, пожалуйста, добавьте следующий параметр в конфигурацию
вашего ядра и перестройте
его.options SCSI_DELAY=15000Это укажет вашей шине SCSI выдерживать 15-секундную паузу во время
загрузки, чтобы дать вашему приводу CDROM шанс ответить на сброс
шины.Запись необработанных данных на компакт-дискиВы можете предпочесть запись файла непосредственно на CD без
создания файловой системы ISO 9660. Некоторые поступают так при
создании резервных копий. Это выполняется гораздо быстрее. чем запись
стандартного компакт-диска:&prompt.root; burncd -f /dev/acd1 -s 12 data archive.tar.gz fixateДля извлечения данных, записанных так на компакт-диск, вы должны
считывать данные из файла непосредственного доступа к
устройству:&prompt.root; tar xzvf /dev/acd1Вы не можете монтировать этот диск как обычный CDROM. Такой
компакт-диск не может быть прочитан ни в какой другой операционной
системе, кроме FreeBSD. Если вы хотите монтировать CD или
обменяться данными с другой операционной системой, то вы должны
использовать &man.mkisofs.8; так,
как это было описано выше.MarcFonvieilleПредоставил устройство записи CDдрайвер ATAPI/CAMИспользование драйвера ATAPI/CAMЭтот драйвер позволяет работать с ATAPI-устройствами (приводы
CD-ROM, CD-RW, DVD и так далее) через подсистему SCSI, таким образом
расширяя использование таких приложений, как sysutils/cdrdao или &man.cdrecord.1;.Для использования этого драйвера вам необходимо добавить в файл
конфигурации ядра следующие строки:device atapicam
device scbus
device cd
device passКроме того, в файле конфигурации ядра должна быть следующая
строка:device ataкоторая уже должна там присутствовать.После этого перестройте и установите ваше новое ядро, выполните
перезагрузку машины. В процессе загрузки ваш пишущий привод должен
появиться примерно следующим образом:acd0: CD-RW <MATSHITA CD-RW/DVD-ROM UJDA740> at ata1-master PIO4
cd0 at ata1 bus 0 target 0 lun 0
cd0: <MATSHITA CDRW/DVD UJDA740 1.00> Removable CD-ROM SCSI-0 device
cd0: 16.000MB/s transfers
cd0: Attempt to query device size failed: NOT READY, Medium not present - tray closedТеперь с ним можно работать через устройство
/dev/cd0, например, чтобы смонтировать
CD-ROM в каталог /mnt, просто наберите следующую
команду:&prompt.root; mount -t cd9660 /dev/cd0 /mntДля получения SCSI-адреса пишущего привода, вы можете, работая как
пользователь root, запустить такую
команду:&prompt.root; camcontrol devlist
<MATSHITA CDRW/DVD UJDA740 1.00> at scbus1 target 0 lun 0 (pass0,cd0)Таким образом, 1,0,0 будет SCSI-адресом для
использования с &man.cdrecord.1; и другими приложениями для работы со
SCSI.Для получения дополнительной информации об ATAPI/CAM и системе
SCSI, обратитесь к страницам справочной системы по &man.atapicam.4; и
&man.cam.4;.MarcFonvieilleПредоставил AndyPolyakovДополнения предоставил Создание и использование оптических носителей (DVD)DVDзаписьВведениеDVD это следующее после CD поколение оптических носителей.
DVD может вмещать больше данных чем любой CD и является
современным стандартом распространения видео.Для записываемых DVD существует пять физических форматов
записи:DVD-R: Был первым форматом записываемых DVD. Стандарт
DVD-R был создан DVD Forum.
Это формат для однократной записи.DVD-RW: Это перезаписываемая версия стандарта DVD-R.
Носители DVD-RW могут быть перезаписаны около 1000 раз.DVD-RAM: Это также перезаписываемый формат, поддерживаемый
DVD Forum. DVD-RAM может быть виден как съемный жесткий диск.
Однако, этот носитель не совместим с большинством приводов
DVD-ROM и проигрывателями DVD-Video; лишь несколько
пишущих DVD поддерживают формат DVD-RAM.DVD+RW: Это перезаписываемый формат, созданный
DVD+RW
Alliance. Носитель DVD+RW может быть перезаписан около
1000 раз.DVD+R: Этот формат — однократно записываемая версия
формата DVD+RW.Однослойный записываемый DVD может хранить до
4,700,000,000 байт, что равно 4.38 Гб, или
4485 Мб (1 килобайт это 1024 байт).Необходимо различать физический носитель и приложение.
Например, DVD-Video это определенная файловая раскладка, которая
может быть помещена на записываемый DVD любого физического
формата: DVD-R, DVD+R, DVD-RW и т.д. Перед выбором типа
носителя вы должны убедиться, что и устройство записи и
DVD-Video проигрыватель (отдельный или DVD-ROM привод
компьютера) совместимы с данным носителем.НастройкаДля записи DVD будет использоваться программа &man.growisofs.1;.
Эта команда входит в набор утилит
dvd+rw-tools (sysutils/dvd+rw-tools), который поддерживает
все типы носителей DVD.Эти утилиты используют подсистему SCSI для доступа к устройствам,
следовательно необходимо добавить в ядро поддержку ATAPI/CAM. Если пишущий
привод использует USB интерфейс, это добавление бесполезно и
необходимо прочесть более подробную информацию по настройке
устройств USB в Вам также потребуется включить DMA доступ для устройств ATAPI,
это можно сделать добавив в
/boot/loader.conf следующую строку:hw.ata.atapi_dma="1"Перед использованием
dvd+rw-tools вы должны свериться со
списком
совместимого оборудования dvd+rw-tools с информацией
по устройствам для записи DVD.Если вам нужен графический интерфейс пользователя,
взгляните на K3b (sysutils/k3b), который
предоставляет дружественный пользователю интерфейс к
&man.growisofs.1; и многим другим программам
записи.Запись DVD с даннымиКоманда &man.growisofs.1; является оболочкой для mkisofs, она вызовет
&man.mkisofs.8; для создания файловой системы и запишет
DVD. Это означает, что вам не потребуется создавать образ
с данными перед началом процесса записи.Для записи данных из каталога /path/to/data на DVD+R или DVD-R,
используйте следующую команду:&prompt.root; growisofs -dvd-compat -Z /dev/cd0 -J -R /path/to/dataПараметры передаются
&man.mkisofs.8; для создания файловой системы (в данном случае:
файловая система ISO 9660 с расширениями Joliet и Rock Ridge),
обратитесь к странице справочника &man.mkisofs.8; за более
подробной информацией.Параметр используется для первой сессии
записи в любом случае: для одной или нескольких сессий.
Устройство DVD, /dev/cd0, должно
быть изменено в соответствии с имеющимися настройками.
Параметр закроет диск и дозапись
станет невозможна. Это должно улучшить совместимость с
приводами DVD-ROM.Возможна также запись предварительного (pre-mastered) образа,
например, для записи
imagefile.iso запустим:&prompt.root; growisofs -dvd-compat -Z /dev/cd0=imagefile.isoСкорость записи должна быть определена и автоматически
установлена в соответствии с носителем и приводом. Если вы хотите
явно указать скорость записи, используйте параметр
. За дальнейшей информацией обратитесь к
странице справочника &man.growisofs.1;.DVDDVD-VideoЗапись DVD-VideoDVD-Video это особая файловая система, базирующаяся на ISO 9660
и спецификациях micro-UDF (M-UDF). DVD-Video также представляет
определенную иерархию структуры данных, поэтому для создания DVD
потребуется особая программа, такая как multimedia/dvdauthor.Если у вас уже есть образ файловой системы DVD-Video,
просто запишите его как любой другой образ, примеры находятся
в предыдущем разделе. Если вы создали DVD и результат находится
в каталоге /path/to/video,
для записи DVD-Video должна быть использована следующая
команда:&prompt.root; growisofs -Z /dev/cd0 -dvd-video /path/to/videoПараметр будет передан
&man.mkisofs.8; и укажет создать файловую систему DVD-Video.
Помимо этого, параметр подразумевает
параметр &man.growisofs.1; .DVDDVD+RWИспользование DVD+RWВ отличие от CD-RW, новый DVD+RW необходимо отформатировать перед
первым использованием. Программа &man.growisofs.1; позаботится об
этом сама при необходимости, и это
рекомендованный способ. Тем не менее,
для форматирования DVD+RW вы можете использовать команду
dvd+rw-format:&prompt.root; dvd+rw-format /dev/cd0Эту операцию необходимо выполнить лишь однажды, помните,
что только новые носители DVD+RW необходимо форматировать.
Затем запишите DVD+RW тем способом, который описан в предыдущем
разделе.Если вы хотите записать новые данные (полностью новую файловую
систему, а не дописать данные) на DVD+RW, его не нужно очищать,
просто запишите поверх предыдущей записи (создав новую начальную
сессию) примерно так :&prompt.root; growisofs -Z /dev/cd0 -J -R /path/to/newdataФормат DVD+RW делает возможным легко дописать данные к предыдущей
записи. Операция состоит в присоединении предыдущей сессии к
существующей, это не мультисессионная запись, &man.growisofs.1;
расширит (grow) файловую систему ISO 9660,
существующую на носителе.Например, для дозаписи данных к предыдущей сессии на
DVD+RW, используется следующая команда:&prompt.root; growisofs -M /dev/cd0 -J -R /path/to/nextdataПри последующих записях &man.mkisofs.8; необходимо передавать
те же параметры, что и при первой записи.Вы можете использовать параметр
для улучшения совместимости с приводами DVD-ROM. В случае
DVD+RW это не помешает добавлению данных.Если по какой-либо причине вам потребуется очистить носитель,
используйте следующую команду:&prompt.root; growisofs -Z /dev/cd0=/dev/zeroDVDDVD-RWИспользование DVD-RWСуществует два формата дисков DVD-RW: последовательно
дополняемый и с ограниченной перезаписью. По умолчанию
формат дисков DVD-RW последовательный.Новый DVD-RW может быть записан непосредственно без
необходимости форматирования, однако DVD-RW с данными
в последовательном формате необходимо очистить перед
созданием новой начальной сессии.Для очистки DVD-RW в последовательном формате, запустите:&prompt.root; dvd+rw-format -blank=full /dev/cd0Полная очистка () займет
около одного часа на скорости 1x. Быструю очистку можно
выполнить с параметром , если
DVD-RW будет записан в режиме Disk-At-Once (DAO).
Для записи DVD-RW в режиме DAO, используйте команду:&prompt.root; growisofs -use-the-force-luke=dao -Z /dev/cd0=imagefile.isoПараметр не
должен потребоваться, поскольку &man.growisofs.1; попытается
определить был ли носитель быстро очищен и включить
DAO запись.Фактически, лучше использовать режим с ограниченной
перезаписью с любым DVD-RW, этот формат более гибкий, чем
формат по умолчанию с последовательной записью.Для записи данных на последовательный DVD-RW, используйте
ту же команду, что и для других форматов DVD:&prompt.root; growisofs -Z /dev/cd0 -J -R /path/to/dataЕсли вы хотите добавить данные к предыдущей записи,
используйте параметр &man.growisofs.1; .
Однако при добавлении данных на DVD-RW в последовательном
режиме, на диске будет создана новая сессия и в результате
получится мультисессионный диск.В формате DVD-RW с ограниченной перезаписью не требуется
очищать носитель перед созданием новой начальной сессии,
вам всего лишь нужно переписать диск с параметром
, подобно DVD+RW. Возможно также увеличение
существующей файловой системы ISO 9660, записанной на диск
тем же способом, как для DVD+RW с параметром .
В результате получится односессионный DVD.Для перевода DVD-RW в формат с ограниченной перезаписью,
необходимо использовать следующую команду:&prompt.root; dvd+rw-format /dev/cd0Для перевода обратно в последовательный формат, выполните:&prompt.root; dvd+rw-format -blank=full /dev/cd0МультисессияЛишь несколько DVD-ROM и проигрывателей поддерживают
мультисессионные DVD, в основном они в лучшем случае прочтут только
первую сессию. DVD+R, DVD-R и DVD-RW в последовательном формате
могут работать с несколькими сессиями, и это не относится к
форматам DVD+RW и DVD-RW в формате ограниченной перезаписи.Использование следующей команды после первой (не закрытой) сессии
для DVD+R, DVD-R, или DVD-RW в последовательном формате, добавит
на диск новую сессию:&prompt.root; growisofs -M /dev/cd0 -J -R /path/to/nextdataИспользование этой командной строки с DVD+RW или DVD-RW в
режиме ограниченной перезаписи добавит данные, объединив новую сессию
с предыдущей. В результате получится односессионный диск.
Такой способ используется для добавления данных после первой
записи на эти носители.Некоторый объем носителя используется между сессиями для
завершения и начала сессии. Следовательно, для оптимизации
объема хранения сессии должны быть большими. Количество сессий
ограничено 154 для DVD+R, около 2000 для DVD-R и 127 для
DVD+R Double Layer.Дополнительная информацияДля получения дополнительной информации о DVD, можно запустить
команду dvd+rw-mediainfo
/dev/cd0, диск должен
находиться в приводе.Дополнительная информация о
dvd+rw-tools может быть найдена на
странице справочника &man.growisofs.1;, на веб сайте
dvd+rw-tools и в архивах списка рассылки
cdwrite.Вывод dvd+rw-mediainfo при записи
или проблемный носитель необходимы для любого сообщения
о проблеме. Без этого вывода будет совершенно невозможно
помочь вам.JulioMerinoПервоначальный текст предоставил MartinKarlssonПереписал ДискетыХранение данных на дискетах иногда бывает полезным, например,
когда нет других съёмных носителей или когда необходимо перенести
небольшой объём данных на другой компьютер.В этом разделе будет описано, как использовать дискеты во FreeBSD.
В основном речь пойдёт о форматировании и использовании
дискет DOS размером 3.5 дюйма, однако общие принципы применимы и для
других форматов гибких дисков.Форматирование дискетУстройствоДоступ к гибким дискам, как, впрочем, и к остальным устройствам,
осуществляется через соответствующие файлы в
каталога /dev. Чтобы обратиться к дискете при
использовании релизов 4.X и ранее, необходимо работать с
/dev/fdN,
где N обозначает номер привода, обычно 0,
или /dev/fdNX, где
X обозначает букву.В 5.0 и более новых релизах просто используйте
/dev/fdN.Размер диска в 4.X и более ранних релизахИмеются также устройства /dev/fdN.size,
где size обозначает размер дискеты в
килобайтах. Эти файлы устройств используются во время
низкоуровневого форматирования для задания размера устройства.
В последующих примерах будет использоваться размер в 1440kB.Иногда записи в каталоге /dev необходимо
создавать повторно. Для этого выполните следующее:&prompt.root; cd /dev && ./MAKEDEV "fd*"Размер диска в 5.0 и последующих релизахВ 5.0 &man.devfs.5; управляет файлами устройств в каталоге
/dev в автоматическом режиме, так что
использование MAKEDEV необязательно.Требуемый размер диска передаётся утилите &man.fdformat.1; при
помощи параметра . Поддерживаемые
размеры перечислены в &man.fdcontrol.8;, но, по нашему мнению,
лучше всего работает 1440kB.ФорматированиеПеред тем, как дискетой можно будет воспользоваться, её
необходимо отформатировать на низком уровне. Обычно это выполняется
производителем, однако форматирование является хорошим способом
проверить целостность носителя. Большинство гибких дисков
предназначены для использования с размером 1440kB, однако возможно
задать меньший или больший размер.Для низкоуровневого форматирования дискет вам нужно использовать
&man.fdformat.1;. В качестве параметра этой утилите передаётся
имя устройства.Обратите внимание на появление сообщений об ошибках, так как
они могут помочь определить, хорошая это дискета или плохая.Форматирование в 4.X и более ранних релизахДля форматирования дискет используйте устройства
/dev/fdN.size.
Вставьте новую 3.5-дюймовую дискету в дисковод и введите
команду:&prompt.root; /usr/sbin/fdformat /dev/fd0.1440Форматирование в 5.0 и более новых релизахДля форматирования гибких дисков используйте устройства
/dev/fdN. Вставьте
новую 3.5-дюймовую дискету в дисковод и введите команду:&prompt.root; /usr/sbin/fdformat -f 1440 /dev/fd0Метка дискаПосле низкоуровневого форматирования диска вам нужно поместить на
него метку диска. Эта метка будет потом разрушена, но она будет нужна
системе для определения размера диска и его характеристик.Новая метка диска будет касаться диска в целом, и будет содержать
полную информацию о параметрах дискеты.
Значения геометрии для метки диска перечислены в файле
/etc/disktab.
Теперь вы можете запустить &man.disklabel.8; примерно так:&prompt.root; /sbin/disklabel -B -r -w /dev/fd0 fd1440Начиная с &os; 5.1-RELEASE, на смену старой программе
&man.disklabel.8; пришла утилита &man.bsdlabel.8;. У
&man.bsdlabel.8; отсутствуют некоторые устаревшие опции и
параметры; в примере выше параметр не может
использоваться с &man.bsdlabel.8;. Для получения дополнительной
информации обратитесь к справочной странице п
о &man.bsdlabel.8;.Файловая системаТеперь ваша дискета готова к высокоуровневому форматированию.
При этом на неё будет помещаться новая файловая система, которая
позволит FreeBSD читать и записывать информацию на диск. После
создания новой файловой системы метка диска уничтожается, так что если
вы захотите переформатировать диск, вам придётся создавать метку диска
повторно.Файловой системой для дискеты может служить UFS или FAT.
Вообще говоря, FAT для дискет походит лучше.Для размещения на дискете новой файловой системы,
выполните:&prompt.root; /sbin/newfs_msdos /dev/fd0Теперь диск готов к работе.Использование дискетДля работы с гибким диском смонтируйте его при помощи утилит
&man.mount.msdos.8; (для 4.X и более ранних релизов) или
&man.mount.msdosfs.8; (в 5.0 и последующих релизах). Можно также
использовать пакет emulators/mtools
из коллекции портов.Создание и использование архивных копий на магнитной лентеносители на магнитной лентеК наиболее часто используемым носителям на магнитной ленте следует
отнести ленты шириной 4мм и 8мм, а также типа QIC, мини-картриджи и
DLT.4мм (DDS: Digital Data Storage)носители на магнитной лентемагнитные ленты DDS (4мм)носители на магнитной лентемагнитные ленты QICЛенты шириной 4мм заменяют QIC в качестве наиболее
предпочтительного носителя для создания резервных копий. Эта тенденция
значительно усилилась после покупки компанией Conner фирмы Archive,
ведущего производителя накопителей QIC и последующего прекращения
их выпуска. Накопители 4мм малы по размеру и мало шумят, но у них нет
репутации носителя, обладающего надежностью приводов 8мм. Картриджи
более дешевы и меньше по размеру (3 x 2 x 0.5 дюймов, 76 x 51 x 12 мм),
чем 8мм-картриджи. Накопители для лент шириной 4мм, как и 8мм, имеют
сравнительно малый срок службы головок, по причине использования в
обоих случаях технологии спирального сканирования (helical
scan).Пропускная способность у таких накопителей начинается с цифры
~150 kB/s, пиковая достигает ~500 kB/s. Ёмкость накопителей
начинается с 1.3 GB и может достигать 2.0 GB. Аппаратное
сжатие, имеющееся на
большинстве таких накопителей, даёт увеличение ёмкости примерно вдвое.
Блоки многоприводных ленточных библиотек могут иметь до 6 накопителей
в одном модуле с автоматической сменой ленты. Емкость библиотек может
достигать 240 GB.Стандарт DDS-3 в настоящее время поддерживает ёмкости лент вплоть
до 12 ГБ (или 24 ГБ сжатой информации).В накопителях 4мм, как и в приводах 8мм, используется технология
спирального сканирования. Все плюсы и минусы этой технологии относятся
как к 4мм, так и 8мм приводам.Не следует использовать ленты после того, как они были подвергнуты
2000 проходов, или были использованы для создания 100 полных
копий.8мм (Exabyte)носители на магнитной лентемагнитные ленты Exabyte (8мм)Ленты шириной 8мм являются самым распространённым типом для
ленточных SCSI-накопителей; они же являются наиболее удачным выбором при
выборе типа носителей для обмена лентами. Наверное, каждый сервер
имеет привод Exabyte шириной 8мм и объёмом 2 ГБ. Эти приводы
удобны, они работают надёжно и тихо. Картриджи дешевы и малы по
размеру (4.8 x 3.3 x 0.6 дюймов; 122 x 84 x 15 мм). Одним минусом
лент шириной
8мм является сравнительно малое время службы головок и лент из-за
высокой скорости движения ленты вдоль головок.Скорость передачи данных варьируется от ~250 kB/s
до ~500 kB/s. Объём хранимых данных начинается с 300 МБ и
может достигать 7 ГБ.
Аппаратное сжатие, имеющееся практически на всех таких приводах,
увеличивает емкость примерно вдвое. Эти приводы существуют как в виде
отдельных модулей, так и в виде многоприводных ленточных библиотек с
6 приводами и 120 лентами в одном отсеке. Ленты сменяются
автоматически модулем. Емкости библиотек достигают величин,
превышающих 840 ГБ.Модель Exabyte Mammoth поддерживает ёмкость ленты в
12 ГБ (24 ГБ со сжатием) и стоит примерно вдвое больше, чем
обычный ленточный накопитель.Данные на ленту записываются по технологии спирального
сканирования, головки позиционируются под углом к носителю (примерно в
6 градусов). Лента оборачивается на 270 градусов вокруг шпульки,
которая держит головки. Во время скольжения ленты вокруг шпульки
последняя вращается. В результате достигается высокая плотность записи
данных с очень близко лежащими дорожками, расположенными под наклоном
по всей ленте.QICносители на магнитной лентеQIC-150Ленты и накопители формата QIC-150, наверное, являются наиболее
распространенным типом носителей. Приводы лент формата QIC являются
самыми дешёвыми серьёзными накопителями для резервного
копирования.
Минусом является стоимость носителей. Ленты формата QIC по сравнению
с лентами шириной 8мм или 4мм являются дорогими, превосходя их по
стоимости хранения одного гигабайта в пять раз. Однако если вам
будут достаточно половины ленты, QIC может оказаться правильным
выбором. QIC является самым распространенным
типом привода. Каждый сайт имеет привод QIC какой-либо емкости. QIC
имеет большое количество плотностей на физически похожих (иногда
даже идентичных) лентах. Приводы QIC работают вовсе не тихо. Эти
накопители громко осуществляют поиск перед тем, как начать запись
данных и достаточно шумны в процессе чтения, записи или поиска. Ленты
QIC имеют размеры (6 x 4 x 0.7 дюймов; 15.2 x 10.2 x 1.7 мм).Скорость обмена данными лежит в границах от ~150 kB/s
до ~500 kB/s. Ёмкость накопителей варьируется от 40 МБ
до 15 ГБ. Аппаратное сжатие
присутствует во многих современных накопителях QIC. Приводы QIC
устанавливаются менее часто; они вытесняются накопителями DAT.На ленту данные записываются в виде дорожек. Дорожки располагаются
в длину вдоль всей ленты. Количество дорожек, и, в свою очередь, их
ширина, меняется вместе с емкостью ленты. Большинство, если не все
современные накопители обеспечивают обратную совместимость по крайней
мере для чтения (однако зачастую и для режима записи). Формат QIC
имеет хорошую репутацию в области надежности хранения данных (механика
устроена проще и более надежна, чем в случае накопителей, построенных
по технологии спирального сканирования).Ленты не следует больше использовать после создания 5,000 резервных
копий.DLTносители на магнитной лентеDLTФормат DLT обладает самой высокой скоростью передачи данных среди
всех перечисленных здесь накопителей. Лента шириной 1/2" (12.5мм)
помещена в один картридж с катушкой (4 x 4 x 1 дюймов; 100 x 100 x
25 мм). Вдоль одной из сторон картриджа расположена сдвигающаяся
крышечка. Механизм накопителя открывает эту крышку, чтобы вытащить
конец ленты. На этом конце имеется овальное отверстие, которое
используется для захвата ленты. Принимающая катушка
размещена внутри
накопителя. Все другие типы картриджей, перечисленные здесь (за
исключением 9-дорожечных лент), имеют как подающий, так и принимающий
барабаны внутри самого картриджа.Скорость передачи данных равна примерно 1.5 MB/s, что в три
раза больше скорости передачи данных для накопителей 4мм, 8мм или QIC.
Ёмкость картриджей варьируется от 10 ГБ до 20 ГБ для одного
накопителя. Приводы могут компоноваться как многоленточные
роботизированные, так и многоленточные, многоприводные библиотеки
лент, вмещающие от 5 до 900 лент и от 1 до 20 приводов, что даёт
ёмкость хранилища от 50 ГБ до 9 ТБ.Формат DLT Type IV поддерживает емкость до 70 ГБ со
сжатием.Данные на ленту записываются в виде дорожек, параллельных
направлению движения (точно также, как и для лент QIC). Одновременно
записываются две дорожки. Срок жизни головок чтения/записи
сравнительно велик; как только лента перестает двигаться, одновременно
прекращается трение между головками и лентой.AITносители на магнитной лентеAITAIT - это новый формат фирмы Sony, который позволяет хранить до
50 ГБ (со сжатием) информации на одной ленте. Ленты содержат
микросхемы памяти, на которых размещается каталог содержимого ленты.
Этот каталог может быть быстро считан накопителем для определения
расположения файлов на ленте, вместо того, чтобы тратить несколько
минут на поиск, как это происходит с другими форматами. Такое
программное обеспечение, как
SAMS:Alexandria, может управлять сорока или
большим количеством
ленточных библиотек AIT, связываясь непосредственно с памятью лент для
вывода их содержимого, определения того, какие файлы были скопированы
на какую ленту, выбора нужной ленты, её загрузки и восстановления
данных с ленты.Библиотеки с такими функциями стоят в районе $20,000, выводя их из
ниши любительского рынка.Использование новой ленты первый разЕсли вы попытаетесь прочитать или записать новую, абсолютно чистую
ленту, в первый раз, то вам это не удастся. Выводимые на консоль
сообщения будут выглядеть примерно так:sa0(ncr1:4:0): NOT READY asc:4,1
sa0(ncr1:4:0): Logical unit is in process of becoming readyНа ленте отсутствует идентификационный блок (блок номер 0). Со
времен принятия стандарта QIC-525 все накопители формата QIC записывают
на ленту идентификационный блок (Identifier Block). Здесь имеется два
решения:По команде mt fsf 1 ленточный накопитель
записывает идентификационный блок на ленту.Воспользуйтесь кнопкой на передней панели для выброса
ленты.Вставьте ленту повторно и по команде dump
сбросьте данные на ленту.Программа dump выдаст DUMP: End
of tape detected, а на консоли будет выведено:
HARDWARE FAILURE info:280 asc:80,96.перемотайте ленту такой командой:
mt rewind.Последующие операции с лентой будут успешными.Создание резервных копий на дискетахМожно ли использовать дискеты для создания резервных копий моих
данных?дискеты с резервными копиямидискетыНа самом деле дискеты не подходят для создания резервных копий,
потому что:Носитель ненадёжен, особенно если речь идет о больших сроках
хранения.Создание резервных копий и восстановление данных происходит
очень медленно.Дискеты имеют весьма ограниченную емкость (дни, когда весь
винчестер копировался на десяток или около того дискет, давно
прошли).Несмотря на все это, если у вас нет другого способа сделать
резервную копию ваших данных, то дискеты все же лучше, чем
ничего.Если вы используете дискеты, то проверьте, что они должны быть
хорошего качества. Дискеты, которые валялись по всему офису в течении
нескольких лет, не подойдут. Идеально использовать новые от известного
производителя.Итак, как же сделать резервную копию данных на дискетах?Самым лучшим методом создания резервной копии на дискете является
использование утилиты &man.tar.1; с опцией
(многотомные архивы), которая позволяет размещать
архивы на нескольких дискетах.Для копирования всех файлов в текущем каталоге и подкаталогах
выполните следующее (работая как пользователь
root):&prompt.root; tar Mcvf /dev/fd0 *Когда первая дискета окажется полностью заполненной, программа
&man.tar.1; выдаст запрос на следующий том (так как работа
утилиты &man.tar.1; не зависит от носителя, она имеет дело с
томами; здесь это означает дискету).Prepare volume #2 for /dev/fd0 and hit return:Это сообщение будет повторяться (со все увеличивающимся номером
тома) до тех пор, пока все указанные файлы не будут
заархивированы.Можно ли резервные копии подвергнуть компрессии?targzipсжатиеК сожалению, &man.tar.1; при создании многотомных архивов
не позволяет использовать опцию . Вы конечно же,
можете скомпрессировать все файлы утилитой &man.gzip.1;,
программой &man.gzip.1; скопировать их на дискеты, а затем
распаковать файлы снова утилитой &man.gunzip.1;!Как восстановить данные из моих резервных копий?Для полного восстановления архива воспользуйтесь такой
командой:&prompt.root; tar Mxvf /dev/fd0Есть два подхода к восстановлению только нужных вам файлов. В
первом вы можете начать с первой дискеты и выдать такую команду:&prompt.root; tar Mxvf /dev/fd0 filenameПрограмма &man.tar.1; будет выдавать запрос на подачу
последующих дискет до тех пор, пока не найдет требуемый файл.Как альтернатива, если вы знаете, на какой дискете расположен файл,
то вы можете просто подать ее и дать ту же самую команду, что и выше.
Заметьте, что если первый файл на дискете является продолжением
предыдущего, то &man.tar.1; выдаст предупреждение о том, что
не может его восстановить, хотя вы этого и не просили делать!Основы технологии резервного копированияТремя основными программами резервного копирования являются
&man.dump.8;, &man.tar.1; и &man.cpio.1;.Dump и Restoreпрограммы резервного копированиярезервное копирование / восстановлениеdumprestoreДля &unix; традиционными программами резервного копирования
являются dump и restore. Они
работают с приводом как с набором дисковых блоков, которые расположены
ниже понятий файлов, связей и каталогов, создаваемых файловыми
системами. Программа dump выполняет резервное
копирование всей файловой системы, располагающейся на устройстве.
Невозможно выполнить резервное копирование части файловой системы или
дерева каталогов, которые располагаются более чем в одной файловой
системе. Утилита dump не записывает на ленту файлы
и каталоги, она записывает блоки данных, из которых строятся файлы и
каталоги.Если вы используете программу dump для работы
с корневым каталогом, при этом не будет выполняться резервное
копирование
/home, /usr и многих других
каталогов, так как они обычно являются точками монтирования других
файловых систем или символическими ссылками на эти файловые
системы.В программе dump имеются некоторые неудобства,
оставшиеся
от её ранних дней в составе Version 6 операционной системы AT&T
UNIX (примерно 1975). Параметры, используемые по умолчанию, подходят
для 9-дорожечных лент (6250 bpi), но не для современных носителей с
высокой плотностью записи информации (до 62,182 ftpi). Для
использования ёмкостей нынешних накопителей на магнитной ленте эти
параметры могут быть заданы в командной строке..rhostsПри помощи rdump и rrestore
возможно резервное
копирование данных по сети на накопитель, подключенный к другому
компьютеру. Обе программы используют в работе &man.rcmd.3; и
&man.ruserok.3; для доступа к накопителю на магнитной ленте на
удалённом компьютере. Поэтому пользователь, выполняющий резервное
копирование, должен быть указан в файле .rhosts на
удалённом компьютере. Аргументы для rdump и
rrestore должны подходить для использования на
другом компьютере. При выполнении копирования по команде
rdump на компьютере с FreeBSD на накопитель Exabyte,
подключенный к машине Sun по имени komodo, используйте
такую команду:&prompt.root; /sbin/rdump 0dsbfu 54000 13000 126 komodo:/dev/nsa8 /dev/da0a 2>&1Будьте осторожны: есть проблемы с обеспечением безопасности при
аутентификации посредством .rhosts. Внимательно
рассмотрите вашу ситуацию.Программы dump и restore
можно использовать в более защищённом режиме посредством
ssh.Использование dump через
ssh&prompt.root; /sbin/dump -0uan -f - /usr | gzip -2 | ssh -c blowfish \
targetuser@targetmachine.example.com dd of=/mybigfiles/dump-usr-l0.gzЛибо воспользуйтесь встроенной в dump
возможностью, задав переменную окружения RSH:Использование dump при работе через
ssh с заданием RSH&prompt.root; RSH=/usr/bin/ssh /sbin/dump -0uan -f targetuser@targetmachine.example.com:/dev/sa0tarпрограммы резервного копированияtarУтилита &man.tar.1; также восходит корнями к Version 6 системы
AT&T UNIX (около 1975). tar работает с
файловой системой; tar записывает на ленту файлы и
каталоги. tar
поддерживает не полный набор опций, имеющихся в &man.cpio.1;, однако
он не требует необычного перенаправления в командной строке, которое
используется в утилите cpio.tarВ большинстве версий tar создание резервных
копий по сети
не поддерживается. Версия GNU утилиты tar, которая
используется во FreeBSD, поддерживает удалённые устройства в том же
самом синтаксисе, что и rdump. Чтобы скопировать
данные на накопитель Exabyte, подключенный к машине Sun по имени
komodo, используйте такую команду:&prompt.root; /usr/bin/tar cf komodo:/dev/nsa8 . 2>&1В случае использования версий без поддержки удалённых устройств, вы
можете воспользоваться перенаправлением вывода и командой
rsh для посылки данных на удалённый ленточный
накопитель.&prompt.root; tar cf - . | rsh hostname dd of=tape-device obs=20bЕсли вы беспокоитесь о безопасности создания резервных копий по
сети, то вместо rsh вам нужно использовать
ssh.cpioпрограммы резервного копированияcpio&man.cpio.1; является оригинальной программой &unix; для обмена
файлами на магнитных носителях. В утилите cpio
имеются опции (кроме всего прочего), позволяющие выполнять изменение
порядка следования байтов, поддерживающие различные форматы архивов и
выполняющие перенаправление данных другим программам. Последняя
возможность делает cpio прекрасным выбором для
целей установки. cpio не знает о том, как
работать с каталогами, список файлов должен даваться через
stdin.cpiocpio не поддерживает создание резервных
копий по сети. Вы можете воспользоваться перенаправлением вывода и
программой rsh для посылки данных на удалённый
накопитель.&prompt.root; for f in directory_list; dofind $f >> backup.listdone
&prompt.root; cpio -v -o --format=newc < backup.list | ssh user@host "cat > backup_device"Где directory_list это список директорий, c которых Вы хотите
создать резервные копии,
user@host это
комбинация пользователь/хост которая описывает того кто
занимается резервированием, и backup_device
это устройство куда копии должны быть записаны (например,
/dev/nsa0).paxпрограммы резервного копированияpaxpaxPOSIXIEEE&man.pax.1; является ответом IEEE/&posix; на утилиты
tar и cpio. В течение многих лет
различные версии программ tar и
cpio получались не совсем совместимыми. Так что
вместо того, чтобы попытаться полностью их стандартизировать, &posix;
создал новую утилиту для работы с архивами. pax
пытается читать и писать различные форматы cpio
и tar, и, кроме
того, свои собственные новые форматы. Набор команд этой утилиты больше
напоминает cpio, чем tar.Amandaпрограммы резервного копированияamandaamandaAmanda (Advanced Maryland Network Disk
Archiver) является целой клиент/серверной системой резервного
копирования, а не отдельной программой. Сервер
Amanda сможет осуществлять резервное
копирование на единственный накопитель любого количества компьютеров,
на которых имеется клиент Amanda и которые
могут связываться по сети с сервером Amanda.
Общей проблемой систем с большим количеством больших дисков является
то, что время, требуемое для непосредственной записи данных на ленту,
превышает лимит времени, выделенный на эту задачу.
Amanda решает эту проблему.
Amanda может использовать
промежуточный диск для резервного копирования нескольких
файловых систем одновременно. Amanda
создаёт наборы архивов: группа лент, используемых в
некоторый период времени для создания полных копий всех файловых
систем, перечисленных в конфигурационном файле системы
Amanda. Архивный
набор содержит также создаваемый каждую ночь инкрементальные
(или дифференциальные) резервные копии всех файловых систем.
Восстановление повреждённой файловой системы требует наличия самой
последней полной копии и инкрементальных резервных копий.Конфигурационный файл даёт прекрасный механизм для управления
процессом резервного копирования и объёмом трафика, генерируемого
системой Amanda.
Amanda сможет использовать любую из
перечисленных выше программ для записи данных на ленту.
Amanda имеется в виде как
порта, так и пакета, и по умолчанию она не установлена.Не делать ничегоНе делать ничего - это не программа для компьютера,
и в то же время это наиболее широко используемая стратегия резервного
копирования. Здесь нет никаких первоначальных затрат. Здесь нет
расписания, которому нужно следовать. Просто скажите нет. Если что-то
случится с вашими данными, улыбнитесь и забудьте о них!Если ваше время и данные практически ничего не стоят, то не
делать ничего является самой подходящей программой для вашего
компьютера. Но будьте осторожны, &posix; является весьма полезным
инструментом, и через полгода вы можете обнаружить, что у вас есть
набор файлов, представляющих для вас определенную ценность.Ничего не делать является правильным методом
резервного копирования для /usr/obj и других
деревьев каталогов, которые могут быть в точности перегенерированы
вашим компьютером. Примером являются файлы, представляющие страницы
этого Руководства в форматах HTML или &postscript;. Они генерируются
из входных файлов в формате SGML. Создавать резервные копии файлов в
форматах HTML и &postscript; не нужно. Исходные файлы в формате SGML
копируются регулярно.Какая программа резервного копирования самая лучшая?LISA&man.dump.8; Точка. Elizabeth D. Zwicky
протестировала все программы резервного копирования, обсуждаемые здесь.
Беспроигрышным вариантом для сохранения всех ваших данных и
особенностей файловых систем &unix; является dump.
Элизабет создала файловые системы, содержащие большое количество
необычных элементов (и некоторых не так уж необычных) и тестировала
каждую из программ, выполняя резервное копирование и последующее
восстановление этих файловых систем. В число необычных элементов
входили: файлы с дырами, файлы с дырами и блоком пустого места, файлы с
необычными символами в их именах, нечитаемые и незаписываемые файлы,
устройства, меняющие свой размер во время резервного копирования, файлы,
создаваемые и удаляемые во время копирования и тому подобное. Она
представила результаты на конференции LISA V в октябре 1991 года.
Посмотрите ссылку на сайте
torture-testing Backup and Archive Programs.Процедура восстановления при сбоеДо того, как случится катастрофаВам нужно выполнить всего лишь четыре шага для того, чтобы быть
готовым к любому сбою.disklabelВо-первых, распечатайте разметку диска для всех ваших дисков
(к примеру, disklabel da0 | lpr), таблицу файловых
систем (/etc/fstab) и все сообщения, выводимые
при загрузке, каждого по два экземпляра.аварийные дискетыВо-вторых, определите, все ли устройства присутствуют на
загрузочной и аварийной дискетах (boot.flp и
fixit.flp). Самым простым способом проверки
является перезагрузка вашей машины с загрузочной дискетой,
вставленной в дисковод и последующая проверка сообщений при загрузке.
Если все имеющиеся у вас устройства здесь будут перечислены и будут
работоспособны, перейдите к третьему шагу.В противном случае вам необходимо будет создать две особым
образом сформированные загрузочные дискеты, на которых помещено
ядро, могущее смонтировать все ваши диски и получить доступ к вашему
стримеру. На этих дискетах должны быть: fdisk,
disklabel, newfs,
mount и какая-либо
используемая вами программа резервного копирования. Эти программы
должны быть скомпонованы статически. Если вы используете
dump, то на дискете должна присутствовать и программа
restore.В-третьих, регулярно создавайте резервные копии на ленте. Любые
изменения, которые вы делали после последнего резервного копирования,
могут быть безвозвратно потеряны. На лентах включайте защиту от
записи.В-четвертых, проверяйте работу дискет (либо
boot.flp и fixit.flp, либо
двух дискет, которые вы сделали при выполнении второго шага) и лент
с резервными копиями. Ведите журнал выполняемых действий. Храните
эти записи вместе с загрузочной дискетой, распечатками и лентами.
Вы просто обезумеете при восстановлении данных, если окажется, что
записи могли бы избежать разрушения ваших резервных копий (Каким
образом? Вместо команды tar xvf /dev/sa0 вы
могли случайно набрать tar cvf /dev/sa0 и тем
самым перезаписать вашу резервную копию).Для дополнительной страховки, каждый раз создавайте загрузочные
дискеты и две резервные копии на ленте. Храните одну из копий в
каком-то удаленном месте и НЕ в том же здании, где находится ваш
офис. Достаточно большое количество компаний во Всемирном Торговом
Центре изучило это на своей шкуре. Это удаленное хранилище должно
быть физически отделено на большое расстояние от ваших компьютеров и
дисковых устройств.Скрипт для создания загрузочной дискеты /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
cp /root/.profile /mnt/root
cp -f /dev/MAKEDEV /mnt/dev
chmod 755 /mnt/dev/MAKEDEV
chmod 500 /mnt/sbin/init
chmod 555 /mnt/sbin/fsck /mnt/sbin/mount /mnt/sbin/halt
chmod 555 /mnt/bin/sh /mnt/bin/sync
chmod 6555 /mnt/sbin/restore
#
# create the devices nodes
#
cd /mnt/dev
./MAKEDEV std
./MAKEDEV da0
./MAKEDEV da1
./MAKEDEV da2
./MAKEDEV sa0
./MAKEDEV pty0
cd /
#
# create minimum filesystem table
#
cat > /mnt/etc/fstab < /mnt/etc/passwd < /mnt/etc/master.passwd <После сбояГлавный вопрос: выжило ли ваше оборудование? Вы регулярно делали
резервные копии, так что нет нужды беспокоиться о программном
обеспечении.Если оборудование было повреждено, должны быть заменены
неисправные компоненты.Если с оборудованием все в порядке, проверьте ваши дискеты. При
использовании самостоятельно созданной загрузочной дискеты,
загрузитесь в однопользовательском режиме (набрав
-s в приглашении boot:).
Пропустите следующий абзац.Если вы используете дискеты boot.flp и
fixit.flp, читайте дальше. Вставьте дискету
boot.flp в первый дисковод и загрузите
компьютер. На экран будет выведено оригинальное меню установки.
Выберите пункт Fixit--Repair mode with CDROM or
floppy. После вывода приглашения вставьте
fixit.flp. restore и другие
нужные вам программы находятся в
/mnt2/stand.Восстановите по отдельности каждую файловую систему.mountкорневой разделdisklabelnewfsПопробуйте выполнить команду mount (например,
mount /dev/da0a /mnt) по отношению к корневому
разделу вашего первого диска. Если метка диска была испорчена,
то воспользуйтесь командой disklabel для
переразбиения на
разделы и разметки диска так, чтобы получившаяся метка совпала с той,
которая вами была распечатана и сохранена. Для повторного создания
файловых систем используйте утилиту newfs. Повторно
смонтируйте корневой раздел дискеты в режиме чтения-записи
(mount -u -o rw /mnt). Воспользуйтесь вашей
программой резервного копирования и резервными копиями на лентах для
восстановления данных для этой файловой системы (например.
restore vrf /dev/sa0). Размонтируйте файловую
систему (например, umount /mnt). Повторите эту
процедуру для каждой файловой системы, которая была повреждена.Как только ваша система заработает, сделайте резервную копию на
новые ленты. Что бы ни вызвало сбой или потерю данных, это может
случиться снова. Ещё один час, потраченный в этот момент, может
спасти вас от неприятностей в будущем.* Я не был готов к катастрофе, и что теперь?
]]>
MarcFonvieilleРеорганизацию и улучшения выполнил Сетевые файловые системы, файловые системы в памяти и с отображением
в файлвиртуальные дискидискивиртуальныеКроме дисков, которые вы физически устанавливаете в ваш компьютер;
дискеты, компакт-диски, винчестеры и так далее, FreeBSD воспринимает и
другие типы дисков - виртуальные диски.NFSCodaдискипамятьСюда могут быть отнесены сетевые файловые системы, такие, как
Network File System и Coda, а также
файловые системы с организацией в памяти и создаваемые в файлах.В зависимости от версии FreeBSD, которую вы используете, для создания
и работы с файловыми системами, отображаемыми в оперативную память или
файлы, вам нужно будет пользоваться разными инструментами.Пользователи FreeBSD 4.X для создания требуемых устройств
должны использовать &man.MAKEDEV.8;. Во FreeBSD 5.0 и более
поздних версиях для создания файлов устройств используется
&man.devfs.5;, которая выполняет это прозрачно для
пользователей.Файловая система в файле во FreeBSD 4.Xдискихранимые в файле (4.X)Утилита &man.vnconfig.8; конфигурирует и позволяет использовать
дисковые устройства на основе псевдо-устройств vnode.
vnode представляет собой файл и отвечает за
работу с файлом. Это означает, что &man.vnconfig.8; использует файлы
для создания и работы с файловой системой. Одним из возможных
способов использования является монтирование образов дискет или
образов компакт-дисков, сброшенных в файлы.Для использования &man.vnconfig.8; в конфигурационном файле ядра
вам нужно включить поддержку &man.vn.4;:pseudo-device vnЧтобы смонтировать имеющийся образ файловой системы:Использование vnconfig для монтирования имеющегося образа
файловой системы во FreeBSD 4.X&prompt.root; vnconfig vn0diskimage
&prompt.root; mount /dev/vn0c /mntДля создания нового образа файловой системы с помощью
&man.vnconfig.8;:Создание нового диска в файле с помощью
vnconfig&prompt.root; dd if=/dev/zero of=newimage bs=1k count=5k
5120+0 records in
5120+0 records out
&prompt.root; vnconfig -s labels -c vn0newimage
&prompt.root; disklabel -r -w vn0 auto
&prompt.root; newfs vn0c
Warning: 2048 sector(s) in last cylinder unallocated
/dev/vn0c: 10240 sectors in 3 cylinders of 1 tracks, 4096 sectors
5.0MB in 1 cyl groups (16 c/g, 32.00MB/g, 1280 i/g)
super-block backups (for fsck -b #) at:
32
&prompt.root; mount /dev/vn0c /mnt
&prompt.root; df /mnt
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/vn0c 4927 1 4532 0% /mntФайловые системы, отображаемые в файлы, во FreeBSD 5.Xдискиотображаемые в файлы (5.X)Во FreeBSD 5.X для конфигурации и подключения дисков
&man.md.4;, отображаемых в оперативную память, используется утилита
&man.mdconfig.8;. Для работы с &man.mdconfig.8; вам нужно подгрузить
модуль &man.md.4; или добавить поддержку этих устройств в файл
конфигурации ядра:device mdУтилита &man.mdconfig.8; поддерживает три типа виртуальных дисков,
отображаемых в память: диски в памяти, которая выделяется запросами
&man.malloc.9; и диски в памяти, использующие в качестве устройств
хранения файлы или раздел подкачки. Одним из возможных использований
таких дисков является монтирование файлов с образами дискет или
CD.Для монтирования образа существующей файловой системы:Использование mdconfig для монтирования файла
с образом существующей файловой системы во FreeBSD 5.X&prompt.root; mdconfig -a -t vnode -f diskimage -u 0
&prompt.root; mount /dev/md0/mntДля создания образа новой файловой системы при помощи
&man.mdconfig.8;:Создание нового диска, отображаемого в файл, при помощи
mdconfig&prompt.root; dd if=/dev/zero of=newimage bs=1k count=5k
5120+0 records in
5120+0 records out
&prompt.root; mdconfig -a -t vnode -f newimage -u 0
&prompt.root; disklabel -r -w md0 auto
&prompt.root; newfs md0c
/dev/md0c: 5.0MB (10240 sectors) block size 16384, fragment size 2048
using 4 cylinder groups of 1.27MB, 81 blks, 256 inodes.
super-block backups (for fsck -b #) at:
32, 2624, 5216, 7808
&prompt.root; mount /dev/md0c /mnt
&prompt.root; df /mnt
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/md0c 4846 2 4458 0% /mntЕсли в параметре вы не задали номер устройства,
то &man.mdconfig.8; для выбора неиспользуемого устройства будет
использовать функцию автоматическое выделения в &man.md.4;. Имя
выделенного устройства будет выдано на стандартное устройство выводы в
виде, например, md4. Для получения более
полной информации о &man.mdconfig.8;, пожалуйста, обратитесь к
соответствующей странице справочной системы.Начиная с &os; 5.1-RELEASE, на смену старой программе
&man.disklabel.8; пришла утилита &man.bsdlabel.8;. У
&man.bsdlabel.8; отсутствуют некоторые устаревшие опции и
параметры; в примере выше параметр не может
использоваться с &man.bsdlabel.8;. Для получения дополнительной
информации обратитесь к справочной странице п
о &man.bsdlabel.8;.Утилита &man.mdconfig.8; весьма полезна, однако для создания файла
с файловой системой требуется произвести много действий. Вместе с
FreeBSD 5.0 поставляется утилита под названием &man.mdmfs.8;,
которая создаёт диск &man.md.4; при помощи &man.mdconfig.8;, размещает
на нём файловую систему UFS при помощи &man.newfs.8; и монтирует её
командой &man.mount.8;. Например, если вы хотите создать и
смонтировать такой же образ файловой системе, как выше, просто наберите
такую команду:Настройка и монтирование диска, отображаемого в файл, при помощи
команды mdmfs&prompt.root; dd if=/dev/zero of=newimage bs=1k count=5k
5120+0 records in
5120+0 records out
&prompt.root; mdmfs -F newimage -s 5m md0/mnt
&prompt.root; df /mnt
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/md0 4846 2 4458 0% /mntЕсли вы используете параметр без номера
устройства, то &man.mdmfs.8; будет использовать автоматическую
нумерацию &man.md.4; для автоматического выбора неиспользуемого
устройства. Более полную информацию о &man.mdmfs.8; можно найти на
страницах справочной системы.Файловая система в памяти во FreeBSD 4.Xдискифайловые системы в памяти (4.X)Драйвер &man.md.4; является простым и эффективным способом создания
файловых систем в памяти во FreeBSD 4.X. Для выделения памяти
используется &man.malloc.9;.Просто возьмите файловую систему, которую вы приготовили при
помощи, скажем, &man.vnconfig.8; и:Диск md в памяти во FreeBSD 4.X&prompt.root; dd if=newimage of=/dev/md0
5120+0 records in
5120+0 records out
&prompt.root; mount /dev/md0c/mnt
&prompt.root; df /mnt
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/md0c 4927 1 4532 0% /mntДля получения более полной информации, пожалуйста, обратитесь к
страницам справочной системы по &man.md.4;.Файловые системы с отображением в память во
FreeBSD 5.Xдискифайловая система в памяти (5.X)При работе с файловыми системами, отображаемыми в файл или память,
используются одни и те же утилиты: &man.mdconfig.8; или &man.mdmfs.8;.
Место для хранения файловых систем в памяти выделяется через
&man.malloc.9;.Создание нового диска с отображением в память при помощи
mdconfig&prompt.root; mdconfig -a -t malloc -s 5m -u 1
&prompt.root; newfs -U md1
/dev/md1: 5.0MB (10240 sectors) block size 16384, fragment size 2048
using 4 cylinder groups of 1.27MB, 81 blks, 256 inodes.
with soft updates
super-block backups (for fsck -b #) at:
32, 2624, 5216, 7808
&prompt.root; mount /dev/md1/mnt
&prompt.root; df /mnt
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/md1 4846 2 4458 0% /mntСоздание нового диска с отображением в память при помощи
mdmfs&prompt.root; mdmfs -M -s 5m md2/mnt
&prompt.root; df /mnt
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/md2 4846 2 4458 0% /mntВместо того, чтобы использовать файловую систему, опирающуюся на
&man.malloc.9;, возможно использовать память раздела подкачки, для чего
нужно просто заменить на
в командной строке при вызове &man.mdconfig.8;. Утилита &man.mdmfs.8;
по умолчанию (без опции ) создаёт диск в разделе
подкачки. Для выяснения всех подробностей, пожалуйста, обратитесь к
страницам справочной системы по &man.mdconfig.8; и
&man.mdmfs.8;.Отключение диска, отображаемого в память, от системыдискиотключение диска, отображаемого в памятьЕсли файловые системы, отображаемые в память или файл, больше не
используются, вам нужно высвободить все ресурсы для системы. Первым
делом нужно размонтировать файловую систему, затем воспользоваться
&man.mdconfig.8; для отключения диска от системы и освободить
ресурсы.К примеру, чтобы отключить и освободить все ресурсы, используемые
/dev/md4:&prompt.root; mdconfig -d -u 4Для выдачи информации об отконфигурированных устройствах
&man.md.4; используется команда mdconfig -l.Во FreeBSD 4.X для отключения устройства используется команда
&man.vnconfig.8;. Например, для отключения и освобождения всех
ресурсов, используемых /dev/vn4:&prompt.root; vnconfig -u vn4TomRhodesТекст предоставил Мгновенные копии файловых системфайловые системымгновенные копииВо FreeBSD 5.0 вместе с технологией
Отложенных обновлений представлена новая возможность: генерация
мгновенных копий файловых систем.Мгновенные копии позволяют пользователю создавать образы заданных
файловых систем и работать с ними как с файлами.
Файлы мгновенных копий должны создаваться в той файловой
системе, над которой производится действие, и пользователь может
создавать не более 20 мгновенных копий для каждой файловой системы.
Активные копии записываются в суперблок, так что они остаются в силе
между операциями монтирования и размонтирования в процессе системных
перезагрузок. Если мгновенная копия больше не нужна, она может быть
удалена стандартной командой &man.rm.1;. Мгновенные копии могут
удаляться в любом порядке, однако всё использованное пространство не
может быть использовано, так как другая мгновенная копия может
претендовать на некоторые блоки из освобождённых.В момент первоначального создания устанавливается флаг
(обратитесь к страницам справочной системы по
команде &man.chflags.1;) для обеспечения того, что даже пользователь
root не сможет произвести запись в мгновенную
копию. Однако команда &man.unlink.1; делает исключение для файлов
мгновенных копий, позволяя их удалять при наличии установленного
флага , так что нет необходимости снимать флаг
перед удаление файла мгновенной копии.Мгновенные копии создаются при помощи утилиты &man.mount.8;. Чтобы
создать мгновенную копию /var в файле
/var/snapshot/snap, воспользуйтесь такой
командой:&prompt.root; mount -u -o snapshot /var/snapshot/snap /varВ качестве альтернативного средства создания мгновенных копий
вы можете использовать утилиту &man.mksnap.ffs.8;:&prompt.root; mksnap_ffs /var /var/snapshot/snapПосле создания мгновенной копии есть несколько способов её
использования:Некоторые администраторы будут использовать файл мгновенной
копии для целей создания резервной копии, так как мгновенная копия
может быть перенесена на CD или магнитную ленту.Утилита проверка целостности файловой системы, &man.fsck.8;,
может быть запущена над мгновенной копией. Полагая, что
файловая система была в порядке, когда она была смонтирована, вы
всегда должны получать нормальный (и неизменный) результат.
Это именно то, что выполняет фоновый процесс &man.fsck.8;.Запустить утилиту &man.dump.8; с мгновенной копией. Будет
создаваться дамп, соответствующий файловой системе на момент
создания мгновенной копии. Утилита &man.dump.8; при использовании
опции тоже может работать с мгновенными копиями,
создавать их дампы, а затем удалять за один проход.Смонтировать командой &man.mount.8; мгновенную копию как
замороженный образ файловой системы. Чтобы смонтировать командой
&man.mount.8; мгновенную копию
/var/snapshot/snap, запустите:&prompt.root; mdconfig -a -t vnode -f /var/snapshot/snap -u 4
&prompt.root; mount -r /dev/md4 /mntТеперь вы можете пройтись по иерархии вашей зафиксированной
файловой системы /var, смонтированной в каталог
/mnt. Всё будет в том же самом состоянии, в каком
это было во время создания мгновенной копии. Единственным исключением
будет то, что любые ранее сделанные мгновенные копии будут видны как
файлы нулевой длины. Когда использование мгновенной копии закончено,
она может быть удалена командой:&prompt.root; umount /mnt
&prompt.root; mdconfig -d -u 4Для получения более полной информации о
и мгновенных копиях файловых систем, включая технической описание, вы
можете посетить сайт Маршалла Кёрка МакКузика (Marshall Kirk McKusick) по
адресу http://www.mckusick.com.
+ url="http://www.mckusick.com/">.
Квотирование файловых системучётдисковое пространстводисковые квотыКвоты - это опциональная возможность операционной системы, которая
позволяет ограничивать объем дискового пространства и/или количество
файлов для конкретного пользователя или членов определенной группы
в рамках одной файловой системы. Чаще всего эта возможность
используется в системах разделения времени, когда желательно ограничить
количество ресурсов, которые может использовать один пользователь или
группа пользователей. Это позволит не допустить ситуации, когда
один пользователь или группа пользователей заполняют всё доступное
дисковое пространство.Настройка вашей системы на использование дисковых квотПеред тем, как попытаться использовать дисковые квоты, необходимо
убедиться, что квоты включены в вашем ядре. Это делается добавлением
следующей строки в конфигурационный файл вашего ядра:
options QUOTA
В стандартном ядре GENERIC это по умолчанию
не включено, так что для использования дисковых квот вам нужно будет
настроить, откомпилировать и установить собственное ядро.
Пожалуйста, обратитесь к за
дополнительной информацией о настройке ядра.Затем вам потребуется включить квотирование дисков в файле
/etc/rc.conf. Это делается добавление такой
строчки:enable_quotas="YES"дисковые квотыпроверкаДля более полного контроля над запуском квотирования имеется
дополнительная переменная для настройки. Как правило, при загрузке
целостность квот каждой файловой системы проверяется программой
&man.quotacheck.8;. При работе программы &man.quotacheck.8;
проверяется точное соответствие данных
в базе данных квот данным в файловой системе. Это весьма долгий
процесс, что отражается на времени загрузки системы. Если вам
захочется пропустить этот шаг, то для этого предназначена специальная
переменная в файле /etc/rc.conf:check_quotas="NO"Если вы работаете с FreeBSD версий до 3.2-RELEASE, то настройка
делается проще, и она состоит только из одной переменной. Задайте
следующее в вашем файле /etc/rc.conf:check_quotas="YES"Наконец, вам потребуется отредактировать файл
/etc/fstab для включения дисковых квот на
уровне файловых систем. Это то место, где вы можете включить квоты
для пользователей, для групп или для обеих этих категорий для всех
ваших файловых систем.Для включения пользовательских квот для файловой системы,
добавьте параметр в поле параметров
файловой системы, на которой вы хотите включить квотирование, в файле
/etc/fstab. Например:/dev/da1s2g /home ufs rw,userquota 1 2Подобным же образом для включения квотирования на уровне групп,
воспользуйтесь параметром вместо
. Чтобы включить
квотирование как для пользователей, так и для групп, измените
строчку следующим образом:
/dev/da1s2g /home ufs rw,userquota,groupquota 1 2
По умолчанию файлы квот хранятся в корневом каталоге файловой
системы в файлах с именами quota.user и
quota.group соответственно для пользовательских
и групповых квот. Для получения подробной информации обратитесь к
команде &man.fstab.5;. Хотя справочная страница по &man.fstab.5;
утверждает, что вы можете указать другое местоположение файлов с
квотами, этого делать не рекомендуется, потому что различные утилиты
для работы с квотами не могут нормально работать в такой
ситуации.На этом этапе вы должны перезагрузить вашу систему с новым ядром.
Скрипт /etc/rc автоматически запустит
соответствующие команды для создания начальных файлов для всех квот,
которые вы создали в файле /etc/fstab, так что
нет нужды вручную создавать никаких файлов квот нулевой длины.При нормальной работе вам не потребуется вручную запускать
программы &man.quotacheck.8;, &man.quotaon.8; или &man.quotaoff.8;.
Однако вам нужно хотя бы прочесть
страницы справочника по этим командам, просто чтобы ознакомиться
с их функциями.Установка квотдисковые квотыограниченияКак только вы настроили вашу систему на использование квот,
проверьте, что они действительно были задействованы. Простым
способом сделать это является запуск такой команды:&prompt.root; quota -vВы должны увидеть однострочную информацию, отражающую
использование диска и текущие ограничения для каждой файловой
системы, на которой включено квотирование.Теперь вы действительно готовы задавать ограничения при помощи
команды &man.edquota.8;.У вас есть несколько вариантов того, как приводить в действие
ограничения по объему дискового пространства, который могут занимать
пользователь или группа, а также по количеству файлов, которые они
могут создать. Вы можете ограничивать размещение ресурсов на основе
объема дискового пространства (квотирование блоков), количества
файлов (квотирование inode) или их комбинации. Каждое из этих
ограничений, в свою очередь, делится на две категории: мягкие и
жёсткие ограничения.жёсткое ограничениеЖёсткое ограничение не может быть превышено. Как только
пользователь достиг своих ограничений, ресурсы соответствующей
файловой системы ему больше выделяться не будут. Например, если
пользователь имеет жесткое ограничение в 500 блоков на файловой
системе и в текущий момент он использует 490 блоков, то
пользователь может получить дополнительно еще 10 блоков. Попытка
получить еще 11 блоков окончится неудачно.мягкое ограничениеС другой стороны, мягкие ограничения могут быть превышены в
течении некоторого периода времени. Этот период времени также
называют периодом отсрочки, который по умолчанию равен одной неделе.
Если пользователь превышает своё мягкое ограничение в течение периода
времени, превышающего отсрочку, то это мягкое ограничение становится
жестким и последующее выделение ресурсов будет запрещено. Когда
пользователь вернётся обратно к отметке, меньшей, чем мягкое
ограничение, то период отсрочки будет сброшен.Далее приводится пример того, что вы можете наблюдать при
запуске команды &man.edquota.8;. Когда вызывается команда
&man.edquota.8;, вы оказываетесь в редакторе, заданном
переменной переменной окружения EDITOR, или в
редакторе vi, если переменная
EDITOR не задана, и можете редактировать квоты.&prompt.root; edquota -u testQuotas for user test:
/usr: blocks in use: 65, limits (soft = 50, hard = 75)
inodes in use: 7, limits (soft = 50, hard = 60)
/usr/var: blocks in use: 0, limits (soft = 50, hard = 75)
inodes in use: 0, limits (soft = 50, hard = 60)Для каждой файловой системы, на которой включено квотирование,
вы должны увидеть две строки. В одной строке приведены ограничения
на блоки, а в другой на количество inode. Например, чтобы увеличить
ограничения на количество блоков для пользователя с мягкого
ограничения в 50 и жёсткого ограничения в 75, на мягкое ограничение
в 500 и жёсткое ограничение в 600, измените:
/usr: blocks in use: 65, limits (soft = 50, hard = 75)
на:
/usr: blocks in use: 65, limits (soft = 500, hard = 600)
Новые ограничения вступят в силу после выхода из
редактора.Иногда желательно установить ограничения квот на некоторый
диапазон UID (идентификаторов пользователей). Это можно сделать при
помощи параметра в команде
&man.edquota.8;. Во-первых, установите желаемое
ограничение для пользователя, а затем запустите команду
edquota -p protouser startuid-enduid. Например,
если пользователь test имеет желаемые
ограничения, то для дублирования этих ограничений на пользователей с
UID от 10000 до 19999 может быть использована такая
команда:&prompt.root; edquota -p test 10000-19999Дополнительную информацию можно получить из справочной страницы по
команде &man.edquota.8;.Проверка ограничений и использования дискадисковые квотыпроверкаДля проверки квот и использования дисков вы можете использовать
команды &man.quota.1; или &man.repquota.8;.
Команда &man.quota.1; может быть использована для проверки
квот отдельных пользователей, групп, а также использования дисков.
Пользователь может только проверить собственную квоту и квоту той
группы, к которой он принадлежит. Только администратор системы может
проверить квоты всех пользователей и групп. Команду
&man.repquota.8; можно использовать для получения
суммарной статистики всех квот и использования дисков для файловых
систем с включенными квотами.Далее приведен пример вывода команды quota -v
для пользователя, который имеет ограничения на двух файловых
системах.Disk quotas for user test (uid 1002):
Filesystem blocks quota limit grace files quota limit grace
/usr 65* 50 75 5days 7 50 60
/usr/var 0 50 75 0 50 60период отсрочкиВ этом примере для файловой системы /usr
пользователь превысил свое мягкое ограничение в 50 блоков на 15
блоков и имеет 5 дней до истечения отсрочки. Отметьте знак
звездочки *, который указывает на превышение
пользователем своего ограничения.Как правило, файловые системы, на которых пользователь не
занимает дискового пространства, не показываются в выводе команды
&man.quota.1;, даже если ему выделена квота на
этой файловой системе. При использовании параметра
эти файловые системы выводятся, как, например,
файловая система /usr/var в примере выше.Квоты в NFSNFSКвоты определяются подсистемой квот на сервере NFS. Даемон
&man.rpc.rquotad.8; предоставляет информацию о квотах для программы
&man.quota.1; на клиентах NFS, позволяя пользователям на этих машинах
смотреть свою статистику о квотах.Включите rpc.rquotad в файле
/etc/inetd.conf следующим образом:
rquotad/1 dgram rpc/udp wait root /usr/libexec/rpc.rquotad rpc.rquotad
Теперь перезапустите inetd:&prompt.root; kill -HUP `cat /var/run/inetd.pid`LuckyGreenТекст предоставил shamrock@cypherpunks.toШифрование дисковых разделовдискишифрованиеFreeBSD предоставляет прекрасную возможность по защите от
несанкционированного доступа к данным. Права на доступ к файлам и
технология мандатного контроля доступа MAC (Mandatory Access Control)
(смотрите see ) помогают предотвратить
несанкционированный доступ посторонних лиц к данным, при условии работы
операционной системы и компьютера. Однако права доступа, контролируемые
операционной системой, не имеют значения, если нападающий получает
физический доступ к компьютеру и может просто перенести жёсткий диск на
другую машину для копирования и дальнейшего анализа важных данных.Вне зависимости от того, как атакующий завладел жёстким диском или
выключенным компьютером, технология gbde (GEOM
Based Disk Encryption - шифрование диска на уровне GEOM) может защитить
данные файловой системы компьютера даже против очень заинтересованной
атакующей стороны с достаточными ресурсами. В отличие от громоздких
систем шифрования, которые шифруют отдельные файлы,
gbde шифрует в прозрачном режиме файловую
систему в целом, при этом данные в открытом виде на диск никогда не
записываются.Включение gbde в ядреПолучите права пользователя rootНастройка gbde требует права доступа
администратора системы.&prompt.user; su -
Password:Проверьте номер версии операционной системыДля работы &man.gbde.4; требуется FreeBSD 5.0 и выше.&prompt.root; uname -r
5.0-RELEASEВключите поддержку &man.gbde.4; в конфигурационный
файл ядраПри помощи вашего любимого текстового редактора добавьте
следующую строку в файл конфигурации вашего ядра:options GEOM_BDEВыполните конфигурацию, компиляцию и установку нового ядра
FreeBSD. Этот процесс описан в .Перезагрузитесь, запустив новое ядро.Подготовка зашифрованного жёсткого дискаВ следующем примере предполагается, что в вашу систему вы
добавляете новый винчестер, на котором будет располагаться единственный
раздел с зашифрованными данными. Этот раздел будет монтироваться в
каталог /private. gbde
может также использоваться для шифрования /home и
/var/mail, но это требует более сложной
последовательности действий, что выходит за рамки этого вводного
материала.Подключите новый жёсткий дискУстановите новый диск в систему, как это описано в . В рамках этого примера раздел,
соответствующий новому жёсткому диску, будет называться
/dev/ad4s1c. Устройства
- /dev/ad0s1*
+ /dev/ad0s1*
представляют существующие стандартные разделы FreeBSD нашей
тестовой системы.&prompt.root; ls /dev/ad*
/dev/ad0 /dev/ad0s1b /dev/ad0s1e /dev/ad4s1
/dev/ad0s1 /dev/ad0s1c /dev/ad0s1f /dev/ad4s1c
/dev/ad0s1a /dev/ad0s1d /dev/ad4Создайте каталог для размещения файлов блокировок GBDE&prompt.root; mkdir /etc/gbdeФайл блокировки gbde содержит
информацию, которая нужна gbde для
доступа к зашифрованному разделу. Не имея доступа к файлу
блокировки, gbde не сможет расшифровать
данные, хранимые в зашифрованном разделе, без значительного ручного
вмешательства, что программно не поддерживается. Каждый
зашифрованный раздел использует отдельный файл блокировки.Инициализируйте раздел gbdeПеред началом работы с разделом gbde
его необходимо проинициализировать. Эта инициализация производится
только один раз:&prompt.root; gbde init /dev/ad4s1c -i -L /etc/gbde/ad4s1c&man.gbde.8; запустит редактор, что позволит вам задать
в шаблоне различные конфигурационные параметры. При работе с
файловыми системами UFS1 и UFS2 задайте значение sector_size равным
2048:$FreeBSD: src/sbin/gbde/template.txt,v 1.1 2002/10/20 11:16:13 phk Exp $
#
# Sector size is the smallest unit of data which can be read or written.
# Making it too small decreases performance and decreases available space.
# Making it too large may prevent filesystems from working. 512 is the
# minimum and always safe. For UFS, use the fragment size
#
sector_size = 2048
[...]&man.gbde.8; дважды запросит ввод пароля, который будет
использоваться для защиты данных. Пароль в обоих случаях должен
вводиться одинаковый. Возможности gbde
по защите ваших данных полностью зависят от качества выбранной
вами ключевой фразы.
Советы по выбору легкозапоминающихся ключевых фраз можно
найти на сайте Diceware
Passphrase.По команде gbde init создаётся файл
блокировок для вашего раздела gbde,
который в нашем случае будет иметь имя
/etc/gbde/ad4s1c.Резервные копии файлов блокировок
gbdeдолжны
храниться вместе с содержимым шифруемых разделов. Хотя удаление
только блокировочного файла не сможет противостоять дешифрации
атакующим раздела gbde, без этого
файла даже легитимный пользователь не сможет получить доступ к
данным без определённых и значительных усилий, что не
поддерживается &man.gbde.8; и его разработчиком.Подключите зашифрованный раздел к системе&prompt.root; gbde attach /dev/ad4s1c -l /etc/gbde/ad4s1cБудет выдан запрос на ввод ключевой фразы, которую вы выбирали
во время инициализации зашифрованного раздела. Новое защищённое
устройство будет видно в каталоге /dev под
названием /dev/device_name.bde:&prompt.root; ls /dev/ad*
/dev/ad0 /dev/ad0s1b /dev/ad0s1e /dev/ad4s1
/dev/ad0s1 /dev/ad0s1c /dev/ad0s1f /dev/ad4s1c
/dev/ad0s1a /dev/ad0s1d /dev/ad4 /dev/ad4s1c.bdeСоздайте файловую систему на зашифрованном устройствеКак только защищённое устройство будет подключено к системе,
вы сможете создать на нём файловую систему. Для этого используется
утилита &man.newfs.8;. Так как инициализация новой файловой
системы UFS2 происходит быстрее, чем инициализация файловой системы
старого формата UFS1, то рекомендуется использовать &man.newfs.8; с
параметром .Во &os; 5.1-RELEASE и последующих релизах параметр
используется по умолчанию.&prompt.root; newfs -U -O2 /dev/ad4s1c.bdeЗапуск команды &man.newfs.8; должен выполняться над
подключенном разделе gbde, который
идентифицируется по расширению
*.bde в имени
устройства.Смонтируйте зашифрованный разделСоздайте точку монтирования для зашифрованной файловой
системы.&prompt.root; mkdir /privateСмонтируйте защищённую файловую систему.&prompt.root; mount /dev/ad4s1c.bde /privateПроверьте доступность зашифрованной файловой системыЗащищённая файловая система теперь должна быть доступна утилите
&man.df.1; и доступной для использования.&prompt.user; df -H
Filesystem Size Used Avail Capacity Mounted on
/dev/ad0s1a 1037M 72M 883M 8%
/devfs 1.0K 1.0K 0B 100% /dev
/dev/ad0s1f 8.1G 55K 7.5G 0% /home
/dev/ad0s1e 1037M 1.1M 953M 0% /tmp
/dev/ad0s1d 6.1G 1.9G 3.7G 35% /usr
/dev/ad4s1c.bde 150G 4.1K 138G 0% /privateМонтирование имеющихся зашифрованных файловых системПосле каждой загрузки для каждой защищённой файловой системы перед
их использованием должны выполняться повторное подключение к системе,
проверка на наличие ошибок и монтирование. Требуемые для этого команды
должны выполняться пользователем root.Подключение gbde-раздела к системе&prompt.root; gbde attach /dev/ad4s1c -l /etc/gbde/ad4s1cБудет выдан запрос на ввод ключевой фразы, выбранной на этапе
инициализации зашифрованного раздела gbde.Проверка файловой системы на наличие ошибокТак как защищаемая файловая система не может пока быть указана
в файле /etc/fstab для автоматического
монтирования, то она должны проверяться на наличие ошибок
посредством ручного запуска &man.fsck.8; до её монтирования.&prompt.root; fsck -p -t ffs /dev/ad4s1c.bdeМонтирование зашифрованной файловой системы&prompt.root; mount /dev/ad4s1c.bde /privateТеперь защищённая файловая система доступна для работы.Автоматическое монтирование зашифрованных разделовДля автоматического подключения, проверки и монтирования
зашифрованного раздела можно создать скрипт, но во соображениям
безопасности в этом скрипте пароля для &man.gbde.8; быть не должно.
Поэтому рекомендуется запускать такие скрипты вручную, а пароль
задавать с консоли или сеанса &man.ssh.1;.Криптографическая защита, применяемая в gbde&man.gbde.8; шифрует содержимое секторов при помощи 128-битного
AES в режиме CBC. Каждый сектор диска шифруется различным ключом
AES. Более полная информацию о системе шифрования
gbde, включая алгоритм генерации ключей
для секторов из ключевой фразы, вводимой пользователем, можно найти
на страницах справочной системы о &man.gbde.4;.Вопросы совместимости&man.sysinstall.8; несовместим с устройствами, зашифрованными
gbde. Все устройства
*.bde перед
запуском &man.sysinstall.8; должны быть отключены от системы, или
эта утилита аварийно завершит работу на этапе обнаружения устройств.
Для отключения защищённого устройства, используемого в нашем примере,
воспользуйтесь такой командой:&prompt.root; gbde detach /dev/ad4s1cТакже заметьте, что, так как &man.vinum.4; работает не через
подсистему &man.geom.4;, то вы не можете использовать тома
vinum с
gbde.
diff --git a/ru_RU.KOI8-R/books/handbook/preface/preface.sgml b/ru_RU.KOI8-R/books/handbook/preface/preface.sgml
index 712ee3f4c0..18580ecd84 100644
--- a/ru_RU.KOI8-R/books/handbook/preface/preface.sgml
+++ b/ru_RU.KOI8-R/books/handbook/preface/preface.sgml
@@ -1,573 +1,660 @@
ПредисловиеЦелевая
аудиторияЛюди, которые используют FreeBSD с недавнего времени, найдут, что
первая часть этой книги проводит читателя через процесс установки FreeBSD и кратко
освещает идеи и традиции, на которых базируется &unix;. Работа с этой частью
требует несколько большего, чем просто желание исследовать –
необходима возможность принимать к сведению новые идеи.Вторая, много большая часть Руководства, является всеобъемлющим
справочником о всех темах, которые могут интересовать администраторов
FreeBSD. Некоторые из глав этой части могут рекомендовать вам
предварительное чтение других документов, о чём упоминается в
кратком обзоре в начале каждой главы.Список рекомендуемой дополнительной литературы вы можете найти здесь:
.
+ Изменения по
+ сравнению со второй редакцией
+
+ Третья редакция является кульминацией более чем двух лет работы
+ отдельных членов проекта документации FreeBSD. Вот основные
+ изменения в новой редакции:
+
+
+
+ , Настройка и оптимизация,
+ была расширена новой информацией о ACPI управлении питанием
+ и ресурсами, системной утилите cron и дополнительных
+ параметрах оптимизации ядра.
+
+
+
+ , Безопасность, была расширена
+ новой информацией о виртуальных частных сетях (VPN),
+ списках контроля доступа файловой системы (ACL), и сообщениях
+ безопасности.
+
+
+
+ , Принудительный контроль доступа (MAC),
+ новая глава этой редакции. Она описывает, что такое
+ MAC и как этот механизм может быть использован для защиты
+ системы FreeBSD.
+
+
+
+ , Устройства хранения, была расширена
+ новой информацией о устройствах хранения USB, образах файловой
+ системы, квотах файловой системы, файловых системах в файлах
+ и в сети, зашифрованных дисковых разделах.
+
+
+
+ , Vinum, новая глава этой редакции.
+ В ней описано как использовать Vinum, менеджер логических
+ томов, который предоставляет независимые от устройств логические
+ диски и программные уровни RAID-0, RAID-1 и RAID-5.
+
+
+
+ К , PPP и SLIP, был добавлен
+ раздел о решении проблем.
+
+
+
+ , Электронная почта, была
+ расширена новой информацией об использовании альтернативных
+ транспортных агентов, SMTP аутентификации, UUCP, fetchmail,
+ procmail, и другими разделами повышенной сложности.
+
+
+
+ , Сетевые серверы,
+ появилась в этой редакции. Эта главы включает
+ информацию о установке Apache HTTP Server, FTPd,
+ и настройке Samba сервера для клиентов Microsoft Windows.
+ Некоторые разделы были перемещены сюда из , Сложные вопросы работы в
+ сети.
+
+
+
+ , Сложные вопросы
+ работы в сети, была расширена новой информацией об использовании
+ устройств Bluetooth в FreeBSD, настройке беспроводных сетей,
+ и сетях Asynchronous Transfer Mode (ATM).
+
+
+
+ Был добавлен глоссарий, объединяющий информацию о
+ технических терминах, используемых в книге.
+
+
+
+ Множество эстетических улучшений были внесены в
+ таблицы и иллюстрации этой книги.
+
+
+
Изменения во второй
редакции
- Эта, вторая, редакция является кульминацией более чем двухлетней
+ Вторая редакция является кульминацией более чем двухлетней
работы членов Проекта документации FreeBSD. Нижеследующий список
- перечисляет все значительные изменения в этой новой редакции:
+ перечисляет все значительные изменения, внесенные в эту
+ редакцию:Был добавлен полный указатель тем.Все ASCII-иллюстрации были заменены на графические.Был добавлен стандартный краткий обзор к каждому разделу для
того, чтобы читатель мог получить представление о содержании
раздела и о том, что необходимо знать для его изучения.Содержимое было логически реорганизовано на три части: В
Начале, Системное администрирование и
Приложения. (Установка
FreeBSD) был полностью переписан, добавлено большое
количество снимков экрана, чтобы облегчить понимание текста
для новых пользователей. (Основы &unix;) был
расширен и содержит дополнительную информацию о процессах, даемонах и
сигналах. (Установка
приложений: порты и пакеты) был расширен и содержит
дополнительную информации об управлении бинарными пакетами. (X Window System) был
полностью переписан и обращает больше внимания на современные
технологии для рабочего стола, такие, как
KDE и GNOME на
&xfree86; 4.X. (Процесс загрузки
FreeBSD) был расширен. (Устройства хранения)
был составлен из того, что раньше было двумя различными разделами
Диски и Резервное копирование. Нам
кажется, что данные темы будут легче и исчерпывающе описаны как один
раздел. Была добавлена секция о программном и аппаратном RAID. (Последовательные
коммуникации) был полностью реорганизован и актуализирован для
FreeBSD 4.X/5.X. (PPP и SLIP)
был существенно обновлён.Было добавлено множество новых секций в (Сложные вопросы работы в
сети). (Электронная почта)
был расширен, теперь он включает больше информации о настройке
sendmail. (Работа с приложениями,
- написанными для Linux) был дополнен включением информации об
+ написанными для &linux;) был дополнен включением информации об
установке &oracle; и
&sap.r3;.Следующие новые темы были рассмотрены в этой, второй,
редакции:Настройка и оптимизация ().Мультимедиа ()Структура этой
книгиЭта книга разбита на пять частей. В первой части, В
начале, рассматривается установка и основные навыки
использования FreeBSD. Предполагается, что читатель освоит эти разделы
последовательно, возможно пропуская разделы, в которых обсуждаются уже
знакомые для него темы. Вторая часть, Общие
задачи, рассказывает о некоторых наиболее часто
используемых возможностях FreeBSD. Этот раздел и все последующие
могут быть прочитаны не по порядку. Каждая
глава начинается с краткого обзора, который описывает, о чём говорится в
ней и что читатель должен будет знать для прочтения этой главы. Это
сделано для того, чтобы случайно встретивший этот материал читатель мог найти разделы, которые
его интересуют. В третьей части, Системное
администрирование, рассмотрены вопросы администрирования.
В четвертой части, Сетевые коммуникации,
охвачены темы, связанные с серверами и сетью. Пятая часть содержит
приложения и справочную информацию., ВведениеЗнакомит пользователя с FreeBSD. Рассказывает об истории проекта
FreeBSD, его задачах и модели разработки., УстановкаПроводит пользователя через весь процесс установки. Некоторые
более сложные вопросы установки, такие как установка по
последовательной консоли, также обсуждаются., Основы &unix;Рассказывает об основных командах и функциональности операционной
- системы FreeBSD. Если вы знакомы с Linux или другой &unix;-подобной
+ системы FreeBSD. Если вы знакомы с &linux; или другой &unix;-подобной
операционной системой, возможно, вы можете пропустить эту
главу., Установка приложений: порты и пакетыРассказывает о процессе установки программного обеспечения
сторонних производителей с использованием Коллекции Портов
FreeBSD и стандартных бинарных пакетов., The X Window SystemОписывает X Window System вообще и использование
&xfree86; под управлением FreeBSD в
частности. Также описывает популярные окружения рабочего стола,
такие как KDE и
GNOME., Прикладные программыПеречисляет некоторые популярные приложения для рабочей станции,
такие как веб-браузеры и офисные пакеты и описывает процесс их
установки на FreeBSD., МультимедиаПоказывает, как настроить поддержку воспроизведения звука и
видео на вашей системе. Также описывает некоторые примеры приложений
для воспроизведения звука и видео., Настройка ядра
FreeBSDОбъясняет почему вам может понадобиться перенастроить ядро и
детально описывает процесс настройки, сборки и установки нового
ядра., ПечатьРассказывает об управлении принтерами в FreeBSD, включая
информацию об титульных страницах, учёте использования принтеров и
первоначальной настройке.
- , Работа с приложениями, написанными для Linux
+ , Работа с приложениями, написанными для &linux;
- Описывает возможности Linux-совместимости в FreeBSD. Также
+ Описывает возможности &linux;-совместимости в FreeBSD. Также
предоставляет детальные инструкции по установке для многих популярных
- приложений для Linux, таких как: &oracle;,
+ приложений для &linux;, таких как: &oracle;,
&sap.r3; и
&mathematica;., Настройка и оптимизацияОписывает всевозможные параметры настройки FreeBSD, которые может
использовать системный администратор для оптимальной настройки
системы. Также описывает различные конфигурационные файлы,
используемые в FreeBSD и расположение этих файлов на диске., Процесс загрузкиРассказывает о процессе загрузки FreeBSD и объясняет, как
управлять этим процессом при помощи различных
настроек., Пользователи и основы управления
учётными записямиРассказывает о создании и управлении пользовательскими учётными
записями. Также обсуждает установку ограничений ресурсов для
пользователей и другие задачи управления пользователями., БезопасностьОписывает множество различных утилит, которые помогут вам
поддерживать FreeBSD в безопасном, надёжном состоянии, включая
Kerberos, IPsec, OpenSSH и межсетевые экраны., Принудительный контроль доступа (MAC)Описывает что такое принудительный контроль доступа
(Mandatory Access Control, MAC) и как этот механизм может
быть использован для защиты системы FreeBSD., Устройства храненияОписывает как управлять накопителями информации и файловыми
системами в FreeBSD, включая физические диски, массивы RAID,
оптические и ленточные носители, диски в оперативной памяти и сетевые
файловые системы., VinumРассказывает как использовать Vinum, менеджер логических
разделов, при помощи которого можно создавать и использовать
независимые от устройств хранения логические диски и программно
реализовывать RAID-0, RAID-1 и RAID-5., ЛокализацияОписывает использование FreeBSD на языках, отличных от
английского. Рассказывает о локализации на уровне системы и
отдельных приложений., На переднем крае разработокОбъясняет различия между FreeBSD-STABLE, FreeBSD-CURRENT и
FreeBSD-RELEASE. Рассказывает, кому из пользователей будет полезно
отслеживать версию системы в разработке и вкратце описывает этот
процесс., Последовательные коммуникацииОбъясняет как подключать терминалы и модемы к вашей FreeBSD как в
серверном, так и в клиентском режиме., PPP и SLIPОписывает использование PPP, SLIP или PPP через Ethernet для
соединения с удалёнными системами при помощи FreeBSD., Электронная почтаОбъясняет использование различных компонентов почтового сервера и
более углублённо рассматривает простые вопросы конфигурации для
наиболее популярного программного обеспечения почтовых
серверов: sendmail., Сетевые серверыПредоставляет детальные инструкции и примеры файлов настройки
для использования компьютера с FreeBSD в качестве файлового
сервера (NFS), сервера доменных имен (DNS), сервера сетевой
информационной системы (⋼), или сервера точного
времени (ntpd)., Сложные вопросы работы в сетиРассматривает множество вопросов работы с сетью, включая
совместный доступ компьютеров в вашей локальной сети к Internet,
расширенные вопросы маршрутизации, беспроводные соединения,
bluetooth, ATM, IPv6 и многое другое., Получение FreeBSD Перечисляет различные источники, из которых можно получить
FreeBSD на CDROM или DVD, равно как и различные сайты в Internet, с
которых можно скачать и установить FreeBSD., Библиография Эта книга касается многих различных тем, которые могут
сподвигнуть вас на более детальное изучение. Библиография
перечисляет множество отличных книг, которые упоминаются в
тексте., Ресурсы в InternetОписывает множество форумов, доступных для пользователей FreeBSD,
в которых можно задать вопросы и поучаствовать в технических
обсуждениях FreeBSD., Ключи PGPСодержит ключи PGP некоторых разработчиков FreeBSD.Договоренности, используемые в
этой книгеДля того чтобы обеспечить целостность и простоту чтения текста в
данной книге мы применяем некоторые договорённости.Типографические
договорённостиНаклонный шрифтНаклонный шрифт используется для имен
файлов, адресов в Internet (URL), выделенного текста и первого
применения технических терминов.Моноширинный шрифтМоноширинных шрифт используется для сообщений
об ошибках, команд, имен пользователей, названий групп, названий
устройств, переменных и фрагментов кода.Полужирный шрифтПолужирный шрифт используется для
обозначения приложений, команд и параметров.Пользовательский вводКлавиши представляются в виде полужирного текста для
того, чтобы выделяться среди остального текста. Комбинации клавиш, которые
должны вводиться одновременно разделяются символом `+',
например:CtrlAltDelЭто будет означать, что пользователь должен нажать клавиши
Ctrl, Alt и Del
одновременно.Комбинации клавиш, которые должны вводиться последовательно,
разделяются запятыми, например:CtrlX,
CtrlSЭто будет означать, что пользователь должен нажать
Ctrl и X одновременно, после чего
одновременно нажать Ctrl и S.ПримерыПримеры, которые начинаются с E:\>
обозначают команды &ms-dos;. Пока не указано противного, эти команды могут
вводиться из окна Сеанс &ms-dos; в современных системах
µsoft.windows;.E:\>tools\fdimage floppies\kern.flp A:Примеры, которые начинаются с &prompt.root; обозначают команды, которые
должны быть запущены с правами суперпользователя в FreeBSD. Вы можете
войти в систему как пользователь root для того, чтобы
ввести эти команды или войти в систему обычным пользователем и использовать
&man.su.1; для того, чтобы получить привилегии суперпользователя.&prompt.root; dd if=kern.flp of=/dev/fd0Примеры, начинающиеся с &prompt.user; указывают, что команда должна
быть исполнена с правами обычного пользователя. Пока не указано
противного, используется синтаксис C-shell для установки переменных
окружения и других команд.&prompt.user; topБлагодарностиКнига, которую вы держите в руках являет собой результат труда многих
сотен людей по всему миру. Не имеет значения, присылали ли они исправления
опечаток или предоставляли целые главы, их труд был полезен.Несколько компаний поддерживали разработку этого документа, оплачивая
авторам их труд, оплачивая публикацию и т.д. В частности, BSDi (в
последствии приобретённая компанией Wind River Systems) оплачивала труд
по улучшению этой книги участникам Проекта Документации FreeBSD, что в
итоге сделало возможным выпуск первой печатной версии в марте 2000 года
(ISBN 1-57176-241-8). Впоследствии компания Wind River Systems оплатила
работу нескольких авторов по улучшению генерации книги в удобном для печати
виде и добавлению нескольких глав. Кульминация этой работы являла собой
публикацию второй печатной версии в ноябре 2001 года (ISBN
- 1-57176-303-1).
+ 1-57176-303-1). В 2003-2004 годах FreeBSD Mall, Inc заплатила
+ нескольким контрибьюторам за улучшение Handbook при подготовке к третьей
+ редакции.
diff --git a/ru_RU.KOI8-R/books/handbook/x11/chapter.sgml b/ru_RU.KOI8-R/books/handbook/x11/chapter.sgml
index e6979e98c6..c20b3edbff 100644
--- a/ru_RU.KOI8-R/books/handbook/x11/chapter.sgml
+++ b/ru_RU.KOI8-R/books/handbook/x11/chapter.sgml
@@ -1,1894 +1,1894 @@
KenTomОбновил для сервера X.Org's X11 MarcFonvieilleАндрейЗахватовПеревод на русский язык: X Window SystemОбзорFreeBSD использует X11 для того, чтобы дать пользователям мощный
графический интерфейс. X11 является открытой реализацией
X Window System, включая &xorg; и
&xfree86;. В версиях &os; до и включая
&os; 4.10-RELEASE и &os; 5.2.1-RELEASE сервером X11
по умолчанию был &xfree86;, выпускаемый
The &xfree86; Project, Inc. Начиная с &os; 5.3-RELEASE,
официальной версией X11 по умолчанию стал
&xorg;, разработанный
X.Org Foundation.Эта глава посвящена установке и настройке
X11 в системе FreeBSD, с акцентом на
&xorg;.За дополнительной информацией по видео оборудованию, поддерживаемому
X11, обратитесь к веб сайтам
&xorg; или
&xfree86;.После чтения этой главы вы будете знать:Как установить и настроить X11.Различные компоненты X Window System и их
взаимодействие.Как установить и использовать различные оконные менеджеры.Как использовать шрифты &truetype; в X11.Как настроить вашу систему на графический интерфейс входа
(XDM).Перед чтением этой главы вы должны:Знать, как устанавливать дополнительное программное обеспечение
сторонних разработчиков ().В этой главе описана установка и настройка серверов X11 и
&xorg; и
&xfree86;. По большей части
файлы настройки, команды и синтаксис идентичны.
Там, где есть различия, приводится синтаксис и
&xorg; и
&xfree86;.Основы XПервое знакомство с X может оказаться чем-то вроде шока для тех, кто
работал с другими графическими системами, такими, как µsoft.windows;
или &macos;.Хотя нет необходимости вникать во все детали различных компонентов X и
их взаимодействия, некоторые базовые знания делают возможным
использование сильных сторон X.Почему именно X?X не является первой оконной системой для &unix;, но она является
самой популярной из них. До работы над X команда ее разработчиков трудилась
над другой оконной системой. Та система называлась W
(от Window). X была просто следующей
буквой в романском алфавите.X можно называть X, X Window System,
X11 и множеством других терминов. Факт использования названия
X Windows для X11 может задеть интересы некоторых
людей; дополнительную информацию по этому поводу можно найти на
странице справочной системы &man.X.7;.Модель клиент/сервер в XX изначально разрабатывалась, чтобы быть системой, ориентированной
на работу в сети с использованием модели
клиент-сервер.В модели работы X X-сервер работает на компьютере с
клавиатурой, монитором и мышью. Ответственность сервера включает управление
дисплеем, обработку ввода с клавиатуры и мыши и так далее. Каждое
X-приложение (например, XTerm или
&netscape;) является
клиентом. Клиент посылает сообщения серверу, такие,
как Пожалуйста, нарисуй окно со следующими координатами,
а сервер посылает в ответ сообщения типа Пользователь только что
щёлкнул мышью на кнопке OK.В случае
использования дома или в офисе, сервер и клиенты X будут скорее всего работать на
том же самом компьютере. Однако реально возможно запускать X-сервер
на менее мощном настольном компьютере, а приложения X (клиенты) на,
скажем, мощной и дорогой машине, обслуживающей целый офис. В этом
сценарии X-клиент и сервер общаются через сеть.Некоторых это вводит в заблуждение, потому что терминология X
в точности обратна тому, что они ожидают. Они полагают, что
X-сервер будет большой мощной машиной, стоящей на полу,
а X-клиентом является машина, стоящая на их
столах.Важно помнить, что X-сервером является машина с монитором и
клавиатурой, а X-клиенты являются программами, выводящими окна.В протоколе нет ничего, что заставляет машины клиента и сервера
работать под управлением одной и той же операционной системы, или
даже быть одним и тем же типом компьютера. Определённо возможно
запускать X-сервер в µsoft.windows; или &macos; от Apple, и есть
множество свободно распространяемых и коммерческих приложений, которые
это реализуют.Начиная с &os; 5.3-RELEASE, X-сервер, поставляемый с FreeBSD, называется
&xorg;, и он распространяется свободно
под лицензией, очень похожей на условия распространения FreeBSD.
Имеются и коммерческие X-серверы для FreeBSD.Оконный менеджерФилософия построения X очень похожа на философию построения &unix;,
инструменты, не политика. Это значит, что X не пытаются
диктовать то, как должна быть выполнена работа. Вместо этого
пользователю предоставляются инструменты, а за пользователем остается
принятие решения о том, как использовать эти инструменты.Этот подход расширен в X тем, что не задается, как окна должны
выглядеть на экране, как их двигать мышью, какие комбинации клавиш
должны использоваться для переключения между окнами (то есть
AltTab, в случае использования µsoft.windows;), как должны
выглядеть заголовки окон, должны ли в них быть кнопки для закрытия, и
прочее.Вместо этого X делегирует ответственность за это приложению,
которое называется Window Manager (Менеджер Окон). Есть
десятки оконных менеджеров для X: AfterStep,
Blackbox, ctwm,
Enlightenment,
fvwm, Sawfish,
twm,
WindowMaker и другие. Каждый из этих
оконных менеджеров предоставляет различные внешние виды и удобства;
некоторые из них поддерживают виртуальные рабочие столы;
некоторые из них позволяют изменять назначения комбинаций
клавиш, используемых для управления рабочим столом; в некоторых есть
кнопка Start или нечто подобное; некоторые поддерживают
темы, позволяя изменять внешний вид, поменяв тему.
Эти оконные менеджеры, а также множество
других, находятся в категории x11-wm коллекции
Портов.Кроме того, оболочки KDE и
GNOME обе имеют собственные оконные
менеджеры, которые интегрированы с оболочкой.Каждый оконный менеджер также имеет собственный механизм настройки;
некоторые предполагают наличие вручную созданного конфигурационного
файла; некоторые предоставляют графические инструменты для выполнения
большинства работ по настройке; по крайней мере один
(Sawfish) имеет конфигурационный файл,
написанный на диалекте языка Lisp.Политика фокусированияДругой особенностью, за которую отвечает оконный менеджер,
является политика фокусирования мыши. Каждая оконная
система должна иметь некоторый способ выбора окна для активации
получения нажатий клавиш, а также визуальную индикацию того, какое
окно активно.Широкоизвестная политика фокусировки называется
click-to-focus. Эта модель используется в
µsoft.windows;, когда окно становится активным после получения
щелчка мыши.X не поддерживает никакой конкретной политики фокусирования.
Вместо этого менеджер окон управляет тем, какое окно владеет фокусом
в каждый конкретный момент времени. Различные оконные менеджеры
поддерживают разные методы фокусирования. Все они поддерживают метод
щелчка для фокусирования, и большинство из них поддерживают некоторые
другие методы.Самыми популярными политики фокусирования являются:focus-follows-mouse (фокус следует за мышью)Фокусом владеет то окно, что находится под
указателем мыши. Это не обязательно будет окно, которое
находится поверх всех остальных. Фокус меняется при
указании на другое окно, при этом также нет нужды щёлкать на
нём.sloppy-focus (нечеткий фокус)С политикой focus-follows-mouse если мышь помещается
поверх корневого окна (или заднего фона), то никакое окно
фокус не получает, а нажатия клавиш просто пропадают.
При использовании политики нечёткого фокуса он меняется
только когда курсор попадает на новое окно, но не когда
уходит с текущего окна.щелчок для выбора фокусаАктивное окно выбирается щелчком мыши. Затем окно
может быть поднято и появиться поверх всех
других окон. Все нажатия клавиш теперь будут направляться
в это окно, даже если курсор переместится к другому.Многие оконный менеджер поддерживают и другие политики, а также
вариации перечисленных. Обязательно обращайтесь к документации по
оконному менеджеру.ВиджетыПодход X, заключающийся в предоставлении инструментов, а не
политики, распространяется и на виджеты, которые располагаются на
экране в каждом приложении.Виджет (widget) является термином для всего в
пользовательском интерфейсе, на чём можно
щёлкать или каким-то образом управлять; кнопки, зависимые (radio
buttons) и независимые (check boxes) кнопки, иконки, списки и так
далее. В µsoft.windows; это называется элементами
управления (controls).µsoft.windows; и &macos; от Apple обе имеют очень жёсткую
политику относительно виджетов. Предполагается, что разрабатываемые
приложения обязательно должны иметь похожий внешний вид. Что касается
X, то было решено, что не нужно требовать обязательного использования
какого-то определённого графического стиля или набора виджетов.В результате не стоит ожидать от X-приложений
похожести во внешнем виде. Существует несколько популярных наборов
виджетов и их разновидностей, включая оригинальный набор виджетов
Athena от MIT, &motif; (по
образу которого был разработан набор виджетов в µsoft.windows;,
все эти скошенные углы и три разновидности серого цвета),
OpenLook и другие.В большинстве появляющихся в настоящее время приложений для X будет
использоваться современно выглядящий набор виджетов, либо Qt,
используемый в KDE, либо
GTK+, используемый проектом
GNOME. В этом отношении наблюдается
унификация внешнего вида рабочего стола в &unix;, что определённо
облегчает жизнь начинающему пользователю.Установка X11На &os; могут быть установлены &xorg;
или &xfree86;. Начиная с
&os; 5.3-RELEASE, &xorg; является
для &os; версией X11 по умолчанию. &xorg;
это сервер X11 дистрибутива X11R6.7, выпущенный X.Org
Foundation. X11R6.7 основан на коде
&xfree86 4.4RC2 и X11R6.6.
X.Org Foundation выпустил X11R6.7 в апреле 2004 года.Для сборки и установки &xorg; из
коллекции портов, выполните:&prompt.root; cd /usr/ports/x11/xorg
&prompt.root; make install cleanПеред сборкой полной версии &xorg;
- удостоверьтесь в наличии хотя бы 2GB свободного места.
+ удостоверьтесь в наличии хотя бы 4 GB свободного места.
Для сборки и установки &xfree86;
из коллекции портов:&prompt.root; cd /usr/ports/x11/XFree86-4
&prompt.root; make install cleanКроме того, X11 может быть установлен непосредственно из
пакетов. Бинарные пакеты, устанавливаемые &man.pkg.add.1;,
доступны и для X11. Когда &man.pkg.add.1; используется для удаленной
загрузки пакетов, номер версии пакета необходимо удалить.
&man.pkg.add.1; автоматически установит последнюю версию
приложения.Таким образом, для загрузки и установки пакета
&xorg;, просто наберите:&prompt.root; pkg_add -r xorgПакет &xfree86; 4.X может быть
установлен командой:&prompt.root; pkg-add -r XFree86В примерах выше будет установлен полный дистрибутив
X11, включая серверы, клиенты, шрифты
и так далее. Также доступны и отдельные пакеты и порты для
различных частей X11.В оставшейся части главы будет рассказано о том, как сконфигурировать
X11 и настроить рабочее окружение.Замена &xfree86; на
&xorg;Как и с любым портом, вам необходимо проверить файл
/usr/ports/UPDATING на наличие изменений.
Инструкции по переходу с &xfree86;
на &xorg; включены в этот
файл.Используйте CVSup для обновления
дерева портов перед любой переустановкой. Для замены
X11 вам также потребуется установить sysutils/portupgrade.В файл /etc/make.conf необходимо
добавить переменную X_WINDOW_SYSTEM=xorg.
Это необходимо, чтобы система знала, какой X11 используется.
Старая переменная XFREE86_VERSION не используется,
она заменена переменной X_WINDOW_SYSTEM.Затем используйте следующие команды:&prompt.root; pkg_delete -f /var/db/pkg/imake-4* /var/db/pkg/XFree86-*
&prompt.root; cd /usr/ports/x11/xorg
&prompt.root; make install clean
&prompt.root; pkgdb -FКоманда &man.pkgdb.1; является частью программы
portupgrade, она обновит
различные зависимости пакетов.Перед сборкой полной версии &xorg;
- удостоверьтесь в наличии хотя бы 2GB свободного места.
+ удостоверьтесь в наличии хотя бы 4 GB свободного места.
ChristopherShumwayТекст предоставил Конфигурация X11&xfree86; 4.X&xfree86;&xorg;X11Перед тем, как начатьПеред настройкой X11
необходима следующая информация о конфигурируемой системе:Характеристики монитораНабор микросхем, используемый в видеоадаптереОбъём видеопамятичастота горизонтальной разверткичастота вертикальной разверткиХарактеристики монитора используются в
X11 для определения рабочего
разрешения и частоты. Эти характеристики обычно могут быть получены из
документации, которая прилагается к монитору или с сайта производителя.
Тут нужны два диапазона значений, для частоты горизонтальной развёртки
и для частоты вертикальной синхронизации.Набор микросхем графического адаптера определяет, модуль какого
драйвера использует X11 для работы с
графическим оборудованием.
Для большинства типов микросхем это может быть определено
автоматически, но все же его полезно знать на тот случай, когда
автоматическое определение не работает правильно.Объём видеопамяти графического адаптера определяет разрешение и
глубину цвета, с которым может работать система. Это важно, чтобы
пользователь знал ограничения системы.Конфигурирование X11Процесс настройки X11 является
многошаговым. Первый шаг заключается в построении начального
конфигурационного файла. Работая с правами суперпользователя,
просто запустите:&prompt.root; Xorg -configureДля &xfree86; запустите:&prompt.root; XFree86 -configureПри этом в каталоге /root будет создан скелет
конфигурационного файла X11 под именем
xorg.conf.new (там, куда после &man.su.1; или
непосредственного входа будет указывать переменная
$HOME). Для &xfree86;,
этот файл называется XF86Config.new. Программа
X11 сделает попытку распознать графическое оборудование системы и
запишет конфигурационный файл, загружающий правильные драйверы для
обнаруженного оборудования в системе.Следующим шагом является тестирование существующей конфигурации для
проверки того, что &xorg; может работать
с графическим оборудованием в настраиваемой системе. Для этого
выполните:&prompt.root; Xorg -config xorg.conf.newПользователям &xfree86; необходимо
выполнить:&prompt.root; XFree86 -xf86config XF86Config.newЕсли появилась чёрно-белая сетка и курсор мыши в виде
X, то настройка была выполнена успешно. Для завершения тестирования
просто нажмите одновременно
CtrlAltBackspace.Если мышь не работает, его необходимо настроить.
Обратитесь к в главе об установке
&os;.Тонкая настройка X11Теперь выполните тонкую настройку в файле
xorg.conf.new по своему вкусу (или
XF86Config.new, если вы работаете с
&xfree86;).
Откройте файл в текстовом редакторе, таком, как &man.emacs.1; или
&man.ee.1;. Сначала задайте частоты для
монитора. Они обычно обозначаются как частоты горизонтальной и
вертикальной синхронизации. Эти значения добавляются в файл
XF86Config.new в
раздел "Monitor":Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
HorizSync 30-107
VertRefresh 48-120
EndSectionКлючевых слов HorizSync и
VertRefresh может и не оказаться в
файле конфигурации. Если их нет, то они должны быть добавлены, с
указанием корректных значений горизонтальной частоты синхронизации
после ключевого слова HorizSync и вертикальной
частоты синхронизации после ключевого слова
VertRefresh. В примере выше были введены частоты
монитора настраиваемой системы.X позволяет использовать возможности технологии DPMS (Energy Star)
с поддерживающими её мониторами. Программа &man.xset.1; управляет
временными задержками и может явно задавать режимы ожидания, останова
и выключения. Если вы хотите включить использование возможностей
DPMS вашего монитора, вы должны добавить следующую строку в раздел,
описывающий монитор:Option "DPMS"xorg.confXF86ConfigПока файл конфигурации xorg.conf.new
(или XF86Config.new) открыт
в редакторе, выберите желаемые разрешение и глубину цвета, которые
будут использоваться по умолчанию. Они задаются в секции
"Screen":Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1024x768"
EndSubSection
EndSectionКлючевое слово DefaultDepth описывает
глубину цвета, с которой будет работа по умолчанию. Это значение
может быть переопределено при помощи параметра командной строки
для &man.Xorg.1; (или &man.XFree86.1;).
Ключевое слово
Modes описывает разрешение, с которым нужно
работать при данной глубине цвета. Заметьте, что поддерживаются
только те стандартные режимы VESA, что определены графическим
оборудованием настраиваемой системы. В примере выше глубина цвета по
умолчанию равна двадцати четырём битам на пиксел. При такой глубине
цвета принимается разрешение в 1024 на 768 точек.Наконец, запишите конфигурационный файл и
протестируйте его при помощи тестового режима, описанного выше.При решении проблем могут помочь лог файлы X11, в которых
находится информация по каждому устройству, к которому
подключен сервер X11. Лог файлам
&xorg; названия даются в формате
/var/log/Xorg.0.log (лог файлам
&xfree86; названия даются в формате
XFree86.0.log). Имена лог файлам
могут даваться от Xorg.0.log до
Xorg.8.log и так далее.Если все в порядке, то конфигурационный файл нужно установить в
общедоступное место, где его сможет найти &man.Xorg.1; (или
&man.XFree86.1;).
Обычно это /etc/X11/xorg.conf или
/usr/X11R6/etc/X11/xorg.conf
(для &xfree86; это
/etc/X11/XF86Config или
/usr/X11R6/etc/X11/XF86Config).&prompt.root; cp xorg.conf.new /etc/X11/xorg.confДля &xfree86;:&prompt.root; cp XF86Config.new /etc/X11/XF86ConfigТеперь процесс настройки X11 завершен. Для запуска
&xfree86; 4.X посредством &man.startx.1;
установите порт x11/wrapper.
В &xorg; уже включен код wrapper, и
установка его из порта не требуется. X11 можно также запустить через
&man.xdm.1;.Имеется также графический инструмент для настройки,
&man.xorgcfg.1; (&man.xf86cfg.1; для
&xfree86;), который включён в
дистрибутив X11. Он позволяет выполнить
настройку в интерактивном режиме посредством выбора соответствующих
драйверов и настроек. Эта программа может быть запущена в консоли
командой xf86cfg -textmode. Для получения более
полной информации обратитесь к странице справочной системы
&man.xorgcfg.1; или &man.xf86cfg.1;.Кроме того, существует программа настройки &man.xorgconfig.1;
(&man.xf86config.1; для &xfree86;),
это консольная утилита, которая менее дружественна к пользователю,
но может работать в ситуациях, в которых другие утилиты не
работают.Тонкие вопросы настройкиКонфигурирование при работе с графическими чипсетами &intel;
i810графический чипсет Intel i810Конфигурирование при работе с интегрированными наборами микросхем
&intel; i810 требует наличия agpgart,
программного интерфейса AGP, посредством которого
X11 будет управлять адаптером.
Драйвер &man.agp.4; присутствует в ядре GENERIC
с момента выпуска 4.8-RELEASE и 5.0-RELEASE. Для предшествующих
релизов вам нужно добавлять такую строку:device agpв конфигурационный файл вашего ядра и перестраивать новое ядро.
Однако вместо этого вы можете подгружать модуль ядра
agp.ko автоматически во время загрузки системы
при помощи &man.loader.8;. Для этого просто добавьте следующую
строку в файл /boot/loader.conf:agp_load="YES"Затем, в случае использования FreeBSD 4.X или более ранних
её версий, для программного интерфейса должен быть создан файл
устройств. Для создания файла устройств для AGP запустите
&man.MAKEDEV.8; в каталоге /dev:&prompt.root; cd /dev
&prompt.root; sh MAKEDEV agpgartВо FreeBSD 5.X и более поздних версиях будет
использоваться &man.devfs.5; для выделения файлов устройств в
прозрачном режиме, поэтому шаг с &man.MAKEDEV.8; не нужен.Это позволит конфигурировать графическое оборудование точно так
же, как и любой другой графический адаптер. Заметьте, что для
систем, у которых драйвер &man.agp.4; в ядро не вкомпилирован,
попытка погрузить модуль с помощью &man.kldload.8; окончится
неудачно. Этот драйвер должен оказаться в ядре во время загрузки,
либо вкомпилированным, либо подгруженным посредством
/boot/loader.conf.Если вы используете &xfree86; 4.1.0
(или более позднюю версию), и выдаются сообщения о неразрешённых
ссылках типа fbPictureInit, попробуйте добавить
такую строчку после Driver "i810" в
конфигурационном файле X11:Option "NoDDC"MurrayStokelyТекст предоставил Использование шрифтов в X11Шрифты Type1Шрифты, используемые по умолчанию и распространяемые вместе с
X11, вряд ли можно назвать идеально
подходящими для применения в обычных издательских приложениях. Большие
презентационные шрифты выглядят рвано и непрофессионально, а мелкие
шрифты в &netscape; вообще невозможно
разобрать. Однако есть некоторое количество свободно распространяемых
высококачественных шрифтов Type1 (&postscript;), которые можно без
изменений использовать с X11. К примеру, в наборе шрифтов URW
(x11-fonts/urwfonts) имеются
высококачественные версии стандартных шрифтов type1 (Times Roman, Helvetica, Palatino и другие). В набор Freefonts
(x11-fonts/freefonts) включено ещё
больше шрифтов, однако большинство из них предназначено для
использования в программном обеспечении для работы с графикой,
например, Gimp, и они не вполне пригодны
для использования в качестве
экранных шрифтов. Кроме того, X11 с
минимальными усилиями может быть настроена на использование шрифтов
&truetype;. Более детальная информация находится на странице
справочной системы &man.X.7; и в разделе о
шрифтах &truetype; ниже.Для установки вышеупомянутых коллекций шрифтов Type1 из коллекции
портов выполните следующие команды:&prompt.root; cd /usr/ports/x11-fonts/urwfonts
&prompt.root; make install cleanТо же самое нужно будет сделать для коллекции freefont и других.
Чтобы X-сервер обнаруживал
этих шрифты, добавьте соответствующую строку в
файл настройки X сервера /etc/X11/
(xorg.conf для
&xorg; и
XF86Config для
&xfree86;),
которая должна выглядеть так:FontPath "/usr/X11R6/lib/X11/fonts/URW/"Либо из командной строки при работе с X выполните:&prompt.user; xset fp+ /usr/X11R6/lib/X11/fonts/URW
&prompt.user; xset fp rehashЭто сработает, но будет потеряно, когда сеанс работы с X будет
закрыт, если эта команда не будет добавлена в начальный файл
(~/.xinitrc в случае обычного сеанса через
startx
или ~/.xsession при входе через графический
менеджер типа XDM). Третий способ
заключается в использовании нового файла
/usr/X11R6/etc/fonts/local.conf: посмотрите
раздел об антиалиасинге.Шрифты &truetype;Шрифты TrueTypeшрифтыTrueTypeКак в &xfree86; 4.X, так и в
&xorg; имеется встроенная
поддержка шрифтов &truetype;. Имеются два модуля, которые могут
обеспечить эту функциональность. В нашем примере используется модуль
freetype, потому что он в большей степени похож на другие механизмы
для работы с шрифтами. Для включения модуля freetype достаточно в
раздел "Module" файла
/etc/X11/xorg.conf или
/etc/X11/XF86Config добавить следующую
строчку.Load "freetype"В случае &xfree86; 3.3.X требуется
отдельный сервер шрифтов &truetype;. Для этого обычно
используется Xfstt. Для установки
Xfstt просто установите порт
x11-servers/Xfstt.Теперь создайте каталог для шрифтов &truetype;
(к примеру, /usr/X11R6/lib/X11/fonts/TrueType) и
скопируйте все шрифты &truetype; в этот каталог. Имейте в виду,
что напрямую использовать шрифты &truetype; с &macintosh; нельзя;
для использования с X11 они должны
быть в формате &unix;/&ms-dos;/&windows;. После того, как файлы будут
скопированы в этот каталог, воспользуйтесь утилитой
ttmkfdir для создания файла
fonts.dir, который укажет подсистеме вывода
шрифтов X на местоположение этих новых файлов.
ttmkfdir имеется в Коллекции Портов FreeBSD
как x11-fonts/ttmkfdir.&prompt.root; cd /usr/X11R6/lib/X11/fonts/TrueType
&prompt.root; ttmkfdir > fonts.dirПосле этого добавьте каталог со шрифтами &truetype;
к маршруту поиска шрифтов. Это делается точно также, как описано выше
для шрифтов Type1, то есть
выполните&prompt.user; xset fp+ /usr/X11R6/lib/X11/fonts/TrueType
&prompt.user; xset fp rehashили добавьте строку в файл
xorg.conf (или
XF86Config).Это всё. Теперь &netscape;,
Gimp,
&staroffice; и все остальные X-приложения
должны увидеть установленные шрифты &truetype;. Очень маленькие (как
текст веб-страницы на дисплее с высоким разрешением) и очень большие (в
&staroffice;) шрифты будут теперь выглядеть
гораздо лучше.Joe MarcusClarkeОбновление выполнил Антиалиасинг шрифтовшрифты с антиалиасингомшрифтыантиалиасингАнлиалиасинг присутствует в X11 начиная с
&xfree86;,
версии 4.0.2. Однако настройка шрифтов была довольно
громоздка вплоть до появления &xfree86;
4.3.0. Начиная с версии &xfree86; 4.3.0,
все шрифты, расположенные в каталогах
/usr/X11R6/lib/X11/fonts/ и
~/.fonts/, автоматически становятся доступными для
применения антиалиасинга в приложениях, использующих Xft. Не все
приложения могут использовать Xft, но во многих его поддержка
присутствует. Примерами приложений, использующих Xft, является Qt
версий 2.3 и более поздних (это инструментальный пакет для оболочки
KDE), GTK+ версий 2.0 и более поздних (это
инструментальный пакет для оболочки GNOME),
а также Mozilla версий 1.2 и более
поздних.Для управления тем, к каким шрифтам применять антиалиасинг, а также
для настройки параметров антиалиасинга, создайте (или отредактируйте,
если он уже существует) файл
/usr/X11R6/etc/fonts/local.conf. Некоторые мощные
возможности системы шрифтов Xft могут быть настроены при помощи этого
файла; в этом разделе описаны лишь некоторые простые возможности. Для
выяснения всех деталей, пожалуйста, обратитесь к
&man.fonts-conf.5;.XMLЭтот файл должен быть сформирован в формате XML. Обратите особое
внимание на регистр символов, и удостоверьтесь, что все тэги корректно
закрыты. Файл начинается обычным заголовком XML, за которым следуют
задание DOCTYPE, а потом
тэг <fontconfig>:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
Как и говорилось ранее, все шрифты из каталога
/usr/X11R6/lib/X11/fonts/, а также
~/.fonts/ уже доступны для приложений,
использующих Xft. Если вы хотите добавить каталог, отличный от этих
двух, добавьте строчку, подобную следующей, в файл
/usr/X11R6/etc/fonts/local.conf:<dir>/path/to/my/fonts</dir>После добавления новых шрифтов, и особенно новых каталогов со
шрифтами, вы должны выполнить следующую команду для перестроения
кэшей шрифтов:&prompt.root; fc-cache -fАнтиалиасинг делает границы несколько размытыми, что делает очень
мелкий текст более читабельным и удаляет лесенки из
текста большого размера, но может вызвать нечёткость при применении к
тексту обычного размера. Для исключения размеров шрифтов, меньших 14, из
антиалиасинга, добавьте такие строки: <match target="font">
<test name="size" compare="less">
<double>14</double>
</test>
<edit name="antialias" mode="assign">
<bool>false</bool>
</edit>
</match>
<match target="font">
<test name="pixelsize" compare="less" qual="any">
<double>14</double>
</test>
<edit mode="assign" name="antialias">
<bool>false</bool>
</edit>
</match>шрифтымежсимвольное расстояниеДля некоторых моноширинных шрифтов антиалиасинг может также
оказаться неприменимым при определении межсимвольного интервала. В
частности, эта проблема возникает с KDE.
Одним из возможных решений для этого
является жесткое задание межсимвольного интервала в 100. Добавьте
следующие строки: <match target="pattern" name="family">
<test qual="any" name="family">
<string>fixed</string>
</test>
<edit name="family" mode="assign">
<string>mono</string>
</edit>
</match>
<match target="pattern" name="family">
<test qual="any" name="family">
<string>console</string>
</test>
<edit name="family" mode="assign">
<string>mono</string>
</edit>
</match>(это создаст алиасы для других общеупотребительных имён для
шрифтов фиксированного размера как "mono"), а затем
добавьте: <match target="pattern" name="family">
<test qual="any" name="family">
<string>mono</string>
</test>
<edit name="spacing" mode="assign">
<int>100</int>
</edit>
</match> С некоторыми шрифтами, такими, как Helvetica, могут получиться
проблемы при антиалиасинге. Обычно это проявляется в виде шрифта,
который наполовину вертикально обрезан. Хуже того, это может
привести к сбоям таких приложений, как
Mozilla. Во избежание этого следует
добавить следующее в файл local.conf: <match target="pattern" name="family">
<test qual="any" name="family">
<string>Helvetica</string>
</test>
<edit name="family" mode="assign">
<string>sans-serif</string>
</edit>
</match> После того, как вы закончите редактирование
local.conf, удостоверьтесь, что вы завершили файл
тэгом </fontconfig>. Если этого не сделать,
то ваши изменения будут проигнорированы.Набор шрифтов по умолчанию, поставляемый с
X11, не очень желателен, если
включается антиалиасинг. Гораздо лучший набор шрифтов, используемых
по умолчанию, можно найти в порте
x11-fonts/bitstream-vera. Этот
порт установит файл
/usr/X11R6/etc/fonts/local.conf, если такого ещё
не существует. Если файл существует, то порт создаст файл
/usr/X11R6/etc/fonts/local.conf-vera. Перенесите
содержимое этого файла в
/usr/X11R6/etc/fonts/local.conf, и шрифты
Bitstream автоматически заменят используемые по умолчанию в
X11 шрифты Serif, Sans Serif и
Monospaced.Наконец, пользователи могут добавлять собственные наборы
посредством персональных файлов .fonts.conf.
Для этого каждый пользователь должен просто создать файл
~/.fonts.conf. Этот файл также должен быть в
формате XML.LCD-дисплейШрифтыLCD-дисплейИ последнее замечание: при использовании дисплея LCD может
понадобиться включение разбиения точек. При этом компоненты красного,
зелёного и голубого цветов (разделяемые по горизонтали),
рассматриваются как отдельные точки для улучшения разрешения экрана
по горизонтали; результат может оказаться потрясающим. Для включения
этого механизма добавьте такую строчку где-нибудь в файл
local.conf:
<match target="font">
<test qual="all" name="rgba">
<const>unknown</const>
</test>
<edit name="rgba" mode="assign">
<const>rgb</const>
</edit>
</match>
В зависимости от типа дисплея, rgb может
потребоваться заменить на bgr,
vrgb или vbgr: пробуйте и
смотрите, что работает лучше.Mozillaвеб-браузерыMozillaMozillaАнтиалиасинг должен быть включен при следующем запуске X-сервера.
Однако программы должны знать, как использовать его преимущества.
В настоящее время инструментальный пакет Qt умеет ими пользоваться,
так что вся оболочка KDE может
использовать шрифты с антиалиасингом (обратитесь к о KDE для
выяснения всех подробностей). GTK+ и GNOME
также можно заставить использовать антиалиасинг посредством капплета
Font (обратитесь к для выяснения всех подробностей).
По умолчанию Mozilla версий 1.2 и выше
будет автоматически использовать антиалиасинг. Для отмены этого
перестройте Mozilla с флагом
-DWITHOUT_XFT.SethKingsleyТекст предоставил Менеджеры Экранов (Display Managers) XВступлениеX Display ManagerМенеджер Экранов X (XDM) это
необязательный компонент
Системы Окон X, который используется для управления login сессиями.
Это полезно в ряде ситуаций, например минимальные
X Терминалы,
декстопы, большие сетевые сервера Экранов. Так как Система Окон X
не зависит от сетей и протоколов, то существует множество различных
конфигураций для X клиентов и серверов запущенных на различных
компьютерах подключенных к сети. XDM
предоставляет графический
интерфейс для выбора сервера к которому Вы желаете подключится и
введения информации авторизующей пользователя, например комбинацию
логина и пароля.Представляйте себе, что XDM
предоставляет такие же
возможности для пользователей, как и программа &man.getty.8;
(смотрите для подробной информации).
И это именно так, XDM производит вход в
систему для подключенного
пользователя и запускает управляющую сессию для пользователя (обычно
это менеджер окон X). После этого XDM
ожидает завершения
приложения, означающее завершение пользователем работы и
отключает управляющую сессию. После этого
XDM может снова вывести
приглашение к входу в систему и ожидать входа другого пользователя.
Использование XDMПрограммой даемона XDM является
/usr/X11R6/bin/xdm. Эта программа может быть
запущена от пользователя root в любой момент, и
она начнёт управлять дисплеем X на локальной машине.
Если XDM нужно запускать
в фоновом режиме каждый раз при запуске компьютера, то наиболее
правильный способ это добавить новую запись в
/etc/ttys. Для более подробной информации о
формате и использовании этого файла смотрите секцию . Это строка, которую необходимо добавить
в файл /etc/ttys для того чтобы запустить
даемон XDM на виртуальном терминале:ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm off secureПо умолчанию эта запись отключена; для её включения
нужно заменить пятое поле с off на
on и перезапустить &man.init.8;, используя метод,
описанный в . Первое поле это название
терминала, которым будет управлять программа, ttyv8.
Это означает, что XDM будет запущен на 9ом
виртуальном терминале.Конфигурирование XDMКонфигурационные файлы XDM находятся в
каталоге
/usr/X11R6/lib/X11/xdm. В нём размещаются
насколько файлов, которые используются для изменения
поведения и внешнего вида XDM.
Обычно это следующие файлы:ФайлОписаниеXaccessПравила авторизации клиентов.XresourcesЗначения ресурсов X по умолчанию.XserversСписок локальных и удаленных экранов.XsessionСценарий сессии по умолчанию.Xsetup_*Скрипт для запуска приложений до появления приглашения
к входу в систему.xdm-configГлобальный конфигурационный файл для всех экранов
запущенных на локальной машинеxdm-errorsОшибки сгенерированные серверной программой.xdm-pidID процесса запущенного XDM.В этом каталоге также находятся несколько командных сценариев
и программ используемых для настройки рабочего стола (desktop),
когда запускается XDM. Назначение
каждого из этих файлов будет вкратце описано. Точный синтаксис и
информацию по их использованию описаны в &man.xdm.1;.В конфигурации по умолчанию это просто прямоугольное окно
приглашения ко входу в систему с именем компьютера большим шрифтом
написанным сверху и строками ввода Login: и
Password: внизу. Это хорошая отправная точка
для изменения внешнего вида экранов
XDM.XaccessПротокол, по которому происходит подключение дисплеев,
управляемых XDM, называется X Display
Manager Connection
Protocol (XDMCP). Этот файл представляет собой
набор правил для управления XDMCP соединениями с
удалёнными машинами. По умолчанию он позволяет подключаться
любым клиентам, но это не имеет значения, пока
стандартный файл xdm-config не содержит
указаний по обслуживанию удалённых соединений.XresourcesЭто файл содержащий установки по умолчанию для
приложений запущенных в экране выбора серверов и экране
приглашения к входу в систему. Именно здесь может быть
изменён вид программы входа в систему. Формат этого файла
идентичен файлу app-defaults описанному
в документации к X11.XserversЭто список удаленных экранов, которые XDM должен предоставить
как варианты для входа в систему.XsessionЭтот файл представляет себя командный сценарий по умолчанию
для пользователей вошедших в систему с использованием
XDM.
Обычно каждый пользователь имеет собственный сценарий входа в файле
~/.xsession, который используется
вместо этого сценария.Xsetup_*Они запускаются автоматически перед тем, как показывается экран
выбора сервера или экран входа в систему. Для каждого экрана
(display) есть свой сценарий с именем Xsetup_,
за которым следует локальный номер экрана (например,
Xsetup_0).
Обычно эти сценарии запускают одну или две программы в
фоновом режиме, например xconsole.xdm-configЗдесь содержатся настройки в формате app-defaults,
которые применимы ко всем экранам данного компьютера.xdm-errorsЗдесь находится выдача X серверов, которые
XDM пытается запустить. Если экран,
который XDM пытается
открыть отключается по некоторым причинам, то это хорошее
место для поиска сообщений об ошибках. Эти сообщения также
записываются в пользовательский файл
~/.xsession-errors для каждого сеанса.Использование сетевого сервера дисплеевДля того, чтобы позволить другим клиентам подключаться к серверу
дисплеев, отредактируйте правила
контроля доступа и включите обслуживание сетевых соединений.
По умолчанию они выключены, что является хорошим решением
с точки зрения обеспечения безопасности. Для того, чтобы
позволить XDM принимать сетевые соединения,
в первую очередь
закомментируйте строку в файле xdm-config:! SECURITY: do not listen for XDMCP or Chooser requests
! Comment out this line if you want to manage X terminals with xdm
DisplayManager.requestPort: 0и потом перезапустите XDM. Помните,
что комментарии в файлах app-defaults начинаются с символа
!, а не как обычно, #. Может
потребоваться более жёсткий контроль доступа. Взгляните на примеры из
Xaccess и почитайте Справочник о
&man.xdm.1;.Замены для XDMСуществует несколько программ, заменяющих
XDM. Одна из них,
kdm (поставляемая вместе с
KDE), описана далее в этой главе. В
kdm имеется много визуальных и
косметических улучшений, а также функциональность, позволяющая
пользователям выбирать собственные оконные менеджеры во время
входа в систему.ValentinoVaschettoТекст предоставил Графические оболочкиВ этом разделе описываются различные графические оболочки, доступные
в X для FreeBSD. Термин графическая оболочка может
использоваться для чего угодно, от простого менеджера окон до
полнофункционального набора приложений для рабочего стола типа
KDE или
GNOME.GNOMEО GNOMEGNOMEGNOME является дружественной к
пользователю графической
оболочкой, позволяющей пользователям легко использовать и настраивать
свои компьютеры. В GNOME имеется панель
(для запуска приложений и
отображения их состояния), рабочий стол (где могут быть размещены
данные и приложения), набор стандартных инструментов и приложений для
рабочего стола, а также набор соглашений, облегчающих совместную
работу и согласованность приложений. Пользователи других
операционных систем или оболочек при использовании такой мощной
графической оболочки, какую обеспечивает
GNOME, должны чувствовать
себя в родной среде. Дополнительную информацию относительно
GNOME во FreeBSD можно найти на сайте
FreeBSD GNOME
Project.Установка GNOMEЛегче всего установить GNOME через
меню Desktop Configuration в ходе процесса установки
FreeBSD, как описано в
Главы 2. Её также легко установить из пакета или Коллекции
Портов:Для установки пакета GNOME из сети,
просто наберите:&prompt.root; pkg_add -r gnome2Для построения GNOME из
исходных текстов используйте дерево портов:&prompt.root; cd /usr/ports/x11/gnome2
&prompt.root; make install cleanПосле установки GNOME нужно указать
X-серверу на запуск GNOME вместо
стандартного оконного менеджера. Если файл
.xinitrc уже откорректирован, то просто
замените строку, в которой запускается используемый менеджер окон,
на ту, что вызовет
/usr/X11R6/bin/gnome-session.
Если в конфигурационном файле нет ничего особенного, то будет
достаточно просто набрать:&prompt.user; echo "/usr/X11R6/bin/gnome-session" > ~/.xinitrcТеперь наберите startx, и будет запущена
графическая оболочка GNOME.Если используется менеджер дисплеев типа
XDM, то это не сработает. Вместо этого
создайте выполнимый файл .xsession с той
же самой командой в нём. Для этого отредактируйте файл,
заменив существующую команду запуска оконного
менеджера на
/usr/X11R6/bin/gnome-session:&prompt.user; echo "#!/bin/sh" > ~/.xsession
&prompt.user; echo "/usr/X11R6/bin/gnome-session" >> ~/.xsession
&prompt.user; chmod +x ~/.xsessionЕщё одним вариантом является настройка менеджера дисплеев таким
образом, чтобы он позволял выбирать оконный менеджер во время входа в
систему; в разделе о KDE2 в
подробностях описывается, как сделать это для
kdm, менеджера дисплеев из
KDE.Шрифты с антиалиасингом и GNOMEGNOMEантиалиасинг шрифтовX11 поддерживает антиалиасинг посредством своего расширения
RENDER. GTK+ 2.0 и более поздние версии (это
инструментальный пакет, используемый
GNOME) могут использовать такую
функциональность. настройка антиалиасинга описана в
. Таким образом, при наличии современного
GNOME. Просто перейдите в
ApplicationsDesktop PreferencesFont
и выберите либо
Best shapes,
Best contrast, либо
Subpixel smoothing (LCDs). Для приложений
GTK+, которые не являются частью оболочки
GNOME, задайте в качестве значения
переменной окружения GDK_USE_XFT1 перед запуском программы.KDEKDEО KDEKDE является простой в использовании
современной графической оболочкой. Вот лишь некоторое из того, что
даёт пользователю KDE:Прекрасный современный рабочий столРабочий стол, полностью прозрачный для работы в сетиИнтегрированная система помощи, обеспечивающая удобный и
согласованный доступ к системе помощи по использованию рабочего
стола KDE и его приложенийЕдинообразный внешний вид и управление во всех приложениях
KDEСтандартизированные меню и панели инструментов, комбинации
клавиш, цветовые схемы и так далее.Интернационализация: в KDE
поддерживается более 40 языковЦентрализованное единообразное конфигурирование рабочего
стола в диалоговом режимеБольшое количество полезных приложений для
KDEДля KDE существует пакет офисных
приложений, который выполнен по технологии KParts из
KDE, состоящий из программы для работы с
электронными таблицами, презентационной программы, органайзера,
клиента для чтения телеконференций и других программ. С
KDE также поставляется веб-браузер под
названием Konqueror, который
является серьезным соперником другим браузерам для &unix;-систем.
Дополнительную информацию о KDE можно
найти на веб-сайте
KDE. Для получения информации и информационных ресурсов,
специфичных для KDE во FreeBSD, обратитесь
к сайту команды FreeBSD-KDE
team.Установка KDEКак и в случае с GNOME или любой
другой графической оболочкой, легче всего установить
KDE через меню Desktop
Configuration во время установки FreeBSD, как это описано в
Главы 2. Повторимся ещё
раз, что программное обеспечение можно легко установить из пакета
или из Коллекции Портов:Для установки пакета KDE из сети,
просто наберите:&prompt.root; pkg_add -r kde&man.pkg.add.1; автоматически загрузит самую последнюю версию
приложения.Для построения KDE из исходных
текстов воспользуйтесь деревом портов:&prompt.root; cd /usr/ports/x11/kde3
&prompt.root; make install cleanПосле установки KDE нужно
указать X-серверу на запуск этого приложения вместо оконного
менеджера, используемого по умолчанию. Это достигается
редактированием файла .xinitrc:&prompt.user; echo "exec startkde" > ~/.xinitrcТеперь при вызове X Window System по команде
startx в качестве оболочки будет использоваться
KDE.При использовании менеджера дисплеев типа
XDM настройка несколько отличается.
Вместо этого нужно отредактировать файл
.xsession. Указания для
kdm описаны далее в этой главе.Более подробно о KDEТеперь, когда KDE установлена в
системе, можно узнать много нового из её справочных страниц или просто
указанием и щелканием по различным меню. Пользователи &windows; или
&mac; будут чувствовать себя как дома.Лучшим справочником по KDE является
онлайновая документация. KDE
поставляется с собственным веб-браузером, который называется
Konqueror,
десятками полезных приложений и подробной документацией. В оставшейся
части этого раздела обсуждаются технические вопросы, трудные для
понимания при случайном исследовании.Менеджер дисплеев KDEKDEменеджер дисплеевАдминистратору многопользовательской системы может
потребоваться графический экран входа в систему для
приглашения пользователей. Вы можете использовать XDM, как это описано
ранее. Однако в KDE имеется
альтернативный менеджер kdm, который был
разработан для того, чтобы выглядеть более привлекательно и иметь
большее количество настраиваемых опций для входа в систему. В
частности, пользователи могут легко выбирать (посредством меню),
какую оболочку (KDE,
GNOME или что-то ещё) запускать после
входа в систему.Чтобы начать, запустите панель управления
KDE, kcontrol, из-под
пользователя root. Вообще говоря, считается
небезопасным работать в X пользователем
root. Вместо этого запустите менеджер окон
как обычный пользователь, откройте окно терминала (такого, как
xterm или konsole) из
KDE, станьте пользователем
root по команде su (для
этого нужно быть членом группы wheel из
/etc/group), а затем наберите
kcontrol.Щёлкните на иконке слева с надписью
System, затем на Login
manager. Справа имеется много
различных параметров настройки, которые более детально описаны в
руководстве по KDE. Щёлкните на
sessions справа. Щёлкните на кнопку
New type для того, чтобы добавить
различные оконные менеджеры и графические оболочки. Это просто
названия, так что они могут именоваться
KDE или GNOME,
а не startkde или
gnome-session.)
Включите название failsafe.Поэкспериментируйте также и с другими меню, они в
основном носят косметический характер и самоописательны. Когда
закончите, щёлкните на Apply внизу и завершите
работу панели управления.Чтобы kdm понимал, что значат эти
названия (KDE,
GNOME и так далее), отредактируйте файлы,
которые использует XDM.
В KDE 2.2 это изменилось: в
kdm теперь используются собственные
конфигурационные файлы. Пожалуйста, обратитесь к документации
по KDE 2.2 для получения подробной
информации.В окне терминала, работая как пользователь
root, отредактируйте файл
/usr/X11R6/lib/X11/xdm/Xsession. В середине
есть раздел, выглядящий вот так:case $# in
1)
case $1 in
failsafe)
exec xterm -geometry 80x24-0-0
;;
esac
esacНужно добавить к этому разделу несколько строк. Полагая, что
ранее использовались названия KDE и
GNOME, сделаем следующее:case $# in
1)
case $1 in
kde)
exec /usr/local/bin/startkde
;;
GNOME)
exec /usr/X11R6/bin/gnome-session
;;
failsafe)
exec xterm -geometry 80x24-0-0
;;
esac
esacЧтобы выбор KDE в качестве оболочки
на момент входа в систему был принят, нужно добавить такую строку в
/usr/X11R6/lib/X11/xdm/Xsetup_0:/usr/local/bin/kdmdesktopТеперь проверьте, что
kdm перечислена в файле
/etc/ttys для запуска при следующей загрузке.
Для этого просто следуйте инструкциям из предыдущего раздела
о XDM, заменив отсылки к программе
/usr/X11R6/bin/xdm на
/usr/local/bin/kdm.Шрифты с антиалиасингомKDEантиалиасинг шрифтовX11 поддерживает антиалиасинг через своё расширение
RENDER, а начиная с версии 2.3, Qt (инструментарий,
используемый в KDE) поддерживает это
расширение. Настройка этого описана в по
антиалиасингу с шрифтами X11. Таким образом, при работе с
современным программным обеспечением в оболочке
KDE возможно использование
антиалиасинга. Просто перейдите в меню KDE, затем к
PreferencesLook and FeelFonts
и поставьте галочку рядом с
Use Anti-Aliasing for Fonts and Icons. Для
работы с приложением Qt, которое не является частью
KDE, перед его запуском нужно
устанавливать переменную окружения QT_XFT в
значение true.XFceО XFceXFce является графической оболочкой,
построенной на основе инструментального пакета GTK+, используемого в
GNOME, но гораздо легче и предназначен
для тех, кому нужен простой, эффективно работающий рабочий стол,
который легко использовать и настраивать. Визуально он выглядит
очень похоже на CDE, который есть в
коммерческих &unix;-системах. Вот некоторые из достоинств
XFce:Простой, лёгкий в обращении рабочий столПолностью настраиваемый при помощи мыши, с
интерфейсом drag and drop и так далееГлавная панель похожа на CDE, с
меню, апплетами и возможностями по быстрому запуску
приложенийИнтегрированный оконный менеджер, менеджер файлов,
управление звуком, модуль совместимости с
GNOME и прочееВозможность использования тем (так как использует
GTK+)Быстрый, легкий и эффективный: идеален для
устаревших/слабых машин или для машин с ограниченной
памятьюДополнительную информацию о XFce
можно найти на сайте
XFce.Установка XFceДля XFce имеется (на момент написания
этого текста) бинарный пакет. Для его установки просто
наберите:&prompt.root; pkg_add -r xfce4Либо в случае построения из исходных текстов используйте
Коллекцию Портов: &prompt.root; cd /usr/ports/x11-wm/xfce4
&prompt.root; make install cleanТеперь укажите X-серверу на запуск
XFce при следующем
запуске X. Просто наберите вот что:&prompt.user; echo "/usr/X11R6/bin/startxfce4" > ~/.xinitrcПри следующем запуске X в качестве рабочего стола
будет использоваться XFce.
Как это сказано выше, если используется
менеджер дисплеев, такой, как XDM, создайте
файл .xsession так, как это
описано в разделе о GNOME, но
с командой /usr/X11R6/bin/startxfce4, либо
настройте менеджер дисплеев так, чтобы он разрешил выбор рабочего
стола во время входа в систему, как это описано в разделе о kdm.