%PDF- %PDF-
| Direktori : /snap/core/17212/usr/share/initramfs-tools/hooks/ |
| Current File : //snap/core/17212/usr/share/initramfs-tools/hooks/resume |
#!/bin/sh
PREREQ=""
prereqs()
{
echo "$PREREQ"
}
case $1 in
# get pre-requisites
prereqs)
prereqs
exit 0
;;
esac
# First check if a location is set and is a valid swap partition
test -r /etc/initramfs-tools/conf.d/resume \
&& . /etc/initramfs-tools/conf.d/resume
if [ -n "$RESUME" ] && command -v blkid >/dev/null 2>&1 \
&& blkid -p -n swap $RESUME >/dev/null 2>&1; then
# As mkinitramfs copies the config file nothing to do.
exit 0
fi
# We need to be able to read the listed swap partitions
if [ ! -r /proc/swaps ]; then
exit 0
fi
# This is borrowed from udev's postinst
chrooted() {
if [ "$(stat -c %d/%i /)" = "$(stat -Lc %d/%i /proc/1/root 2>/dev/null)" ]; then
# the devicenumber/inode pair of / is the same as that of
# /sbin/init's root, so we're *not* in a chroot and hence
# return false.
return 1
fi
return 0
}
# Try to autodetect the RESUME partition, using biggest swap?
RESUME=$(grep ^/dev/ /proc/swaps | sort -rk3 | head -n 1 | cut -d " " -f 1)
if [ -n "$RESUME" ] && command -v blkid >/dev/null 2>&1; then
UUID=$(blkid -s UUID -o value "$RESUME" || true)
if [ -n "$UUID" ]; then
RESUME="UUID=$UUID"
fi
fi
# Write detected resume to intramfs conf.d/resume if not in a chroot
if [ -n "${RESUME}" ] && ! chrooted; then
echo "RESUME=${RESUME}" > ${DESTDIR}/conf/conf.d/resume
fi