]> git.ipfire.org Git - thirdparty/dracut.git/commitdiff
apply-live-updates.sh: handle updates for /run
authorWill Woods <wwoods@redhat.com>
Wed, 29 Aug 2012 22:58:15 +0000 (18:58 -0400)
committerHarald Hoyer <harald@redhat.com>
Fri, 7 Sep 2012 12:09:42 +0000 (14:09 +0200)
/run will get mounted at $NEWROOT/run after switch_root, but it's not
there yet. bind-mount it in place so updates for /run actually land in
/run.

(also: remove a redundant check for existing directories. mkdir -p
doesn't do anything if the directory already exists.)

modules.d/90dmsquash-live/apply-live-updates.sh

index 61da4bf233a30b133d1f37f7feaf68a0f69092a5..d620f2c94ceaef8ff1ccf5c71b051142b0b87338 100755 (executable)
@@ -2,14 +2,16 @@
 
 if [ -b /dev/mapper/live-rw ] && [ -d /updates ]; then
     info "Applying updates to live image..."
+    mount -o bind /run $NEWROOT/run
     # avoid overwriting symlinks (e.g. /lib -> /usr/lib) with directories
     (
         cd /updates
         find . -depth -type d | while read dir; do
-            [ -d "$NEWROOT/$dir" ] || mkdir -p "$NEWROOT/$dir"
+            mkdir -p "$NEWROOT/$dir"
         done
         find . -depth \! -type d | while read file; do
             cp -a "$file" "$NEWROOT/$file"
         done
     )
+    umount $NEWROOT/run
 fi