mtab: make /etc/mtab as a file configurable
This commit is contained in:
parent
7da72ce487
commit
b29b2fb3cb
23
NEWS.md
23
NEWS.md
@ -3,6 +3,29 @@
|
|||||||
This file will contain a list of notable changes for each release. Note
|
This file will contain a list of notable changes for each release. Note
|
||||||
the information in this file is in reverse order.
|
the information in this file is in reverse order.
|
||||||
|
|
||||||
|
## OpenRC-0.18.3
|
||||||
|
|
||||||
|
Modern Linux systems expect /etc/mtab to be a symbolic link to
|
||||||
|
/proc/self/mounts. Reasons for this change include support for mount
|
||||||
|
namespaces, which will not work if /etc/mtab is a file.
|
||||||
|
By default, the mtab service enforces this on each reboot.
|
||||||
|
|
||||||
|
If you find that this breaks your system in some way, please do the
|
||||||
|
following:
|
||||||
|
|
||||||
|
- Set mtab_is_file=yes in /etc/conf.d/mtab.
|
||||||
|
|
||||||
|
- Restart mtab. This will recreate the /etc/mtab file.
|
||||||
|
|
||||||
|
- Check for an issue on https://github.com/openrc/openrc/issues
|
||||||
|
explaining why you need /etc/mtab to be a file. If there isn't one,
|
||||||
|
please open one and explain in detail why you need this to be a file.
|
||||||
|
If there is one, please add your comments to it. Please give concrete
|
||||||
|
examples of why it is important that /etc/mtab be a file instead of a
|
||||||
|
symbolic link. Those comments will be taken into consideration for how
|
||||||
|
long to keep supporting mtab as a file or when the support can be
|
||||||
|
removed.
|
||||||
|
|
||||||
## OpenRC-0.18
|
## OpenRC-0.18
|
||||||
|
|
||||||
The behaviour of localmount and netmount in this version is changing. In
|
The behaviour of localmount and netmount in this version is changing. In
|
||||||
|
@ -15,7 +15,7 @@ include ${MK}/os.mk
|
|||||||
|
|
||||||
CONF-FreeBSD= ipfw moused powerd rarpd savecore syscons
|
CONF-FreeBSD= ipfw moused powerd rarpd savecore syscons
|
||||||
|
|
||||||
CONF-Linux= consolefont devfs dmesg hwclock keymaps killprocs modules
|
CONF-Linux= consolefont devfs dmesg hwclock keymaps killprocs modules mtab
|
||||||
|
|
||||||
CONF-NetBSD= moused rarpd savecore
|
CONF-NetBSD= moused rarpd savecore
|
||||||
|
|
||||||
|
5
conf.d/mtab
Normal file
5
conf.d/mtab
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
# This setting controls whether /etc/mtab is a file or symbolic link.
|
||||||
|
# Most of the time, you shouldn't touch this. However, if the default
|
||||||
|
# breaks your system in some way, please see the NEWS.md file that comes
|
||||||
|
# with OpenRC for the actions to take.
|
||||||
|
# mtab_is_file=no
|
@ -14,16 +14,17 @@ start()
|
|||||||
{
|
{
|
||||||
local rc=0
|
local rc=0
|
||||||
ebegin "Updating /etc/mtab"
|
ebegin "Updating /etc/mtab"
|
||||||
if [ -L /etc/mtab ] ; then
|
if ! checkpath -W /etc; then
|
||||||
ewarn "/etc/mtab is a symlink, not updating."
|
|
||||||
ewarn "FYI - You can safely remove mtab from your runlevels."
|
|
||||||
elif ! checkpath -W /etc; then
|
|
||||||
rc=1
|
rc=1
|
||||||
elif [ ! -e /etc/mtab ]; then
|
elif ! yesno ${mtab_is_file:-no}; then
|
||||||
einfo "Creating mtab symlink"
|
[ ! -L /etc/mtab ] && [ -f /etc/mtab] &&
|
||||||
|
ewarn "Removing /etc/mtab file"
|
||||||
|
einfo "Creating mtab symbolic link"
|
||||||
ln -snf /proc/self/mounts /etc/mtab
|
ln -snf /proc/self/mounts /etc/mtab
|
||||||
else
|
else
|
||||||
einfo "Updating mtab file"
|
[ -L /etc/mtab ] && ewarn "Removing /etc/mtab symbolic link"
|
||||||
|
rm -f /etc/mtab
|
||||||
|
einfo "Creating mtab file"
|
||||||
# With / as tmpfs we cannot umount -at tmpfs in localmount as that
|
# With / as tmpfs we cannot umount -at tmpfs in localmount as that
|
||||||
# makes / readonly and dismounts all tmpfs even if in use which is
|
# makes / readonly and dismounts all tmpfs even if in use which is
|
||||||
# not good. Luckily, umount uses /etc/mtab instead of /proc/mounts
|
# not good. Luckily, umount uses /etc/mtab instead of /proc/mounts
|
||||||
|
Loading…
x
Reference in New Issue
Block a user