GhostBSD Boot Process

From GhostBSD Wiki
Jump to: navigation, search
Welcome to GhostBSD Boot Process.
GhostBSD Boot Process
MBR and GPT UEFI OpenRC /boot/
Back to the System

Introduction

The process of starting a computer and loading the operating system is referred to as “the bootstrap process”, or “booting”. The GhostBSD boot process provides a great deal of flexibility in customizing what happens when the system starts, including the ability to select from different operating systems installed on the same computer, different versions of the same operating system, or a different installed kernel.

The GhostBSD boot process differs from the FreeBSD boot process. The GhostBSD init process is connected to OpenRC.

Attention: To start services at boot, FreeBSD documentation doesn’t work with GhostBSD.

Power On

After power on the computer the firmware on your motherboard has to interact with the your hard drive to find a special partition on it. The motherboard contains the Basic Input/Output System (BIOS). On the older hardware it was named only BIOS. On newer machines the BIOS is called: type UEFI, (Unified Extensible Firmware Interface). Both types of BIOS are the interfaces between the hardware and your operating system.

After power on your machine you have access to the BIOS setup by pressing a key like Delete, F2 or any key your motherboard manufacturer describes in his man pages.

This special partition on your hard drive contains either the master boot record MBR or the newer GUID Partition Table (GPT).

We will describe the starting process based on

As well MBR and GPT as UEFI based BIOS types have the goal to bring your system to the GhostBSD/FreeBSD loader.

Bootstrap Process

By default, a three-stage bootstrap is employed, and control is automatically passed from the boot blocks (bootstrap stages one and two) to a separate third-stage bootstrap program, loader(8). This third stage provides more sophisticated control over the booting process than it is possible to achieve in the boot blocks, which are constrained by occupying limited fixed space on a given disk or slice.

FILES

