Browse Source

Do not "cp" the selinux context

replace "cp -a" with $DRACUT_CP, so in case the selinux policy disallows
root to set the selinux context in /var/tmp, dracut does not fail.
master
Harald Hoyer 8 years ago
parent
commit
7e51a94f5b
  1. 2
      dracut-init.sh
  2. 6
      dracut.sh
  3. 2
      modules.d/10i18n/module-setup.sh
  4. 1
      modules.d/95iscsi/iscsiroot.sh
  5. 2
      modules.d/95terminfo/module-setup.sh

2
dracut-init.sh

@ -19,6 +19,8 @@ @@ -19,6 +19,8 @@
#
export LC_MESSAGES=C

export DRACUT_CP="cp --reflink=auto --sparse=auto --preserve=mode,timestamps,xattr,links -dfr"

# is_func <command>
# Check whether $1 is a function.
is_func() {

6
dracut.sh

@ -1557,9 +1557,9 @@ for ((i=0; i < ${#include_src[@]}; i++)); do @@ -1557,9 +1557,9 @@ for ((i=0; i < ${#include_src[@]}; i++)); do
mkdir -m 0755 -p "$object_destdir"
chmod --reference="$objectname" "$object_destdir"
fi
cp --reflink=auto --sparse=auto -fa -t "$object_destdir" "$objectname"/*
$DRACUT_CP -t "$object_destdir" "$objectname"/*
else
cp --reflink=auto --sparse=auto -fa -t "$destdir" "$objectname"
$DRACUT_CP -t "$destdir" "$objectname"
fi
done
fi
@ -1671,7 +1671,7 @@ if [[ $acpi_override = yes ]] && [[ -d $acpi_table_dir ]]; then @@ -1671,7 +1671,7 @@ if [[ $acpi_override = yes ]] && [[ -d $acpi_table_dir ]]; then
mkdir -p $_dest_dir
for table in $acpi_table_dir/*.aml; do
dinfo " Adding ACPI table: $table"
cp -a $table $_dest_dir
$DRACUT_CP $table $_dest_dir
create_early_cpio="yes"
done
fi

2
modules.d/10i18n/module-setup.sh

@ -114,7 +114,7 @@ install() { @@ -114,7 +114,7 @@ install() {

for _src in $(eval echo ${kbddir}/{${KBDSUBDIRS}}); do
inst_dir "$_src"
cp --reflink=auto --sparse=auto -prfL -t "${initdir}/${_src}" "$_src"/*
$DRACUT_CP -L -t "${initdir}/${_src}" "$_src"/*
done

# remove unnecessary files

1
modules.d/95iscsi/iscsiroot.sh

@ -190,6 +190,7 @@ handle_netroot() @@ -190,6 +190,7 @@ handle_netroot()
if [ "$status" != "activating" ] && ! systemctl is-failed "$netroot_enc" >/dev/null 2>&1; then
systemd-run --no-block --service-type=oneshot --remain-after-exit --quiet \
--description="Login iSCSI Target $iscsi_target_name" \
-p 'DefaultDependencies=no' \
--unit="$netroot_enc" -- \
$(command -v iscsistart) \
-i "$iscsi_initiator" -t "$iscsi_target_name" \

2
modules.d/95terminfo/module-setup.sh

@ -11,7 +11,7 @@ install() { @@ -11,7 +11,7 @@ install() {
if [ -d ${_terminfodir} ]; then
for i in "l/linux" "v/vt100" "v/vt102" "v/vt220"; do
inst_dir "$_terminfodir/${i%/*}"
cp --reflink=auto --sparse=auto -prfL -t "${initdir}/${_terminfodir}/${i%/*}" "$_terminfodir/$i"
$DRACUT_CP -L -t "${initdir}/${_terminfodir}/${i%/*}" "$_terminfodir/$i"
done
fi
}

Loading…
Cancel
Save