cron

title: cron(8)

summary: демон расписания

text:
# cron(8)

## ИМЯ
cron — демон расписания

## ОБЗОР
cron [-l загрузка_системы] [-n] [-x [ext,sch,proc,pars,load,misc,test,bit]]

## ОПИСАНИЕ
Демон cron занимается планированием и выполнением команд, запускаемых по определенным датам и в определенное время. Команды, выполняемые периодически, указываются в файлах crontab(5). Команды, которые должны быть запущены лишь однажды, добавляются при помощи at(1) и batch(1). Как правило, демон cron запускается из командного скрипта /etc/init.d/crond. Так как cron может выполнять команды от имени пользователя, он должен быть запущен как можно позже при запуске системы и как можно ближе к моменту, когда разрешается вход в систему.

cron загружает файлы crontab(5) и at(1) при запуске, а также в случае, если командами crontab(1) и at(1) были внесены какие-то изменения. Кроме этого, раз в минуту cron проверяет время модификации системного файла crontab (/etc/crontab), набора пользовательских crontab (/var/spool/cron), и набора пользовательских at (/var/spool/at). Если время модификации файлов изменилось, файлы загружаются снова.

Вывод исполняемой команды отправляется пользователю, указанному в переменной окружения MAILTO, как указано в файле crontab(5). Если переменная MAILTO не определена (или если это задача at(1) или batch(1) ), то сообщение отправляется владельцу задачи. Сообщение не отправляется, если команда не выводит какой-либо информации, или если переменная окружения MAILTO является пустой строкой. Исключением являются задачи at(1) или batch(1) созданные с флагом -m. В этом случае, сообщение будет отправлено даже если задача ничего не выводит.

### Переход на летнее или зимнее время, прочие изменения времени
Локальные изменения времени меньше чем на 3 часа (например, переход на летнее или зимнее время) обрабатываются специальным образом. Это относится только к задачам, которые запускаются в определенное время или периодом более одного часа. Задачи, которые выполняются чаще, исполняются как обычно.

Если время было переведено вперед, задачи, которые должны были быть выполнены в течение пропущенного интервала, будут запущены немедленно. И наоборот, если время было переведено назад, принимаются меры для предотвращения запуска задачи дважды.

Изменения времени более чем на 3 часа считается коррекцией времени или временной зоны, и новое время начинает использоваться немедленно.

Доступны следующие флаги:

-l средняя_загрузка

Если текущая средняя загрузка системы больше, чем средняя_загрузка, задачи batch(1) не будут запущены. По умолчанию используется значение 1.5. Чтобы разрешить выполнение задач batch(1) вне зависимости от загрузки системы, можно использовать значение 0.0.

-n

По умолчанию, cron отсоединяется от текущей консоли и становится демоном. Флаг -n предотвращает это и заставляет cron работать в интерактивном (foreground) режиме.

-x отладочные_флаги

Если cron был собран с поддержкой отладки, некоторое флаги позволяют узнать, что cron делает в данный момент. Следующие флаги могут быть указаны: ext

показывает расширенную отладочную информацию. Используется в комбинации с другими отладочными флагами для получения дополнительных данных.

sch

печатает информацию, относящуюся к планированию заданий.

proc

печатает информацию, относящуюся к запущенным процессам.

pars

печатает информацию, относящуюся к синтаксическому анализу файлов crontab(5).

load

выводит сообщение при загрузки баз данных.

misc

показывает дополнительную отладочную информацию.

test

тестовый режим (не выполнять команды на самом деле).

Может быть указано несколько флагов, разделенных запятыми (‘,’). Вне зависимости от того, какие флаги были указаны, флаг -x заставит cron оставаться в интерактивном (foreground) режиме и не позволит ему становиться демоном.

## СИГНАЛЫ
SIGHUP

Заставляет cron закрыть и вновь открыть файл журнала. Это полезно в скриптах ротации файлов журналов. На OpenBSD это не работает, так как cron пишет в журнал при помощи syslog(3).

## ФАЙЛЫ
/etc/crontab

системный файл crontab

/etc/cron.d

каталог, в котором хранятся системные файлы crontab

/var/spool/at

каталог, в котором хранятся файлы задач at(1) cron

/var/spool/cron

каталог, содержащий пользовательские файлы crontab

/var/spool/cron/.sock

используется командами crontab(1) и at(1) для указания cron немедленно проверить наличие изменений в файлах crontab.

## СМ. ТАКЖЕ
at(1), crontab(1), syslog(3), crontab(5)

## АВТОР
Paul Vixie ⟨vixie@isc.org⟩

## ПРЕДОСТЕРЕЖЕНИЕ
Все файлы crontab(5) не должны быть доступны для чтения никому, кроме владельца файлов, включая /etc/crontab. На практике это означает, что режим доступа для файлов должен быть установлен в 0600. Это ограничение автоматически устанавливается crontab(1), но если используется /etc/crontab, то на этом файле режим должен быть установлен вручную.

## ПЕРЕВОД
Перевод с английского Виктор Ерёмин <ErV2005@rambler.ru> 2007


dhcpd

package: man-pages-ru-extra

title: dhcpd(8)

text:
# dhcpd(8)

## ИМЯ
dhcpd - сервер DHCP (Dynamic Host Configuration Protocol)

## ОБЗОР
dhcpd [ -p порт ] [ -f ] [ -d ] [ -q ] [ -t | -T ] [ -cf конфигурационный-файл ] [ -lf lease-файл ] [ -pf pid-файл ] [ -tf trace-output-файл ] [ -play trace-playback-файл ] [ if0 [ ...ifN ] ]

## ОПИСАНИЕ
Сервер DHCP от Internet Systems Consortium, dhcpd, реализует протоколы

Dynamic Host Configuration Protocol (DHCP) и Internet Bootstrap Protocol (BOOTP). DHCP позволяет хостам сети TCP/IP запрашивать и назначать IP адреса и также иную информацию о сети, в которой они находятся. BOOTP предоставляет те же функции, но с определенными ограничениями.

## ВКЛАД
Это программное обеспечение является свободным. В различное время разработка происходила в разных организациях, включая ISC и Vixie Enterprises. Разработка третьей версии почти полностью финансируется Nominum, Inc.

На данном этапе разработка контролируется Тедом Лемоном (Ted Lemon) и размещается ISC, но будущее этого проекта зависит от вас. Если у вас есть предложения по улучшению, обратитесь за их реализацией к ним.

## ПРОЦЕСС
Протокол DHCP позволяет назначить хосту, неизвестному сетевому администратору, новый IP адрес из списка свободных адресов этой сети. Для того, чтобы это работало, сетевой администратор определяет список свободных адресов для каждой подсети в файле dhcpd.conf(5).