The BIOS/GPT will attempt to load /boot/loader from partition `a' of either the floppy or the hard disk. This is the final stage of Ghost/FreeBSD's kernel bootstrapping process.

On the screen you will get:

After this you will greeted with: Welcome to GhostBSD The loader program offers a menu with the following options:
1. Boot Multi user [Enter]
2. Boot single user
3. Escape to loader prompt
4. Reboot
Options
5. Kernel default/kernel (1 of 1)
6. Boot Options
Autoboot in 2 seconds, hit [Enter] to boot or any other key to stop.

Loading kernel...
/boot/kernel/kernel
Loading configured modules...
/boot/kernel/snd_driver.co
and so on
until you get the boot splash: GhostBSD

Once the kernel boot process is finished, the kernel passes control to the user process init(8), which is located at /sbin/init. The /boot/defaults/loader.conf states as GhostBSD defaults: rc_system="openrc".

OpenRC is starting
with

  • Catching service dependencies
  • Starting System clock
  • Checking local file systems
  • Activating swap devices
  • Mounting local file systems
  • Remounting Root file systems
  • Configure kernel parameters
  • Clearing /temp
  • Setting up Idconfig path......
  • Starting ZFS
  • Starting network
  • and so on
  • Starting lightdm
  • Starting webcamd
  • Mounting network file systems
  • Setting data via ntp

And now you will be greeted with the confirmation screen to login.
{"cc_re__cc_re__cc_by_3_0": ["page\">Page information</a></li><li id=\"t-cite\"><a href=\"/index.php?title=Special:CiteThisPage&amp;page=GhostBSD_Boot_Process&amp;id=6905\" title=\"Information on how to cite this page\">Cite this page</a></li>\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t</div>\n\t\t</div>\n\t\t\t\t</div>\n\t\t</div>\n\t\t<div id=\"footer\" role=\"contentinfo\">\n\t\t\t\t\t\t\t<ul id=\"footer-info\">\n\t\t\t\t\t\t\t\t\t\t\t<li id=\"footer-info-lastmod\"> This page was last modified on 8 October 2020, at 12:37.</li>\n\t\t\t\t\t\t\t\t\t\t\t<li id=\"footer-info-copyright\">Content is available under <a class=\"external\" rel=\"nofollow\" href=\"https://creativecommons.org/licenses/by/3.0/\">Creative Commons Attribution</a> unless otherwise noted.</li>\n\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t<ul id=\"footer-places\">\n\t\t\t\t\t\t\t\t\t\t\t<li id=\"footer-places-privacy\"><a href=\"/index.php/GhostBSD_Wiki:Privacy_policy\" title=\"GhostBSD Wiki:Privacy policy\">Privacy policy</a></li>\n\t\t\t\t\t\t\t\t\t\t\t<li id=\"footer-places-about\"><a href=\"/index.php/GhostBSD_Wiki:About\" title=\"GhostBSD Wiki:About\">About GhostBSD Wiki</a></li>\n\t\t\t\t\t\t\t\t\t\t\t<li id=\"footer-places-disclaimer\"><a href=\"/index.php/GhostBSD_Wiki:General_disclaimer\" ti", "ostBSD_Wiki:Privacy_policy\" title=\"GhostBSD Wiki:Privacy policy\">Privacy policy</a></li>\n\t\t\t\t\t\t\t\t\t\t\t<li id=\"footer-places-about\"><a href=\"/index.php/GhostBSD_Wiki:About\" title=\"GhostBSD Wiki:About\">About GhostBSD Wiki</a></li>\n\t\t\t\t\t\t\t\t\t\t\t<li id=\"footer-places-disclaimer\"><a href=\"/index.php/GhostBSD_Wiki:General_disclaimer\" title=\"GhostBSD Wiki:General disclaimer\">Disclaimers</a></li>\n\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t\t\t<ul id=\"footer-icons\" class=\"noprint\">\n\t\t\t\t\t\t\t\t\t\t\t<li id=\"footer-copyrightico\">\n\t\t\t\t\t\t\t<a href=\"https://creativecommons.org/licenses/by/3.0/\"><img src=\"/resources/assets/licenses/cc-by.png\" alt=\"Creative Commons Attribution\" width=\"88\" height=\"31\" /></a>\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t\t\t<li id=\"footer-poweredbyico\">\n\t\t\t\t\t\t\t<a href=\"//www.mediawiki.org/\"><img src=\"/resources/assets/poweredby_mediawiki_88x31.png\" alt=\"Powered by MediaWiki\" srcset=\"/resources/assets/poweredby_mediawiki_132x47.png 1.5x, /resources/assets/poweredby_mediawiki_176x62.png 2x\" width=\"88\" height=\"31\" /></a>\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t<div style=\"clear:both\"></div>\n\t\t"], "copyright__copyright__copyright": ["ng\nwith\n\n  \u2022 Catching service dependencies\n  \u2022 Starting System clock\n  \u2022 Checking local file systems\n  \u2022 Activating swap devices\n  \u2022 Mounting local file systems\n  \u2022 Remounting Root file systems\n  \u2022 Configure kernel parameters\n  \u2022 Clearing /temp\n  \u2022 Setting up Idconfig path......\n  \u2022 Starting ZFS\n  \u2022 Starting network\n  \u2022 and so on\n  \u2022 Starting lightdm\n  \u2022 Starting webcamd\n  \u2022 Mounting network file systems\n  \u2022 Setting data via ntp\n\nA", "ng\nwith\n\n  \u2022 Catching service dependencies\n  \u2022 Starting System clock\n  \u2022 Checking local file systems\n  \u2022 Activating swap devices\n  \u2022 Mounting local file systems\n  \u2022 Remounting Root file systems\n  \u2022 Configure kernel parameters\n  \u2022 Clearing /temp\n  \u2022 Setting up Idconfig path......\n  \u2022 Starting ZFS\n  \u2022 Starting network\n  \u2022 and so on\n  \u2022 Starting lightdm\n  \u2022 Starting webcamd\n  \u2022 Mounting network file systems\n  \u2022 Setting data via ntp\n\nAnd now you will be greeted with the confirmation screen to login.", "ng\nwith\n\n  \u2022 Catching service dependencies\n  \u2022 Starting System clock\n  \u2022 Checking local file systems\n  \u2022 Activating swap devices\n  \u2022 Mounting local file systems\n  \u2022 Remounting Root file systems\n  \u2022 Configure kernel parameters\n  \u2022 Clearing /temp\n  \u2022 Setting up Idconfig path......\n  \u2022 Starting ZFS\n  \u2022 Starting network\n  \u2022 and so on\n  \u2022 Starting lightdm\n  \u2022 Starting webcamd\n  \u2022 Mounting network file systems\n  \u2022 Setting data via ntp\n\nAnd now you will be greeted with the confirmation screen to login."]}