[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: TODO for etch ?

Adam Majer <adamm@zombino.com> writes:

> Petter Reinholdtsen wrote:
>> - Change boot system, to one capable of handling dependencies and
>>   parallell invocation, to speed up the boot process.
> Err.. Why? The current "slow" bootup is caused mostly by hardware
> detection from my experience. Speeding up hardware detection or remove
> it in favour of manual /etc/modules entries would speed up the boot
> process a lot more than changing the boot process. If it ain't broke, do
> not fix it.

At present, almost everything installs itself in runlevel 20. This kind
of suggests that almost everything is order-independent. But this isn't
true: the raid and device mapper stuff *has* to have the right order, or
your boot fails. Other stuff probably has subtle ordering constraints
that are not being managed: the system "just works". 

foo:~--# ls /etc/rc5.d/
K11anacron	 S19ssh		      S20diald		S20klisa	      S20setkey		 S50systune
K90metalog	 S19userv	      S20exim		S20lprng	      S20smartmontools	 S50wu-ftpd
S10ipchains	 S20alsa	      S20exim4		S20mailman	      S20smartsuite	 S83chrony
S10iptables	 S20amavis-ng	      S20fam		S20makedev	      S20swapd		 S89anacron
S10metalog	 S20apache-perl       S20firestarter	S20mdnsresponder      S20sysstat	 S89atd
S10sysklogd	 S20arpwatch	      S20firewall-easy	S20mon		      S20teapop		 S89cron
S11klogd	 S20atop	      S20framerd	S20mysql	      S20totd		 S90samba
S12kerneld	 S20autofs	      S20gpm		S20netsaint	      S20wwwoffle	 S91apache
S13genpower	 S20binfmt-support    S20greylist	S20nfs-kernel-server  S20xfs		 S91apache-ssl
S14ppp		 S20cfengine2	      S20hddtemp	S20nut		      S20xprint		 S99fetchmail
S18portmap	 S20clamav-daemon     S20hylafax	S20p3scan	      S21nfs-common	 S99kdm
S19amavis	 S20clamav-freshclam  S20inetd		S20pdnsd	      S23ntp-server	 S99rmnologin
S19bind		 S20crywrap	      S20iptotal	S20postgresql	      S30squid		 S99stop-bootlogd
S19nis		 S20cupsys	      S20isdnutils	S20queue	      S31sqcwa		 S99xdm
S19slapd	 S20daapd	      S20jmon		S20rsync	      S31squid-prefetch
S19spamassassin  S20dcc-client	      S20junkbuster	S20sauce	      S45usbmgr

Now, I may have tweaked a few things in there, but it seems to me that

firewalls should start after networking and before network-using things

email (exim) should start before programs that send email (mailman,

databases should probably run after filesystems, firewalls, system
monitors, swap daemons, and so forth.

and there are probably a few other easy deductions.

Switching to a "make -j runlevel5"-type system (dependencies encoded in
makefile fragments, some kind of "foo Provides firewall" structure, and
(hard) a method for stopping things as well as starting them would

(a) allow parallel startup, important for some users
(b) allow correct ordering to be specified

cheers, Rich.

rich walker         |  Shadow Robot Company | rw@shadow.org.uk
technical director     251 Liverpool Road   |
need a Hand?           London  N1 1LX       | +UK 20 7700 2487

Reply to: