You can use the following two files regarding boot logs:
/var/log/boot.log
/var/log/dmesg
On a Ubuntu/Debian, Bootlog is turned off by default. Turn it on like this:
vi /etc/default/bootlogd
# Run bootlogd at startup ?
BOOTLOGD_ENABLE=Yes
Following stages for boot up for an x86 system:
1.System BIOS(Basic Input Output System) checks the system and launches the first stage boot loader on the MBR(Master Boot Record) of the primary hard disk.
2.First stage boot loader loads itself into memory and launches the second stage boot loader from the /boot/ partition.
3.Second stage boot loader loads the kernel into memory, which in turn loads any necessary modules and mounts the root partition read-only.
4.The boot loader often presents the user with a menu of possible boot options. The boot loader can be configured to time out if the user does not interact with the boot loader, thus selecting a default kernel and system configuration. After the selection is made, or after reaching a selection time-out, boot loader loads the kernel, which decompresses itself and sets up system functions such as essential hardware and memory paging, before calling start_kernel().
5.start_kernel() then performs the majority of system setup (interrupts, the rest of memory management, device and driver initialization, etc.) before spawning separately, the idle process and scheduler, and the /sbin/init process (which is executed in user space).
6.The /sbin/init program loads all services and user-space tools, and mounts all partitions listed in /etc/fstab.
7.The user is presented with a login screen for the freshly booted Linux system.
Beginning of boot process is different for different hardware platform .However, once the kernel is found and loaded by the boot loader, the default boot process is identical across all architectures.Here we are focusing on x86 architecture.
