
ご存知のとおり、システムを起動するとき (grub の後) とシステムをシャットダウンするとき、多くのログが画面に表示されます。
カーネルがカーネルのログをいくつか書き込むことは知っています。しかし、他のものはどうでしょうか? 誰が書き込むのでしょうか?
私の知る限り、Ubuntu は を使用しsystemd
、 からのログがいくつか存在します。 のサービスを作成して、起動時およびシャットダウン時に画面にログを書き込むことがsystemd
できるかどうか知りたいです。systemd
答え1
再起動システムコールのソースコードを分析すると、答えが見つかるかもしれません。PATH: linux-4.4.1/kernel/reboot.c
280 SYSCALL_DEFINE4(reboot, int, magic1, int, magic2, unsigned int, cmd,
281 void __user *, arg)
282 {
....
315 switch (cmd) {
316 case LINUX_REBOOT_CMD_RESTART:
....
333 case LINUX_REBOOT_CMD_POWER_OFF:
334 kernel_power_off();
335 do_exit(0);
336 break;
....
257 void kernel_power_off(void)
258 {
259 kernel_shutdown_prepare(SYSTEM_POWER_OFF);
260 if (pm_power_off_prepare)
261 pm_power_off_prepare();
262 migrate_to_reboot_cpu();
263 syscore_shutdown();
264 pr_emerg("Power down\n");
265 kmsg_dump(KMSG_DUMP_POWEROFF);
266 machine_power_off();
267 }