rootfs-block/mount-root: remount root with /etc/fstab filesystem options
parent
17ed15182a
commit
57c6b805ce
9
dracut.8
9
dracut.8
|
|
@ -111,7 +111,14 @@ specify e.g. \fI/dev/sda1\fR or
|
||||||
"auto" if not specified, e.g. \fIrootfstype=ext3\fR
|
"auto" if not specified, e.g. \fIrootfstype=ext3\fR
|
||||||
.TP
|
.TP
|
||||||
.B rootflags=<mount options>
|
.B rootflags=<mount options>
|
||||||
specify additional mount options for the root filesystem
|
specify additional mount options for the root filesystem. If not set, /etc/fstab
|
||||||
|
of the real root will be parsed for special mount options and mounted
|
||||||
|
accordingly.
|
||||||
|
.TP
|
||||||
|
.B rd_NO_FSTAB
|
||||||
|
do not honor special mount options for the root filesystem found in
|
||||||
|
/etc/fstab of the real root.
|
||||||
|
|
||||||
.SH I18N
|
.SH I18N
|
||||||
e.g. LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=de-latin1-nodeadkeys
|
e.g. LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=de-latin1-nodeadkeys
|
||||||
.TP
|
.TP
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,33 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
|
. /lib/dracut-lib.sh
|
||||||
|
|
||||||
if [ -n "$root" -a -z "${root%%block:*}" ]; then
|
if [ -n "$root" -a -z "${root%%block:*}" ]; then
|
||||||
mount -t ${fstype:-auto} -o "$rflags" "${root#block:}" "$NEWROOT" && ROOTFS_MOUNTED=yes
|
mount -t ${fstype:-auto} -o "$rflags" "${root#block:}" "$NEWROOT" \
|
||||||
|
&& ROOTFS_MOUNTED=yes
|
||||||
|
|
||||||
|
if ! getarg rd_NO_FSTAB \
|
||||||
|
&& ! getarg rootflags \
|
||||||
|
&& [ -f "$NEWROOT/etc/fstab" ] \
|
||||||
|
&& ! [ -L "$NEWROOT/etc/fstab" ]; then
|
||||||
|
# if $NEWROOT/etc/fstab contains special mount options for
|
||||||
|
# the root filesystem,
|
||||||
|
# remount it with the proper options
|
||||||
|
rootfs="auto"
|
||||||
|
rootopts="defaults"
|
||||||
|
while read dev mp fs opts rest; do
|
||||||
|
if [ "$mp" = "/" ]; then
|
||||||
|
rootfs=$fs
|
||||||
|
rootopts=$opts
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done < "$NEWROOT/etc/fstab"
|
||||||
|
|
||||||
|
if [ "$rootopts" != "defaults" ]; then
|
||||||
|
umount $NEWROOT
|
||||||
|
info "Remounting ${root#block:} with -o $rflags,$rootopts"
|
||||||
|
mount -t "$rootfs" -o "$rflags","$rootopts" \
|
||||||
|
"${root#block:}" "$NEWROOT" 2>&1 | vinfo
|
||||||
|
fi
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
|
||||||
|
|
@ -282,3 +282,5 @@ exec switch_root "$NEWROOT" "$INIT" $initargs || {
|
||||||
echo "file a bug against dracut."
|
echo "file a bug against dracut."
|
||||||
emergency_shell
|
emergency_shell
|
||||||
}
|
}
|
||||||
|
# vim:ts=8:sw=4:sts=4:et
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue