Например:
nginx и php-cgi находятся на уровне запуска по умолчанию, и они еще не запущены.
Какова команда, чтобы запустить их все, а не запускать потом по отдельности?
Я знаю, что есть команда, но я полностью забыл ее.
Вы можете запустить эту команду как root:
# rc
Это должно делать свое дело. ;)
Похоже, что rc-config + rc-status является ответом с некоторыми сценариями оболочки. Бег
rc-config list default
перечисляет все скрипты в уровне выполнения по default . С другой стороны, он использует цвета и может все испортить, поэтому альтернативное приложение, rc-status , делает свое дело:
rc-status -nc default
показывает все сервисы из уровня запуска по default без цветов. Мы будем в awk от этого:
rc-config start `rc-status -nc default | awk -v ORS=" " '/^ .+\[ stopped ]$/{print $1}'`
Шаблон регулярного выражения заботится о том, чтобы запись начиналась с пробела и заканчивалась на « [ stopped ] ». При запуске с некоторыми остановленными сервисами oneliner делает то, что вы хотите. Если их нет, rc-config выдает простую синтаксическую ошибку, ничего не происходит.
Я знаю, что это не то, что вы хотели, это отдельная команда, но она легко включается в сценарий, если вам это нужно часто! Программы лежат в пакетах equery и baselayout поэтому они должны существовать в каждой установке Gentoo.