54 lines
970 B
Plaintext
54 lines
970 B
Plaintext
|
#!/sbin/openrc-run
|
||
|
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
|
||
|
# Released under the 2-clause BSD license.
|
||
|
|
||
|
description="Mount the root fs read/write"
|
||
|
|
||
|
depend()
|
||
|
{
|
||
|
need fsck
|
||
|
keyword -jail -openvz -prefix -vserver -lxc
|
||
|
}
|
||
|
|
||
|
start()
|
||
|
{
|
||
|
case ",$(fstabinfo -o /)," in
|
||
|
*,ro,*)
|
||
|
;;
|
||
|
*)
|
||
|
# Check if the rootfs isn't already writable.
|
||
|
if checkpath -W /; then
|
||
|
rm -f /fastboot /forcefsck
|
||
|
else
|
||
|
ebegin "Remounting root filesystem read/write"
|
||
|
case "$RC_UNAME" in
|
||
|
Linux)
|
||
|
mount -n -o remount,rw /
|
||
|
;;
|
||
|
*)
|
||
|
mount -u -o rw /
|
||
|
;;
|
||
|
esac
|
||
|
eend $? "Root filesystem could not be mounted read/write"
|
||
|
if [ $? -eq 0 ]; then
|
||
|
rm -f /fastboot /forcefsck
|
||
|
fi
|
||
|
fi
|
||
|
;;
|
||
|
esac
|
||
|
|
||
|
ebegin "Remounting filesystems"
|
||
|
local mountpoint
|
||
|
for mountpoint in $(fstabinfo); do
|
||
|
case "${mountpoint}" in
|
||
|
/)
|
||
|
;;
|
||
|
/*)
|
||
|
mountinfo -q "${mountpoint}" && \
|
||
|
fstabinfo --remount "${mountpoint}"
|
||
|
;;
|
||
|
esac
|
||
|
done
|
||
|
eend 0
|
||
|
}
|