Как работает процесс перезагрузки в Linux?

Мне пришлось вручную переопределить X11 WM_CLASS, что вы можете сделать в качестве аргумента для бинарного файла firefox:

/opt/firefox-developer/firefox --class=firefoxdev

Я только что добавил это в запись .desktop, и теперь у меня есть отдельная запись на панели задач Firefox.

-1
16.10.2019, 06:42
2 ответа

Контролируемая перезагрузка в основном представляет собой обычное отключение, но вместо отключения питания в конце применяется процедура аппаратного сброса, так что микропрограмма берет на себя управление и перезапускает систему, по сути, так же, как при включении системы. (Встроенное ПО может сократить или пропустить некоторые тесты, если обнаружит, что система не включается из «холодного» состояния.)

Отсутствует общесистемный -механизм автоматического сохранения состояния системы :, если у вас, например,. настроил сетевые интерфейсы с помощью команд ifconfigили ip, но не отредактировал соответствующие файлы конфигурации, чтобы сделать конфигурацию постоянной, эта конфигурация будет потеряна при любой перезагрузке. Если вы запускали какие-либо службы вручную (, например. service <something> startили systemctl start <something>), но не позволяет им автоматически запускаться при загрузке (, например. chkconfig <something> onили systemctl enable <something>), служба будет , а не , автоматически запускаться после перезагрузки.

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

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

Если система выключается принудительно (, например. нажатием кнопки аппаратного сброса или отключением шнура питания )все, что хранится только в ОЗУ , будет утеряно. Проверка файловой системы во время загрузки -обнаружит, что файловые системы не были правильно смонтированы :журналируемые файловые системы обычно автоматически выполняют восстановление журнала, чтобы сохранить внутреннюю согласованность метаданных файловой системы, но если данные также не журналируются, вы можете обнаружить, что некоторые данные на самом деле не достигли диска (это может отображаться в виде повторяющихся строк \000в файлах журнала, поскольку последний выделенный, но не записанный блок содержит только нулевые байты ). Базам данных также может потребоваться выполнить какие-либо действия по восстановлению согласованности после принудительного завершения работы.

Нормальное контролируемое отключение (или перезагрузка )включает:

  • отправка сигнала HUP всем процессам, принадлежащим сеансам входа пользователей, чтобы они получили возможность сделать все, что им нужно, перед выходом (, например. сохранение резервной копии любой несохраненной работы)
  • закрытие системных служб в разумном порядке, чтобы службы, зависящие от других служб, отключались раньше, чем службы, от которых они зависят.Для таких вещей, как большие базы данных, это может быть довольно большой задачей само по себе.
  • если есть пользовательские процессы или системные службы, которые не закрываются своевременно, сначала отправьте им обычный сигнал TERM, дайте им немного больше времени и, в конечном итоге, отправьте им сигнал KILL, чтобы процессы получали каждую шанс либо завершить, либо свернуть любое незавершенное дело, которое у них может быть. Но, в конечном счете, процессы должны быть завершены, чтобы все их файлы могли быть закрыты, чтобы позволить файловым системам аккуратно размонтироваться.
  • после того, как количество оставшихся запущенных процессов будет сокращено до необходимого минимума, размонтирование всех сетевых -файловых систем контролируемым образом, а перед размонтированием убедитесь, что все кэшированные операции записи завершены.
  • отключение любых служб, связанных с доступом к сетевым файловым системам
  • завершение любых кэшированных операций записи на локальные диски, затем размонтирование этих дисков, за исключением корневой файловой системы, которая вместо этого обычно просто переключается в режим -только для чтения. (Современные файловые системы могут фиксировать тот факт, что они были должным образом размонтированы в состоянии -свободная от ошибки, и не будет необходимости в действиях по восстановлению перед их повторным монтированием.)
  • наконец, ядру дается указание послать аппаратному сигналу либо выключение питания, либо перезагрузку системы, в зависимости от ситуации

В правильно -сконфигурированной системе обо всем этом позаботится подсистема инициализации (, которая может быть systemd, классической SysVinit или чем-то другим ), если вы используете shutdown -hили shutdown -r. команды.

Если вы используете reboot -f, это означает, что вы намеренно пропускаете все упомянутые выше шаги завершения работы, кроме последнего.

4
28.01.2020, 05:14

Я мог бы придумать более серьезную попытку. Прямо сейчас отвечаю:

Reboot works just like Start, except that you have files to close and processes to stop first. Just like with Start, you can choose which process you want to run from and on which system. You can Reboot to the end of Start, to the middle, or to the start of Start.

Это состояние системы при отключении питания . Или спящий режим . С приходом весны он оживает в обоих направлениях. Просто деталь. С отношением.

Затем вы понимаете, что :нет start, только кнопка питания на вашей ФИЗИЧЕСКОЙ КОНСОЛИ. И команда reboot. И перезагрузка — это много разных вещей, начиная с инициализации и инициализации.

-5
28.01.2020, 05:14

Теги

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