refactoring rc.sysinit
David Kewley
kewley at gps.caltech.edu
Fri Feb 11 15:28:21 UTC 2005
Bill Nottingham wrote on Thursday 10 February 2005 19:21:
> When I speak about modularization above, I mean I don't see reason
> for splitting much of the *current* rc.sysinit to separate scripts;
> what I'd suspect is that we'd have the current rc.sysinit do
> the normal stuff (drivers, fsck, remount r/w) and then run all
> the scripts in rcS.d.
Here's an example in FC2 where I could have used modularization of "all the
normal stuff", in order to implement EVMS. Here EVMS is not managing the
boot drive, so it's not in the initrd. But it should be initialized in
rc.sysinit so that its volumes can be mounted simply by having them
in /etc/fstab like so:
/dev/evms/raid1 /export/raid1 xfs defaults,quota,grpquota 0 2
David
--- rc.sysinit-dist-2005.01.26 2005-01-11 09:38:44.000000000 -0800
+++ rc.sysinit 2005-01-26 17:37:51.000000000 -0800
@@ -375,14 +375,23 @@
[ "$state" != "rw" ] && \
action $"Remounting root filesystem in read-write mode: " mount -n -o remount,rw /
-# LVM2 initialization
-if [ -x /sbin/lvm.static ]; then
+# Device-Mapper initialization
+if [ -x /sbin/lvm.static -o -x /sbin/evms_activate ]; then
if ! LC_ALL=C fgrep -q "device-mapper" /proc/devices 2>/dev/null ; then
modprobe dm-mod >/dev/null 2>&1
fi
/bin/rm -f /dev/mapper/control
echo "mkdmnod" | /sbin/nash --quiet >/dev/null 2>&1
[ -n "$SELINUX" ] && restorecon /dev/mapper/control
+fi
+
+# EVMS initialization
+if [ -s /sbin/evms_activate ]; then
+ action $"Setting up Enterprise Volume Management System:" /sbin/evms_activate
+fi
+
+# LVM2 initialization
+if [ -x /sbin/lvm.static ]; then
if [ -c /dev/mapper/control -a -x /sbin/lvm.static ]; then
if /sbin/lvm.static vgscan > /dev/null 2>&1 ; then
action $"Setting up Logical Volume Management:" /sbin/lvm.static vgchange -a y && /sbin/lvm vgmknodes
More information about the fedora-devel-list
mailing list