Difference between revisions of "GhostBSD Boot Process"
(→GhostBSD Boot Processes) |
(→GhostBSD Boot Processes) |
||
Line 16: | Line 16: | ||
Both [[MBR and GPT]] and [[UEFI]] have the goal to bring your system to the FreeBSD loader. | Both [[MBR and GPT]] and [[UEFI]] have the goal to bring your system to the 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, [https://www.freebsd.org/cgi/man.cgi?query=loader&sektion=8&apropos=0&manpath=FreeBSD+12.1-RELEASE+and+Ports 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 | ||
+ | * [[/boot/]]boot1 first stage bootstrap file | ||
+ | * [[/boot/]]boot2 second stage bootstrap file | ||
+ | * [[/boot/]]loader third stage bootstrap | ||
+ | |||
+ | 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: | ||
+ | * FreeBSD/x86 bootstrap loader, Revision 1.1 | ||
+ | * Loading [[/boot/defaults/loader.conf]] | ||
+ | * Loading /boot/device.hints | ||
+ | * Loading [[/boot/loader.conf]] | ||
+ | * Loading /boot/loader.conf.local | ||
+ | |||
+ | After this you will greeted with: Welcome to GhostBSD | ||
+ | The loader program offers a menu with the following options:<br/> | ||
+ | 1. Boot Multi user [Enter]<br/> | ||
+ | 2. Boot single user<br/> | ||
+ | 3. Escape to loader prompt<br/> | ||
+ | 4. Reboot<br/> | ||
+ | Options<br/> | ||
+ | 5. Kernel default/kernel (1 of 1)<br/> | ||
+ | 6. Boot Options<br/> | ||
+ | Autoboot in 2 seconds, hit [Enter] to boot or any other key to stop.<br/> | ||
+ | |||
+ | Loading kernel...<br/> | ||
+ | /boot/kernel/[[Kernel|kernel]]<br/> | ||
+ | Loading configured modules...<br/> | ||
+ | /boot/kernel/snd_driver.co<br/> | ||
+ | and so on <br/> | ||
+ | until you get the boot splash: GhostBSD | ||
+ | |||
+ | Once the kernel boot process is finished, the kernel passes control to the user process [https://www.freebsd.org/cgi/man.cgi?query=init&sektion=8&manpath=freebsd-release-ports init(8)], which is located at ''/sbin/init''. The [[/boot/defaults/loader.conf]] states as GhostBSD defaults: ''rc_system="[[OpenRC|openrc]]".'' | ||
+ | |||
+ | [[OpenRC]] is starting<br/> | ||
+ | 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. | ||
Revision as of 13:54, 3 April 2020
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.
GhostBSD Boot Processes
We will describe the boot process based on
- Basic Input/Output System (BIOS) using Master Boot Record (MBR) and the newer GUID Partition Table (GPT)
- UEFI mashines
Both MBR and GPT and UEFI have the goal to bring your system to the 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
- /boot/boot1 first stage bootstrap file
- /boot/boot2 second stage bootstrap file
- /boot/loader third stage bootstrap
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:
- FreeBSD/x86 bootstrap loader, Revision 1.1
- Loading /boot/defaults/loader.conf
- Loading /boot/device.hints
- Loading /boot/loader.conf
- Loading /boot/loader.conf.local
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.