При запуске dhcpd читает файл dhcpd.conf и хранит список свободных адресов каждой подсети в памяти. При запросе клиентом адреса по протоколу DHCP, dhcpd находит адрес для него. Каждому клиенту назначается аренда (lease), которая истекает по истечении указанного администратором срока (по умолчанию - один день. Перед тем, как срок аренды истечет, клиент должен снова запросить адрес. После истечения срока аренды клиенту запрещается использовать арендованный IP адрес.

Для того, чтобы отслеживать аренду адресов при перезагрузке и рестарте сервера, dhcpd хранит список арендованных адресов в файле dhcpd.leases(5). Перед тем, как dhcpd позволяет аренду хосту, он записывает данные об аренде в файл и убеждается, что файл реально сохранён (буфер сброшен на диск). Это гарантирует даже при сбое системы сохранение информации о выданных адресах. При запуске после чтения файла dhcpd.conf читается файл dhcpd.leases для построения в памяти списка выданных адресов.

Последние выданные адреса записываются в конец файла dhcpd.leases. Для предотвращения распухания файла, время от времени dhcpd создает новый файл dhcpd.leases из свежего списка. Когда новый файл записывается на диск, старый файл переименовывается в dhcpd.leases~, а новый файл переименовывается в dhcpd.leases. При сбое системы во время этого процесса это позволяет сохранить всю информацию в файле dhcpd.leases без дополнительных усилий по восстановлению после сбоев.

Этот сервер также поддерживает BOOTP. В отличие от DHCP, протокол BOOTP не позволяет восстановить динамически назначенные адреса, когда они больше не нужны. Можно динамически назначать адреса клиентам BOOTP, но для утилизации неиспользуемых адресов потребуется некоторый административный процесс. По умолчанию срок аренды адресов клиентами BOOTP бесконечен, хотя сетевые администраторы могут назначить более раннюю дату отсечения и меньший срок аренды, если необходимо.

Клиенты BOOTP могут обслуживаться и в стандартном режиме. В этом случае для каждого клиента BOOTP в файле dhcpd.conf назначается постоянный адрес.

Чтобы изменения, сделанные в файле dhcpd.conf, вступили в силу, dhcpd должен быть перезагружен. Для перезапуска dhcpd, отправьте SIGTERM (сигнал 15) процессу, идентификатор которого находится в файле RUNDIR/dhcpd.pid. Поскольку база данных сервера DHCP не такая маленькая, как база данных BOOTP, dhcpd автоматически не перезапускается при обнаружении изменений в файле dhcpd.conf.

Примечание: мы получили массу недовольных отзывов об этом поведении. Мы понимаем, что будет удобно, когда посылается сигнал SIGHUP серверу и база данных перечитывается. Технически это не невозможно, но потребует большого объема работы, а наши ресурсы сильно ограничены и будет лучше, если они будут потрачены на что-то другое. Поэтому, пожалуйста, не жалуйтесь на это в списке рассылки, если у вас нет для реализации этой возможности финансов или умения.

## КОМАНДНАЯ СТРОКА
Имена сетевых интерфейсов, на которых dhcpd должен слушать широковещательные запросы, могут быть указаны в командной строке. Это должно быть сделано на системах, где dhcpd не может определить нешироковещательные интерфейсы, но не требуется на других системах. Если в командной строке не указаны имена интерфейсов, dhcpd будет слушать на всех интерфейсах, поддерживающих широковещательные запросы.

Для изменения стандартного порта для прослушивания (порт 67), используйте опцию -p . После нее должен быть указан номер порта UDP. Это очень полезно для отладки.

Для запуска dhcpd как обычного процесса вместо запуска его как демона в фоновом процессе, укажите опцию -f . Это полезно при запуске dhcpd в отладчике или запуске на системах System V.

Для вывода сообщений dhcpd на стандартный поток ошибок укажите опцию -d . Это полезно для отладки и в случае, когда работа syslogd ненадёжна или невозможна. Обычно, dhcpd выводит все сообщения через функцию syslog(3) с установленной службой LOG_DAEMON. При указании -d автоматически применяется -f (демон на запускается в фоновом режиме).

Dhcpd может читать другой файл конфигурации, указанный после опции -cf , альтернативный файл назначенных адресов, указанный после -lf , или альтернативный файл с идентификатором процесса, указанный после -pf . Поскольку важно использовать одну базу назначенных адресов все время для работающего dhcpd, эти опции должны быть использованы только для тестирования файлов назначенных адресов или файлов баз данных не в реально работающей среде.

При запуске dhcpd из скриптов запуска системы (например, /etc/rc), нежелательно выводить полный текст об авторских правах при запуске. Для того, чтобы подавить вывод этой информации, укажите опцию -q .

Сервер DHCP читает два файла при запуске: файл конфигурации и базу назначенных адресов. Если указана опция -t , сервер только проверит правильность синтаксиса файла конфигурации, но не будет осуществлять никаких операций с сетью. Это может быть использовано для проверки новых файлов конфигурации перед их реальным использованием.

Опция -T используется для проверки синтаксиса файла назначенных адресов таким же способом.

Опции -tf и -play позволяют указать файл, в который заносятся или считываются полное состояние сервера и всех транзакций. Это может быть полезно для сообщений об ошибках: если вы часто получаете сбой программы, запустите сервер с опцией -tf и файл трассировки будет содержать все транзакции, которые привели к сбою, и проблема может быть легко локализована при отладке с опцией -play.

Опция -play должна быть указана с альтернативным файлом назначенных адресов после опции -lf для того, чтобы тестовые данные не переписали реальные. Сервер DHCP не сможет функционировать в этом режиме воспроизведения, если вы не укажите альтернативный файл выданных адресов.

## КОНФИГУРАЦИЯ
Синтаксис файла dhcpd.conf(5) обсуждается отдельно. В этом разделе лается краткий обзор процесса конфигурации, а полную справочную информацию вы можете найти в документации по dhcpd.conf(5).

## Подсети
dhcpd необходимо знать номера и маски подсетей для предоставления сервиса. Кроме того, для динамического назначения адресов вы должны указать один или более диапазонов адресов для каждой подсети, которые будут назначаться клиентам во время их загрузки. Очень простая конфигурация предоставления DHCP может выглядеть следующим образом:

```
	subnet 239.252.197.0 netmask 255.255.255.0 {
	  range 239.252.197.10 239.252.197.250;
	}
```

Несколько диапазонов свободных адресов указываются так:

```
	subnet 239.252.197.0 netmask 255.255.255.0 {
	  range 239.252.197.10 239.252.197.107;
	  range 239.252.197.113 239.252.197.250;
	}
```

Если работа подсети обеспечивается только службой BOOTP и не используется динамическое назначение адресов, указывается раздел subnet, но без диапазонов (range).

## Срок аренды
Срок аренды DHCP может быть назначен от нуля секунд до бесконечности. Срок аренды зависит от подсети или типа хостов.

Например, в офисе, где время от времени (но не так часто) появляются и исчезают компьютеры, можно установить срок от месяца и больше. В производственном отделе, где проходит окончательное тестирование компьютерной техники, не смысла назначать срок более 30 минут - достаточного времени для прохождения теста работы с сетью.

Возможно указать два срока аренды: срок по умолчанию для клиентов, которые не запрашивают определенный срок аренды и максимальный срок аренды. Это

```
	subnet 239.252.197.0 netmask 255.255.255.0 {
	  range 239.252.197.10 239.252.197.107;
	  default-lease-time 600;
	  max-lease-time 7200;
	}
```

Для этой подсети устанавливается срок аренды по умолчанию 600 секунд (10 минут) и максимальный срок аренды 7200 секунд (два часа). Другие употребимые значения: 86400 (один день), 604800 (одна неделя) и 2592000 (30 дней).

Для разных подсетей, обслуживаемых одним сервером DHCP, могут быть указаны совершенно различные сроки аренды (как в случае с офисом и производственным отделом).

## Поддержка BOOTP
Каждый клиент BOOTP может быть настроен отдельно в файле dhcpd.conf. Самая простая конфигурация состоит из адреса сетевой карты и IP адреса, назначаемого этому клиенту. Если клиент должен быть загружен с сервера, указывается загрузочный образ. Простая конфигурация для клиента BOOTP может выглядеть так:

```
	host haagen {
	  hardware ethernet 08:00:2b:4c:59:23;
	  fixed-address 239.252.197.9;
	  filename "/tftpboot/haagen.boot";
	}
```

## Опции
DHCP (а также BOOTP с расширениями от производителя ) поддерживает механизм предоставления информации о том, как настроить сетевой интерфейс (например, маску подсети), и как получить доступ к различным сетевым службам (например, DNS, шлюзу и т.п.).

Эти опции указываются для подсети или для клиентов BOOTP - для каждого клиента. В случае, если опции указаны и для отдельного клиента и для подсети, в которую он входит, предпочтение отдается опциям, указанным для клиента. Более полная конфигурация DHCP может иметь вид:

```
	subnet 239.252.197.0 netmask 255.255.255.0 {
	  range 239.252.197.10 239.252.197.250;
	  default-lease-time 600 max-lease-time 7200;
	  option subnet-mask 255.255.255.0;
	  option broadcast-address 239.252.197.255;
	  option routers 239.252.197.1;
	  option domain-name-servers 239.252.197.2, 239.252.197.3;
	  option domain-name "isc.org";
	}
```

Хост bootp в этой подсети должен быть в другом домене и использовать другой сервер DNS:

```
	host haagen {
	  hardware ethernet 08:00:2b:4c:59:23;
	  fixed-address 239.252.197.9;
	  filename "/tftpboot/haagen.boot";
	  option domain-name-servers 192.5.5.1;
	  option domain-name "vix.com";
	}
```

Полное описание синтаксиса файла dhcpd.conf дано в dhcpd.conf(5).

## OMAPI
Сервер DHCP поддерживает возможность изменять некоторые параметры во время работы без остановки, изменения файлов конфигурации и перезапуска сервера. Эта возможность реализуется через OMAPI - API для управления удаленными объектами. Клиенты OMAPI подключаются к серверу по TCP/IP, проходят аутентификацию и могут просматривать текущее состояние сервера и делать изменения в его параметрах.

Пользовательские программы вместо использования протокола OMAPI напрямую предпочитают использовать API dhcpctl или OMAPI. Dhcpctl - программа-обертка, которая поддерживает некоторые действия, автоматизирующие работу с OMAPI. Dhcpctl и OMAPI описаны в dhcpctl(3) и omapi(3).

OMAPI экспортирует объекты, которые могут быть просмотрены или изменены. Сервер DHCP экспортирует следующие объекты: lease, host, failover-state и group. Каждый объект методы работы с ним: lookup, create и destroy. Кроме того, можно просматривать атрибуты этого объекта и в некоторых случаях изменить их.

## ОБЪЕКТ LEASE
Объекты аренды не могут быть созданы и уничтожены, но можно осуществить поиск по ним и изменение их состояния.

Объекты аренды имеют следующие атрибуты:

state integer поиск, просмотр

```
1 = свободен
2 = активен
3 = устарел
4 = возвращен
5 = заброшен
6 = сброшен
7 = резервная копия
8 = зарезервирован
9 = bootp
```

ip-address data поиск, просмотр

выдаваемый IP адрес.

dhcp-client-identifier data поиск, просмотр, изменение

идентификатор клиента, который используется при запросе IP адреса. Не все клиенты отправляют эту информацию, поэтому атрибут может быть пуст.

client-hostname data просмотр, изменение

значение, которое клиент указал в опции host-name.

host handle просмотр

хост, связанный с этим адресом, если есть.

subnet handle просмотр

объект подсети (subnet), связанный с этим адресом (в настоящее время объект подсети не поддерживается).

pool handle просмотр

объект очереди (pool), связанный с этим адресом (в настоящее время объект очереди не поддерживается).

billing-class handle просмотр

указатель на класс, который учитывает трафик по этому адресу (в настоящее время объект класса не поддерживается).

hardware-address data просмотр, изменение

аппаратный адрес (chaddr), отправляемый клиентом при получении адреса.

hardware-type integer просмотр, изменение

тип сетевого интерфейса, по которому клиент получает IP адрес.

ends time просмотр

время окончания аренды адреса для клиента.

tstp time просмотр

время окончания аренды адреса для сервера.

tsfp time просмотр скорректированное время окончания аренды для связки резервирования.

atsfp time просмотр действительное значение tsfp отправляемое в второму серверу.

cltt time просмотр

время последней связи с клиентом по аренде этого адреса.

## ОБЪЕКТ HOST
Объекты хостов могут быть созданы, уничтожены, найдены, просмотрены и изменены. Если объект хоста создан или уничтожен через OMAPI, эти изменения будут записаны в файл dhcpd.leases. Допустимо также удалять определения хостов, заданных в файле dhcpd.conf.

Объекты хостов имеют следующие атрибуты:

name data поиск, просмотр, изменение

имя определения хоста. Оно должно быть уникальным среди всех определений хостов.

group handle просмотр, изменение

именованная группа, связанная с этим определением хоста, если есть.

hardware-address data поиск, просмотр, изменение

аппаратный адрес, который используется для проверки соответствия клиента хосту. Используется, если также указан атрибут hardware-type.

hardware-type integer поиск, просмотр, изменение

тип сетевого интерфейса, который используется для проверки соответствия клиента хосту. Используется, если также указан атрибут hardware-address.

dhcp-client-identifier data поиск, просмотр, изменение

Опция dhcp-client-identifier соответствия клиента хосту, если есть.

ip-address data просмотр, изменение

фиксированный IP адрес, зарезервированный за клиентом DHCP, который соответствует хосту. IP адрес назначается клиенту только если этот адресам принадлежит сегменту сети, к которой подключен клиент.

statements data изменение

список условий в формате dhcpd.conf, которые должны выполнены, когда получено сообщение от клиента.

known integer просмотр, изменение

если значение не равно нулю, показывает, что клиент соответствует хосту и помечен как известный в списке очереди разрешений. Если значение равно нулю, клиент признается неизвестным.

## ОБЪЕКТ GROUP
Объекты именованных групп могут быть созданы, уничтожены, найдены, просмотрены и изменены. Если объект группы создан или уничтожен через OMAPI, эти изменения будут записаны в файл dhcpd.leases. Допустимо также удалять определения групп, заданных в файле dhcpd.conf.

Именованные группы пока могут быть только привязаны к хостам - это позволяет задавать одинаковые условия сразу для нескольких хостов.

Объекты групп имеют следующие атрибуты:

name data

имя группы. Все группы, создаваемые через OMAPI должны иметь уникальные среди других групп имена.

statements data

список условий в формате dhcpd.conf, которые назначаются хостам, привязанным к этой группе.

## ОБЪЕКТ CONTROL
Объект контроля позволяет управлять завершением работы сервера. Если сервер настроен на синхронизацию со вторым сервером DHCP, это действие обеспечивает правильное выключение сервера, уведомление резервного сервера о том, что сервер недоступен и занесение данных для восстановления в файл назначенных адресов (для того, чтобы после перезапуска сервера он автоматически синхронизировался со вторым сервером.

При выключении сервера также корректно завершаются все соединения OMAPI. Если соединение не может быть корректно завершено в течение 5 секунд, они закрываются принудительно, поэтому с момента начала выключения сервера до реального выхода из программы проходит более 25 секунд.

Для выключения сервера, откройте объект контроля и установите атрибута state в 2.

## ОБЪЕКТ СОСТОЯНИЯ РЕЗЕРВИРОВАНИЯ
Объект failover-state отслеживает состояние протокола резервирования (failover). Объект failover имеет следующие атрибуты (в dhcpd.conf (5) находятся разъяснения о том, что эти атрибуты означают:

name data просмотр

имя связи резервирования, задается в файле dhcpd.conf.

partner-address data просмотр

IP адрес резервного сервера.

local-address data просмотр

IP адрес текущего сервера.

partner-port data просмотр

порт TCP, на котором резервный сервер ожидает подключения по протоколу failover.

local-port data просмотр

порт TCP, на котором текущий сервер ожидает подключения по протоколу failover.

max-outstanding-updates integer просмотр

количество обновлений, которые могли быть важными, но остались без ответа в этой связке резервирования.

mclt integer просмотр

максимальное время перенаправления клиента в этой связке резервирования.

load-balance-max-secs integer просмотр

максимальное значение в поле secs запроса клиента после которого будет произведена балансировка нагрузки.

load-balance-hba data просмотр

массив хэшей буферов для балансировки нагрузки в этой связке резервирования.

local-state integer просмотр, изменение

текущий статус сервера DHCP в этой связке резервирования. Возможные значения:

```
1  - партнер выключен
2  - обычная работа
3  - обмен данными прерван
4  - разрешение прервано
5  - потенциальный конфликт
6  - восстановление
7  - восстановление закончено
8  - выключение
9  - пауза
10 - запуск
11 - идет восстановление
```

В общем случае делать изменения в этом атрибуте - плохая идея. Однако в случае, когда известно, что резервный сервер выключен, бывает необходимо явно указать что резервный сервер недоступен и необходимо взять на себя выданные адреса резервного сервера как можно быстрее. Если же вы указали, что резервный сервер выключен, а он работает (но временно недоступен), возможны конфликты назначения IP адресов.

partner-state integer просмотр

текущий статус резервного сервера

local-stos integer просмотр

время, в течение которого сервер работает в текущем статусе.

partner-stos integer просмотр

время, в течение которого резервный сервер работает в текущем статусе.

hierarchy integer просмотр

роль сервера: первичный (0) или вторичный (1) в текущей связке резервирования.

last-packet-sent integer просмотр

время последнего пакета синхронизации, отправленного резервному серверу в связке.

last-timestamp-received integer просмотр

время последнего пакета синхронизации, полученного от резервного сервера в связке.

skew integer просмотр

разница между часами резервного и текущего сервера

max-response-delay integer просмотр

время в секундах, по истечении которого если не получен ни один пакет синхронизации, определяется разрыв в соединении.

cur-unacked-updates integer просмотр

количество сообщений об обновлении, полученных от резервного сервера, но пока не обработанных.

## ФАЙЛЫ
ETCDIR/dhcpd.conf, DBDIR/dhcpd.leases, RUNDIR/dhcpd.pid, DBDIR/dhcpd.leases~.

## СМ. ТАКЖЕ
dhclient(8), dhcrelay(8), dhcpd.conf(5), dhcpd.leases(5)

## АВТОР
dhcpd(8) изначально написан Тедом Лемоном (Ted Lemon) по контракту с Vixie Labs. Финансирование этого проекта предоставлено Internet Systems Consortium. Версия 3 сервера DHCP финансируется Nominum, Inc. Информация об Internet Systems Consortium доступна по адресу http://www.isc.org/. Информация о Nominum может быть найдена на http://www.nominum.com/.

## ПЕРЕВОД
Андрей Черепанов <cas@altlinux.ru> 2007.

branch: sisyphus


dmesg

title: dmesg(8)

text:
# dmesg(8)

## НАЗВАНИЕ
dmesg - выводит сообщения ядра при начальной загрузке Linux или настраивает их буфер

## СИНТАКСИС
dmesg [ -c ] [ -n уровень ] [ -s размбуфера ]

## ОПИСАНИЕ
dmesg используется для просмотра и настройки уровня выходных сообщений, которые появляются в процессе начальной загрузки ядра Linux и хранятся в кольцевом буфере. Это полезная команда может помочь пользователю увидеть, как Linux распознавал устройства во время начальной загрузки и получить диагностическую информацию, которую выводили драйвера. Эту информацию можно использовать для устранения проблем в работе некоторых устройств. В данном случае вместо копирования с экрана сообщений в ручную, пользователю нужно всего лишь вызвать команду:

dmesg > boot.messages

и отправить по электронной почте получившийся файл boot.messages тому, кто сможет разобраться и решить возникшую проблему (например, в тематический форум или список рассылки). H ОПЦИИ -c

Очистить содержимое буфера сообщений ядра после вывода.

-s размбуфера

Использовать для буфера сообщений ядра, буфер размером размбуфера. По умолчанию его размер 16392 байт. (Изначально стандартный буфер системного журнала (syslog) был 4096 байт, затем, начиная с ядра 1.3.54 - 8192 байт, а с ядра 2.1.113 - 16384 байт.) Если вы установили больший размер буфера сообщений ядра, чем определённый по умолчанию, то эту опцию можно использовать для просмотра всего буфера.

-n уровень

Установить уровень, на котором сообщения системного журнала будут выводиться на консоль. Например, -n 1 предотвращает вывод на консоль всех сообщений, за исключением явно тревожных. Несмотря на это, сообщения всех уровней будут записываться в /proc/kmsg, так что, сервисом syslogd(8) всё ещё можно будет контролировать источник появления сообщения ядра. Когда используется опция -n, dmesg не будет выводить или очищать кольцевой буфер сообщений ядра. При использовании обоих опций, только последняя опция командной строки будет иметь эффект.

## СМ. ТАКЖЕ
syslogd(8)

## АВТОР
Theodore Ts'o (tytso@athena.mit.edu)

## ПЕРЕВОД
Василий Коломеец (Vasily Kolomeets) <boojuman@gmail.com>


etcnet

title: etcnet(8)

text:
# etcnet(8)

## ИМЯ
/etc/net - базовая и расширенная конфигурация сети в Linux

## СИНТАКСИС
ifup <interface>

ifdown <interface>

service network <start|stop|restart|reload...>

## ОПИСАНИЕ
/etc/net - это система конфигурации сети. Она является одновременно простой в применении для новичка и действенной для эксперта. В первую очередь следует описать настройки и интерфейсы вашей сети в конфигурационных файлах. Однажды сделав это, вы сможете контролировать состояние вашего хоста с помощью трех скриптов: ifup, ifdown, network.init.

## КОНФИГУРАЦИЯ СИСТЕМЫ
/etc/net поставляется с конфигурацией по умолчанию, которая подходит для большинства случаев. Более того, дистрибутивы Linux могут подстроить установки по умолчанию, но существуют вещи, которые можете настроить только вы. /etc/net сохраняет свою конфигурацию в файлах, большая часть которых постоянно хранится в каталоге /etc/net.

/etc/net/options.d

В этом каталоге по умолчанию хранится файл 00-default. Там же могут находиться и другие файлы, они будут читаться в алфавитном порядке.

/etc/net/sysctl.conf

файл запуска системных вызовов

/etc/net/ipv4rule

таблица правил ip ('ip -4 добавляет параметры)

/etc/net/vlantab

Таблица конфигурации VLAN. Если нужно настроить множество простых VLAN интерфейсов, это правильное место. Чтобы узнать подробности, смотрите раздел СИНТАКСИС VLANTAB.

/etc/net/iftab

Таблица назначения интерфейсов факультативна, но иметь ее настоятельно рекомендуется Этот файл используется ifrename. Формат файлов iftab описан в руководстве iftab. Обратите внимание, что /etc/iftab не используется, а данные хранятся в /etc/net/iftab. Это различие позволяет хранить /etc/net-специфичные профили и суффиксы хостов в отдельном каталоге, не создавая дополнительной путаницы в /etc. Кроме того, это оберегает систему от случайной смены имени интерфейса после запуска ifrename.

/etc/net/hosttab

Этот дополнительный файл может быть использован во время МУЛЬТИХОСТОВОЙ КОНФИГУРАЦИИ.

/etc/net/ifup-pre

Если существует и выполним, запускается перед запуском ЛЮБОГО интерфейса, но после того, как он будет создан.

/etc/net/ifup-post

Если существует и выполним, запускается после того, как ЛЮБОЙ интерфейс будет запущен и начнет работу.

/etc/net/ifdown-pre

Если существует и выполним, запускается перед тем, как ЛЮБОЙ интерфейс начнет подготовку к выключению.

/etc/net/ifdown-post

Если существует и выполним, запускается после того, как ЛЮБОЙ интерфейс полностью выключен.

/etc/net/netup-pre

Если существует и выполним, запускается перед началом работы сети.

/etc/net/netup-post

Если существует и выполним, запускается после начала работы сети.

/etc/net/netdown-pre

Если существует и выполним, запускается перед прекращением работы сети.

/etc/net/netdown-post

Если существует и выполним, запускается после прекращения работы сети.

## НАСТРОЙКА ИНТЕРФЕЙСА
Для полной настройки интерфейса следует проделать следующие шаги для каждого интерфейса сети, обнаруженной в Linux:

Создать описательное имя интерфейса и поместить соответствующую строку в /etc/net/iftab. Помните, что приняты некоторые ограничения:

PPP-интерфейсы могут быть названы только pppXXX, TEQL-интерфейсы не должны переименовываться из-за ошибки в коде ядра. Код ядра для Skystar DVB нестабилен вообще.

Создать каталог настройки интерфейса /etc/net/ifaces/<ИМЯ>

Заполнить ее файлами настройки в соответствии с ПРАВИЛАМИ НАСТРОЙКИ ИНТЕРФЕЙСА.

## ГРУППЫ ИНТЕРФЕЙСОВ
Существует 5 групп интерфейсов в модели /etc/net:

virtual (виртуальная)

Самодостаточные интерфейсы, в настоящее время loopback и фиктивные (dummy). Они очень редко требуют другие интерфейсы и не требуют оборудования.

real physical (физическая)

Интерфейсы, связанные с реальным оборудованием: Ethernet, PLIP, адаптерам USB Ethernet и DVB. Вы не можете их создать, если нет оборудования.

hosted physical (производная от физической)

Нечто среднее между физическим и логическим типами. Эта группа включает: VLAN, связки (bonding), мосты и эквалайзеры трафика. Эти интерфейсы не используют непосредственно оборудование, но основаны на одном или более узловом (host) реальном физическом интерфейсе. Если узловой интерфейс отсутствует, эти интерфейсы не могут быть подняты.

independent logical (независимая логически)

Эта группа включает тоннели IP и IPSec. Тоннели не имеют постоянного положения, они больше похожи на виртуальные группы, но иногда они косвенно зависят от интерфейсов более низкого уровня.

dependent logical (зависимая логически)

Эта группа в настоящее время состоит из PPP-интерфейсов, включая PPPoE/PPtP. Хорошо известное их свойство - отключаться по таймауту, так что эта группа имеет больше всех шансов на сбой.

Когда сеть начинает работу, /etc/net помещает интерфейсы в соответствующую группу и обрабатывает группы от виртуальной до зависимой логической. Когда сеть завершает работу, группы обрабатываются в обратном порядке. Такой порядок приводит к меньшему числу ошибок, чем простая обработка каждого интерфейса по порядку. Вам не нужно распределять интерфейсы по группам, это происходит автоматически по типу интерфейса.

## ПРАВИЛА НАСТРОЙКИ ИНТЕРФЕЙСА
Если явно не установлено, каждый файл настройки перечисляет по одному параметру в строке (опции, адреса, маршруты и т.д.). Вам следует создавать файлы для каждой возможности, которое вы хотите использовать. Если файл отсутствует, свойство не будет задано.

options

Главный файл настройки. Этот файл является необходимым. Посмотрите список доступных опций на странице руководства etcnet.

iplink

Список команд 'ip link'. Если вам нужно изменить флаг MTU или PROMISC интерфейса, это то самое место. Если вы хотите иметь указанный MAC-адрес, вы можете поместить в этот файл опцию "address xx:xx:xx:xx:xx:xx". Этот файл не является необходимым.

ipneigh

Список команд 'ip ne' может быть использован для контроля таблицы ARP, например, добавляет статичные записи ARP. Этот файл не является необходимым.

ipv4address

Список адресов IPv4 для текущего интерфейса. Этот файл не является необходимым, но часто используется.

ipv4route

Список IPv4 маршрутов для текущего интерфейса. Этот файл не является необходимым, но часто используется.

ipv4rule

Список правил маршрутов IPv4 для текущего интерфейса. Этот файл понадобится вам только для того, чтобы установить маршруты в многочисленные таблицы правил маршрутизации. Этот файл не является необходимым.

ipv6address

Список адресов IPv6 для текущего интерфейса. Этот файл не является необходимым.

ipv6route

Список маршрутов IPv6 для текущего интерфейса. Этот файл не является необходимым.

iwconfig

Список команд iwconfig. Этот файл необходим только для WiFi WEP.

wpa_supplicant.conf

Файл настройки wpa_supplicant. Этот файл необходим только для WiFi WPA.

brctl

Список команд brctl. Этот файл используется только мостами и не является необходимым.

ethtool

Список команд ethtool. Этот файл используется только для интерфейсов Ethernet и не является необходимым.

ipx_interface

Список параметров 'ipx_interface add'. Этот файл является необходимым для интерфейсов IPX.

sysctl.conf

Список опций sysctl, которые будут запущены после запуска интерфейса. Смотрите ПОДДЕРЖКА SYSCTL. Этот файл необязателен.

resolv.conf

Настройка определения адресов. Этот файл будет скопирован в /etc/resolv.conf после запуска интерфейса. Этот файл необязателен.

ifup-pre

Если существует и выполним, запускается перед тем, как ТЕКУЩИЙ интерфейс поднят, но после того, как он создан.

ifup-post

Если существует и выполним, запускается после того, как ТЕКУЩИЙ интерфейс запущен и работает.

ifdown-pre

Если существует и выполним, запускается перед тем как ТЕКУЩИЙ интерфейс начнет подготовку к завершению.

ifdown-post

Если существует и выполним, запускается после того, как ТЕКУЩИЙ интерфейс полностью завершен.

pppoptions

Этот опциональный файл содержит дополнительные опции pppd для PPP-интерфейсов.

pppinit

Этот опциональный файл содержит скрипт чата (не оболочку) для инициализации модема.

pppconnect

Этот опциональный файл содержит скрипт чата (не оболочку) соединения с удаленным устройством (т.е. набор номера).

pppdisconnect

Этот опциональный файл содержит скрипт чата (не оболочку) для отключения от удаленного устройства (т.е. отбой).

Каталог интерфейса может содержать два специальных подкаталога: 'fw' и 'qos'. Они используются для настройки брандмауэра и QoS соответственно. Смотрите руководство по настройке QoS etcnet-qos(8).

## СПЕЦИАЛЬНЫЕ ИНТЕРФЕЙСЫ
/etc/net поставляется с тремя существующими интерфейсами:

lo

Необходим для сетевой подсистемы Linux. Этот интерфейс настроен, подходит в большинстве случаев.

default

В действительности это не интерфейс, а шаблон интерфейса. Интерфейс 'default' формирует исходный набор опций для всех интерфейсов и не принадлежит ни к какой группе интерфейсов. Этот интерфейс позволяет помещать файлы дополнительных опций в директорию: options-<TYPE>. Этот опциональный файл имеет действие ТОЛЬКО для 'default' интерфейса, это позволяет подменять опции по умолчанию опциями, специфичными для типа. Не рекомендуется менять опции интерфейса 'default'. Каждый интерфейс может переназначать значения опций по умолчанию.

unknown

Это специальный интерфейс, который используется каждый раз, когда /etc/net не может подобрать подходящую конфигурацию, но должен это сделать. Назначение этого интерфейса - помочь сконфигурировать hotplug-интерфейсы, которые еще не настроены

## ПОДДЕРЖКА SYSCTL
/etc/net использует некоторые файлы sysctl.conf для настройки ядра:

/etc/net/sysctl.conf

Вызывается при запуске службы. Не имеет автопрефикса.

/etc/net/ifaces/default/sysctl.conf

Вызывается ifup, не имеет автопрефикса.

/etc/net/ifaces/default/sysctl.conf-$TYPE

Вызывается ifup, с автопрефиксом.

/etc/net/ifaces/XXXXXX/sysctl.conf

Вызывается ifup, с автопрефиксом.

Автопрефикс означает, что если встречается полностью заданная переменная (как в традиционном файле /etc/sysctl.conf), она будет обрабатываться как есть, но для переменных отдельного слова, подобно p_filter, или для продвижения соответствующего префикса ее попробуют найти. Автопрефикс работает только для интерфейса sysctl.conf и зависящего от типа sysctl.conf.

## РЕКУРСИЯ И ЗАВИСИМОСТИ
Некоторые интерфейсы требуют наличия других поднятых интерфейсов для запуска. Некоторые зависимости вычисляются автоматически, но некоторые должны быть настроены вручную. Если для интерфейса A в его файле настроек REQUIRES=B его файле опций, A является дочерним (children), B - родительским (parent). Существует шесть опций для контроля над разрешением зависимостей:

HOST=<interface>

REQUIRES='<interface> [<interface> [<interface>...]]'

IFUP_PARENTS=<boolean>

IFDOWN_PARENTS=<boolean>

IFUP_CHILDREN=<boolean>

IFDOWN_CHILDREN=<boolean>

Эти опции описаны в руководстве etcnet-options(5). ОБРАТИТЕ ВНИМАНИЕ: Интерфейсы из vlantab обходят традиционную логику, они не могут стать причиной запуска/остановки материнского/дочернего интерфейса. Если материнский интерфейс остановлен когда vlantab обрабатывает данные (ONBOOT=no или неверная настройка), все дочерние VLAN-интерфейсы попросту пропускаются.

В большинстве случаев (если не всегда) зависимости задаются опцией REQUIRES.

## СИНТАКСИС VLANTAB
vlantab обеспечивает путь к массовой настройке VLAN-интерфейсов только по одному адресу IPv4 в каждом интерфейсе. Для каждого VLAN-интерфейса вам следует поместить строку:

<host interface> <VLAN ID>

Создает VLAN-интерфейс и автоматически называет его в соответствии со значением опции VLAN_NAMETYPE.

<host-интерфейс> <VLAN ID> <имя VLAN-интерфейса>

Создает VLAN-интерфейс с заданным именем.

<host-интерфейс> <VLAN ID> <имя VLAN-интерфейса> <'ip address' параметры>

Создает VLAN-интерфейс с заданным именем и запускает 'ip address' с заданными параметрами.

## СИНТАКСИС HOSTTAB
Этот файл хранит альтернативные имена хоста. Если имя хоста слишком длинное или неудобное, здесь вы можете определить псевдоним. Этот псевдоним может быть использован для отметки файлов. Одно имя хоста должно быть связано только с одним псевдонимом. Формат файлов:

```
<имя host1><пробел><псевдоним1>
<имя host2><пробел><псевдоним2>
<имя host3><пробел ><псевдоним3>
<имя host4><пробел><псевдоним4>
<имя host5><пробел><псевдоним5>
```

## ИМЕНА ФАЙЛОВ (FIXME)"
Скрипты /etc/net обеспечивают поддержку независимых пространств имен в едином дереве конфигурации. Это достигается с помощью специальных суффиксов, используемых в зависимости от текущих значений профиля и хоста.

## ПРОФИЛИ КОНФИГУРАЦИИ
Профиль - расширенный набор настроек. Например, если ноутбук использует несколько разных сетей, желательно выбрать конфигурацию только по одному параметру. Имя текущего профиля может быть установлено посредством:

1. изменяемый режим NETPROFILE (не очень хорошая идея, я полагаю)

2. файл /etc/net/profile (файл должен содержать только одно слово, например "office" без кавычек)

3. ядро загружает параметр "netprofile", например "LILO: linux netprofile=home"

Установка профиля по умолчанию ничего не делает. Но если скрипты etcnet знают имя текущего профиля (например "home") и ищет файл конфигурации (например, "options") и существует "options#home", тогда "options#home" будет использован вместо "options". То же самое для ipv4address, ipv4route, ipv4rule, ipv6address, iplink и так далее.

Итак, если вы хотите настроить хост для работы в двух разных сетях, вам скорее всего придется создать дополнительный файл ipv4address#имя_вашего_профиля для другого адреса и ipv4route#имя_вашего_профиля для другого маршрута по умолчанию. То же самое для resolv.conf (если необходимо).

Следующий пример: поднятие двух хостов с одного жесткого диска (root fs). То же самое, что и в предыдущем случае, но создаются дополнительные файлы options#имя_вашего_профиля и iftab#имя_вашего_профиля для разных сетевых карт.

Чтобы переключиться между профилями без редактирования /etc/net/profile можно использовать:

\# service etcnet startwith office

\# service etcnet restartwith home

Если скрипт, выполняемый 'selectprofile', существует в каталоге iface, он будет запущен с одним параметром, который определяет текущую стадию конфигурации. Если вы хотите заменить имя текущего профиля во время работы, следует выполнить указанные действия в этом скрипте и вывести имя профиля в стандартный вывод. Так как скрипт будет запущен несколько раз и определение времени работы может занять некоторое время, сообщается, что скрипт выполнит действия только на определенных стадиях. 'selectprofile' будет всегда получать имя запроса скрипта как первый параметр, поэтому вы можете не пытаться обнаружить беспроводное соединение прежде, чем, к примеру, загружен модуль ядра. См. /etc/net/ifaces/default/selectprofile как пример скрипта.

Как и в /etc/net-0.5.3 init_netprofile вызывается только из {ifup,ifdown}.*, {setup,shutdown}-.* и из network.init scripts.

## МУЛЬТИХОСТОВАЯ КОНФИГУРАЦИЯ (MULTIHOST CONFIGURATION) (FIXME)
Вы можете создать отдельное дерево конфигурации и распространять его по различным хостам. Для этого задайте значения переменных среды окружения

NETHOST

Эта переменная может хранить ID хоста в мультихостовой конфигурации, которая должна использоваться вместо автоматически обнаруженной.

NETPROFILE

Эта переменная может сохранить имя профиля конфигурации, которое должно использоваться вместо автоматически обнаруженного.

## ОШИБКИ
Некоторые версии ядра имеют проблемы со многими интерфейсами VLAN.

Интерфейсы teql не могут быть безопасно переименованы.

Интерфейсы VLAN иногда могут быть инициализированы в неправильное состояние.

Некоторые драйверы сети имеют условие (race condition) в интерфейсе кода инициализации, поэтому соответствие по MAC-адресу в iftab не работает.

Интерфейсы ppp могут быть названы только ppp%d.

Интерфейсы SkyStar DVB могут быть названы только dvb*.

DHCP не работает в связке (bonding).

ppp опция 'demand' может навсегда подвесить запуск /etc/net.

CONFIG_IPV6 должен быть включен, чтобы корректно конфигурировать туннель 6-to-4 (TYPE=iptun, TUNTYPE=sit).

Если вы конфигурируете фиктивные (dummy) интерфейсы, никогда не следует использовать имя интерфейса 'dummy0'.

Имя интерфейса соединения не может совпадать с другим именем модуля ядра.

## СМ. ТАКЖЕ
ip(8), tc(8), etcnet-options(5), etcnet-qos(8), etcnet-fw(8), ifrename(8), iftab(5)

## ПЕРЕВОД
Vsevolod Khalizev <vkhalizev@gmail.com> 2007.


etcnet-qos

title: etcnet-qos(8)

text:
# etcnet-qos(8)

## ИМЯ
/etc/net руководство по QoS

## ОПИСАНИЕ
Основные правила:

1. Классы и Q-диски могут содержать друг друга. Обычно класс содержит q-диск или один или более подкласс. Q-диск обычно содержит один или более класс.

2. Содержимое представлено в виде дерева каталогов.

3. Каталог должен содержать один из двух файлов: либо 'class', либо 'qdisc', так, чтобы /etc/net знал тип каждого узла. Файл содержит текущие параметры узла.

4. Дескриптор q-диска - это имя каталога с ':'.

5. Класс classid - это последний q-диск, замеченный в дереве, плюс ':' плюс имя каталога класса.

6. Если текущий каталог содержит файл 'extra', его содержимое будет использоваться при создании дочерних объектов (обычно классов). Это не относится к дочерним объектам в дочерних объектах.

7. Класс dir может содержать файл 'filter' с установками фильтра. Фильтры будут связаны с родительским q-диском и указывать на текущий каталог (класс), вы не должны определять ключевые слова parent и flowid. Если файл 'extra.filter' существует, его содержимое будет ставиться перед каждой строкой файла 'filter'.

## СМ. ТАКЖЕ
Примеры работы с QoS в /etc/net: http://etcnet.org/examples/

tc manpage

google://linux+qos

## ФАЙЛЫ
qos/1 - root qdisc

## ПЕРЕВОД
Vsevolod Khalizev <vkhalizev@gmail.com> 2007.


ethtool

title: ethtool(8)

text:
# ethtool(8)

## НАЗВАНИЕ
ethtool - Отображает или позволяет изменить настройки сетевой карты

## СИНТАКСИС
ethtool ethX

ethtool -h

ethtool -a ethX

ethtool -A ethX [autoneg on|off] [rx on|off] [tx on|off]

ethtool -c ethX

ethtool -C ethX [adaptive-rx on|off] [adaptive-tx on|off] [rx-usecs N] [rx-frames N] [rx-usecs-irq N] [rx-frames-irq N] [tx-usecs N] [tx-frames N] [tx-usecs-irq N] [tx-frames-irq N] [stats-block-usecs N] [pkt-rate-low N] [rx-usecs-low N] [rx-frames-low N] [tx-usecs-low N] [tx-frames-low N] [pkt-rate-high N] [rx-usecs-high N] [rx-frames-high N] [tx-usecs-high N] [tx-frames-high N] [sample-interval N]

ethtool -g ethX

ethtool -G ethX [rx N] [rx-mini N] [rx-jumbo N] [tx N]

ethtool -i ethX

ethtool -d ethX

ethtool -e ethX [raw on|off] [offset N] [length N]

ethtool -k ethX

ethtool -K ethX [rx on|off] [tx on|off] [sg on|off]

ethtool -p ethX [N]

ethtool -r ethX

ethtool -S ethX

ethtool -t ethX [offline|online]

ethtool -s ethX [speed 10|100|1000] [duplex half|full] [port tp|aui|bnc|mii] [autoneg on|off] [phyad N] [xcvr internal|external] [wol p|u|m|b|a|g|s|d...] [sopass xx:yy:zz:aa:bb:cc] [msglvl N]

## ОПИСАНИЕ
ethtool используется для чтения, отображения настроек сетевого устройства и их настройки.

ethX является названием того сетевого устройства, которое настраивают или, для которого определяют характеристики. Обычно X=0,1,2..

## ПАРАМЕТРЫ
При использовании большинства параметров для ethtool должно быть задано то название устройства, по отношению к которому предпринимаются действия. Для визуальной идентификации устройства используйте параметр -p (см.ниже). Например, следующая команда отображает текущие настройки сетевой карты eth0:

\# ethtool eth0

Settings for eth0 (Установки для eth0):

Supported ports: [ TP MII ]

(Поддерживаемые порты)

Supported link modes: 10baseT/Half 10baseT/Full

(Поддерживаемые режимы связи, тип носителя)

100baseT/Half 100baseT/Full

Supports auto-negotiation: Yes

(Поддержка авто-согласования: Да)

Advertised link modes: 10baseT/Half 10baseT/Full

(Оповещаемые режимы связи, тип носителя)

100baseT/Half 100baseT/Full

Advertised auto-negotiation: Yes

(Оповещение авто-согласования: Да)

Speed: 100Mb/s

(Текущая скорость приёма/передачи: 100 Mбит/с)

Duplex: Full

(Режим двухстороннего обмена: Полный)

Port: Twisted Pair

(Подключение: Витая пара)

PHYAD: 1

Transceiver: internal

(Приёмо-передатчик: Внутренний)

Auto-negotiation: on

(Режим авто-согласования: Вкл.)

Supports Wake-on: puag

(Поддержка режимов "пробуждение": puag)

Wake-on: g

(Текущий режим "пробуждение": g)

Link detected: yes

(Обнаружение соединения: да)

--------------

-h

выводит краткую справку о команде и примерах параметров.

-a

запрашивает и отображает настройки параметров ожидания для указанного сетевого устройства. Например:

\# ethtool -a eth0

Pause parameters for eth0:

(Параметры ожидания для eth0)

Autonegotiate: off

(Авто-согласование: выкл.)

RX: off

TX: off

-A

позволяет изменить параметры ожидания для указанного сетевого устройства.

autoneg on|off

Включает (on) или отключает (off) режим авто-согласования (аutonegotiation), если он является доступным. Режим авто-согласования предполагает, что сетевое устройство само определяет присутствует ли двусторонний обмен и сколько мегабит он составляет. Например:

\# ethtool -A eth0 autoneg on

\# ethtool -a eth0

Pause parameters for eth0:

Autonegotiate: on

(Авто-согласование: вкл.)

RX: on

TX: on

rx on|off

Включает (on) или отключает (off) режим ожидания RX, если он является доступным.

tx on|off

Включает (on) или отключает (off) режим ожидания TX, если он является доступным.

-c

запрашивает и отображает настройки объединённых параметров для указанного сетевого устройства.

-C

позволяет изменить настройки объединённых параметров для указанного сетевого устройства.

-g

запрашивает и отображает настройки параметров rx/tx для указанного сетевого устройства. Например:

\# ethtool -g eth0

Ring parameters for eth0:

Pre-set maximums (Максимально возможные):

RX: 1024

RX Mini: 0

RX Jumbo: 0

TX: 1024

Current hardware settings (Текущие аппаратные установки):

RX: 64

RX Mini: 0

RX Jumbo: 0

TX: 64

-G

позволяет изменить настройки rx/tx ring параметров для указанного сетевого устройства.

rx N

позволяет изменить число ring подключений N для Rx ring. Например:

\# ethtool -G eth0 rx 1024

rx-mini N

позволяет изменить число ring подключений N для Rx Mini ring.

rx-jumbo N

позволяет изменить число ring подключений N для Rx Jumbo ring.

tx N

позволяет изменить число ring подключений N для Tx ring.

-i

отображает ассоциированный с указанным сетевым устройством драйвер и его версию. Например:

\# ethtool -i eth0

driver: e100

version: 2.3.38-k1

firmware-version: N/A

bus-info: 02:08.0

-d

получает и отображает дамп состояния регистров для указанного сетевого устройства.

-e

получает и отображает дамп EEPROM (микросхема памяти) для указанного сетевого устройства (если EEPROM есть в данном сетевом устройстве). Если возможен низкоуровневый доступ (raw on), тогда выводятся низкоуровневые данные EEPROM. Указание длины (length) и смещения (offset) в параметрах позволяют получать дампы с определённой порцией данных EEPROM. По умолчанию отображается полный дамп вхождений EEPROM. Например:

\# ethtool -e eth0 raw off offset 30 length 10

Offset Value

-------- -----

30 0x00

31 0x00

32 0x00

33 0x00

34 0x00

35 0x00

36 0x00

37 0x00

38 0x00

39 0x00

-k

запрашивает и отображает информацию по контрольным суммам для указанного сетевого устройства.

-K

позволяет изменить параметры контроля сумм для указанного сетевого устройства.

rx on|off

Настраивает контроль сумм для RX, если эта функция поддерживается сетевым устройством.

tx on|off

Настраивает контроль сумм для TX, если эта функция поддерживается сетевым устройством.

sg on|off

Настраивает режим "произвольной упаковки" (scatter-gather), если он поддерживается сетевым устройством.

-p

позволяет инициировать (пометить) данное сетевое устройство таким образом, чтобы вы смогли наиболее легко, визуально отличить его от таких же других, рядом работающих устройств. Обычно этот параметр включает постоянное мигание одного или нескольких световых LED-индикаторов заданного сетевого устройства. После определения устройства, прервать работу команды # ethtool -p ethX можно нажав <Ctrl+c>.

N

Задаёт для параметра p длительность (в секундах) выполнения мигания. Например, для 30 секунд:

\# ethtool -p eth0 30

-r

перезапуск режима авто-согласования, если он доступен.

-S

запрашивает и отображает для указанного сетевого устройства NIC- и драйвер-специфичную статистику.

-t

с помощью соответствующего сетевому устройству драйвера, выполняет его само-тестирование. Возможные следующие режимы тестирования:

offline|online

, которые определяют тип теста: offline (по умолчанию) означает выполнять полный комплекс тестов и в случае необходимости в течении тестирования прерывать текущие операции адаптера. online означает выполнять сокращенные тесты не прерывая текущие операции адаптера.

-s

параметр позволяет изменить некоторые или все установки для указанного сетевого устройства. Все следующие параметры применяются в том случае, если параметр -s был указан.

speed 10|100|1000

Устанавливает скорость обмена данными в Мбит/сек. Возможные значения скорости, поддерживаемые данным сетевым устройством можно определить, вызвав ethtool ethX.

duplex half|full

Устанавливает полу- или полный режим двусторонней передачи данных.

port tp|aui|bnc|mii

Указывает порт для устройства.

autoneg on|off

Настраивает режим авто-согласования, если он поддерживается данным устройством. Обычно этот режим включен, но в случае возникновения проблем с некоторыми устройствами, вы можете его отключить.

Таким образом, решить проблему перенастройки режима работы сетевого устройства, например, сразу во время загрузки операционной системы можно, создав исполняемый файл-скрипт

/etc/rc.d/rc.local,

содержащий, к примеру, такие настройки:

\#!/bin/sh

/usr/sbin/ethtool -s eth0 speed 10 duplex full autoneg off

----------

phyad N

PHY адрес.

xcvr internal|external

Позволяет задать тип приёмо-передатчика. В настоящее время могут быть указаны только внутренний (internal) и внешний (external) тип. В будущем, с появлением новых типов, они также будут здесь добавлены.

wol p|u|m|b|a|g|s|d...

Устанавливает различные параметры "Пробуждения" (Wake-on-LAN) устройства. Не все устройства поддерживают эту возможность. Аргументом для этого параметра является строка символов, задающая активизируемые функции "Пробуждения":

p

при физической активности

u

при получении unicast сообщения

m

при получении multicast сообщения

b

при получении broadcast сообщения

a

при получении ARP запроса

g

при получении MagicPacket(tm)

s

Активировать SecureOn(tm) пароль для MagicPacket(tm)

d

Отключить все функции "Пробуждения". Этот параметр очищает все предыдущие настройки "Пробуждения".

sopass xx:yy:zz:aa:bb:cc

Устанавливает SecureOn(tm) пароль. Аргумент для этого параметра должен состоять из 6 байт в формате ethernet MAC (xx:yy:zz:aa:bb:cc).

msglvl N

Установка уровня информативности сообщений драйвера. Может быть задан различный уровень для каждого драйвера.

## ОШИБКИ
Не поддерживаются (поддерживаются только некоторые) абсолютно все сетевые устройства.

## АВТОР
ethtool была написана David Miller.

Изменения и улучшения добавлены: Jeff Garzik, Tim Hockin, Jakub Jelinek, Andre Majorel, Eli Kupermann.

## AVAILABILITY
ethtool доступна через Web на сайте SourceForge http://sourceforge.net/projects/gkernel/

## ПЕРЕВОД
оригинального файла на английском ethtool.8.gz (2457 байт от 22.10.2002) (+примеры) выполнен Aleksander N.Gorohovski <angel@feht.dgtu.donetsk.ua> 01.05.2006.


fdformat

title: fdformat(8)

text:
# fdformat(8)

## НАЗВАНИЕ
fdformat - Низкоуровневое форматирование гибкого диска

## СИНТАКСИС
fdformat [ -n ] device

## ОПИСАНИЕ
fdformat выполняет низкоуровневое форматирование гибкого диска. device - это имя дисковода, обычно в качестве имени выступает одно из следующих (для гибких дисков старший номер (major) = 2, а младший номер (minor) показан только для информационных целей):

```
/dev/fd0d360  (minor = 4)
/dev/fd0h1200 (minor = 8)
/dev/fd0D360  (minor = 12)
/dev/fd0H360  (minor = 12)
/dev/fd0D720  (minor = 16)
/dev/fd0H720  (minor = 16)
/dev/fd0h360  (minor = 20)
/dev/fd0h720  (minor = 24)
/dev/fd0H1440 (minor = 28)
/dev/fd1d360  (minor = 5)
/dev/fd1h1200 (minor = 9)
/dev/fd1D360  (minor = 13)
/dev/fd1H360  (minor = 13)
/dev/fd1D720  (minor = 17)
/dev/fd1H720  (minor = 17)
/dev/fd1h360  (minor = 21)
/dev/fd1h720  (minor = 25)
/dev/fd1H1440 (minor = 29)
```

```

```

Для классических дисководов таких, как /dev/fd0 и /dev/fd1, команда fdformat может работать неправильно, если используется нестандартный формат или формат не был ранее автоматически распознан. В этом случае, применяют команду setfdprm(8) для загрузки параметров диска.

## ОПЦИИ
-n

эта опция отменяет выполнение контрольной проверки гибкого диска, которая обычно осуществляется после его форматирования командой fdformat.

## ПРИМЕРЫ
Выполняет форматирование дискеты на ёмкость 1440 кбайт:

fdformat /dev/fd0H1440

## СМ. ТАКЖЕ
fd(4), setfdprm(8), mkfs(8), emkfs(8)

## АВТОР
Werner Almesberger (almesber@nessie.cs.id.ethz.ch)

## ПЕРЕВОД
оригинального файла на английском fdformat.8.gz (736 байт от 09.07.1999) выполнен Aleksander N.Gorohovski <angel@feht.dgtu.donetsk.ua> 08.09.2005.

## РЕЦЕНЗИЯ ПЕРЕВОДА
Vitaly Lipatov <lav@altlinux.ru>


fstyp

title: fstyp(8)

summary: определение файловой системы

text:
# fstyp(8)

## НАЗВАНИЕ
fstyp - определение файловой системы

## СИНТАКСИС
fstyp устройство

fstyp [-hV]

## ОПИСАНИЕ
Команда fstyp пытается угадать тип файловой системы на указанном устройстве.

Если тип файловой системы успешно определён, её название выводится на stdout и возвращается 0.

Если не находится суперблок известной файловой системы, fstyp выводит пустую строку и возвращает ненулевое значение.

fstyp часто используется в скриптах создания архивных копий для выбора команд dump и restore соответствующих типу файловой системы.

Так как fstyp использует эвристические методы для определения типа файловой системы нет гарантии корректных результатов.

Алгоритм используемый в fstyp тот же самый, что и в команде mount(8)

## ОПЦИИ
-V Вывести версию и выйти.

-h Вывести подсказку и выйти.

## ФАЙЛЫ
/proc/filesystems - список поддерживаемых файловых систем.

## СМ. ТАКЖЕ
umount(2), mount(8), dump(8), restore(8)

## ПЕРЕВОД
Денис Смирнов <mithraen@altlinux.ru>


ftpd-BSD

title: ftpd-BSD(8)

text:
# ftpd-BSD(8)

## НАЗВАНИЕ
ftpd — Сервер Internet File Transfer Protocol

## СИНТАКСИС
ftpd [-AdDhlMPSU] [-T maxtimeout] [-t timeout] [-u mask]

## ОПИСАНИЕ
Ftpd - это серверный процесс Internet File Transfer Protocol'а. Сервер использует протокол TCP и слушает порт, определённый спецификацией сервиса “ftp” ; смотри services(5).

Доступные опции:

-A

Разрешает только анонимные ftp соединения или бюджеты, перечисленные в /etc/ftpchroot. Другие попытки соединения будут отвергнуты.

-d

Информация отладки записывается в syslog с помощью LOG_FTP.

-D

Если указан этот параметр, то ftpd отделится от командной оболочки и станет демоном, принимая соединения на порту FTP и создавая наследующие процессы (child processes) для управления этими соединениями. Такой запуск создает меньшую нагрузку, чем запуск ftpd из inetd(8) и, следовательно, полезен на загруженных серверах для уменьшения нагрузки.

-h

Для пассивных соединений сервер будет использовать порты данных в верхнем диапазоне портов. Этот диапазон определяется в <netinet/in.h> переменными IPPORT_HIFIRSTAUTO и IPPORT_HILASTAUTO. В OpenBSD они установлены как 49152 и 65535 соответственно.

-l

Каждая успешная и прерванная ftp(1) сессия регистрируется с помощью syslog посредством LOG_FTP. Если этот параметр указан дважды, то также будут регистрироваться операции копирования, записи, добавления, удаления, создания каталога, удаления каталога и переименования вместе со своими аргументами - именами файлов.

-M

Разрешен режим multihomed (много домашних каталогов). Вместо простого использования ~ftp для анонимных передач, используется каталог, соответствующий полностью заданному имени IP-адреса, к которому подключился клиент, и расположенный внутри ~ftp.

-p

Запретить ftp-соединения в пассивном режиме. Полезно, если вы находитесь за межсетевым экраном, который отвергает соединения на порты с произвольно высокими номерами. Многие ftp-клиенты пытаются соединиться с сервером сначала в пассивном режиме и не всегда корректно, что заставляет сервер отвергать соединения на порт к которому он просил клиента подключиться.

-P

Разрешает недопустимые номера портов или адреса для команды PORT, инициализирующей соединения. По умолчанию ftpd(8) нарушает RFC и, таким образом, выдает команду PORT на незарезервированные порты и требует, чтобы он использовал тот же адрес источника, с которого поступило соединение. Это предотвращает "FTP bounce attack" против сервисов на обеих машинах.

-S

При использовании данного параметра ftpd регистрирует все анонимные скачивания в файле /var/log/ftpd, если этот файл существует.

-U

Каждая конкурирующая ftp(1) сессия регистрируется в файле /var/run/utmp, позволяя увидеть их такой команде как who(1).

-T maxtimeout

Клиент также может требовать разные периоды таймаута; опцией -T можно установить максимально разрешенный период длительностью maxtimeout секунд. По умолчанию ограничение - 2 часа.

-t timeout

Длительность таймаута неактивности установить в timeout секунд (по умолчанию - 15 минут).

-u mask

Установить umask равную mask вместо 027 по умолчанию. Кроме этого, запрещается chmod.

Для запрета ftp-доступа можно использовать файл /etc/nologin. Если файл существует, ftpd выводит его и выходит. Если существует файл /etc/ftpwelcome, то ftpd печатает его перед выводом сообщения “ready”. Если существует файл /etc/motd, то ftpd печатает его после успешной регистрации. Если в каталоге существует файл .message, то ftpd выводит его при входе в каталог.

В настоящее время ftp-сервер поддерживает следующие ftp-запросы. Регистр запросов игнорируется.

Запрос

Описание

ABOR

прервать предыдущую команду

ACCT

задать бюджет пользователя (игнорируется)

ALLO

разместить хранилище - allocate storage (бессмысленно)

APPE

добавить в файл

CDUP

перейти в каталог верхнего уровня

CWD

сменить рабочий каталог

DELE

удалить файл

HELP

вывод справочной информации

LIST

получить список файлов в каталоге (“ls -lgA”)

MKD

создать каталог

MDTM

показать время последней модификации файла

MODE

определить тип пересылки данных mode

NLST

получить список имен файлов в каталоге

NOOP

ничего не делать

PASS

указать пароль

PASV

приготовиться к пересылке сервер-серверу

PORT

задать порт подключения данных

PWD

сообщить текущий рабочий каталог

QUIT

прервать сессию

REST

продолжить незавершенную пересылку

RETR

принять файл

RMD

удалить каталог

RNFR

указать имя файла rename-from

RNTO

указать имя файла rename-to

SITE

нестандартные команды (см. следующий раздел)

SIZE

вернуть размер файла

STAT

вернуть статус сервера

STOR

сохранить файл

STOU

сохранить файл с уникальным именем

STRU

определить тип пересылки данных structure

SYST

сообщить тип операционной системы сервера

TYPE

определить тип пересылаемых данных type

USER

указать имя пользователя

XCUP

перейти в каталог верхнего уровня (deprecated)

XCWD

сменить рабочий каталог (deprecated)

XMKD

создать каталог (deprecated)

XPWD

сообщить текущий рабочий каталог (deprecated)

XRMD

удалить каталог (deprecated)

Следующие нестандартные или UNIX-вые команды поддерживаются запросом SITE.

Запрос

Описание

UMASK

сменить, напр., ``SITE UMASK 002''

IDLE

установить idle-timer, напр., ``SITE IDLE 60''

CHMOD

сменить mode файла, напр., ``SITE CHMOD 755 filename''

HELP

получить справочную информацию.

Остальные ftp-запросы, определенные в Internet RFC 959, распознаются, но не реализованы. MDTM и SIZE в RFC 959 не определены, но появятся в следующих обновлениях FTP RFC.

Ftp-сервер прервет активную передачу файла только если перед командой ABOR в командном потоке Telnet будет переданы сигналы Telnet "Interrupt Process" (IP) и Telnet "Synch", как описано в Internet RFC 959. Если во время передачи данных после Telnet IP и Synch получена команда STAT, будет возвращен статус передачи.

Ftpd интерпретирует имена файлов в соответствии с соглашениями “globbing”, используемыми csh(1). Это позволяет пользователям использовать метасимволы “*?[]{}~”.

Ftpd аутентифицирует пользователей в соответствии с пятью правилами.

- Регистрационное имя должно быть в базе данных паролей, /etc/pwd.db, и не должно иметь нулевой пароль. В этом случае пароль должен быть указан клиентом до того, как могут быть выполненые любые файловые операции. Если у пользователя имеется ключ S/Key, то ответ успешной команды USER будет содержать вызов S/Key. Клиент может в команде PASS ответить либо стандартным паролем, либо одноразовым паролем S/Key. Сервер автоматически определит тип полученного пароля и выполнит соответствующую аутентификацию. Подробнее по S/Key аутентификации смотрите в skey(1) S/Key является торговой маркой Bellcore.

- Регистрационное имя не должно быть указано в файле /etc/ftpusers.

- Пользователь должен иметь стандартный shell, возвращаемый getusershell(3).

- Если имя пользователя указано в файле /etc/ftpchroot, то корень сессии будет переключен в каталог пользователя с помощью chroot(2), как для бюджета пользователя “anonymous” или “ftp” (см. следующую тему). Однако пользователь все-равно должен ввести пароль. Эта особенность предназначена как компромис между полностью анонимным и полностью привилегированным бюджетами. Бюджет пользователя должен быть настроен также, как для анонимного пользователя.

- Если имя пользователя - “anonymous” или “ftp”, то в файле паролей должен присутствовать бюджет анонимного ftp (пользователь “ftp”). В этом случае регистрация пользователя разрешена при указании любого пароля (по традиции в качестве пароля должен указываться email-адрес пользователя).

В последнем случае ftpd предпринимает специальные действия для ограничения доступа клиенту. Сервер выполняет chroot(2) в домашний каталог пользователя “ftp”. Для того, чтобы система не была взломана, рекомендуется тщательно разрабатывать поддерево “ftp”, следуя таким правилам:

~ftp

Установите владельцем домашнего каталога “root” и сделайте недоступным на запись для всех (mode 555).

~ftp/bin

Установите владельцем этого каталога “root” и сделайте недоступным на запись для всех (mode 511). Этот каталог не обязательный, если у вас нет команд, которые мог бы выполнить анонимный ftp пользователь (команда ls(1) является встроенной). Все программы в этом каталоге должны иметь mode 111 (только выполнение).

~ftp/etc

Установите владельцем этого каталога “root” и сделайте недоступным на запись для всех (mode 511). Файлы pwd.db (смотрите pwd_mkdb(8)) и group(5) должны присутствовать, чтобы команда ls могла выводить имена владельцем, а не номера. Поле пароля в pwd.db не используется и не должно содержать реальных паролей. При наличии файла motd, он будет распечатываться после успешной регистрации. Эти файлы должны иметь mode 444.

~ftp/pub

Установите для этого каталога mode 555 и владельца “root”. Это традиционное место, где хранятся файлы, публично доступные для копирования.

Если регистрация в файл /var/log/ftpd разрешена, информация будет записана в следующем виде:

time

Время и дата получения файлов в формате ctime(3).

elapsed time

Время копирования, в секундах.

remote host

Удаленная машина (или IP-адрес).

bytes

Количество переданных байт.

path

Полный путь (относительно ftp chroot каталога) переданного файла.

type

Тип передачи - либо “a” для ASCII, либо “b” для binary.

unused

Неиспользуемое поле, содержащее для совместимости “*”.

unused

Неиспользуемое поле, содержащее для совместимости “o”.

user type

Тип пользователя - либо “a” для anonymous, либо “r” для реального пользователя (всегда должен быть анонимным).

name

Либо регистрационное имя системы, либо значение “email address”, если пользователь анонимный.

unused

Неиспользуемое поле, содержащее для совместимости “0”,

real name

Регистрационное имя в системе, если соединение не анонимное или “*”, если анонимное.

virtual host

Виртуальная машина, с которой было выполнено соединение.

Хотя имеются поля для регистрационной информации реальных пользователей, этот файл используется только для анонимных сеансов передачи. Неиспользуемые поля существуют только для совместимости с другими ftpd реализациями.

## ФАЙЛЫ
/etc/ftpusers

Список нежелательных/запрещенных пользователей.

/etc/ftpchroot

Список обычных пользователей, для которых нужно выполнить chroot.

/etc/ftpwelcome

Приветствие.

/etc/motd

Приветствие после регистрации.

/etc/nologin

Наличие этого файла влечёт за собою отказ в доступе с одновременной распечаткой его содержимого.

/var/run/utmp

Список пользователей в системе.

/var/run/ftpd.pid

Id процесса, если запущен в режиме демона.

/var/log/ftpd

Файл журнала регистрации событий для анонимных пользователей.

## СМОТРИТЕ ТАКЖЕ
ftp(1), skey(1), who(1), getusershell(3), syslogd(8)

## ОШИБКИ
Для создания подключений с привилегированными номерами портов сервер должен выполняться от имени суперпользователя. Он устанавливает действующий ID зарегистрированного пользователя, возвращаясь в режим суперпользователя только для привязки адресов к доменным подключениям. Возможные прорехи в безопасности были очень тщательно изучены, но, возможно, не полностью.

## ИСТОРИЯ
Команда ftpd появилась в 4.2BSD.

## ПРАВА
Copyright (c) 1985, 1988, 1991, 1993

The Regents of the University of California. All rights reserved.

Перевод - Александр Саввин, savvin@mail.ru, (c) 2001


hotplug

title: hotplug(8)

summary: Скрипты поддержки горячего подключения в Linux

text:
# hotplug(8)

## НАЗВАНИЕ
hotplug - Скрипты поддержки "горячего" подключения в Linux

## ФОРМАТ
hotplug [ help | --help | NAME ]

/etc/init.d/hotplug [start|stop|status|restart]

## ОПИСАНИЕ
Программа hotplug используется ядром для оповещения программ user mode о наступлении определённых важных событиях (обычно, относящихся к оборудованию), например, непосредственно при подключении устройств USB или Cardbus. Это удобно для автоматической загрузки и настройки драйверов, поставляемых как в виде модулей ядра, так и программ user mode.

Путь к программе hotplug регистрируется в /proc/sys/kernel/hotplug и, как правило, имеет значение /sbin/hotplug. За исключением специальных конфигураций, типа конфигурации initrd(4), здесь определяется shell-скрипт, который вызывает соответствующие "агенты политики" ("policy agents") -- /etc/hotplug/NAME.agent. Имя агента передаётся ядром в качестве первого параметра командной строки. Это имя соответствует определённой подсистеме ядра, события которой обрабатывает ядро (например, "usb", "pci", "net" и т.п.).

Информация о событии передаётся в виде переменных среды. Большинство агентов используют переменную "ACTION", описывающую тип события. Она получает значения "add" или "remove", что означает подключение или отключение данного устройства от системы.

Расположение устройства передаётся в переменной "DEVPATH". В ядрах 2.5 и выше в переменной указывается путь к соответствующему устройству sysfs без точки монтирования, но с впереди стоящим слэшем.

Не обязательно вызов агента hotplug должен производиться ядром. При инициализации ОС (случай "холодной загрузки") вызывается скрипт hotplug в /etc/init.d/hotplug, чтобы гарантировать правильность настройки устройств, подключенных во время загрузки, с использованием тех же правил, что и при более позднем подключении.

Для динамической адаптации изменений в конфигурации системы необходимо использовать агенты hotplug. Удобно представлять их в виде передаваемых событий из различных слоёв программного обеспечения Linux. Таким образом, низкоуровневый код из bus framework будет передавать события подключении новых физических устройств, а агенты bus (шины) гарантируют загрузку, настройку и активацию драйвера устройства. (Они используют описание устройств в стиле .BR depmod (8), используемого, среди прочего, для публикации в драйверах устройств kernel mode записей MODULE_DEVICE_TABLE, найденных в исходнике.) Затем наступит очередь других уровней стека Linux, сообщающих о более высокоуровневом событии, вроде "появился новый сетевой интерфейс". Агенты на этих уровнях, как правило, предназначены для выполнения более сложных задач.

Для подчёркивания определённых проблем "горячего" подключения во время загрузки ОС его можно назвать "холодным" подключением. Так, например, файлы программ и данных, необходимые для работы агентов hotplug, могут находиться на файловых системах, которые во время загрузки ещё недоступны.

## ФАЙЛЫ

```
/lib/modules/*/modules.*map      вывод depmod
/proc/sys/kernel/hotplug         задаёт путь программы hotplug
/sbin/hotplug                    программа hotplug (путь по умолчанию)
/etc/hotplug/*                   файлы hotplug
/etc/hotplug/NAME.agent          агенты hotplug конкретных подсистем
/etc/hotplug/NAME*               файлы конкретных подсистем, для агентов
/etc/hotplug/NAME/DRIVER         скрипты настройки драйверов, вызываемые агентами
/etc/hotplug/usb/DRIVER.usermap  данные depmod для драйверов пользовательского режима
/etc/init.d/hotplug              служебный скрипт системы hotplug
```

## СМОТРИ ТАКЖЕ
initrd(4)

Веб-сайт http://linux-hotplug.sourceforge.net/

## АВТОРЫ
hotplug разработан в рамках проекта Linux Hotplugging Project http://linux-hotplug.sourceforge.net/

Это руководство изначально было написано Fumitoshi UKAI <ukai@debian.or.jp>, для системы Debian GNU/Linux system (но может использоваться другими), на базе оригинальной японской версии руководства.

Перевод на русский язык выполнил Александр Саввин <savvin@mail.ru>