aboutsummaryrefslogtreecommitdiffstats
path: root/systemd
diff options
context:
space:
mode:
authorColin Guthrie <colin@mageia.org>2012-10-28 20:16:00 +0000
committerColin Guthrie <colin@mageia.org>2012-10-28 20:16:00 +0000
commit5b2ce4ba3ff6cf5d7df7f5760107ff2f3e7dbe6f (patch)
treeec8a31bfe3ca67db6c5f31e1e34e59708fdfe557 /systemd
parent35326f41a29186a00331117c4419a904c6563c7c (diff)
parentbf95e22c4164b82112d043169495a71d1bfa0068 (diff)
downloadinitscripts-5b2ce4ba3ff6cf5d7df7f5760107ff2f3e7dbe6f.tar
initscripts-5b2ce4ba3ff6cf5d7df7f5760107ff2f3e7dbe6f.tar.gz
initscripts-5b2ce4ba3ff6cf5d7df7f5760107ff2f3e7dbe6f.tar.bz2
initscripts-5b2ce4ba3ff6cf5d7df7f5760107ff2f3e7dbe6f.tar.xz
initscripts-5b2ce4ba3ff6cf5d7df7f5760107ff2f3e7dbe6f.zip
Merge tag 'initscripts-9.41-1' into mga-41
Tag as initscripts-9.41-1 Conflicts: .gitignore Makefile inittab po/xgettext_sh.py prefdm rc.d/init.d/functions rc.d/init.d/halt rc.d/init.d/killall rc.d/init.d/netfs rc.d/init.d/network rc.d/init.d/single rc.d/rc rc.d/rc.local rc.d/rc.sysinit service src/console_check.c src/console_init.c sysconfig.txt sysconfig/network-scripts/ifdown sysconfig/network-scripts/ifdown-eth sysconfig/network-scripts/ifup sysconfig/network-scripts/ifup-eth sysconfig/network-scripts/ifup-ippp sysconfig/network-scripts/network-functions systemd/system/fedora-wait-storage.service udev/rules.d/10-console.rules Merge Notes: 1. prefdm: We are keeping the current prefdm script which parses /etc/sysconfig/desktop to find the current preferred dm. We also keep the hunk in sysconfig.txt which relates to the afore mentioned file. Longer term, we should drop this and move to per-dm units. 2. sysconfig/network-scripts/ifup-ippp is still removed at our end... is there a replacement? 3. I used our /sbin/service as it varies quite a lot from fedora. I'd be tempted to drop our custom version in favour of upstream (s/libexec/lib/) 4. ifup/ifdown NM wrappers have been included - previously we just printed a "Device is manged by NM skipping.." message. CONFLICT (modify/delete): udev/rules.d/10-console.rules deleted in initscripts-9.41-1 and modified in HEAD. Version HEAD of udev/rules.d/10-console.rules left in tree. Auto-merging systemd/system/fedora-wait-storage.service CONFLICT (content): Merge conflict in systemd/system/fedora-wait-storage.service Auto-merging systemd/fedora-storage-init Auto-merging sysconfig/network-scripts/network-functions CONFLICT (content): Merge conflict in sysconfig/network-scripts/network-functions Removing sysconfig/network-scripts/net.hotplug Auto-merging sysconfig/network-scripts/ifup-sit Auto-merging sysconfig/network-scripts/ifup-post Auto-merging sysconfig/network-scripts/ifup-plusb CONFLICT (modify/delete): sysconfig/network-scripts/ifup-ippp deleted in HEAD and modified in initscripts-9.41-1. Version initscripts-9.41-1 of sysconfig/network-scripts/ifup-ippp left in tree. Auto-merging sysconfig/network-scripts/ifup-eth CONFLICT (content): Merge conflict in sysconfig/network-scripts/ifup-eth Auto-merging sysconfig/network-scripts/ifup CONFLICT (content): Merge conflict in sysconfig/network-scripts/ifup Auto-merging sysconfig/network-scripts/ifdown-sit Auto-merging sysconfig/network-scripts/ifdown-post Auto-merging sysconfig/network-scripts/ifdown-eth CONFLICT (content): Merge conflict in sysconfig/network-scripts/ifdown-eth Auto-merging sysconfig/network-scripts/ifdown CONFLICT (content): Merge conflict in sysconfig/network-scripts/ifdown Auto-merging sysconfig.txt CONFLICT (content): Merge conflict in sysconfig.txt Removing src/testdinit Removing src/testd.c Removing src/securetty.c Removing src/securetty.8 Removing src/getkey.c Removing src/getkey.1 Removing src/fstab-decode.c Removing src/fstab-decode.8 CONFLICT (modify/delete): src/console_init.c deleted in initscripts-9.41-1 and modified in HEAD. Version HEAD of src/console_init.c left in tree. CONFLICT (modify/delete): src/console_check.c deleted in initscripts-9.41-1 and modified in HEAD. Version HEAD of src/console_check.c left in tree. Auto-merging service CONFLICT (content): Merge conflict in service CONFLICT (modify/delete): rc.d/rc.sysinit deleted in initscripts-9.41-1 and modified in HEAD. Version HEAD of rc.d/rc.sysinit left in tree. CONFLICT (modify/delete): rc.d/rc.local deleted in initscripts-9.41-1 and modified in HEAD. Version HEAD of rc.d/rc.local left in tree. CONFLICT (modify/delete): rc.d/rc deleted in initscripts-9.41-1 and modified in HEAD. Version HEAD of rc.d/rc left in tree. CONFLICT (modify/delete): rc.d/init.d/single deleted in initscripts-9.41-1 and modified in HEAD. Version HEAD of rc.d/init.d/single left in tree. Auto-merging rc.d/init.d/network CONFLICT (content): Merge conflict in rc.d/init.d/network CONFLICT (modify/delete): rc.d/init.d/netfs deleted in initscripts-9.41-1 and modified in HEAD. Version HEAD of rc.d/init.d/netfs left in tree. Auto-merging rc.d/init.d/netconsole CONFLICT (modify/delete): rc.d/init.d/killall deleted in initscripts-9.41-1 and modified in HEAD. Version HEAD of rc.d/init.d/killall left in tree. CONFLICT (modify/delete): rc.d/init.d/halt deleted in initscripts-9.41-1 and modified in HEAD. Version HEAD of rc.d/init.d/halt left in tree. Auto-merging rc.d/init.d/functions CONFLICT (content): Merge conflict in rc.d/init.d/functions CONFLICT (modify/delete): prefdm deleted in initscripts-9.41-1 and modified in HEAD. Version HEAD of prefdm left in tree. Auto-merging ppp/ip-up.ipv6to4 CONFLICT (modify/delete): po/xgettext_sh.py deleted in HEAD and modified in initscripts-9.41-1. Version initscripts-9.41-1 of po/xgettext_sh.py left in tree. Removing inittab.upstart Removing inittab.systemd Removing inittab.s390 Auto-merging inittab CONFLICT (content): Merge conflict in inittab Removing init/tty.conf Removing init/start-ttys.conf Removing init/splash-manager.conf Removing init/serial.conf Removing init/rcS.conf Removing init/rcS-sulogin.conf Removing init/rc.conf Removing init/quit-plymouth.conf Removing init/prefdm.conf Removing init/plymouth-shutdown.conf Removing init/control-alt-delete.conf Removing crypttab.5 Removing README-init Removing NetworkManager/dispatcher.d/05-netfs Auto-merging Makefile CONFLICT (content): Merge conflict in Makefile Auto-merging .gitignore CONFLICT (content): Merge conflict in .gitignore Automatic merge failed; fix conflicts and then commit the result.
Diffstat (limited to 'systemd')
-rwxr-xr-xsystemd/fedora-import-state14
-rwxr-xr-xsystemd/fedora-readonly16
-rwxr-xr-xsystemd/fedora-storage-init3
-rw-r--r--systemd/system/fedora-import-state.service14
-rw-r--r--systemd/system/fedora-readonly.service3
-rw-r--r--systemd/system/fedora-storage-init-late.service3
-rw-r--r--systemd/system/fedora-storage-init.service3
-rw-r--r--systemd/system/fedora-wait-storage.service5
8 files changed, 53 insertions, 8 deletions
diff --git a/systemd/fedora-import-state b/systemd/fedora-import-state
new file mode 100755
index 00000000..a853ab9c
--- /dev/null
+++ b/systemd/fedora-import-state
@@ -0,0 +1,14 @@
+#!/bin/bash
+# fedora-import-state: import state files from initramfs (e.g. network config)
+
+# exit early if root isn't writeable
+[ -w / ] || exit 0
+
+# copy state into root
+cd /run/initramfs/state
+cp -a -t / .
+
+# run restorecon on the copied files
+if [ -e /sys/fs/selinux/enforce ]; then
+ find . | ( cd /; restorecon -i -f -; ) || :
+fi
diff --git a/systemd/fedora-readonly b/systemd/fedora-readonly
index 4e8003a2..0690cd45 100755
--- a/systemd/fedora-readonly
+++ b/systemd/fedora-readonly
@@ -16,6 +16,12 @@ if [ -e "/sys/fs/selinux/enforce" ] && [ "$(cat /proc/self/attr/current)" != "ke
fi
fi
+selinux_fixup() {
+ if [ -n "$SELINUX_STATE" ] && [ -e "$1" ]; then
+ restorecon -R "$1"
+ fi
+}
+
# Only read this once.
[ -z "${cmdline}" ] && cmdline=$(cat /proc/cmdline)
@@ -75,7 +81,7 @@ if [ "$READONLY" = "yes" -o "$TEMPORARY_STATE" = "yes" ]; then
mount -n -t tmpfs $RW_OPTIONS $mountopts none "$RW_MOUNT"
fi
- for file in /etc/rwtab /etc/rwtab.d/* /dev/.initramfs/rwtab ; do
+ for file in /etc/rwtab /etc/rwtab.d/* /run/initramfs/rwtab ; do
is_ignored_file "$file" && continue
[ -f $file ] && cat $file | while read type path ; do
case "$type" in
@@ -91,12 +97,12 @@ if [ "$READONLY" = "yes" -o "$TEMPORARY_STATE" = "yes" ]; then
*)
;;
esac
- [ -n "$SELINUX_STATE" ] && [ -e "$path" ] && restorecon -R "$path"
+ selinux_fixup "$path"
done
done
# Use any state passed by initramfs
- [ -d /dev/.initramfs/state ] && cp -a /dev/.initramfs/state/* $RW_MOUNT
+ [ -d /run/initramfs/state ] && cp -a /run/initramfs/state/* $RW_MOUNT
# In theory there should be no more than one network interface active
# this early in the boot process -- the one we're booting from.
@@ -153,14 +159,14 @@ if [ "$READONLY" = "yes" -o "$TEMPORARY_STATE" = "yes" ]; then
for path in $(grep -v "^#" "$file" 2>/dev/null); do
mount_state "$path"
- [ -n "$SELINUX_STATE" ] && [ -e "$path" ] && restorecon -R "$path"
+ selinux_fixup "$path"
done
done
if [ -f "$STATE_MOUNT/files" ] ; then
for path in $(grep -v "^#" "$STATE_MOUNT/files" 2>/dev/null); do
mount_state "$path"
- [ -n "$SELINUX_STATE" ] && [ -e "$path" ] && restorecon -R "$path"
+ selinux_fixup "$path"
done
fi
fi
diff --git a/systemd/fedora-storage-init b/systemd/fedora-storage-init
index 46d8bfb3..962102af 100755
--- a/systemd/fedora-storage-init
+++ b/systemd/fedora-storage-init
@@ -19,6 +19,8 @@ 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
+ SAVEIFS=$IFS
+ IFS=$(echo -en "\n\b")
for dmname in $dmraidsets; do
if [[ "$dmname" == isw_* ]] && \
! strstr "$cmdline" noiswmd; then
@@ -27,6 +29,7 @@ if ! strstr "$cmdline" nodmraid && [ -x /sbin/dmraid ]; then
/sbin/dmraid -ay -i --rm_partitions -p "$dmname" >/dev/null 2>&1
/sbin/kpartx -u -a -p p "/dev/mapper/$dmname"
done
+ IFS=$SAVEIFS
fi
fi
diff --git a/systemd/system/fedora-import-state.service b/systemd/system/fedora-import-state.service
new file mode 100644
index 00000000..00d3d066
--- /dev/null
+++ b/systemd/system/fedora-import-state.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=Import network configuration from initramfs
+DefaultDependencies=no
+ConditionPathIsReadWrite=/
+ConditionDirectoryNotEmpty=/run/initramfs/state
+Conflicts=shutdown.target
+Before=shutdown.target emergency.service emergency.target systemd-tmpfiles-setup.service
+After=remount-rootfs.service
+
+[Service]
+ExecStart=/lib/systemd/fedora-import-state
+Type=oneshot
+TimeoutSec=0
+RemainAfterExit=yes
diff --git a/systemd/system/fedora-readonly.service b/systemd/system/fedora-readonly.service
index eca197f0..2a7db25f 100644
--- a/systemd/system/fedora-readonly.service
+++ b/systemd/system/fedora-readonly.service
@@ -2,12 +2,11 @@
Description=Configure read-only root support
DefaultDependencies=no
Conflicts=shutdown.target
-Before=shutdown.target emergency.service emergency.target systemd-tmpfiles-setup.service
+Before=shutdown.target emergency.service emergency.target systemd-tmpfiles-setup.service local-fs.target
After=remount-rootfs.service
[Service]
ExecStart=/lib/systemd/fedora-readonly
Type=oneshot
TimeoutSec=0
-StandardInput=tty
RemainAfterExit=yes
diff --git a/systemd/system/fedora-storage-init-late.service b/systemd/system/fedora-storage-init-late.service
index bfd4b73b..69ad0891 100644
--- a/systemd/system/fedora-storage-init-late.service
+++ b/systemd/system/fedora-storage-init-late.service
@@ -5,6 +5,9 @@ Conflicts=shutdown.target
After=cryptsetup.target fedora-storage-init.service
Before=local-fs.target shutdown.target
Wants=fedora-wait-storage.service
+ConditionFileIsExecutable=|/sbin/lvm
+ConditionFileIsExecutable=|/sbin/dmraid
+ConditionPathExists=|/etc/multipath.conf
[Service]
ExecStart=/lib/systemd/fedora-storage-init
diff --git a/systemd/system/fedora-storage-init.service b/systemd/system/fedora-storage-init.service
index add337b6..6d8e39ff 100644
--- a/systemd/system/fedora-storage-init.service
+++ b/systemd/system/fedora-storage-init.service
@@ -5,6 +5,9 @@ Conflicts=shutdown.target
After=fedora-wait-storage.service
Before=local-fs.target shutdown.target
Wants=fedora-wait-storage.service
+ConditionFileIsExecutable=|/sbin/lvm
+ConditionFileIsExecutable=|/sbin/dmraid
+ConditionPathExists=|/etc/multipath.conf
[Service]
ExecStart=/lib/systemd/fedora-storage-init
diff --git a/systemd/system/fedora-wait-storage.service b/systemd/system/fedora-wait-storage.service
index 230dadec..9d3b6ae9 100644
--- a/systemd/system/fedora-wait-storage.service
+++ b/systemd/system/fedora-wait-storage.service
@@ -4,7 +4,7 @@ DefaultDependencies=no
Conflicts=shutdown.target
After=systemd-udev-settle.service
Before=local-fs.target shutdown.target
-Wants=systemd-udevd.service systemd-udev-settle.service
+Wants=systemd-udev-settle.service
[Service]
ExecStart=-/sbin/rmmod scsi_wait_scan
@@ -13,3 +13,6 @@ ExecStart=-/sbin/rmmod scsi_wait_scan
Type=oneshot
TimeoutSec=0
RemainAfterExit=yes
+StandardInput=null
+StandardOutput=null
+StandardError=null