Когда перезагрузка требуется?

Вы только что пострадали от разделение слова - Используйте больше Quotes™ и используете массивы, если Вы хотите отправить несколько параметров в команду:

LOG_PARAMS=("--color" "--pretty=format:$FORMAT" "--abbrev-commit" "--no-walk")
...
    git log "${LOG_PARAMS[@]}" "$(commits)"

Это работает на меня без "$(commits)" часть, которую я предполагаю, является другой функцией, которую Вы создали.

28
04.04.2014, 12:13
3 ответа

На ум приходят две вещи:

  • Восстановление после паники ядра

    Паника ядра по определению не может быть устранена без перезапуска ядра.

  • Восстановление после зависаний, которые оставляют вас без доступа к терминалу

    Если система не отвечает, и вы застряли без возможности выполнить команды для восстановления, единственное, что вы можете сделать, это перезагрузиться. Обычно лучше избегать включения и выключения питания вручную. Для таких ситуаций в ядре Linux есть поддержка Magic SysRq , которую можно использовать для перезагрузки машины в экстренных случаях.

    Пока параметр CONFIG_MAGIC_SYSRQ включен в конфигурации ядра и включен параметр kernel.sysrq sysctl , вы можете отправлять команды непосредственно ядру с помощью волшебные комбинации клавиш SysRq:

    Обратите внимание, что Alt + SysRq ниже означает , нажмите и удерживайте Alt , затем нажмите и удерживайте SysRq (обычно клавиша PrintScrn ).

    1. Alt + SysRq + r : восстановить контроль над клавиатурой
    2. Alt + SysRq + e ]: отправить SIGTERM всем процессам, кроме init , давая им возможность корректно завершить работу
    3. Alt + SysRq + i : отправить SIGKILL всем процессам, кроме init , заставив их завершить работу
    4. Alt + SysRq + s : попытаться синхронизировать все смонтированные файловые системы
    5. Alt + SysRq + u : перемонтировать всю файловую систему только для чтения
    6. Alt + SysRq + b : перезагрузка или

      Alt + SysRq + o : выключение

    Мнемоника для волшебного SysRq комбинации клавиш для попытки плавной перезагрузки:

    " R eboot E ven I f S ystem U окончательно B ход "

    Для безголовых серверов есть даже iptables target , позволяющий удаленные последовательности SysRq по сети.

  • Восстановление из не загружаемого состояния

    Если система уже была переведена в состояние, в котором обычная загрузка невозможна (например, в результате неудачного обновления системы, поврежденной файловой системы и т. Д.), То единственный способ получить доступ консоль восстановления в системе может перезагружаться с использованием соответствующих параметров времени загрузки.

  • Изменить параметры ядра при загрузке

    Некоторые параметры ядра (например, audit для включения / отключения аудита ядра) может быть установлен только тогда, когда ядро ​​загружается во время загрузки.

44
27.01.2020, 19:39
[1120939]Два раза я могу подумать, где бы мне хотелось перезагрузиться:

Когда мне нужно убедиться, что система может загрузиться в нужном состоянии.

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

  • На самом деле перезагрузка - это единственный способ убедиться, что ваша система перезагрузится должным образом после сбоя питания.
  • Когда системная библиотека была обновлена.
  • Предположим, что основной недостаток безопасности был обнаружен в библиотеке, к которой имеют общий доступ многие приложения/серверы в системе. Вы можете обновить библиотеку без перезагрузки, но сколько процессов все еще запущено с незащищенной библиотекой? Вы можете кропотливо перезагрузить что угодно, используя старую библиотеку (если вы можете это выяснить), но это чревато ошибками и может занять больше времени, чем просто перезагрузка.
  • Перезагрузка - это лучший способ убедиться, что все запущенные процессы все еще не используют старую, ошибочную библиотеку.
2
27.01.2020, 19:39

Если вы имеете в виду запланированные изменения в конфигурации программного обеспечения и предполагаете, что оборудование идеально работает (я такого еще не видел) и программное обеспечение без ошибок ( вы знаете ...), то только ошибка в ядре или драйвере заставит вас перезагрузиться. :)

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

0
27.01.2020, 19:39

Теги

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