«Grep ломается, вызывая зависание процесса загрузки»


10

Вопрос в вопросе (из вики Debian ):

Должен ли я использовать sid на моем рабочем столе?

Если вы думаете, что справитесь со сломанной системой Debian, конечно. Знаете ли вы, что делать, если libpam0g ломается, предотвращая все входы в систему? Знаете ли вы, что делать, если grep ломается, вызывая зависание процесса загрузки? Эти вещи произошли. Они повторится снова.

У меня вопрос, как сломанный grepвызывает зависание процесса загрузки навсегда?


4
Одна ошибка, с которой я сделал grepэто grep -r pattern . > pattern.grep. Поскольку оболочка создает выходной файл перед вызовом grep, grepкоманда выполняет поиск выходного файла, который увеличивается до заполнения диска. Я понятия не имею, связано ли это с чем-то, что может привести к зависанию процесса загрузки.
Кит Томпсон

Ответы:


8

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


5

Что ж, очевидным способом было бы: «grep зависает навсегда, поэтому то, что использует grep, зависает навсегда, и что-то в процессе загрузки делает это».

Текст, скорее всего, будет иллюстративным, а не буквальным примером проблем, но это не невозможно.

Чтобы действительно понять, начните читать с /etc/init.d/rcи /etc/init.d/rcS- это сценарии оболочки, которые запускают все биты, которые поднимают вашу систему.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.