Понимание команды Linux / Unix chkconfig

Команда chkconfig предоставляет простой инструмент командной строки для поддержки иерархии каталогов /etc/rc[0-6].d, освобождая системных администраторов от необходимости непосредственно манипулировать многочисленными символическими ссылками в этих каталогах.

конспект

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

  • chkconfig —list [имя] 
  • chkconfig —add имя 
  • chkconfig —del имя 
  • chkconfig [—level уровни] имя  
  • chkconfig [—level уровни] имя 

Эта реализация chkconfig была вдохновлена ​​командой chkconfig, присутствующей в операционной системе IRIX. Однако вместо сохранения информации о конфигурации вне иерархии /etc/rc[0-6].d эта версия напрямую управляет символическими ссылками в /etc/rc[0-6].d. Это оставляет всю информацию о конфигурации, касающуюся того, какие службы init запускаются в одном месте.

Chkconfig имеет пять различных функций: добавление новых сервисов для управления, удаление сервисов из управления, вывод списка текущей информации о запуске сервисов, изменение информации о запуске сервисов и проверка состояния запуска конкретной службы.

Когда chkconfig запускается без каких-либо параметров, он отображает информацию об использовании. Если указано только имя службы, она проверяет, настроена ли служба для запуска на текущем уровне выполнения. Если это так, chkconfig возвращает true; в противном случае возвращается false. Опция —level может использоваться для запроса chkconfig альтернативного уровня выполнения, а не текущего.

Если после имени службы указано одно из значений: on, off или reset, chkconfig изменяет информацию о запуске для указанной службы. Флаги включения и выключения заставляют службу запускаться или останавливаться соответственно на изменяемых уровнях выполнения. Флаг сброса сбрасывает информацию о запуске службы для того, что указано в рассматриваемом сценарии инициализации.

По умолчанию параметры включения и выключения влияют только на уровни выполнения 2, 3, 4 и 5, а сброс влияет на все уровни выполнения. Опция —level может использоваться, чтобы указать, какие уровни запуска затрагиваются.

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

Параметры

  • —уровни уровня Указывает уровни выполнения, к которым должна относиться операция. Он задается в виде строки чисел от 0 до 7. Например, —lelevel 35 определяет уровни выполнения 3 и 5.
  • —add name — эта опция добавляет новый сервис для управления с помощью chkconfig. Когда добавляется новая служба, chkconfig гарантирует, что у службы есть запись запуска или уничтожения на каждом уровне выполнения. Если на каком-либо уровне выполнения отсутствует такая запись, chkconfig создает соответствующую запись, как указано значениями по умолчанию в сценарии инициализации. Обратите внимание, что записи по умолчанию в разделах «INIT INFO», разделенных LSB, имеют приоритет над уровнями выполнения по умолчанию в initscript.
  • —del name — Служба удалена из управления chkconfig, и все символические ссылки в /etc/rc[0-6].d, относящиеся к ней, удалены.
  • —list name — эта опция выводит список всех служб, о которых знает chkconfig, и останавливается ли они или запускаются на каждом уровне выполнения. Если указано имя, отображается только информация об имени услуги.

Файлы уровня запуска

Каждый сервис, которым должен управлять chkconfig, нуждается в двух или более закомментированных строках, добавленных в его скрипт init.d. Первая строка сообщает chkconfig, на каких уровнях запуска должна быть запущена служба по умолчанию, а также уровни приоритетов запуска и остановки. Если служба по умолчанию не должна запускаться на каких-либо уровнях запуска, вместо списка уровней запуска следует использовать символ -. Вторая строка содержит описание службы и может быть расширена на несколько строк с продолжением обратной косой черты.

Например, random.init имеет следующие три строки:

# chkconfig: 2345 20 80
# описание: Сохраняет и восстанавливает пул энтропии системы для \
# более высокое качество генерации случайных чисел.

Это говорит о том, что случайный скрипт должен быть запущен на уровнях 2, 3, 4 и 5, что его приоритет запуска должен быть 20, и что его приоритет остановки должен быть 80. Вы должны быть в состоянии выяснить, что говорится в описании; \ вызывает продолжение строки. Дополнительное пространство перед линией игнорируется.

Ссылка на основную публикацию