Compare commits

..

23 Commits

Author SHA1 Message Date
Dantrell B
6b78f4c8e0 FL-227: Change how /etc/hosts is generated 2014-08-13 18:09:34 -04:00
Dantrell B
e8b4dc22cb FL-227: Add comment to conf.d/hostname about setting aliases 2014-08-13 18:09:06 -04:00
Dantrell B
5fb4b03366 FL-28: Add comment to conf.d/hostname about setting nisdomainname 2014-08-13 12:44:39 -04:00
Dantrell B
76581025ea FL-967: Improve comment in conf.d/hostname about setting hostname 2014-08-13 12:15:51 -04:00
Daniel Robbins
a559af4ff9 remove trailing whitespace in sysctl.Linux.in, which produces a warning during build 2014-08-12 13:35:09 -04:00
Daniel Robbins
35fe25ab06 FL-786: funtoo hostname changes 2014-08-12 13:35:09 -04:00
Daniel Robbins
a2e4cb2f89 FL-786: sysctl.Linux.in: set System V SHM to 25% of RAM 2014-08-12 13:35:09 -04:00
Oleg Vinichenko
0490a83134 FL-786: openrc: remove loopback interface 2014-08-12 13:35:08 -04:00
Steven Chamberlain
0853c110e5 Begin port to GNU/kFreeBSD
This is just a minimal port to get Debian up and running; the rest will
be done later.
2013-10-30 15:00:40 -05:00
William Hubbs
1a43ce11d0 bootmisc: do not run clean_run on VSERVER systems
X-Gentoo-Bug: 489370
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=489370
2013-10-28 15:40:47 -05:00
William Hubbs
46e504b403 loopback: do not run in a prefix or vserver
X-Gentoo-Bug: 489370
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=489370
2013-10-28 15:40:16 -05:00
William Hubbs
fc1f3d14f4 start 0.12.4 2013-10-28 15:39:19 -05:00
Alexander V Vershilov
b8a016aaba Add uml keyword to fsck service.
Fix relevant an issue mentioned by Toralf Förster.

X-Gentoo-Bug: 481096.
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=481096
2013-10-18 15:22:24 -05:00
William Hubbs
63f5256b59 start work on OpenRC-0.12.3 2013-10-18 15:19:52 -05:00
Daniel Robbins
c420f56856 FL-786: localmount: support filesystem mounting on openvz 2013-10-08 12:06:09 -05:00
Natanael Copa
5b0f323da9 librc: fix off-by-one bug
We need allocate space for both the added leading '-' and the trailing
'\0'.

Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
2013-10-08 12:06:09 -05:00
Natanael Copa
d86853538a librc: fix a read off-by-one bug
We should first check if we are within bounds and then read rather than
the opposite.

This makes valgrind happy.

Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
2013-10-08 12:06:09 -05:00
William Hubbs
f2c0e700c6 netmount: add -lxc keyword
Netmount should not run on lxc, thanks to Mark van Dijk <funtoo@internecto.net>.
2013-10-08 12:06:09 -05:00
William Hubbs
b1de9d7324 start-stop-daemon: fix do_stop calls
Several calls to do_stop were forcing the test parameter to be true,
which was causing extra output to the terminal, such as:

* Would send signal 0 to pid xxxxx

This should only happen if the --test command line option was used.

Conflicts:
	src/rc/start-stop-daemon.c
2013-10-08 12:06:09 -05:00
William Hubbs
5b4886d23e start-stop-daemon: fix eerorr calls in get_pid
The eerror calls in this function make it too verbose, so change them to
ewarnv() calls instead. This means that they will only print if the
--verbose option is used or EINFO_VERBOSE=yes is set in the environment.
2013-10-08 12:06:09 -05:00
William Hubbs
2a53efbc07 start work on OpenRC-0.12.2 2013-10-08 12:03:47 -05:00
William Hubbs
a530722f65 fix cgroup_cleanup function
The yesno test for rc_cgroup_cleanup belongs at the point where this
function is called from runscript, not in the function itself.

X-Gentoo-Bug: 486210
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=486210
2013-10-02 05:43:51 -05:00
William Hubbs
661e9cf002 start work on OpenRC 0.12.1 2013-10-02 05:40:18 -05:00
126 changed files with 600 additions and 1204 deletions

View File

@@ -5,9 +5,29 @@ removed, it should also be removed from this file.
---------------------------
What: oldnet ADSL rp-pppoe mode
When: undecided
Why: Replaced by the oldnet PPP module
Who: Robin H. Johnson <robbat2@gentoo.org>
---------------------------
What: oldnet /etc/conf.d/wireless
When: undecided
Why: All configuration moved to /etc/conf.d/net
Who: Robin H. Johnson <robbat2@gentoo.org>
---------------------------
What: Service pause action
When: 1.0
When: Removed already, compatbility warning in place.
Why: ...
@@ -15,9 +35,9 @@ Who:
---------------------------
What: start-stop-daemon options --startas, --chuid , --oknodo
What: Service --startas, --chuid , --oknodo
When: 1.0
When: undecided
Why: Obsolete or replaced by other options.
--startas => use --name or --exec
@@ -27,46 +47,3 @@ Why: Obsolete or replaced by other options.
Who:
---------------------------
What: runscript and rc symbolic links
When: 1.0
Why: Deprecated in favor of openrc-run and openrc due to naming
conflicts with other software.
Who:
---------------------------
What: support for the opts variable in service scripts
When: 1.0
Why: Depprecated in favor of extra_commands, extra_started_commands
and extra_stopped_commands.
Who:
---------------------------
What: support for local_start and local_stop
When: 1.0
Why: Depprecated in favor of executable scripts in @SYSCONFDIR@/local.d
Who:
---------------------------
What: the mtab service script
When: make warnings more visible in 1.0, remove in 2.0
Why: /etc/mtab should be a symbolic link to /proc/self/mounts on modern
Linux systems
Who:
---------------------------

View File

@@ -1,3 +1,3 @@
NAME= openrc
VERSION= 0.13
VERSION= 0.12.4
PKG= ${NAME}-${VERSION}

46
README
View File

@@ -61,30 +61,6 @@ 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, two binaries have been renamed due to naming
conflicts with other software. The /sbin/rc binary was renamed to
/sbin/openrc, and /sbin/runscript was renamed to /sbin/openrc-run.
Backward compatible symbolic links are currently in place so your
system will keep working if you are using the old names; however, it is
strongly advised that you migrate to the new names because the symbolic
links will be removed in the future.
Warnings have been added to assist with this migration; however, they
only show in verbose mode in this release due to the level of noise they
produce.
Also, the devfs script now handles the initial mounting and setup of the
/dev directory. If /dev has already been mounted by the kernel or an
initramfs, devfs will remount /dev with the correct mount options
instead of mounting a second /dev over the existing mount point.
It attempts to mount /dev from fstab first if an entry exists there. If
it doesn't it attempts to mount devtmpfs if it is configured in the
kernel. If not, it attempts to mount tmpfs.
If none of these is available, an error message is displayed and static
/dev is assumed.
Reporting Bugs
--------------
Since Gentoo Linux is hosting OpenRC development, Bugs should go to
@@ -92,3 +68,25 @@ the Gentoo Bugzilla:
http://bugs.gentoo.org/
They should be filed under the "Gentoo Hosted Projects" product and
the "openrc" component.
History - by Roy Marples
------------------------
I became a Gentoo/Linux developer in 2004 and wrote the modular network
scripts for the Gentoo baselayout package. baselayout is a collection of
bash scripts to bring up your computer and its services.
Then towards the end of 2005 I found myself as the primary maintainer
for baselayout.
At the start of 2007, baselayout-2 is announced to the world, re-writing the
core of baselayout in C and allowing POSIX sh init scripts instead of
forcing the use of bash. By Mid 2007 I have re-written everything, including
init scripts, and alpha and pre baselayout-2 snapshots where put into Gentoo.
Towards the end of 2007 I retired as a Gentoo developer for reasons I won't
go into here. baselayout-2 was still in the pre stage, and aside from the
fbsd users, it was masked everywhere. However, I also desired to keep the
baselayout-2 project alive, but outside of Gentoo and into other projects
such as FreeBSD.
As such, the Gentoo Council have allowed the creation of OpenRC under the
2 clause BSD license, managed by me as an external project.

View File

@@ -8,24 +8,21 @@ counterparts. Since it is possible to configure busybox to not include
these applets or to prefer the standalone counterparts, OpenRC does not
attempt to support the busybox applets.
For now, it is recommended that you disable the following busybox
configuration settings for best results with OpenRC.
All of these apply to busybox 1.20.2, which is the current version of
busybox as of this writing.
CONFIG_START_STOP_DAEMON -- The start-stop-daemon applet is not compatible with
start-stop-daemon in OpenRC.
1. The start-stop-daemon applet is not compatible with start-stop-daemon
in OpenRC. Please make sure CONFIG_START_STOP_DAEMON is not set to y in
the configuration file you use to build busybox.
CONFIG_MOUNT -- The mount applet does not support the -O [no]_netdev options to
skip over or include network file systems when the -a option is present.
2. The -O option for the mount applet does not support the [no]_netdev
options from util-linux for handling network file systems.
CONFIG_UMOUNT -- The umount applet does not support the -O option along with -a.
3. The umount applet does not support the -O option from util-linux.
CONFIG_SWAPONOFF -- The swapon applet does not support the -e option
or recognize the nofail option in fstab.
4. The swapon applet does not support the -e option from util-linux.
CONFIG_SETFONT -- The setfont applet does not support the -u option from kbd.
CONFIG_IP -- The ip applet doesn't support the "scope" modifier for
"ip route add" and "ip address add".
5. the setfont applet does not support the -u option from kbd.
There is work to get most of these supported by busybox, so this file
will be updated as things change.

View File

@@ -1,55 +0,0 @@
This history of OpenRC was written by Daniel Robbins, Roy Marples, William
Hubbs and others.
The Gentoo modular init scripts were developed by Daniel Robbins for Gentoo
Linux 1.0_rc6 during most of 2001 and released in September 2001. After their
development, the dependency-based init script system was maintained by a
number of senior developers, starting with Azarah (Martin Schlemmer), with
migration to the new init system assisted by Woodchip (Donnie Davies) who
converted all ebuild init scripts to work with the new system. As Grant
Goodyear notes:
"My recollection is that one of woodchip's more impressive early feats
was the complete replacement of all of the init scripts in Portage
for Gentoo Linux 1.0_rc6. Through 1.0_rc5 Gentoo had used fairly
standard rc scripts modified from Stampede Linux, but for 1.0_rc6 Daniel
Robbins (drobbins) and Martin Schlemmer (azarah) had created a new
dependency-based init script system that is still used today. Within a
span of days Donny rewrote every single init script in the Portage tree
and committed new masked packages to await the release of 1.0_rc6. Thanks to
woodchip (and drobbins and azarah, of course) the
transition to the new init scripts was nearly painless." [1]
Roy Marples became a Gentoo/Linux developer in 2004 and wrote the modular
network scripts for the Gentoo baselayout package. Towards the end of 2005,
he became the primary maintainer for baselayout and the init scripts.
At the start of 2007, He announced the ongoing development of
baselayout-2, containing a rewritten core coded in C and allowing POSIX sh
init scripts instead of forcing the use of bash. By mid 2007, He had
re-implemented the Gentoo init script design created by Daniel Robbins,
using an entirely new code base. Alpha and pre-release baselayout-2
snapshots were added to Gentoo's Portage tree as an optional component.
Toward the end of 2007, Roy retired as a Gentoo developer.
Baselayout-2 was still in the pre stage, and aside from the gentoo-fbsd
users, it was masked. However, He desired to keep the baselayout-2
project moving forward as an independent project. The Gentoo Council
permitted Him to release OpenRC under the 2-clause BSD license,
managed by him as an external project.
Around mid-2010, Roy decided to no longer maintain OpenRC. At this
point, he transferred development back to Gentoo.
William Hubbs, and several other Gentoo developers, started working on
OpenRC around this point and brought OpenRC-0.8.x to Gentoo Linux's stable
tree in 2011.
In 2013 the OpenRC team became independent from Gentoo again and moved primary
development to github.
Daniel Robbins continues to maintain an independent, forked
version of OpenRC for Funtoo Linux, which includes a Funtoo-specific network
configuration system.
[1] http://www.gentoo.org/news/en/gwn/20040426-newsletter.xml

View File

@@ -15,7 +15,7 @@ include ${MK}/os.mk
CONF-FreeBSD= ipfw moused powerd rarpd savecore syscons
CONF-Linux= consolefont devfs dmesg hwclock keymaps killprocs modules
CONF-Linux= consolefont dmesg hwclock keymaps killprocs modules
CONF-NetBSD= moused rarpd savecore

View File

@@ -1,8 +0,0 @@
# OpenRC will attempt each of the following in succession to mount /dev.
#
# 1. If there is an entry for /dev in fstab, it will be used.
# 2. If devtmpfs is defined in the kernel, it will be used.
# 3. If tmpfs is defined in the kernel, it will be used.
#
# Set this to yes if you do not want OpenRC to attempt to mount /dev.
# skip_mount_dev="NO"

View File

@@ -1,2 +1,15 @@
# Set to the hostname of this machine
# Set to the fully qualified domain name (e.g. "mybox.example.com") of
# this machine, if it has one, otherwise set to the machine name
# (e.g. "mybox").
hostname="localhost"
# Set to the NIS domain name of this machine, if it has one, otherwise
# leave commented out.
#nisdomainname="localdomain.com"
# Set other alias-to-address mappings, if needed, otherwise leave
# commented out.
#aliases="127.0.0.1 mybox
#10.0.0.1 mylaptop
#172.16.0.1 myserver
#192.168.0.1 myworkstation"

View File

@@ -7,8 +7,8 @@ clock="UTC"
# If you want the hwclock script to set the system time (software clock)
# to match the current hardware clock during bootup, leave this
# commented out.
# However, you can set this to "NO" if you are running a modern kernel
# and using NTP to synchronize your system clock.
# However, you can set this to "NO" ifyou are running a modern kernel
# with CONFIG_RTC_HCTOSYS set to y and your hardware clock set to UTC.
#clock_hctosys="YES"
# If you do not want to set the hardware clock to the current system

View File

@@ -18,6 +18,6 @@ extended_keymaps=""
# For a list of valid sets, run `dumpkeys --help`
dumpkeys_charset=""
# Some fonts map AltGr-E to the currency symbol instead of the Euro.
# Some fonts map AltGr-E to the currency symbol ¤ instead of the Euro
# To fix this, set to "yes"
fix_euro="NO"

View File

@@ -51,10 +51,6 @@
# The default value is: /var/log/rc.log
#rc_log_path="/var/log/rc.log"
# If you want verbose output for OpenRC, set this to yes. If you want
# verbose output for service foo only, set it to yes in /etc/conf.d/foo.
#rc_verbose=no
# By default we filter the environment for our running scripts. To allow other
# variables through, add them here. Use a * to allow all variables through.
#rc_env_allow="VAR1 VAR2"
@@ -77,10 +73,6 @@
#rc_crashed_stop=NO
#rc_crashed_start=YES
# Set rc_nocolor to yes if you do not want colors displayed in OpenRC
# output.
#rc_nocolor=NO
##############################################################################
# MISC CONFIGURATION VARIABLES
# There variables are shared between many init scripts
@@ -94,7 +86,7 @@
# Below is the default list of network fstypes.
#
# afs ceph cifs coda davfs fuse fuse.sshfs gfs glusterfs lustre ncpfs
# afs cifs coda davfs fuse fuse.sshfs gfs glusterfs lustre ncpfs
# nfs nfs4 ocfs2 shfs smbfs
#
# If you would like to add to this list, you can do so by adding your

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
@@ -53,7 +53,7 @@ start_pre()
eend $?
fi
else
if command -v kldload >/dev/null 2>&1; then
if type kldload >/dev/null 2>&1; then
# Hammer the modules home by default
sysctl -a | grep -q '\.tun\.' || kldload if_tun
sysctl -a | grep -q '\.tap\.' || kldload if_tap

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

4
init.d/.gitignore vendored
View File

@@ -3,8 +3,9 @@ fsck
hostname
local
localmount
loopback
moused
net.lo
net.lo0
netmount
network
root
@@ -40,5 +41,4 @@ syslogd
termencoding
ttys
wscons
tmpfiles.dev
tmpfiles.setup

View File

