From: Sergey Matveev Date: Wed, 16 Feb 2022 16:45:46 +0000 (+0300) Subject: Процесс загрузки FreeBSD X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=1e0e75fd3ea84be13d2350080097559d6c2de412;p=stargrave-blog.git Процесс загрузки FreeBSD https://klarasystems.com/articles/the-freebsd-boot-process/ Очень коротко объяснено как FreeBSD загружается по старинке, с более новыми GPT и UEFI. Очень просто и понятно что как и почему происходит. Хотя я всё равно могу придраться: нет варианта с загрузкой без MBR/GPT/UEFI, с ZFS установленной прямо на диск, без каких-либо партиций, где загрузчик устанавливается так: zpool create zroot ada0 dd if=/boot/zfsboot of=/dev/ada0 count=1 dd if=/boot/zfsboot of=/dev/ada0 iseek=1 oseek=1024 ------------------------ >8 ------------------------ BIOS/ MBR/UFS +-> MBR from 'Boot Device' BIOS disk | MBR +-> boot0 | STAGE 0 +-> boot1 | STAGE 1 +-> boot2 | STAGE 2 +-> loader | STAGE 3 +-> kernel | KERNEL +-> init | INIT BIOS/ MBR/ZFS +-> MBR from 'Boot Device' BIOS disk | MBR +-> boot0 | STAGE 0 +-> boot1 | STAGE 1 +-> zfsboot | STAGE 2 +-> zfsloader | STAGE 3 +-> kernel | KERNEL +-> init | INIT BIOS/ GPT/UFS +-> GPT from 'Boot Device' BIOS disk | GPT +-> pmbr | STAGE 0 +-> gptboot | STAGE 1 + STAGE 2 +-> loader | STAGE 3 +-> kernel | KERNEL +-> init | INIT BIOS/ GPT/ZFS +-> GPT from 'Boot Device' BIOS disk | GPT +-> pmbr | STAGE 0 +-> gptzfsboot | STAGE 1 + STAGE 2 +-> zfsloader (analogous to loader) | STAGE 3 +-> kernel | KERNEL +-> init | INIT UEFI/GPT/MBR/UFS/ZFS +-> GPT/MBR from 'Boot Device' BIOS disk | GPT/MBR +-> UEFI | STAGE 0 +-> boot1.efi (/efi/boot/boot${ARCH}.efi) | STAGE 1 + STAGE 2 +-> loader.efi | STAGE 3 +-> kernel | KERNEL +-> init | INIT UEFI/GPT/MBR/UFS/ZFS (13.0 and later) +-> GPT/MBR from 'Boot Device' BIOS disk | GPT/MBR +-> UEFI | STAGE 0 +-> loader.efi (/efi/FreeBSD/loader.efi) | STAGE 1-3 +-> kernel | KERNEL +-> init | INIT ---