With the new /usr mounting, if the device path that ends up in /proc/mounts ends up being different than in /etc/fstab due to symlinks, mount -a will always exit 32. Avoid by resolving symlinks like util-linux does.

Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
cleanup-cruft
Robin H. Johnson 13 years ago
parent 265363f79d
commit 995635a2c7
No known key found for this signature in database
GPG Key ID: AE72287837C59F5F

@ -5,6 +5,11 @@
# Distributed under the GPL v2
# $Id$
20 Feb 2012; Robin H. Johnson <robbat2@gentoo.org> defaults/linuxrc:
With the new /usr mounting, if the device path that ends up in /proc/mounts
ends up being different than in /etc/fstab due to symlinks, mount -a will
always exit 32. Avoid by resolving symlinks like util-linux does.
14 Feb 2012; Robin H. Johnson <robbat2@gentoo.org> gen_compile.sh,
gen_initramfs.sh:
dmraid is entirely broken if you try to use the system static

@ -544,6 +544,9 @@ do
if [ "${REAL_ROOT}" = '/dev/nfs' ]; then
findnfsmount
else
# If $REAL_ROOT is a symlink
# Resolve it like util-linux mount does
[ -L ${REAL_ROOT} ] && REAL_ROOT=`readlink ${REAL_ROOT}`
# mount ro so fsck doesn't barf later
if [ "${REAL_ROOTFLAGS}" = '' ]; then
good_msg "Using mount -t ${ROOTFSTYPE} -o ${MOUNT_STATE}"
@ -777,6 +780,8 @@ fi
for fs in $fslist; do
dev=$(get_mount_device $fs)
# Resolve it like util-linux mount does
[ -L ${dev} ] && dev=`readlink ${dev}`
# In this case, it's probably part of the filesystem
# and not a mountpoint
[ -z "$dev" ] && continue

Loading…
Cancel
Save