@@ -1,7 +1,7 @@
include ../mk/net.mk
DIR= ${INITDIR}
SRCS= bootmisc.in fsck.in hostname.in local.in localmount.in loopback.in \
SRCS= bootmisc.in fsck.in hostname.in local.in localmount.in \
netmount.in root.in savecache.in swap.in swapfiles.in \
tmpfiles.setup.in swclock.in sysctl.in urandom.in ${SRCS-${OS}}
BIN= ${OBJS}

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
@@ -6,7 +6,7 @@ depend()
{
need localmount
before logger
after clock root sysctl
after clock sysctl
keyword -prefix -timeout
}
@@ -68,7 +68,7 @@ cleanup_var_run_dir()
do
# Clean stale sockets
if [ -S "$x" ]; then
if command -v fuser >/dev/null 2>&1; then
if type fuser >/dev/null 2>&1; then
fuser "$x" >/dev/null 2>&1 || rm -- "$x"
else
rm -- "$x"
@@ -117,7 +117,7 @@ migrate_to_run()
clean_run()
{
[ "$RC_SYS" = VSERVER -o "$RC_SYS" = LXC ] && return 0
[ "$RC_SYS" = VSERVER ] && return 0
local dir
dir=$(mktemp -d)
mount --bind / $dir
@@ -129,9 +129,7 @@ clean_run()
start()
{
# Remove any added console dirs
if checkpath -W "$RC_LIBEXECDIR"; then
rm -rf "$RC_LIBEXECDIR"/console/*
fi
rm -rf "$RC_LIBEXECDIR"/console/*
local logw=false runw=false extra=
# Ensure that our basic dirs exist

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,79 +1,21 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
description="Set up the /dev directory"
description="Mount system critical filesystems in /dev."
depend()
{
provide dev-mount
depend() {
use dev-mount
before dev
keyword -prefix -vserver -lxc
}
mount_dev()
{
local action=--mount devfstype msg=Mounting
# Some devices require exec, Bug #92921
local mountopts="exec,nosuid,mode=0755"
if yesno ${skip_mount_dev:-no} ; then
einfo "/dev will not be mounted due to user request"
return 0
fi
if mountinfo -q /dev; then
action=--remount
mountopts="remount,$mountopts"
msg=Remounting
fi
if fstabinfo -q /dev; then
ebegin "$msg /dev according to @SYSCONFDIR@/fstab"
fstabinfo -q $action /dev
eend $?
return 0
fi
if grep -q devtmpfs /proc/filesystems; then
devfstype=devtmpfs
mountopts="$mountopts,size=10M"
elif grep -q tmpfs /proc/filesystems; then
devfstype=tmpfs
mountopts="$mountopts,size=10M"
fi
if [ -n "$devfstype" ]; then
ebegin "$msg $devfstype on /dev"
mount -n -t $devfstype -o $mountopts dev /dev
eend $?
else
ewarn "This kernel does not have devtmpfs or tmpfs support, and there"
ewarn "is no entry for /dev in fstab."
ewarn "This means /dev will not be mounted."
ewarn "To avoid this message, set CONFIG_DEVTMPFS or CONFIG_TMPFS to y"
ewarn "in your kernel configuration or see @SYSCONFDIR@/conf.d/devfs"
fi
return 0
}
seed_dev()
{
# Seed /dev with some things that we know we need
# creating /dev/console, /dev/tty and /dev/tty1 to be able to write
# to $CONSOLE with/without bootsplash before udevd creates it
[ -c /dev/console ] || mknod -m 600 /dev/console c 5 1
[ -c /dev/tty1 ] || mknod -m 620 /dev/tty1 c 4 1
[ -c /dev/tty ] || mknod -m 666 /dev/tty c 5 0
# udevd will dup its stdin/stdout/stderr to /dev/null
# and we do not want a file which gets buffered in ram
[ -c /dev/null ] || mknod -m 666 /dev/null c 1 3
# so udev can add its start-message to dmesg
[ -c /dev/kmsg ] || mknod -m 660 /dev/kmsg c 1 11
start() {
# Mount required stuff as user may not have then in /etc/fstab
for x in \
"mqueue /dev/mqueue 1777 ,nodev mqueue" \
"devpts /dev/pts 0755 ,gid=5,mode=0620 devpts" \
"tmpfs /dev/shm 1777 ,nodev,mode=1777 shm" \
"tmpfs /dev/shm 1777 ,nodev shm" \
; do
set -- $x
grep -Eq "[[:space:]]+$1$" /proc/filesystems || continue
@@ -92,23 +34,5 @@ seed_dev()
eend $?
fi
done
}
restorecon_dev()
{
if [ -x /sbin/restorecon ]; then
ebegin "Restoring SELinux contexts in /dev"
restorecon -rF /dev >/dev/null 2>&1
eend $?
fi
return 0
}
start()
{
mount_dev
seed_dev
restorecon_dev
return 0
}

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright 1992-2012 FreeBSD Project
# Released under the 2-clause BSD license

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
@@ -40,7 +40,7 @@ reset()
{
local uuid= x="[0-9a-f]" y="$x$x$x$x"
if command -v kenv >/dev/null 2>&1; then
if type kenv >/dev/null 2>&1; then
uuid=$(kenv smbios.system.uuid 2>/dev/null)
fi
case "$uuid" in

View File

@@ -1,18 +1,57 @@
#!@SBINDIR@/openrc-run
#!@PREFIX@/sbin/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
description="Sets the hostname of the machine."
depend() {
keyword -prefix -lxc
need root
}
start()
{
# HOSTNAME variable used to be defined in caps in conf.d/hostname.
# It is also a magic variable in bash.
hostname=${hostname-${HOSTNAME-localhost}} # checkbashisms: false positive
hostname=${hostname-${HOSTNAME-localhost}}
out=$hostname
short=${hostname%%.*}
if [ "$short" != "$hostname" ]; then
out="$out $short"
fi
if [ "$nisdomainname" != "" ]; then
ebegin "Setting NIS domain name to $nisdomainname"
nisdomainname $nisdomainname
eend $? "Failed to set the NIS domain name"
fi
if [ "$short" != "localhost" ]; then
out="$out localhost"
fi
if [ "$hostname" != "localhost.localdomain" ]; then
out="$out localhost.localdomain"
fi
[ -n "$aliases" ] && out2="$aliases"
ebegin "Configuring /etc/hosts"
cat << END > /etc/hosts
# Local Host Database
#
# This AUTOMATICALLY-GENERATED file describes a number of aliases-to-address
# mappings for the local hosts that share this file.
#
# In the presence of the domain name service or NIS, this file may not be
# consulted at all; see /etc/host.conf for the resolution order.
#
# DO NOT EDIT THIS FILE BY HAND; YOUR CHANGES WILL BE OVERWRITTEN
#
# Define alias-to-address mappings in /etc/conf.d/hostname
# IPv4 and IPv6 localhost aliases
127.0.0.1 $out
::1 $out
# Other aliases
$out2
END
chmod 0644 /etc/hosts
eend $?
[ "$RC_SYS" = "LXC" ] && return 0
ebegin "Setting hostname to $hostname"
hostname "$hostname"
eend $? "Failed to set the hostname"

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
@@ -83,17 +83,22 @@ start()
fi
fi
# Always set the kernel's time zone.
_hwclock --systz $utc_cmd $clock_args
: $(( retval += $? ))
if [ -e /etc/adjtime ] && yesno $clock_adjfile; then
_hwclock --adjust $utc_cmd
: $(( retval += $? ))
fi
if yesno ${clock_hctosys:-YES}; then
_hwclock --hctosys $utc_cmd $clock_args
# If setting UTC, don't bother to run hwclock when first booting
# as that's the default
if [ "$PREVLEVEL" != N -o \
"$utc_cmd" != --utc -o \
-n "$clock_args" ];
then
if yesno ${clock_hctosys:-YES}; then
_hwclock --hctosys $utc_cmd $clock_args
else
_hwclock --systz $utc_cmd $clock_args
fi
: $(( retval += $? ))
fi

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
@@ -12,73 +12,40 @@ depend()
start()
{
ebegin "Starting local"
einfo "Starting local"
local file has_errors=0 retval
eindent
for file in @SYSCONFDIR@/local.d/*.start; do
if [ -x "${file}" ]; then
vebegin "Executing \"${file}\""
"${file}" 2>&1 >/dev/null
retval=$?
if [ ${retval} -ne 0 ]; then
has_errors=1
fi
veend ${retval} "Execution of \"${file}\" failed."
fi
local file
for file in @SYSCONFDIR@/local.d/*.start ; do
[ -x "$file" ] && "$file"
done
eoutdent
if command -v local_start >/dev/null 2>&1; then
ewarn "\"@SYSCONFDIR@/conf.d/local\" should be removed."
if type local_start >/dev/null 2>&1; then
ewarn "@SYSCONFDIR@/conf.d/local should be removed."
ewarn "Please move the code from the local_start function"
ewarn "to executable scripts with an .start extension"
ewarn "in \"@SYSCONFDIR@/local.d\""
ewarn "to scripts with an .start extension"
ewarn "in @SYSCONFDIR@/local.d"
local_start
fi
eend ${has_errors}
# We have to end with a zero exit code, because a failed execution
# of an executable @SYSCONFDIR@/local.d/*.start file shouldn't result in
# marking the local service as failed. Otherwise we are unable to
# execute any executable @SYSCONFDIR@/local.d/*.stop file, because a failed
# marked service cannot be stopped (and the stop function would
# actually call the executable @SYSCONFDIR@/local.d/*.stop file(s)).
return 0
eend 0
}
stop()
{
ebegin "Stopping local"
einfo "Stopping local"
local file has_errors=0 retval
eindent
local file
for file in @SYSCONFDIR@/local.d/*.stop; do
if [ -x "${file}" ]; then
vebegin "Executing \"${file}\""
"${file}" 2>&1 >/dev/null
retval=$?
if [ ${retval} -ne 0 ]; then
has_errors=1
fi
veend ${retval} "Execution of \"${file}\" failed."
fi
[ -x "$file" ] && "$file"
done
eoutdent
if command -v local_stop >/dev/null 2>&1; then
ewarn "\"@SYSCONFDIR@/conf.d/local\" should be removed."
if type local_start >/dev/null 2>&1; then
ewarn "@SYSCONFDIR@/conf.d/local should be removed."
ewarn "Please move the code from the local_stop function"
ewarn "to executable scripts with an .stop extension"
ewarn "in \"@SYSCONFDIR@/local.d\""
ewarn "to scripts with an .stop extension"
ewarn "in @SYSCONFDIR@/local.d"
local_stop
fi
eend ${has_errors}
# An executable @SYSCONFDIR@/local.d/*.stop file which failed with a
# non-zero exit status is not a reason to mark this service
# as failed, therefore we have to end with a zero exit code.
return 0
eend 0
}

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
@@ -59,7 +59,7 @@ stop()
no_umounts_r="^($no_umounts_r)$"
# Flush all pending disk writes now
sync
sync; sync
. "$RC_LIBEXECDIR"/sh/rc-mount.sh

View File

@@ -1,35 +0,0 @@
#!@SBINDIR@/openrc-run
# Copyright (c) 2013 William Hubbs <w.d.hubbs@gmail.com>
# Released under the 2-clause BSD license.
description="Configures the loopback interface."
depend()
{
keyword -jail -prefix -vserver
}
start()
{
if [ "$RC_UNAME" = Linux ]; then
ebegin "Bringing up network interface lo"
if command -v ip > /dev/null 2>&1; then
ip addr add 127.0.0.1/8 dev lo brd + scope host
ip route add 127.0.0.0/8 dev lo scope host
ip link set lo up
else
ifconfig lo 127.0.0.1 netmask 255.0.0.0
route add -net 127.0.0.0 netmask 255.0.0.0 gw 127.0.0.1
fi
else
ebegin "Bringing up network interface lo0"
ifconfig lo0 127.0.0.1 netmask 255.0.0.0
route -q add -inet 127.0.0.0 -netmask 255.0.0.0 127.0.0.1
fi
eend $?
}
stop()
{
return 0
}

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
@@ -15,7 +15,7 @@ start()
local ret=0
# Flush all pending disk writes now
sync
sync; sync
ebegin "Remounting remaining filesystems read-only"
# We need the do_unmount function

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
@@ -12,16 +12,13 @@ depend()
start()
{
if [ -L /etc/mtab ]; then
if [ -L /etc/mtab ]
then
einfo "Skipping mtab update (mtab is a symbolic link)"
return 0
fi
ebegin "Updating /etc/mtab"
vewarn "The support for updating /etc/mtab as a file is"
vewarn "deprecated and will be removed in the future."
vewarn "Please run the following command as root on your system."
vewarn
vewarn "ln -snf /proc/self/mounts /etc/mtab"
if ! echo 2>/dev/null >/etc/mtab; then
ewend 1 "/etc/mtab is not updateable"
return 0

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
@@ -46,11 +46,7 @@ sys_interfaces()
local w= rest= i= cmd=$1
while read w rest; do
i=${w%%:*}
case "$i" in
"$w") continue ;;
lo|lo0) continue ;;
*) ;;
esac
[ "$i" != "$w" ] || continue
if [ "$cmd" = u ]; then
ifconfig "$i" | grep -q "[ ]*UP" || continue
fi

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
@@ -17,7 +17,7 @@ depend() {
start()
{
ebegin "Starting $name"
if command -v kldload >/dev/null 2>&1; then
if type kldload >/dev/null 2>&1; then
kldload pf 2>/dev/null
fi
pfctl -q -F all

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
@@ -61,10 +61,10 @@ start()
fi
# Setup Kernel Support for SELinux
if [ -d /sys/fs/selinux ] && ! mountinfo -q /sys/fs/selinux; then
if [ -d /selinux ] && ! mountinfo -q /selinux; then
if grep -qs selinuxfs /proc/filesystems; then
ebegin "Mounting SELinux filesystem"
mount -t selinuxfs selinuxfs /sys/fs/selinux
mount -t selinuxfs selinuxfs /selinux
eend $?
fi
fi

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
@@ -17,7 +17,7 @@ start()
{
ebegin "Setting the local clock based on last shutdown time"
if ! swclock 2> /dev/null; then
swclock --warn @SBINDIR@/openrc-run
swclock --warn @SBINDIR@/runscript
fi
eend $?
}

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,16 +1,42 @@
#!@SBINDIR@/openrc-run
#!@PREFIX@/sbin/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
depend()
{
before bootmisc logger
keyword -prefix -vserver
keyword -lxc -vserver
}
start()
{
local conf= retval=0 err errs
ebegin "Configuring kernel parameters"
sysctl --system
eend $? "Unable to configure some kernel parameters"
eindent
# default sysctl System V max shared memory to 1/4 of RAM:
mem_bytes=`awk '/MemTotal:/ { printf "%0.f",$2 * 1024}' /proc/meminfo`
mem_max=`expr $mem_bytes / 4`
page_size=`getconf PAGE_SIZE`
shmall=`expr $mem_bytes / $page_size`
sysctl kernel.shmmax=$mem_max > /dev/null
sysctl kernel.shmall=$shmall > /dev/null
for conf in @SYSCONFDIR@/sysctl.conf @SYSCONFDIR@/sysctl.d/*.conf; do
if [ -r "$conf" ]; then
vebegin "applying $conf"
if ! err=$(sysctl -p "$conf" 2>&1 >/dev/null) ; then
errs="${errs} ${err}"
sysctl -e -p "${conf}" >/dev/null
fi
veend $? || retval=1
fi
done
eoutdent
if [ ${retval} -eq 0 ] && [ -n "${errs}" ] ; then
ewarn "Unknown keys:${errs}"
fi
eend $retval "Some errors were encountered: ${errs}"
}

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
@@ -99,8 +99,7 @@ mount_misc()
mount_cgroups()
{
mountinfo -q /sys/fs/cgroup || return 0
mountinfo -q /sys/fs/cgroup/openrc || return 0
mountinfo -q /sys/fs/cgroup || return 0
local agent="@LIBEXECDIR@/sh/cgroup-release-agent.sh"
mkdir /sys/fs/cgroup/openrc
@@ -120,18 +119,6 @@ mount_cgroups()
done < /proc/cgroups
}
restorecon_sys()
{
if [ -x /sbin/restorecon ]; then
ebegin "Restoring SELinux contexts in /sys"
restorecon -F /sys/devices/system/cpu/online >/dev/null 2>&1
restorecon -rF /sys/fs/cgroup >/dev/null 2>&1
eend $?
fi
return 0
}
start()
{
local retval
@@ -145,8 +132,5 @@ start()
mount_cgroups
retval=$?
fi
restorecon_sys
return $retval
}

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2008-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright 1999-2012 Gentoo Foundation
# Released under the 2-clause BSD license.
@@ -14,7 +14,8 @@ depend()
start()
{
ebegin "setting up tmpfiles.d entries for /dev"
@LIBEXECDIR@/sh/tmpfiles.sh --prefix=/dev --create ${tmpfiles_opts}
@LIBEXECDIR@/sh/tmpfiles.sh --prefix=/dev --create --remove \
${tmpfiles_opts}
eend $?
return 0
}

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright 1999-2012 Gentoo Foundation
# Released under the 2-clause BSD license.
@@ -12,7 +12,7 @@ depend()
start()
{
ebegin "setting up tmpfiles.d entries"
@LIBEXECDIR@/sh/tmpfiles.sh --exclude-prefix=/dev --create --remove --boot \
@LIBEXECDIR@/sh/tmpfiles.sh --exclude-prefix=/dev --create --remove \
${tmpfiles_opts}
eend $?
return 0

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run
#!@SBINDIR@/runscript
# Copyright (c) 2008-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

View File

@@ -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 openrc.8 openrc-run.8 \
MAN8= rc-service.8 rc-status.8 rc-update.8 rc.8 runscript.8 \
service.8 start-stop-daemon.8
# Handy macro to create symlinks

View File

@@ -105,8 +105,7 @@ and
respectively, but only work when
.Va EINFO_VERBOSE
is true. You can also make the
.Fn einfo ,
.Fn ewarn ,
.Fn einfo
and
.Fn ebegin
functions silent by setting
@@ -185,12 +184,6 @@ when set to true makes the
and
.Fn einfon
family of functions quiet, so nothing is printed.
.Va EERROR_QUIET
when set to true makes the
.Fn eerror
and
.Fn eerrorn
family of functions quiet, so nothing is printed.
.Pp
.Va EINFO_VERBOSE
when set to true makes the

View File

@@ -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 openrc 8 ,
.Xr rc 8 ,
.Xr stdout 3
.Sh AUTHORS
.An Roy Marples <roy@marples.name>

View File

@@ -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 openrc 8 ,
.Xr rc 8 ,
.Xr rc-update 8
.Sh AUTHORS
.An Roy Marples <roy@marples.name>

View File

@@ -21,7 +21,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.Dd Jan 13, 2014
.Dd May 2, 2009
.Dt RC-UPDATE 8 SMM
.Os OpenRC
.Sh NAME
@@ -35,7 +35,6 @@
.Op Ar runlevel ...
.Nm
.Op Fl s , -stack
.Op Fl a , -all
.Ar delete
.Ar service
.Op Ar runlevel ...
@@ -54,8 +53,7 @@ All services must reside in the
or
.Pa /usr/local/etc/init.d
directories.
They must also be standard OpenRC scripts, meaning they must use
openrc-run.
They must also conform to the OpenRC runscript standard.
.Pp
.Bl -tag -width "Fl a , -delete service"
.It Ar add Ar service
@@ -87,16 +85,8 @@ If the
.Fl s , -stack
option is given then we either add or remove the runlevel from the runlevel.
This allows inheritance of runlevels.
If the
.Fl a, -all
option is given, we remove the service from all runlevels. This is
useful, for example, to clean up the dangling symlinks after a service
is removed.
.Sh SEE ALSO
.Xr openrc 8 ,
.Xr openrc-run 8 ,
.Xr rc 8 ,
.Xr rc-status 8
.Sh AUTHORS
.An Roy Marples <roy@marples.name>
.An The OpenRC Team <openrc@gentoo.org>

View File

@@ -22,10 +22,10 @@
.\" SUCH DAMAGE.
.\"
.Dd May 2, 2009
.Dt OPENRC 8 SMM
.Dt RC 8 SMM
.Os OpenRC
.Sh NAME
.Nm openrc
.Nm rc
.Nd stops and starts services for the specified runlevel
.Sh SYNOPSIS
.Nm

View File

@@ -107,6 +107,6 @@ when done.
.Xr malloc 3 ,
.Xr free 3 ,
.Xr rc_stringlist_free 3 ,
.Xr openrc-run 8
.Xr runscript 8
.Sh AUTHORS
.An Roy Marples <roy@marples.name>

View File

@@ -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 openrc 8 ,
.Xr openrc-run 8
.Xr rc 8 ,
.Xr runscript 8
.Sh AUTHORS
.An Roy Marples <roy@marples.name>

View File

@@ -141,7 +141,7 @@ is lost.
returns a list of extra commands the
.Fa service
supports beyond the default ones. See
.Nm openrc-run
.Nm runscript
for default commands.
.Pp
.Fn rc_service_plugable

View File

@@ -22,10 +22,10 @@
.\" SUCH DAMAGE.
.\"
.Dd December 31, 2011
.Dt openrc-run 8 SMM
.Dt RUNSCRIPT 8 SMM
.Os OpenRC
.Sh NAME
.Nm openrc-run
.Nm runscript
.Nd a means of hooking shell commands into a service
.Sh SYNOPSIS
.Nm
@@ -47,7 +47,7 @@ and finally the script itself. At this point
then runs the command given.
.Pp
Commands are defined as shell functions within the script. Here is a list of
some functions that all scripts have by default:
some functions that all runscripts have by default:
.Bl -tag -width "RC_DEFAULTLEVEL"
.It Ar describe
Describes what the service does and each command the service defines.
@@ -60,12 +60,12 @@ First we ensure that any services that depend on us are stopped. If any
services that need us fail to stop then we exit with a suitable error,
otherwise call the supplied stop function if it exists.
.It Ar restart
Stops and starts the service, including dependencies. This cannot be
Stop and start the service, including dependencies. This cannot be
overridden. See the description of the RC_CMD variable below for the
method to make your service behave differently when restart is being
executed.
.It Ar status
Shows the status of the service. The return code matches the status, with the
Show the status of the service. The return code matches the status, with the
exception of "started" returning 0 to match standard command behaviour.
.It Ar zap
Resets the service state to stopped and removes all saved data about the
@@ -88,8 +88,8 @@ Output from any non OpenRC commands is not affected.
.It Fl v , -verbose
Turns on any extra informational output the service generates.
.It Fl Z , -dry-run
Shows which services would be stopped and/or started without actually stopping
or starting them.
Shows what services would be stopped and/or started without actually starting
or stopping them.
.El
.Pp
The following variables affect the service script:
@@ -321,36 +321,16 @@ Mark the service as inactive.
.Op Fl f , -file
.Op Fl p , -pipe
.Op Fl m , -mode Ar mode
.Op Fl o , -owner Ar owner
.Op Fl W , -writable
.Op Fl q , -quiet
.Op Fl o , owner Ar owner
.Ar path ...
.Xc
If -d, -f or -p is specified, checkpath checks to see if the path
exists, is the right type and has the correct owner and access modes. If
any of these tests fail, the path is created and set up as specified. If
more than one of -d, -f or -p are specified, the last one will be used.
The argument to -m is a three or four digit octal number. If this option
is not provided, the value defaults to 0644 for files and 0775 for
directories.
The argument to -o is a representation of the user and/or group which
should own the path. The user and group can be represented numerically
or with names, and are separated by a colon.
The truncate options (-D and -F) cause the directory or file to be
cleared of all contents.
If -W is specified, checkpath checks to see if the first path given on
the command line is writable. This is different from how the test
command in the shell works, because it also checks to make sure the file
system is not read only.
Also, the -d, -f or -p options should not be specified along with this option.
The -q option suppresses all informational output. If it is specified
twice, all error messages are suppressed as well.
Checks to see if the path exists, is of the right type, owned by the right
people and has the correct access modes. If not, then it corrects the path.
.It Ic checkpath
.Op Fl W , -writable
.Ar path
.Xc
checks to see if the path is writable.
.It Ic yesno Ar value
If
.Ar value
@@ -362,10 +342,8 @@ sets the following environment variables for use in the service scripts:
.Bl -tag -width "RC_DEFAULTLEVEL"
.It Va RC_SVCNAME
Name of the service.
.It Va RC_SERVICE
Full path to the service.
.It Va RC_RUNLEVEL
Current runlevel that OpenRC is in. Note that, in OpenRC, the reboot
Current runlevel that rc 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
@@ -389,15 +367,6 @@ The result of `uname -s`.
This contains the name of the command the service script is executing, such
as start, stop, restart etc. One example of using this is to make a
service script behave differently when restart is being executed.
.It Va RC_GOINGDOWN
This variable contains YES if the system is going into single user mode
or shutting down.
.It Va RC_LIBEXECDIR
The value of libexecdir which OpenRC was configured with during build
time.
.It Va RC_NO_UMOUNTS
This variable is used by plugins to contain a list of directories which
should not be unmounted.
.El
.Sh FILES
.Pp
@@ -442,7 +411,7 @@ rc_keyword="!-prefix"
.Pp
An example service script for foo.
.Bd -literal -offset indent
#!/sbin/openrc-run
#!/sbin/runscript
command=/usr/bin/foo
command_args="${foo_args} --bar"
pidfile=/var/run/foo.pid
@@ -502,7 +471,7 @@ start_pre()
# stop_post.
fi
# Ensure that our dirs are correct
checkpath --directory --owner foo:foo --mode 0775 \\
checkpath --dir --owner foo:foo --mode 0664 \\
/var/run/foo /var/cache/foo
}
@@ -567,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 openrc 8 ,
.Xr rc 8 ,
.Xr rc-status 8 ,
.Xr rc-update 8 ,
.Xr rc_plugin_hook 3 ,

View File

@@ -139,7 +139,7 @@ option.
Modifies the IO scheduling priority of the daemon.
Class can be 0 for none, 1 for real time, 2 for best effort and 3 for idle.
Data can be from 0 to 7 inclusive.
.It Fl N , -nicelevel Ar level
.It Fl N , -nice Ar level
Modifies the scheduling priority of the daemon.
.It Fl 1 , -stdout Ar logfile
Redirect the standard output of the process to logfile when started with

View File

@@ -1 +1 @@
MKNET?= yes
MKNET?= no

View File

@@ -6,9 +6,3 @@ PKG_PREFIX?= /usr
CPPFLAGS+= -D_BSD_SOURCE -D_XOPEN_SOURCE=700
LIBDL= -Wl,-Bdynamic -ldl
ifeq (${MKSELINUX},yes)
CPPFLAGS+= -DHAVE_SELINUX
LIBSELINUX= -lselinux
LDADD += $(LIBSELINUX)
endif

View File

@@ -1,6 +1,6 @@
include ../mk/net.mk
BOOT= bootmisc fsck hostname localmount loopback \
BOOT= bootmisc fsck hostname localmount \
root swap swapfiles sysctl urandom ${BOOT-${OS}}
DEFAULT= local netmount
SHUTDOWN= savecache ${SHUTDOWN-${OS}}

View File

@@ -19,7 +19,7 @@ elif [ -f /proc/pmu/info ]; then
"AC Power"*": 0") exit 128;;
esac
done
elif command -v envstat >/dev/null 2>&1; then
elif type envstat >/dev/null 2>&1; then
# NetBSD has envstat
envstat -d acpiacad0 2>/dev/null | while read line; do
case "$line" in

1
sh/.gitignore vendored
View File

@@ -1,5 +1,6 @@
functions.sh
gendepends.sh
init-common-post.sh
rc-functions.sh
runscript.sh
cgroup-release-agent.sh

View File

@@ -1,7 +1,7 @@
DIR= ${LIBEXECDIR}/sh
SRCS= init.sh.in functions.sh.in gendepends.sh.in \
SRCS= init.sh.in functions.sh.in gendepends.sh.in init-common-post.sh.in \
rc-functions.sh.in runscript.sh.in tmpfiles.sh.in ${SRCS-${OS}}
INC= rc-mount.sh functions.sh rc-functions.sh
INC= init-common-post.sh rc-mount.sh functions.sh rc-functions.sh
BIN= gendepends.sh init.sh runscript.sh tmpfiles.sh ${BIN-${OS}}
INSTALLAFTER= _installafter

View File

@@ -24,18 +24,13 @@ yesno()
{
[ -z "$1" ] && return 1
# Check the value directly so people can do:
# yesno ${VAR}
case "$1" in
[Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|[Oo][Nn]|1) return 0;;
[Nn][Oo]|[Ff][Aa][Ll][Ss][Ee]|[Oo][Ff][Ff]|0) return 1;;
esac
# Check the value of the var so people can do:
# yesno VAR
# Note: this breaks when the var contains a double quote.
local value=
eval value=\"\$$1\"
eval value=\$${1}
case "$value" in
[Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|[Oo][Nn]|1) return 0;;
[Nn][Oo]|[Ff][Aa][Ll][Ss][Ee]|[Oo][Ff][Ff]|0) return 1;;

View File

@@ -51,12 +51,10 @@ do
for RC_SERVICE in *; do
[ -x "$RC_SERVICE" -a -f "$RC_SERVICE" ] || continue
# Only generate dependencies for OpenRC scripts
# Only generate dependencies for runscripts
read one two three <"$RC_SERVICE"
[ "$one" = "#!@SBINDIR@/runscript" ] || \
[ "$one" = "#!@SBINDIR@/openrc-run" ] || \
[ "$one" = "#!" -a "$two" = "@SBINDIR@/runscript" ] || \
[ "$one" = "#!" -a "$two" = "@SBINDIR@/openrc-run" ] || \
continue
unset one two three

25
sh/init-common-post.sh.in Normal file
View File

@@ -0,0 +1,25 @@
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
# mount $RC_SVCDIR as something we can write to if it's not rw
# On vservers, / is always rw at this point, so we need to clean out
# the old service state data
: ${RC_LIBEXECDIR:=@LIBEXECDIR@}
: ${RC_SVCDIR:=@LIBEXECDIR@/init.d}
case "$(rc --sys)" in
OPENVZ|VSERVER) rm -rf "$RC_SVCDIR"/*;;
*) if mountinfo --quiet "$RC_SVCDIR"; then
rm -rf "$RC_SVCDIR"/*
else
mount_svcdir
fi
;;
esac
retval=$?
if [ -e "$RC_LIBEXECDIR"/cache/deptree ]; then
cp -p "$RC_LIBEXECDIR"/cache/* "$RC_SVCDIR" 2>/dev/null
fi
echo sysinit >"$RC_SVCDIR"/softlevel
exit $retval

View File

@@ -31,7 +31,7 @@ if service_present "$RC_DEFAULTLEVEL" consolefont ||
service_present "$RC_BOOTLEVEL" consolefont; then
printf "\033%s" "$termencoding" >"$CONSOLE" 2>/dev/null
if [ -r "$RC_LIBEXECDIR"/console/font ] && \
command -v setfont > /dev/null 2>&1; then
type setfont > /dev/null 2>&1; then
[ -c "$CONSOLE" ] && cons="-C $CONSOLE"
setfont $cons "$RC_LIBEXECDIR"/console/font 2>/dev/null
fi

Some files were not shown because too many files have changed in this diff Show More