Rename the rc binary to openrc
Debian requested this rename due to the "rc" binary conflicting with the "rc" binary from the plan 9 shell. We also add a deprecation warning to the binary when it is run as rc to encourage users to switch to openrc instead. X-Gentoo-Bug: 493958 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=493958
This commit is contained in:
parent
09733d3fae
commit
7b5fa011ac
5
README
5
README
@ -61,6 +61,11 @@ As of OpenRC-0.12, the net.* scripts, originally from Gentoo Linux, have
|
||||
been removed. If you need these scripts, look for a package called
|
||||
netifrc, which is maintained by them.
|
||||
|
||||
As of OpenRC-0.13, the /sbin/rc binary has been renamed /sbin/openrc.
|
||||
There is a /sbin/rc symbolic link in place currently in case you are
|
||||
still using the old name. However, it is strongly advised that you
|
||||
migrate your system to the new name.
|
||||
|
||||
Reporting Bugs
|
||||
--------------
|
||||
Since Gentoo Linux is hosting OpenRC development, Bugs should go to
|
||||
|
@ -1,7 +1,7 @@
|
||||
MAN3= einfo.3 \
|
||||
rc_config.3 rc_deptree.3 rc_find_pids.3 rc_plugin_hook.3 \
|
||||
rc_runlevel.3 rc_service.3 rc_stringlist.3
|
||||
MAN8= rc-service.8 rc-status.8 rc-update.8 rc.8 runscript.8 \
|
||||
MAN8= rc-service.8 rc-status.8 rc-update.8 openrc.8 runscript.8 \
|
||||
service.8 start-stop-daemon.8
|
||||
|
||||
# Handy macro to create symlinks
|
||||
|
@ -22,10 +22,10 @@
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.Dd May 2, 2009
|
||||
.Dt RC 8 SMM
|
||||
.Dt OPENRC 8 SMM
|
||||
.Os OpenRC
|
||||
.Sh NAME
|
||||
.Nm rc
|
||||
.Nm openrc
|
||||
.Nd stops and starts services for the specified runlevel
|
||||
.Sh SYNOPSIS
|
||||
.Nm
|
@ -63,7 +63,7 @@ otherwise -1.
|
||||
.Fl r , -resolve
|
||||
does the same and also prints the full path of the service to stdout.
|
||||
.Sh SEE ALSO
|
||||
.Xr rc 8 ,
|
||||
.Xr openrc 8 ,
|
||||
.Xr stdout 3
|
||||
.Sh AUTHORS
|
||||
.An Roy Marples <roy@marples.name>
|
||||
|
@ -66,7 +66,7 @@ exits 0, except when checking for crashed services and it doesn't find any.
|
||||
tries to list services within each runlevel in the presently resolved
|
||||
dependency order if the dependency tree is available.
|
||||
.Sh SEE ALSO
|
||||
.Xr rc 8 ,
|
||||
.Xr openrc 8 ,
|
||||
.Xr rc-update 8
|
||||
.Sh AUTHORS
|
||||
.An Roy Marples <roy@marples.name>
|
||||
|
@ -86,7 +86,7 @@ If the
|
||||
option is given then we either add or remove the runlevel from the runlevel.
|
||||
This allows inheritance of runlevels.
|
||||
.Sh SEE ALSO
|
||||
.Xr rc 8 ,
|
||||
.Xr openrc 8 ,
|
||||
.Xr rc-status 8
|
||||
.Sh AUTHORS
|
||||
.An Roy Marples <roy@marples.name>
|
||||
|
@ -44,7 +44,7 @@ is set to the name of the runlevel or name of the service.
|
||||
Plugins can affect the parent environment by writing NULL separated strings to
|
||||
.Va rc_environ_fd .
|
||||
.Sh SEE ALSO
|
||||
.Xr rc 8 ,
|
||||
.Xr openrc 8 ,
|
||||
.Xr runscript 8
|
||||
.Sh AUTHORS
|
||||
.An Roy Marples <roy@marples.name>
|
||||
|
@ -343,7 +343,7 @@ sets the following environment variables for use in the service scripts:
|
||||
.It Va RC_SVCNAME
|
||||
Name of the service.
|
||||
.It Va RC_RUNLEVEL
|
||||
Current runlevel that rc is in. Note that, in OpenRC, the reboot
|
||||
Current runlevel that OpenRC is in. Note that, in OpenRC, the reboot
|
||||
runlevel is mapped to the shutdown runlevel. This was done because most
|
||||
services do not need to know if a system is shutting down or rebooting.
|
||||
If you are writing a service that does need to know this, see the
|
||||
@ -536,7 +536,7 @@ Instead we return 1 to be compliant with Gentoo baselayout.
|
||||
Users are encouraged to use the is_newer_than function which returns correctly.
|
||||
.Sh SEE ALSO
|
||||
.Xr einfo 3 ,
|
||||
.Xr rc 8 ,
|
||||
.Xr openrc 8 ,
|
||||
.Xr rc-status 8 ,
|
||||
.Xr rc-update 8 ,
|
||||
.Xr rc_plugin_hook 3 ,
|
||||
|
@ -6,7 +6,7 @@
|
||||
# the old service state data
|
||||
: ${RC_LIBEXECDIR:=@LIBEXECDIR@}
|
||||
: ${RC_SVCDIR:=@LIBEXECDIR@/init.d}
|
||||
case "$(rc --sys)" in
|
||||
case "$(openrc --sys)" in
|
||||
OPENVZ|VSERVER) rm -rf "$RC_SVCDIR"/*;;
|
||||
*) if mountinfo --quiet "$RC_SVCDIR"; then
|
||||
rm -rf "$RC_SVCDIR"/*
|
||||
|
@ -37,7 +37,7 @@ fi
|
||||
|
||||
# /run is a new directory for storing volatile runtime data.
|
||||
# Read more about /run at https://lwn.net/Articles/436012
|
||||
sys="$(rc --sys)"
|
||||
sys="$(openrc --sys)"
|
||||
|
||||
if [ ! -d /run ]; then
|
||||
if [ "$sys" = VSERVER ]; then
|
||||
|
@ -1,4 +1,4 @@
|
||||
PROG= rc
|
||||
PROG= openrc
|
||||
SRCS= checkpath.c fstabinfo.c mountinfo.c start-stop-daemon.c \
|
||||
rc-applets.c rc-depend.c rc-logger.c \
|
||||
rc-misc.c rc-plugin.c rc-service.c rc-status.c rc-update.c \
|
||||
@ -11,7 +11,7 @@ SBINDIR= ${PREFIX}/sbin
|
||||
LINKDIR= ${LIBEXECDIR}
|
||||
|
||||
BINLINKS= rc-status
|
||||
SBINLINKS= rc-service rc-update runscript service start-stop-daemon
|
||||
SBINLINKS= rc rc-service rc-update runscript service start-stop-daemon
|
||||
RC_BINLINKS= einfon einfo ewarnn ewarn eerrorn eerror ebegin eend ewend \
|
||||
eindent eoutdent esyslog eval_ecolors ewaitfile \
|
||||
veinfo vewarn vebegin veend vewend veindent veoutdent \
|
||||
@ -90,5 +90,5 @@ install: all
|
||||
|
||||
check test::
|
||||
|
||||
links: rc
|
||||
$(call make-links,${ALL_LINKS},rc,.)
|
||||
links: $PROG
|
||||
$(call make-links,${ALL_LINKS},$PROG,.)
|
||||
|
@ -533,11 +533,18 @@ run_applets(int argc, char **argv)
|
||||
{
|
||||
size_t i;
|
||||
|
||||
/*
|
||||
* The "rc" applet is deprecated and should be referred to as
|
||||
* "openrc", so output a warning.
|
||||
*/
|
||||
if (strcmp(applet, "rc") == 0)
|
||||
ewarn("The 'rc' applet is deprecated; please use 'openrc' instead.");
|
||||
/* Bug 351712: We need an extra way to explicitly select an applet OTHER
|
||||
* than trusting argv[0], as argv[0] is not going to be the applet value if
|
||||
* we are doing SELinux context switching. For this, we allow calls such as
|
||||
* 'rc --applet APPLET', and shift ALL of argv down by two array items. */
|
||||
if (strcmp(applet, "rc") == 0 && argc >= 3 &&
|
||||
if ((strcmp(applet, "rc") == 0 || strcmp(applet, "openrc") == 0) &&
|
||||
argc >= 3 &&
|
||||
(strcmp(argv[1],"--applet") == 0 || strcmp(argv[1], "-a") == 0)) {
|
||||
applet = argv[2];
|
||||
argv += 2;
|
||||
@ -557,6 +564,6 @@ run_applets(int argc, char **argv)
|
||||
if (strncmp(applet, "mark_service_", strlen("mark_service_")) == 0)
|
||||
exit(do_mark_service(argc, argv));
|
||||
|
||||
if (strcmp(applet, "rc") != 0)
|
||||
if (strcmp(applet, "rc") != 0 && strcmp(applet, "openrc") != 0)
|
||||
eerrorx("%s: unknown applet", applet);
|
||||
}
|
||||
|
@ -125,7 +125,7 @@ cleanup(void)
|
||||
#endif
|
||||
|
||||
if (!rc_in_logger && !rc_in_plugin &&
|
||||
applet && strcmp(applet, "rc") == 0)
|
||||
applet && (strcmp(applet, "rc") == 0 || strcmp(applet, "openrc") == 0))
|
||||
{
|
||||
if (hook_out)
|
||||
rc_plugin_run(hook_out, runlevel);
|
||||
@ -724,7 +724,7 @@ handle_bad_signal(int sig)
|
||||
|
||||
#include "_usage.h"
|
||||
#define usagestring "" \
|
||||
"Usage: rc [options] [<runlevel>]"
|
||||
"Usage: openrc [options] [<runlevel>]"
|
||||
#define getoptstring "a:no:s:S" getoptstring_COMMON
|
||||
static const struct option longopts[] = {
|
||||
{ "applet", 1, NULL, 'a' },
|
||||
@ -864,7 +864,7 @@ main(int argc, char **argv)
|
||||
}
|
||||
|
||||
/* Enable logging */
|
||||
setenv("EINFO_LOG", "rc", 1);
|
||||
setenv("EINFO_LOG", "openrc", 1);
|
||||
|
||||
/* Export our PID */
|
||||
snprintf(pidstr, sizeof(pidstr), "%d", getpid());
|
||||
|
@ -5,24 +5,24 @@
|
||||
id:3:initdefault:
|
||||
|
||||
# System initialization, mount local filesystems, etc.
|
||||
si::sysinit:/sbin/rc sysinit
|
||||
si::sysinit:/sbin/openrc sysinit
|
||||
|
||||
# Further system initialization, brings up the boot runlevel.
|
||||
rc::bootwait:/sbin/rc boot
|
||||
rc::bootwait:/sbin/openrc boot
|
||||
|
||||
l0:0:wait:/sbin/rc shutdown
|
||||
l0:0:wait:/sbin/openrc shutdown
|
||||
l0s:0:wait:/sbin/halt -dhip
|
||||
l1:S1:wait:/sbin/rc single
|
||||
l2:2:wait:/sbin/rc nonetwork
|
||||
l3:3:wait:/sbin/rc default
|
||||
l4:4:wait:/sbin/rc default
|
||||
l5:5:wait:/sbin/rc default
|
||||
l6:6:wait:/sbin/rc reboot
|
||||
l1:S1:wait:/sbin/openrc single
|
||||
l2:2:wait:/sbin/openrc nonetwork
|
||||
l3:3:wait:/sbin/openrc default
|
||||
l4:4:wait:/sbin/openrc default
|
||||
l5:5:wait:/sbin/openrc default
|
||||
l6:6:wait:/sbin/openrc reboot
|
||||
l6r:6:wait:/sbin/reboot -d
|
||||
#z6:6:respawn:/sbin/sulogin
|
||||
|
||||
# new-style single-user
|
||||
su0:S:wait:/sbin/rc single
|
||||
su0:S:wait:/sbin/openrc single
|
||||
su1:S:wait:/sbin/sulogin
|
||||
|
||||
# TERMINALS
|
||||
|
Loading…
Reference in New Issue
Block a user