mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-01-19 05:27:39 +00:00
63a2c2d454
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@9538 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
97 lines
5.3 KiB
Plaintext
97 lines
5.3 KiB
Plaintext
LSB-Bootscripts README
|
|
|
|
The scripts contained in this directory are a complete rewrite of the
|
|
boot scripts from LFS-6.1. As is usually the case with a rewrite, there have
|
|
been many changes:
|
|
|
|
LSB Version 4.1 Compliant Scripts - Immediately noticable are the LSB headers
|
|
in the rc.d scripts themselves. Each script contains a usable header to
|
|
allow for automating both the installation of, and determining proper
|
|
execution order for the startup scripts. These values can also be used
|
|
directly in parallel boot setups. Additionally, messages are displayed in
|
|
one single write to the screen, after exit status is determined, so that
|
|
they can be used in parallel setups. I am not sure if this was the only
|
|
barrier to auto language translation in the previous bootscripts. Further,
|
|
the messages are created from parts and only written to the screen in a
|
|
single command, so maybe no help at all WRT translated boot messages.
|
|
|
|
AS OF 20080907, THESE SCRIPTS REQUIRE THE initd-tools PACKAGE.
|
|
Dan Nicholson has recently released an initd-tools package that contain
|
|
LSB compliant install_initd and remove_initd programs written in C.
|
|
See the INSTALL file for installation instructions.
|
|
|
|
Path changes - The base directory for the bootscripts is now /etc. This is
|
|
mostly to conform with mainstream distros. Of course, this is still
|
|
configurable in /etc/default/rc.site. The rcsysinit.d directory has been
|
|
removed and and replaced with the shorter rcS.d. /etc/sysconfig has been
|
|
removed in favor of /etc/default. The network service scripts have been moved
|
|
to /lib/network-services and the the network configuration files to
|
|
/etc/network. Values for short, and relatively static, configuration files
|
|
(clock and network) have been included in the rc.site file directly.
|
|
|
|
Distribution Independent - this original goal for the LFS scripts has been
|
|
stretched even further by providing both a global rc config file that
|
|
contains (generally) static values, and a new rc.site config file to allow
|
|
customization of messages as diplayed to the end user during the boot
|
|
process. The format of messages printed to the screen is adjustable
|
|
here. Other options that were available in the previous versions of the
|
|
lfs-bootscripts, and additional options such as message format and color, are
|
|
configurable by the /etc/sysconfig/rc.site file.
|
|
|
|
Single Environment - The rc script has been rewritten completely to allow a
|
|
single source of the boot configuration per runlevel change. This config
|
|
is inherited from rc's environment as opposed to being sourced everytime a
|
|
script is run. This does result in a negledgable decrease in boot time, but
|
|
is simply better in principle.
|
|
|
|
Boot Logging - The previous incarnation of the boot log didn't begin
|
|
recording events until the root filesystem was mounted read/write. This has
|
|
been corrected by providing the /run tempfs mount immediately after init hands
|
|
control to the rc script. The bootlog is generated on the tempfs and then
|
|
passed to the log file before login. Additionally, shutdown events are no
|
|
longer recorded in the bootlog. They were pretty much useless and it really
|
|
wasn't what I'd call a *boot* log. Boot logging is on by default and is
|
|
configurable in the /etc/default/rc.site file via the "BOOTLOG_ENAB" parameter.
|
|
|
|
Interactive Boot - This feature has been included by default, and is a
|
|
little more polished than in previous versions. It does introduce a two
|
|
second delay in the boot process (so that you have time to press a button
|
|
to select interactive mode). This time value, and the option prompt itself,
|
|
is configurable in the /etc/default/rc.site file via the "itime" and "iprompt"
|
|
variables respectively.
|
|
|
|
LSB Functions - The previous lfs-bootscripts sourced a functions file
|
|
located at /etc/rc.d/init.d/functions. This file has been renamed
|
|
$distro-functions to segregate it from the old. The name is configurable
|
|
by the rc.site configuration file ("DISTRO_MINI"). LSB defined functions are
|
|
used where possible througout the individual scripts, but the $distro-functions
|
|
file provides, easy to use wraper functions that start, stop, reload,
|
|
force-reload, and restart programs, evaluate the numerical LSB return values,
|
|
and print status messages to the screen and boot log. Both distro functions and
|
|
LSB functions are documented directly in the scritps located at
|
|
/etc/init.d/$distro-functions and /lib/lsb/init-functions respectively.
|
|
|
|
Pretier - By default, successful boot messages are prefixed with a single green
|
|
astrik character, warning messages with two yellow astirks, and failures are
|
|
prefixed with three red astriks. This provides a second 'quick glance' status
|
|
when watching the boot messages fly by. Again, the prefixes are configurable
|
|
(or completely removable) in the /etc/default/rc.site file.
|
|
|
|
ConsoleLog - The sysctl script runs much earlier in the boot process, as a
|
|
result, it negates the need for the consolelog script. Set 'kernel.printk = X'
|
|
in your /etc/sysctl.conf file for equivalent functionality.
|
|
|
|
Complete Rewrite - That doesn't mean that code wasn't reused when possible,
|
|
so to Alexander Patrakov, Archiac, Bruce Dubbs, Bryan Kadzban, Dan Nicholson,
|
|
Gerard Beekmans, Jeremy Huntwork, Jim Gifford, Mathias Benkmans, Matthew
|
|
Burgess, Nathan Coulson, and countless other contributors: Thanks for the help
|
|
and guidance.
|
|
|
|
Please report any bugs to lfs-dev@linuxfromscratch.org.
|
|
|
|
Thanks.
|
|
|
|
-- DJ Lucas
|
|
dj@linuxfromscratch.org
|
|
|