3247184d86
I spoke with the prefix team sometime back and was told that they do not have an interest in using OpenRC on prefix systems.
45 lines
1.0 KiB
Plaintext
45 lines
1.0 KiB
Plaintext
#!@PREFIX@/sbin/runscript
|
|
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
|
|
# Released under the 2-clause BSD license.
|
|
|
|
description="Re-mount filesytems read-only for a clean reboot."
|
|
|
|
depend()
|
|
{
|
|
need killprocs savecache
|
|
keyword -openvz -vserver -lxc
|
|
}
|
|
|
|
start()
|
|
{
|
|
# Flush all pending disk writes now
|
|
sync; sync
|
|
|
|
ebegin "Remounting remaining filesystems read-only"
|
|
# We need the do_unmount function
|
|
. "$RC_LIBEXECDIR"/sh/rc-mount.sh
|
|
eindent
|
|
|
|
# Bug 381783
|
|
local rc_svcdir=$(echo $RC_SVCDIR | sed 's:/lib\(32\|64\)\?/:/lib(32|64)?/:g')
|
|
|
|
local m="/dev|/dev/.*|/proc|/proc.*|/sys|/sys/.*|${rc_svcdir}" x= fs=
|
|
m="$m|/bin|/sbin|/lib(32|64)?|/libexec"
|
|
# RC_NO_UMOUNTS is an env var that can be set by plugins
|
|
local IFS="$IFS:"
|
|
for x in $no_umounts $RC_NO_UMOUNTS; do
|
|
m="$m|$x"
|
|
done
|
|
m="^($m)$"
|
|
fs=
|
|
for x in $net_fs_list $extra_net_fs_list; do
|
|
fs="$fs${fs:+|}$x"
|
|
done
|
|
[ -n "$fs" ] && fs="^($fs)$"
|
|
do_unmount "umount -r" \
|
|
--skip-point-regex "$m" \
|
|
"${fs:+--skip-fstype-regex}" $fs --nonetdev
|
|
eoutdent
|
|
eend $?
|
|
}
|