Почему chkconfig выделяет слово & ldquo; on & rdquo; по умолчанию в Precise?

Почему chkconfig по умолчанию выделяет слово «on» в Ubuntu Precise?

screenshot of chkconfig in terminal with highlighting

2
задан 29 August 2013 в 17:35

2 ответа

Потому что это то, что он делает. Я предполагаю, что это сделано специально для того, чтобы помочь людям заметить.

Из man chkconfig выделено мое:

Режим списка печатает для каждой указанной службы строку, состоящую из имени службы и для уровней запуска от 0 до 6 в зависимости от того, будет ли служба работать. началось или нет. будет печататься ярко-зеленым цветом, если вывод записывается на терминал. Если задана опция --deps, имена служб, которые должны быть запущены до добавления этой службы в каждую строку. Сервисы inetd / xinetd перечислены в дополнительных разделах.

0
ответ дан 29 August 2013 в 17:35

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

Как вы, возможно, знаете, общий способ настроить, запускается ли системная служба автоматически или нет, и , когда во время запуска системы она запускается, - это символические ссылки, хранящиеся в восьми подкаталогах /etc: rc0.d, rc1.d, rc2.d, rc3.d, rc4.d, rc5.d, rc6.d и rcS.d. Эти каталоги содержат символические ссылки на скрипты из /etc/init.d, которые запускают и останавливают сервисы. Имена символических ссылок обычно начинаются с S, чтобы запустить службу, или K, чтобы не запускать ее. chkconfig показывает вам информацию об этой конфигурации и позволяет вам изменять ее.

Большую часть времени, когда пользователь запускает chkconfig --list, пользователь хочет видеть , какие службы включены и , где они включены (т.е. через какую символическую ссылку или ссылки в каких rcX.d каталогах). Следовательно, chkconfig имеет смысл выделить записи, представляющие сценарии, которые вызывают запуск служб.

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

Что, если вы хотите запустить chkconfig --list без выделения?

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

chkconfig --list | cat

Я не могу проверить это в данный момент, потому что у меня нет системы Ubuntu, на которую я могу установить в настоящее время chkconfig. Но в большинстве случаев программы с цветным выводом автоматически обнаруживают, когда стандартный вывод не является терминалом, и отключают его (поскольку это часто не работает должным образом). Передавая выходные данные из chkconfig --list в cat, вы не позволяете stdout быть терминалом, все еще видя выход на вашем терминале.

0
ответ дан 29 August 2013 в 17:35

Другие вопросы по тегам:

Похожие вопросы: