Hello Michael, thanks for reporting this. I'll investigate and get back to you later, if necessary. Thanks, and best regards, Peter Müller > Hello, > > I just installed the latest nightly build from the ISO image and /etc/mtab is a regular file. > > Please see the attached screenshot. > > > > -Michael > >> On 12 Apr 2022, at 13:13, Michael Tremer wrote: >> >> Hello, >> >>> On 12 Apr 2022, at 13:01, Peter Müller wrote: >>> >>> Hello Michael, >>> >>>> Hello, >>>> >>>>> On 11 Apr 2022, at 20:14, Peter Müller wrote: >>>>> >>>>> mount, as updated via util-linux, no longer writes /etc/mtab, causing >>>>> programs to rely on this file's content (such as the check_disk Nagios >>>>> plugin) to stop working. >>>>> >>>>> /proc/self/mounts contains all the necessary information, so it is fine >>>>> to replace /etc/mtab by a symlink to it. >>>>> >>>>> Fixes: #12843 >>>>> >>>>> Signed-off-by: Peter Müller >>>>> --- >>>>> config/rootfiles/core/167/update.sh | 4 ++++ >>>>> lfs/cdrom | 4 ++-- >>>>> lfs/stage2 | 3 ++- >>>>> src/initscripts/system/mountfs | 6 ------ >>>>> src/initscripts/system/partresize | 6 ------ >>>>> 5 files changed, 8 insertions(+), 15 deletions(-) >>>>> >>>>> diff --git a/config/rootfiles/core/167/update.sh b/config/rootfiles/core/167/update.sh >>>>> index fdcb843cf..a9be60a1d 100644 >>>>> --- a/config/rootfiles/core/167/update.sh >>>>> +++ b/config/rootfiles/core/167/update.sh >>>>> @@ -337,6 +337,10 @@ hardlink -c -vv /lib/firmware >>>>> # Regenerate all initrds >>>>> dracut --regenerate-all --force >>>>> >>>>> +# Replace /etc/mtab by symlink as mount no longer writes it >>>>> +rm -vf /etc/mtab >>>>> +ln -vs /proc/self/mounts /etc/mtab >>>> >>>> Okay. This would work. >>> >>> this sounds like you would have done that in another way... >> >> No, I just wanted to say something positive and as you know I don’t do this very often, so I am not very good at it :) >> >> This is the way to go. >> >>>> >>>>> + >>>>> # Rebuild IPS rules >>>>> perl -e "require '/var/ipfire/ids-functions.pl'; &IDS::oinkmaster();" >>>>> /etc/init.d/suricata reload >>>>> diff --git a/lfs/cdrom b/lfs/cdrom >>>>> index f35ff6a35..d84f8c23c 100644 >>>>> --- a/lfs/cdrom >>>>> +++ b/lfs/cdrom >>>>> @@ -1,7 +1,7 @@ >>>>> ############################################################################### >>>>> # # >>>>> # IPFire.org - A linux based firewall # >>>>> -# Copyright (C) 2007-2021 IPFire Team # >>>>> +# Copyright (C) 2007-2022 IPFire Team # >>>>> # # >>>>> # This program is free software: you can redistribute it and/or modify # >>>>> # it under the terms of the GNU General Public License as published by # >>>>> @@ -149,7 +149,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) >>>>> >>>>> # Clear mtab (prevents .journal problems) >>>>> rm -vf /etc/mtab >>>>> - echo > /etc/mtab >>>>> + ln -s /proc/self/mounts /etc/mtab >>>> >>>> This however should not be required. >>> >>> Where does the symlink then come from on new installations? >> >> It will be part of the regular image like all the other symlinks, too. >> >> -Michael >> >>> >>> Thanks, and best regards, >>> Peter Müller >>> >>>> >>>> Shipping the symlink should be enough. It would be great to get rid of hacks like these. >>>> >>>>> # Create filelist for packaging. >>>>> BUILDTARGET="$(BUILDTARGET)" BUILD_ARCH="$(BUILD_ARCH)" KVER="$(KVER)" \ >>>>> diff --git a/lfs/stage2 b/lfs/stage2 >>>>> index 9f93babe2..39697a848 100644 >>>>> --- a/lfs/stage2 >>>>> +++ b/lfs/stage2 >>>>> @@ -87,7 +87,8 @@ endif >>>>> cp -rvf $(DIR_SRC)/config/etc/* /etc; >>>>> [ ! -d "$(DIR_SRC)/config/etc-$(BUILD_ARCH)" ] || cp -rvf $(DIR_SRC)/config/etc-$(BUILD_ARCH)/* /etc >>>>> cp -rvf $(DIR_SRC)/config/lib/* /lib; >>>>> - touch /etc/{fs,m}tab >>>>> + touch /etc/fstab >>>>> + ln -s /proc/self/mounts /etc/mtab >>>>> echo "$(NAME) v$(VERSION) - $(SLOGAN)" > /etc/issue >>>>> echo "===============================" >> /etc/issue >>>>> echo "\n running on \s \r \m" >> /etc/issue >>>>> diff --git a/src/initscripts/system/mountfs b/src/initscripts/system/mountfs >>>>> index b1533d6a2..81ed729c1 100644 >>>>> --- a/src/initscripts/system/mountfs >>>>> +++ b/src/initscripts/system/mountfs >>>>> @@ -31,12 +31,6 @@ case "${1}" in >>>>> # Remove fsck-related file system watermarks. >>>>> rm -f /fastboot /forcefsck >>>>> >>>>> - boot_mesg "Create /etc/mtab..." >>>>> - > /etc/mtab >>>>> - mount -f / || failed=1 >>>>> - (exit ${failed}) >>>>> - evaluate_retval >>>>> - >>>>> # This will mount all filesystems that do not have _netdev in >>>>> # their option list. _netdev denotes a network filesystem. >>>>> boot_mesg "Mounting remaining file systems..." >>>>> diff --git a/src/initscripts/system/partresize b/src/initscripts/system/partresize >>>>> index 7605b9e2b..147405e1e 100644 >>>>> --- a/src/initscripts/system/partresize >>>>> +++ b/src/initscripts/system/partresize >>>>> @@ -30,12 +30,6 @@ case "${1}" in >>>>> mount -o remount,rw / > /dev/null >>>>> evaluate_retval >>>>> >>>>> - boot_mesg "Create /etc/mtab..." >>>>> - > /etc/mtab >>>>> - mount -f / || failed=1 >>>>> - (exit ${failed}) >>>>> - evaluate_retval >>>>> - >>>>> # check if serial console enabled >>>>> scon="off"; >>>>> if [ ! "$(grep "console=ttyS0" /proc/cmdline)" == "" ]; then >>>>> -- >>>>> 2.34.1 > >