Boot Sequence





BIOS


Load boot sector from one of:

  • Floppy
  • CDROM
  • Hard Drive

The boot order can be changed from within the BIOS. BIOS setup can be entered by pressing a key during boot up. The exact key depends varies, but is often one of Del, F1, F2, or F10.



(DOS) Master Boot Record (MBR)


  • BIOS loads and execute the first 512 bytes off the disk (/dev/sda)
  • Standard DOS MBR will:
    • look for a primary partition (/dev/sda1-4) marked bootable
    • load and execute first 512 bytes of this partition



LILO


  • does not understand filesystems
  • code and kernel image to be loaded is stored as raw disk offsets

Loading sequence:

  • load menu code, typically /boot/boot.b
  • prompt for (or timeout to default) partition or kernel
  • for "image=" (ie. Linux) option load kernel image
  • for "other=" (ie. DOS) option load first 512 bytes of the partition






Reconfiguring LILO

One minute guide to installing a new kernel
  • copy kernel image (bzImage) and modules to /boot and /lib/modules
  • edit /etc/lilo.conf

      • duplicate image= section, eg:

§  image=/bzImage-2.4.14
§ 
label=14
§ 
read-only


  • run /sbin/lilo

  • reboot to test



GRUB


  • Understands file systems
  • config lives in /boot/grub/menu.lst or /boot/boot/menu.lst



Kernel


  • initialize devices
  • (optionally loads initrd)
  • mounts root filesystem
    • specified by lilo or loadin with root= parameter
    • kernel prints: VFS: Mounted root (ext2 filesystem) readonly.
  • runs /sbin/init which is process number 1 (PID=1)
o      init prints: INIT: version 2.76 booting
o


initrd


Allows setup to be performed before root FS is mounted
  • lilo or loadlin loads ram disk image
  • kernel runs /linuxrc
    • load modules
    • initialize devices
    • /linuxrc exits
  • "real" root is mounted
  • kernel runs /sbin/init





/sbin/init

  • reads /etc/inittab (see man inittab which specifies the scripts below
    • Run boot scripts:
      • redhat: /etc/rc.d/rc.sysinit script which: loads modules, check root FS and mount RW, mount local FS, setup network, and mount remote FS
    • switches to default runlevel eg 3.



Run Levels


  • 0 halt
  • 1 single user
  • 2-4 user defined
  • 5 X11 only
  • 6 Reboot
  • Default is defined in /etc/inittab, eg:
    • id:3:initdefault:

  • The current runlevel can be changed by running /sbin/telinit # where # is the new runlevel, eg typing telinit 6 will reboot. 

To know about the courses CLICK HERE..!!


Contact US CLICK HERE..!!

No comments:

Post a Comment