ifplugd − демон обнаружения кабеля Ethernet−устройств
ifplugd [опции]
ifplugd − это демон, который автоматически настраивает Ethernet−устройство, если кабель вставлен и автоматически сбрасывает настройки, если кабель вытащили. Полезно для ноутбуков со встроенными сетевыми картами, поскольку их можно настроить, только если кабель действительно подключён.
Используются родные программы ifup/ifdown дистрибутива, но можно настроить запуск любого действия в случае смены состояния интерфейса. Краткосрочные отключения или подключения можно игнорировать с помощью опций −d и −u.
ifplugd может использоваться в режиме "совместимости" при указании в командной строке опции −F. Однако ifplugd не умеет работать с драйверами, которые не позволяют определить наличие кабеля, и всегда считет их активными.
−a | −−no−auto
Не включать интерфейс автоматически (по умолчанию выключено).
−n | −−no−daemon
Не становиться демоном (для отладки) (по умолчанию выключено).
−s | −−no−syslog
Использовать стандартный вывод вместо syslog (для отладки) (по умолчанию выключено).
−b | −−no−beep
Не пищать (выключено), перекрывает действие опций −−no−beep−up и −−no−beep−down.
−U | −−no−beep−up
Не пищать при включении интерфейса (выключено).
−D | −−no−beep−down
Не пищать при выключении интерфейса (выключено).
−f | −−ignore−fail
Игнорировать ошибки обнаружения, пробуя повторить действие. Ошибки обрабатываются как "отсутствие кабеля". (По умолчанию выключено.)
−F | −−ignore−fail−positive
Игнорировать ошибки обнаружения, пробуя повторить действие. Ошибки обрабатываются как "наличие кабеля". (По умолчанию выключено.)
−i | −−iface= интерфейс
Указывает Ethernet−интерфейс (по умолчанию − eth0).
−r | −−run= команда
Указывает программу для запуска при смене состояния кабеля (по умолчанию − /etc/ifplugd/ifplugd.action).
−I | −−ignore−retval
Не завершать работу, если программа, выполняемая при смене состояния канала, вернула не нулевой код возврата. (По умолчанию − выключено.)
−t | −−poll−time= секунды
Указывает время опроса в секундах (по умолчанию − 1).
−T | −−poll−utime= микросекунды
Указывает время опроса в микросекундах, дополнительно к −t (по умолчанию − 0)
−u | −−delay−up= секунды
Указывает задержку перед настройкой интерфейса (по умолчанию − 0).
−d | −−delay−down= секунды
Указывает задержку перед сбросом настроек интерфейса (по умолчанию − 5).
−m | −−api−mode= режим
Принудительно использовать указанный спопоб обнаружения состояния кабеля при помощи ioctl(). Возможные значения: auto, iff, wlan, ethtool, mii, и priv для автоматического обнаружения, обнаружения по флагу интерфейса (IFF_RUNNING), по беcпроводному расширению, по SIOCETHTOOL, по SIOCGMIIREG, и по SIOCPRIV соответственно. Важен только первый символ аргумента, вне зависимости от регистра. (По умолчанию − auto.)
−p | −−no−startup
Не вызывать сценарий для настройки сети при запуске демона (по умолчанию − выключено).
−q | −−no−shutdown
Не вызывать сценарий для отключения сети при завершении работы демона (по умолчанию − выключено).
−w | −−wait−on−fork
Перед переходом в режим демона подождать, пока фоновый процесс завершит начальное обнаружение состояния канала. Когда эта опция активна, родительский процесс вернет состояние канала при выходе. 2 означает обнаружение кабеля, 3 означает, что кабель не обнаружен, любое другое значение обозначает ошибку.
−W | −−wait−on−kill
При завершении работы запущенного демона (с ключом −k) ожидать, когда демон действительно завершит работу.
−x | −−extra−arg= аргумент
Указывает дополнительный аргумент, который будет передан в исполняемый сценарий.
−M | −−monitor
Не прекращать работу, если сетевой интерфейс недоступен, вместо этого использовать NETLINK для наблюдения за доступностью устройства. Это полезно для устройств PCMCIA и им подобных.
−h | −−help
Показать справку.
−k | −−kill
Завершить работу демона. (Укажите опцию −i, чтобы выбрать экземпляр демона, работу которого надо завершить.)
−c | −−check−running
Проверить запущен ли демон для указанного сетевого интерфейса. Возвращает значение 0, если демон уже запущен, или 255, если нет.
−v | −−version
Показать версию.
−S | −−supend
Приостановить запущенного демона. Демон больше не будет проверять состояние кабеля, пока ему не прикажут обратное (опция −R). (Укажите −i для выбора экземпляра демона, которого нужно приостановить.)
−R | −−resume
Возобновить работу остановленного демона. (Укажите −i для выбора экземпляра демона, работу которого нужно возобновить.)
−z | −−info
Запросить запись состояния запущенного демона в syslog. (Укажите −i для выбора экземпляра демона, которому отправляется запрос.)
/etc/default/ifplugd: Этот файл используется сценарием инициализации /etc/init.d/ifplugd и содержит интерфейсы, за которыми нужно наблюдать и опции, которые нужно использовать.
/etc/ifplugd/ifplugd.action: Это сценарий, который будет вызван демоном при смене состояния интерфейса. Он так же приниает два дополнительных аргумента: первый − имя интерфейса (например eth0) и второй − "up" или "down".
/var/run/ifplugd.<iface>.pid: Файл с идентификатором процесса ifplugd.
Выполняемый скрипт может вызываться с двумя установленными переменными:
IFPLUGD_PREVIOUS Предыдущее состояние кабеля. Может принимать значения "up", "down" "error" или "disabled". Обычно бывшее значение − последнее установленое при запуске демона.
IFPLUGD_CURRENT Текущее состояние кабеля. Список возможный значений смотрите выше.
SIGINT, SIGTERM ifplugd завершит работу, возможно выполнив скрипт выхода. Это достигается указанием опции −k ifplugd.
SIGQUIT ifplugd завершит работу, не запуская сценарий выхода.
SIGHUP ifplugd запишет информацию о своём состоянии в syslog. Это же можно сделать с помощью опции −z.
SIGUSR1 ifplugd будет приостановлен. (−S)
SIGUSR2 ifplugd возобновит работу. (−R)
ifplugd написан Леннартом Поттерингом (Lennart Poettering) <mzvscyhtq (at) 0pointer (dot) de>. ifplugd доступен по адресу http://0pointer.de/lennart/projects/ifplugd/
Перевод выполнен на сайте коллективных переводов http://translated.by. Авторы перевода Олег Безначев aka saturn721, Владимир Ступин <vladimir@stupin.su>.
ifplugd.conf(5), ifup(8), interfaces(5), ifconfig(8), ifplugstatus(8)
Страница руководства написана Оливером Куртом (Oliver Kurth) с использованием xmltoman(1).