diff --git a/localfs.service b/localfs.service new file mode 100644 index 00000000..d8ff1048 --- /dev/null +++ b/localfs.service @@ -0,0 +1,6 @@ +[Unit] +Description=Shadow /etc/init.d/boot.localfs + +[Service] +RemainAfterExit=true +ExecStart=/bin/true diff --git a/root-fsck.patch b/root-fsck.patch new file mode 100644 index 00000000..f9ca4f00 --- /dev/null +++ b/root-fsck.patch @@ -0,0 +1,25 @@ +From 687d70cc43b34eb2359598d0ca0b69e996aa1b38 Mon Sep 17 00:00:00 2001 +From: Frederic Crozat +Date: Wed, 3 Aug 2011 16:46:52 +0200 +Subject: [PATCH] units: detect SUSE initrd and do not run fsck on /. + +--- + units/fsck-root.service.in | 2 ++ + 1 files changed, 2 insertions(+), 0 deletions(-) + +diff --git a/units/fsck-root.service.in b/units/fsck-root.service.in +index 7b3529d..2f8c8f5 100644 +--- a/units/fsck-root.service.in ++++ b/units/fsck-root.service.in +@@ -13,6 +13,8 @@ Before=local-fs.target shutdown.target + + # Dracut informs us with this flag file if the root fsck was already run + ConditionPathExists=!/run/initramfs/root-fsck ++# Detect SUSE initrd too ++ConditionPathExists=!/dev/shm/initrd_exports.sh + + [Service] + Type=oneshot +-- +1.7.3.4 + diff --git a/systemd.changes b/systemd.changes index 3cd428e1..3e8caacd 100644 --- a/systemd.changes +++ b/systemd.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Wed Aug 3 16:03:25 UTC 2011 - fcrozat@suse.com + +- Add root-fsck.patch: do not run fsck on / if it is rw +- Ship a non null localfs.service, fixes static mount points not + being mounted properly. + ------------------------------------------------------------------- Wed Aug 3 07:11:33 UTC 2011 - aj@suse.de diff --git a/systemd.spec b/systemd.spec index 0bfda5cc..e85217c7 100644 --- a/systemd.spec +++ b/systemd.spec @@ -47,6 +47,7 @@ Conflicts: filesystem < 11.5 Conflicts: mkinitrd < 2.7.0 Source0: http://www.freedesktop.org/software/systemd/%{name}-%{version}.tar.bz2 Source1: systemd-rpmlintrc +Source2: localfs.service Patch1: 0001-Add-bootsplash-handling-for-password-dialogs.patch # Upstream First - Policy: @@ -55,6 +56,8 @@ Patch1: 0001-Add-bootsplash-handling-for-password-dialogs.patch # an exception will be silently removed with the next version update. # PATCH-FIX-UPSTREAM aj@suse.de gperf: Include missing.h Patch2: gperf-missing.patch +# PATCH-FIX-UPSTREAM fcrozat@suse.com -- don't run fsck on rw / +Patch3: root-fsck.patch %description @@ -115,6 +118,7 @@ Plymouth integration for systemd %setup -q %patch1 -p1 %patch2 -p1 +%patch3 -p1 %build autoreconf -fiv @@ -160,7 +164,7 @@ ln -s /dev/null %{buildroot}/lib/systemd/system/kbd.service ln -s /dev/null %{buildroot}/lib/systemd/system/klog.service ln -s /dev/null %{buildroot}/lib/systemd/system/ldconfig.service ln -s /dev/null %{buildroot}/lib/systemd/system/loadmodules.service -ln -s /dev/null %{buildroot}/lib/systemd/system/localfs.service +install -m644 %{S:2} %{buildroot}/lib/systemd/system/localfs.service ln -s /dev/null %{buildroot}/lib/systemd/system/localnet.service ln -s /dev/null %{buildroot}/lib/systemd/system/proc.service ln -s fsck-root.service %{buildroot}/lib/systemd/system/rootfsck.service