28 lines
509 B
Bash
Executable File
28 lines
509 B
Bash
Executable File
#!/bin/sh
|
|
|
|
set -e
|
|
|
|
cleanup() {
|
|
if [ -n "${tmpdir}" ] && [ -d "${tmpdir}" ] && [ / != "${tmpdir}" ]; then
|
|
if mountpoint -q "${tmpdir}"; then
|
|
umount "${tmpdir}"
|
|
fi
|
|
rm -rf "${tmpdir}"
|
|
fi
|
|
unset tmpdir
|
|
}
|
|
|
|
if ! mountpoint -q /var; then
|
|
exit 0
|
|
fi
|
|
|
|
tmpdir=$(TMPDIR=/run mktemp -d)
|
|
trap cleanup INT QUIT TERM EXIT
|
|
|
|
mount -o bind / "${tmpdir}"
|
|
cp -a "${tmpdir}"/var/. /var/
|
|
|
|
if [ -x "$(command -v selinuxenabled)" ] && selinuxenabled; then
|
|
restorecon -RF /var
|
|
fi
|