Отладка процесса загрузки systemd в CentOS/RHEL 7 и 8

Thank you for reading this post, don't forget to subscribe!

Вопрос: Как отладить/найти изме­не­ния или неудач­ные коман­ды во вре­мя про­цес­са загрузки?

1. В про­цес­се загруз­ки, при появ­ле­нии загру­зоч­но­го меню grub нажми­те “e” для редак­ти­ро­ва­ния grub, затем про­кру­ти­те вниз, пока не уви­ди­те запись boot:

2. В стро­ке с “linux” уда­ли­те сле­ду­ю­щие запи­си, если они при­сут­ству­ют, что­бы полу­чить более подроб­ную инфор­ма­цию при загрузке.

splash=silent quiet showopts
3. Затем добавь­те сле­ду­ю­щие запи­си, что­бы полу­чить поша­го­вый результат.

plymouth.enable=0 systemd.confirm_spawn=true systemd.debug-shell=1 systemd.log_level=debug systemd.unit=multi-user.target console=tty1

Где:

  • plymouth.enable=0 будет отклю­чать plymouth bootsplash
  • systemd.confirm_spawn=true запра­ши­ва­ет под­твер­жде­ние при порож­де­нии про­цес­сов, таких как интер­ак­тив­ная загрузка.
  • systemd.debug-shell=1 вклю­ча­ет обо­лоч­ку root на кон­со­ли 9 (доступ­на по F9)
  • systemd.log_level=debug вклю­ча­ет веде­ние отла­доч­но­го журнала
  • systemd.unit=multi-user.target поз­во­ля­ет избе­жать пере­клю­че­ния на кон­соль 7 для выво­да, а ввод оста­ет­ся на кон­со­ли 1
  • console=tty1
    поз­во­ля­ет избе­жать пере­клю­че­ния ввода/вывода на кон­соль 9, где будет под­клю­чен bash

4. Как толь­ко изме­не­ния будут сде­ла­ны, сохра­ни­те их с помо­щью “CTRL+x” и загруз­ка про­дол­жит­ся с это­го момен­та с отлад­кой verbose systemd.

При­ме­ча­ние: Это вре­мен­ные изме­не­ния и не повли­я­ют на сле­ду­ю­щую загрузку.