The boot@ instantiated service is a portable set of services to boot a machine in conjunction with the 66 API.
Like any other instantiated service to enable it you need to specify the target of the service. The target can be a random name.
This is a specific service that handles the boot sequence of a machine, it is usually enabled on a tree build especially for it and contains only this service.
For example:
# 66-tree -n boot
# 66-enable -t boot boot@system
The name of the tree need to match the name set at your TREE=
key=value pair defined in the /etc/66/init.conf
file.
Do not mark this tree enabled with the 66-tree -E
option. The 66-init will take care of this special tree and start it automatically.
Refer to the 66-tree and 66-enable for further information on these tools.
This service is declared as a module
service and comes with its own configuration file.
The configuration file can be seen and edited easily using the 66-env tool:
# 66-env boot@system
When you are done editing this file, you need to reenable the service to have changes applied by using the -F option:
# 66-enable -t boot -F boot@system
Two different kinds of variables are used:
boolean: accepts yes
or no
as the only valid values, and nothing else.
string: depends on the variable and is defined in the following documentation.
/etc/localtime
pointing to the /usr/share/zoneinfo
directory definition. Usually the value contains a slash like Pacific/Noumea, America/New_york,…/usr/share/kbd/keymaps
directory.loadkeys
program to set the keymap for the console to use. Usually a simple string like fr, us,…/usr/share/kbd/consolefonts
.setfont
program to set the font for the console to use. Usually a simple string like lat9w-16, alt-8x14,…/usr/share/kbd/consoletrans
.setfont
program to indicate the mapping to use. Usually a simple string like 8859-1, 8859-2,…/usr/share/kbd/unimaps
.setfont
program to indicate the unicode mapping table to use. Usually no mapping table is needed, and a Unicode mapping table is already contained in the font.mount -a
command to mount each filesystem set at /etc/fstab
.swapon -a
command to activate your swap partitions/files.lvmetad
and vgchange
program to activate LVM partitions. If these programs is not installed on your system, the boot process fail even if the enable process finish successfully.dmraid
program to activate RAID partitions. If the program is not installed on your system, the boot process fail even if the enable process finish successfully.btrfs
program to activate BTRFS partitions. If the program is not installed on your system, the boot process fail even if the enable process finish successfully.zfs
program to mount ZFS partitions. If the program is not installed on your system, the boot process fail even if the enable process finish successfully.ZFS
variable. In case the ZFS
variable is set to no or commented, the ZFS_IMPORT
variable has no effect.KEYMAP,FONT
, FONT_MAP
, FONT_UNIMAP
variable has no effect.TZ
variable and set the hardware clock with timescale given (A.K.A. UTC or localtime).SETUPCONSOLE
, KEYMAP
, FONT
, FONT_MAP
, FONT_UNIMAP
, CRYPTTAB
, DMRAID
, BTRFS
, LVM
variable has no effect./etc/sysctl.conf
must exist on your system and be correctly written./etc/66/rc.local
script. This script is launched at the end of the boot procedure. The file must exist on your system and be set as executable, with correct definition of the shebang at the start of the script.HARDWARECLOCK
, SETUPCONSOLE
, KEYMAP
, FONT
, FONT_MAP
, FONT_UNIMAP
, CRYPTTAB
, SWAP
, LVM
, DMRAID
, BTRFS
, ZFS
, UDEV
, SYSCTL
, FORCECHCK
, CGROUPS
, MODULE_SYSTEM
, RANDOMSEED
, MNT_NETFS
variables have no effect./usr/lib/tmpfiles.d
directory to handle volatile and temporary files.kmod static-nodes
command./etc/modules-load.d
, /run/modules-load.d
, /usr/lib/modules-load.d
./var/lib/random-seed
if it doesn’t already exist./etc/crypttab
to decrypt an encrypted device. The file /etc/crypttab
must exist on your system./etc/<program>/<program>.rules
file must exist on your system. In other cases the /etc/<program>.conf
must exist on your system./proc/cgroups
file and mount the corresponding /sys/fs/cgroup/<groups>
directory. The /sys/fs/cgroup/unified
is also mounted./proc
directory if it is not mounted yet./sys
directory if it is not mounted yet./dev
directory if it is not mounted yet./run
directory if it is not mounted yet./tmp
directory if it is not mounted yet./dev/pts
directory if it is not mounted yet./dev/shm
directory if it is not mounted yet.mount -a -t nosysfs,nonfs,nonfs4,nosmbfs,nocifs -O no_netdev
./sys/firmware/efi/efivars
, /sys/fs/fuse/connections
, /sys/kernel/config
, /sys/kernel/debug
and /sys/kernel/security
directories./dev/hugepages
and /dev/mqueue
directories./run/lvm
, /run/user
and /run/lock
directories./tmp/.X11-unix
and /tmp/.ICE-unix
directories.