diff options
Diffstat (limited to 'sh')
-rw-r--r-- | sh/.gitignore | 1 | ||||
-rw-r--r-- | sh/Makefile | 3 | ||||
-rw-r--r-- | sh/migrate-to-run.sh.in | 36 |
3 files changed, 39 insertions, 1 deletions
diff --git a/sh/.gitignore b/sh/.gitignore index 69e3bd03..918a9f65 100644 --- a/sh/.gitignore +++ b/sh/.gitignore @@ -4,4 +4,5 @@ openrc-run.sh cgroup-release-agent.sh init.sh init-early.sh +migrate-to-run.sh binfmt.sh diff --git a/sh/Makefile b/sh/Makefile index 176e7209..259954c7 100644 --- a/sh/Makefile +++ b/sh/Makefile @@ -14,7 +14,8 @@ SRCS-FreeBSD= BIN-FreeBSD= SRCS-Linux= binfmt.sh.in cgroup-release-agent.sh.in init-early.sh.in \ -BIN-Linux= binfmt.sh cgroup-release-agent.sh init-early.sh + migrate-to-run.sh.in +BIN-Linux= binfmt.sh cgroup-release-agent.sh init-early.sh migrate-to-run.sh INC-Linux= rc-cgroup.sh SRCS-NetBSD= diff --git a/sh/migrate-to-run.sh.in b/sh/migrate-to-run.sh.in new file mode 100644 index 00000000..7dc85e66 --- /dev/null +++ b/sh/migrate-to-run.sh.in @@ -0,0 +1,36 @@ +#!/bin/sh +# Copyright (c) 2012-2015 The OpenRC Authors. +# See the Authors file at the top-level directory of this distribution and +# https://github.com/OpenRC/openrc/blob/master/AUTHORS +# +# This file is part of OpenRC. It is subject to the license terms in +# the LICENSE file found in the top-level directory of this +# distribution and at https://github.com/OpenRC/openrc/blob/master/LICENSE +# This file may not be copied, modified, propagated, or distributed +# except according to the terms contained in the LICENSE file. + +. "@LIBEXECDIR@/sh/functions.sh" + +if [ -e /run/openrc/softlevel ]; then + einfo "The OpenRC dependency data has already been migrated." + exit 0 +fi + +if [ ! -d /run ]; then + eerror "/run is not a directory." + eerror "moving /run to /run.pre-openrc" + mv /run /run.pre-openrc + mkdir /run +fi + +rm -rf /run/openrc + +if ! mountinfo -q -f tmpfs /run; then + ln -s "@LIBEXECDIR@"/init.d /run/openrc +else + cp -a "@LIBEXECDIR@/init.d" /run/openrc + rc-update -u +fi + +einfo "The OpenRC dependency data was migrated successfully." +exit 0 |