You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
1.4 KiB
36 lines
1.4 KiB
From 286fbebdaf4bc4954a3206ca11f1d14f9267a7fd Mon Sep 17 00:00:00 2001 |
|
From: Harald Hoyer <harald@redhat.com> |
|
Date: Thu, 30 Jan 2014 16:11:40 +0100 |
|
Subject: [PATCH] dracut.sh: only set the owner of files to 0:0, if generated |
|
as non-root |
|
|
|
If the root user generates the initramfs image, preserve the ownership |
|
of the files. This of course cannot be done for non-root users |
|
generating an initramfs image. |
|
--- |
|
dracut.sh | 7 +++++-- |
|
1 file changed, 5 insertions(+), 2 deletions(-) |
|
|
|
diff --git a/dracut.sh b/dracut.sh |
|
index 58acb647..4e239936 100755 |
|
--- a/dracut.sh |
|
+++ b/dracut.sh |
|
@@ -1377,13 +1377,16 @@ fi |
|
|
|
rm -f -- "$outfile" |
|
dinfo "*** Creating image file ***" |
|
+ |
|
+[[ "$UID" != 0 ]] && cpio_owner_root="-R 0:0" |
|
+ |
|
if [[ $create_early_cpio = yes ]]; then |
|
echo 1 > "$early_cpio_dir/d/early_cpio" |
|
# The microcode blob is _before_ the initramfs blob, not after |
|
- (cd "$early_cpio_dir/d"; find . -print0 | cpio --null -R 0:0 -H newc -o --quiet >../early.cpio) |
|
+ (cd "$early_cpio_dir/d"; find . -print0 | cpio --null $cpio_owner_root -H newc -o --quiet >../early.cpio) |
|
mv $early_cpio_dir/early.cpio $outfile.$$ |
|
fi |
|
-if ! ( umask 077; cd "$initdir"; find . -print0 | cpio --null -R 0:0 -H newc -o --quiet | \ |
|
+if ! ( umask 077; cd "$initdir"; find . -print0 | cpio --null $cpio_owner_root -H newc -o --quiet | \ |
|
$compress >> "$outfile.$$"; ); then |
|
dfatal "dracut: creation of $outfile.$$ failed" |
|
exit 1
|
|
|