diff options
author | Bill Nottingham <notting@redhat.com> | 2010-10-15 16:25:31 -0400 |
---|---|---|
committer | Bill Nottingham <notting@redhat.com> | 2010-10-15 16:25:31 -0400 |
commit | 59b2f505ea603ef65823615711b5adfa87795f41 (patch) | |
tree | d5b42a97c7c6e964d920c51f39d890313b997b09 /systemd/fedora-storage-init | |
parent | 675389f11ffaab590e9dedabc821e33745e3eb5c (diff) | |
download | initscripts-59b2f505ea603ef65823615711b5adfa87795f41.tar initscripts-59b2f505ea603ef65823615711b5adfa87795f41.tar.gz initscripts-59b2f505ea603ef65823615711b5adfa87795f41.tar.bz2 initscripts-59b2f505ea603ef65823615711b5adfa87795f41.tar.xz initscripts-59b2f505ea603ef65823615711b5adfa87795f41.zip |
Add split-out bits of rc.sysinit and associated service files. Remove sysinit.service. Based on work by Harald Hoyer (<harald@redhat.com>)
sysinit-hack/unhack will be removed once the net hotplug stuff is fixed to not require this.
Diffstat (limited to 'systemd/fedora-storage-init')
-rwxr-xr-x | systemd/fedora-storage-init | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/systemd/fedora-storage-init b/systemd/fedora-storage-init new file mode 100755 index 00000000..a9c12769 --- /dev/null +++ b/systemd/fedora-storage-init @@ -0,0 +1,42 @@ +#!/bin/bash +# +# Storage initialization + +. /etc/init.d/functions + +[ -z "${cmdline}" ] && cmdline=$(cat /proc/cmdline) + +[ -f /etc/crypttab ] && init_crypto 0 + +if ! strstr "$cmdline" nompath && [ -f /etc/multipath.conf ] && \ + [ -x /sbin/multipath ]; then + modprobe dm-multipath > /dev/null 2>&1 + /sbin/multipath -v 0 + if [ -x /sbin/kpartx ]; then + /sbin/dmsetup ls --target multipath --exec "/sbin/kpartx -a -p p" >/dev/null + fi +fi + +if ! strstr "$cmdline" nodmraid && [ -x /sbin/dmraid ]; then + modprobe dm-mirror >/dev/null 2>&1 + dmraidsets=$(LC_ALL=C /sbin/dmraid -s -c -i) + if [ "$?" = "0" ]; then + for dmname in $dmraidsets; do + if [[ "$dmname" == isw_* ]] && \ + ! strstr "$cmdline" noiswmd; then + continue + fi + /sbin/dmraid -ay -i --rm_partitions -p "$dmname" >/dev/null 2>&1 + /sbin/kpartx -a -p p "/dev/mapper/$dmname" + done + fi +fi + +# Start any MD RAID arrays that haven't been started yet +[ -r /proc/mdstat -a -r /dev/md/md-device-map ] && /sbin/mdadm -IRs + +if [ -x /sbin/lvm ]; then + action $"Setting up Logical Volume Management:" /sbin/lvm vgchange -a y --sysinit +fi + +[ -f /etc/crypttab ] && init_crypto 0 |