Compare commits

..

11 Commits

Author SHA1 Message Date
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
183 changed files with 994 additions and 5278 deletions

View File

@@ -1,32 +0,0 @@
# Using Busybox as your Default Shell with OpenRC
If you have/bin/sh linked to busybox, you need to be aware of several
incompatibilities between busybox's applets and the standalone
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.
CONFIG_START_STOP_DAEMON -- The start-stop-daemon applet is not compatible with
start-stop-daemon in OpenRC.
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.
CONFIG_UMOUNT -- The umount applet does not support the -O option along with -a.
CONFIG_SWAPONOFF -- The swapon applet does not support the -e option
or recognize the nofail option in fstab.
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".
CONFIG_BB_SYSCTL -- The sysctl applet does not support the --system command
line switch.
There is work to get most of these supported by busybox, so this file
will be updated as things change.

1617
ChangeLog

File diff suppressed because it is too large Load Diff

49
FEATURE-REMOVAL-SCHEDULE Normal file
View File

@@ -0,0 +1,49 @@
The following is a list of files and features that are going to be removed in
the source tree. Every entry should contain what exactly is going away, why it
is happening, and who is going to be doing the work. When the feature is
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: Removed already, compatbility warning in place.
Why: ...
Who:
---------------------------
What: Service --startas, --chuid , --oknodo
When: undecided
Why: Obsolete or replaced by other options.
--startas => use --name or --exec
--chuid => use --user
--oknodo => ignore return code instead
Who:
---------------------------

View File

@@ -1,61 +0,0 @@
# Features Scheduled for Removal
The following is a list of files and features that are going to be removed in
the source tree. Every entry should contain what exactly is going away, why it
is happening, and who is going to be doing the work. When the feature is
removed, it should also be removed from this file.
## Service pause action
When: 1.0
Why: The same affect can be obtained with the --nodeps option to stop.
Who:
## start-stop-daemon options --startas, --chuid , --oknodo
When: 1.0
Why: Obsolete or replaced by other options.
* --startas => use --name or --exec
* --chuid => use --user
* --oknodo => ignore return code instead
Who:
## 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:
## 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:
## support for local_start and local_stop
When: 1.0
Why: Depprecated in favor of executable scripts in @SYSCONFDIR@/local.d
Who:
## 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,57 +0,0 @@
# OpenRC History
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

@@ -2,10 +2,7 @@
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
TOP:= ${dir ${realpath ${firstword ${MAKEFILE_LIST}}}} include Makefile.inc
MK= ${TOP}/mk
include ${TOP}/Makefile.inc
SUBDIR= conf.d etc init.d local.d man scripts sh src sysctl.d SUBDIR= conf.d etc init.d local.d man scripts sh src sysctl.d
@@ -20,11 +17,12 @@ SUBDIR+= runlevels
INSTALLAFTER= _installafter INSTALLAFTER= _installafter
MK= mk
include ${MK}/sys.mk include ${MK}/sys.mk
include ${MK}/os.mk include ${MK}/os.mk
include ${MK}/subdir.mk include ${MK}/subdir.mk
include ${MK}/dist.mk include ${MK}/dist.mk
include ${MK}/gitver.mk include ${MK}/git.mk
_installafter: _installafter:
ifeq (${MKPREFIX},yes) ifeq (${MKPREFIX},yes)

View File

@@ -1,3 +1,3 @@
NAME= openrc NAME= openrc
VERSION= 0.17 VERSION= 0.12.3
PKG= ${NAME}-${VERSION} PKG= ${NAME}-${VERSION}

63
NEWS.md
View File

@@ -1,63 +0,0 @@
# OpenRC NEWS
This file will contain a list of notable changes for each release. Note
the information in this file is in reverse order.
## OpenRC-0.14
The binfmt service, which registers misc binary formats with the Linux
kernel, has been separated from the procfs service. This service will be
automatically added to the boot runlevel for new Linux installs. When
you upgrade, you will need to use rc-update to add it to your boot
runlevel.
The procfs service no longer automounts the deprecated usbfs and
usbdevfs file systems. Nothing should be using usbdevfs any longer, and
if you still need usbfs it can be added to fstab.
Related to the above change, the procfs service no longer attempts to
modprobe the usbcore module. If your device manager does not load it,
you will need to configure the modules service to do so.
The override order of binfmt.d and tmpfiles.d directories has been
changed to match systemd. Files in /run/binfmt.d and /run/tmpfiles.d
override their /usr/lib counterparts, and files in the /etc counterparts
override both /usr/lib and /run.
## OpenRC-0.13.2
A chroot variable has been added to the service script variables.
This fixes the support for running a service in a chroot.
This is documented in man 8 openrc-run.
The netmount service now mounts nfs file systems.
This change was made to correct a fix for an earlier bug.
## OpenRC-0.13
/sbin/rc was renamed to /sbin/openrc and /sbin/runscript was renamed to
/sbin/openrc-run due to naming conflicts with other software.
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, due to the
level of noise they produce, they only appear in verbose mode in this release.
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.
## 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.

92
README Normal file
View File

@@ -0,0 +1,92 @@
OpenRC README
Installation
------------
make install
Yup, that simple. Works with GNU make.
You may wish to tweak the installation with the below arguments
PROGLDFLAGS=-static
LIBNAME=lib64
DESTDIR=/tmp/openrc-image
MKNET=no
MKPAM=pam
MKPREFIX=yes
MKPKGCONFIG=no
MKSELINUX=yes
MKSTATICLIBS=no
MKTERMCAP=ncurses
MKTERMCAP=termcap
MKTOOLS=yes
PKG_PREFIX=/usr/pkg
LOCAL_PREFIX=/usr/local
PREFIX=/usr/local
We don't support building a static OpenRC with PAM.
You may need to use PROGLDFLAGS=-Wl,-Bstatic on glibc instead of just -static.
If you debug memory under valgrind, add -DDEBUG_MEMORY to your CPPFLAGS
so that all malloc memory should be freed at exit.
If you are building OpenRC for a Gentoo Prefix installation, add
MKPREFIX=yes.
You can also brand OpenRC if you so wish like so
BRANDING=\"Gentoo/$(uname -s)\"
PKG_PREFIX should be set to where packages install to by default.
LOCAL_PREFIX should be set when to where user maintained packages are.
Only set LOCAL_PREFIX if different from PKG_PREFIX.
PREFIX should be set when OpenRC is not installed to /.
If any of the following files exist then we do not overwrite them
/etc/devd.conf
/etc/rc
/etc/rc.shutdown
/etc/conf.d/*
rc and rc.shutdown are the hooks from the BSD init into OpenRC.
devd.conf is modified from FreeBSD to call /etc/rc.devd which is a generic
hook into OpenRC.
inittab is the same, but for SysVInit as used by most Linux distributions.
This can be found in the support folder.
Obviously, if you're installing this onto a system that does not use OpenRC
by default then you may wish to backup the above listed files, remove them
and then install so that the OS hooks into OpenRC.
init.d.misc is not installed by default as the scripts will need
tweaking on a per distro basis. They are also non essential to the operation
of the system.
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.
Reporting Bugs
--------------
Since Gentoo Linux is hosting OpenRC development, Bugs should go to
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.

28
README.busybox Normal file
View File

@@ -0,0 +1,28 @@
Using Busybox as your Default Shell
-----------------------------------
If you have/bin/sh linked to busybox, you need to be aware of several
incompatibilities between busybox's applets and the standalone
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.
All of these apply to busybox 1.20.2, which is the current version of
busybox as of this writing.
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.
2. The -O option for the mount applet does not support the [no]_netdev
options from util-linux for handling network file systems.
3. The umount applet does not support the -O option from util-linux.
4. The swapon applet does not support the -e option from util-linux.
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,99 +0,0 @@
# OpenRC README
OpenRC is a dependency-based init system that works with the
system-provided init program, normally `/sbin/init`. Currently, it does
not have an init program of its own.
## Installation
OpenRC requires GNU make.
Once you have GNU Make installed, the default OpenRC installation can be
executed using this command:
make install
## Configuration
You may wish to configure the installation by passing one or more of the
below arguments to the make command
```
PROGLDFLAGS=-static
LIBNAME=lib64
DESTDIR=/tmp/openrc-image
MKNET=no
MKPAM=pam
MKPREFIX=yes
MKPKGCONFIG=no
MKSELINUX=yes
MKSTATICLIBS=no
MKTERMCAP=ncurses
MKTERMCAP=termcap
MKTOOLS=yes
PKG_PREFIX=/usr/pkg
LOCAL_PREFIX=/usr/local
PREFIX=/usr/local
BRANDING=\"Gentoo/$(uname -s)\"
```
## Notes
We don't support building a static OpenRC with PAM.
You may need to use `PROGLDFLAGS=-Wl,-Bstatic` on glibc instead of just `-static`.
If you debug memory under valgrind, add `-DDEBUG_MEMORY`
to your `CPPFLAGS` so that all malloc memory should be freed at exit.
If you are building OpenRC for a Gentoo Prefix installation, add `MKPREFIX=yes`.
`PKG_PREFIX` should be set to where packages install to by default.
`LOCAL_PREFIX` should be set when to where user maintained packages are.
Only set `LOCAL_PREFIX` if different from `PKG_PREFIX`.
`PREFIX` should be set when OpenRC is not installed to /.
If any of the following files exist then we do not overwrite them
```
/etc/devd.conf
/etc/rc
/etc/rc.shutdown
/etc/conf.d/*
```
`rc` and `rc.shutdown` are the hooks from the BSD init into OpenRC.
`devd.conf` is modified from FreeBSD to call `/etc/rc.devd` which is a
generic hook into OpenRC.
`inittab` is the same, but for SysVInit as used by most Linux distributions.
This can be found in the support folder.
Obviously, if you're installing this onto a system that does not use
OpenRC by default then you may wish to backup the above listed files,
remove them and then install so that the OS hooks into OpenRC.
`init.d.misc` is not installed by default as the scripts will need
tweaking on a per distro basis. They are also non essential to the
operation of the system.
## Reporting Bugs
If you are using Gentoo Linux, bugs can be filed on their bugzilla under
the `gentoo hosted projects` product and the `openrc` component [1].
Otherwise, you can report issues on our github [2].
Better yet, if you can contribute code, please feel free to submit pull
requests [3].
## IRC Channel
We have an official irc channel, #openrc on freenode, feel free to join
us there.
[1] https://bugs.gentoo.org/
[2] https://github.com/openrc/openrc/issues
[3] https://github.com/openrc/openrc/pulls

View File

@@ -1,23 +1,23 @@
# OpenRC Style Guide
This is the openrc style manual. It governs the coding style of all code This is the openrc style manual. It governs the coding style of all code
in this repository. Follow it. Contact openrc@gentoo.org for any questions in this repository. Follow it. Contact openrc@gentoo.org for any questions
or fixes you might notice. or fixes you might notice.
## C CODE ##########
# C CODE #
##########
The BSD Kernel Normal Form (KNF) style is used [1]. Basically, it is like The BSD Kernel Normal Form (KNF) style is used:
K&R/LKML, but wrapped lines that are indented use 4 spaces. Here are the http://en.wikipedia.org/wiki/Indent_style#BSD_KNF_style
highlights. Basically, it's like K&R/LKML, but wrapped lines that are indented use 4 spaces.
- no trailing whitespace Highlights:
- indented code use tabs (not line wrapped) - no trailing whitespace
- cuddle the braces (except for functions) - indented code use tabs (not line wrapped)
- space after native statements and before paren (for/if/while/...) - cuddle the braces (except for functions)
- no space between function and paren - space after native statements and before paren (for/if/while/...)
- pointer asterisk cuddles the variable, not the type - no space between function and paren
- pointer asterisk cuddles the variable, not the type
```
void foo(int c) void foo(int c)
{ {
int ret = 0; int ret = 0;
@@ -32,15 +32,16 @@ void foo(int c)
return ret; return ret;
} }
```
## COMMIT MESSAGES ##################
# COMMIT MESSAGES #
##################
The following is an example of a correctly formatted git commit message The following is an example of a correctly formatted git commit message
for this repository. Most of this information came from this blog post for this repository. Most of this information came from this blog post
[2], so I would like to thank the author. [1], so I would like to thank the author.
``` ### cut here ###
Capitalized, short (50 chars or less) summary Capitalized, short (50 chars or less) summary
More detailed explanatory text, if necessary. Wrap it to about 72 More detailed explanatory text, if necessary. Wrap it to about 72
@@ -66,7 +67,7 @@ Further paragraphs come after blank lines.
Reported-by: User Name <email> Reported-by: User Name <email>
X-[Distro]-Bug: BugID X-[Distro]-Bug: BugID
X-[Distro]-Bug-URL: URL for the bug (on the distribution's web site typically) X-[Distro]-Bug-URL: URL for the bug (on the distribution's web site typically)
``` ### cut here ###
If you did not write the code and the patch does not include authorship If you did not write the code and the patch does not include authorship
information in a format git can use, please use the --author option of the information in a format git can use, please use the --author option of the
@@ -80,5 +81,5 @@ different from the author and committer.
*BSD. Also, [Distro] should be replaced with the name of the *BSD. Also, [Distro] should be replaced with the name of the
distribution, e.g. X-Gentoo-Bug. distribution, e.g. X-Gentoo-Bug.
[1] http://en.wikipedia.org/wiki/Indent_style#BSD_KNF_style [1] http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
[2] http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html

View File

@@ -15,7 +15,7 @@ include ${MK}/os.mk
CONF-FreeBSD= ipfw moused powerd rarpd savecore syscons 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 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

@@ -7,8 +7,8 @@ clock="UTC"
# If you want the hwclock script to set the system time (software clock) # If you want the hwclock script to set the system time (software clock)
# to match the current hardware clock during bootup, leave this # to match the current hardware clock during bootup, leave this
# commented out. # commented out.
# However, you can set this to "NO" if you are running a modern kernel # However, you can set this to "NO" ifyou are running a modern kernel
# and using NTP to synchronize your system clock. # with CONFIG_RTC_HCTOSYS set to y and your hardware clock set to UTC.
#clock_hctosys="YES" #clock_hctosys="YES"
# If you do not want to set the hardware clock to the current system # 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` # For a list of valid sets, run `dumpkeys --help`
dumpkeys_charset="" 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" # To fix this, set to "yes"
fix_euro="NO" fix_euro="NO"

View File

@@ -1,4 +0,0 @@
# You can assign a default route
#defaultroute="192.168.0.1"
#defaultroute6="2001:a:b:c"

View File

@@ -1,4 +0,0 @@
# You can assign a default route
#defaultroute="gw 192.168.0.1"
#defaultroute6="gw 2001:a:b:c"

View File

@@ -1,5 +0,0 @@
# Separate multiple routes using ; or new lines.
# Example static routes. See route(8) for syntax.
#staticroute="net 192.168.0.0 10.73.1.1 netmask 255.255.255.0
#net 192.168.1.0 10.73.1.1 netmask 255.255.255.0"

View File

@@ -1,7 +0,0 @@
# Separate multiple routes using ; or new lines.
# /etc/route.conf(5) takes precedence over this configuration.
# Example static routes. See route(8) for syntax.
# FIXME: "net ..." not supported
#staticroute="net 192.168.0.0 -netmask 255.255.255.0 --address 10.73.1.1
#net 192.168.1.0 -netmask 255.255.255.0 --address 10.73.1.1"

View File

@@ -1,14 +0,0 @@
##############################################################################
# GNU/Hurd SPECIFIC OPTIONS
# This is the subsystem type. Valid options on GNU/Hurd:
# "" - nothing special
# "subhurd" - Hurd subhurds (to be checked)
# If this is commented out, automatic detection will be used.
#
# This should be set to the value representing the environment this file is
# PRESENTLY in, not the virtualization the environment is capable of.
#rc_sys=""
# This is the number of tty's used in most of the rc-scripts (like
# consolefont, numlock, etc ...)
#rc_tty_number=6?

View File

@@ -1,11 +0,0 @@
##############################################################################
# GNU/kFreeBSD SPECIFIC OPTIONS
# This is the subsystem type. Valid options on GNU/kFreeBSD:
# "" - nothing special
# "jail" - FreeBSD jails (not yet implemented)
# If this is commented out, automatic detection will be used.
#
# This should be set to the value representing the environment this file is
# PRESENTLY in, not the virtualization the environment is capable of.
#rc_sys=""

View File

@@ -2,15 +2,14 @@
# LINUX SPECIFIC OPTIONS # LINUX SPECIFIC OPTIONS
# This is the subsystem type. Valid options on Linux: # This is the subsystem type. Valid options on Linux:
# "" - nothing special # "" - nothing special
# "lxc" - Linux Containers # "lxc" - Linux Containers
# "openvz" - Linux OpenVZ # "openvz" - Linux OpenVZ
# "prefix" - Prefix # "prefix" - Prefix
# "uml" - Usermode Linux # "uml" - Usermode Linux
# "vserver" - Linux vserver # "vserver" - Linux vserver
# "systemd-nspawn" - Container created by the systemd-nspawn utility # "xen0" - Xen0 Domain
# "xen0" - Xen0 Domain # "xenU" - XenU Domain
# "xenU" - XenU Domain
# If this is commented out, automatic detection will be used. # If this is commented out, automatic detection will be used.
# #
# This should be set to the value representing the environment this file is # This should be set to the value representing the environment this file is

View File

@@ -51,10 +51,6 @@
# The default value is: /var/log/rc.log # The default value is: /var/log/rc.log
#rc_log_path="/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 # 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. # variables through, add them here. Use a * to allow all variables through.
#rc_env_allow="VAR1 VAR2" #rc_env_allow="VAR1 VAR2"
@@ -77,10 +73,6 @@
#rc_crashed_stop=NO #rc_crashed_stop=NO
#rc_crashed_start=YES #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 # MISC CONFIGURATION VARIABLES
# There variables are shared between many init scripts # There variables are shared between many init scripts
@@ -94,7 +86,7 @@
# Below is the default list of network fstypes. # 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 # nfs nfs4 ocfs2 shfs smbfs
# #
# If you would like to add to this list, you can do so by adding your # If you would like to add to this list, you can do so by adding your
@@ -116,9 +108,6 @@
#SSD_NICELEVEL="-19" #SSD_NICELEVEL="-19"
# Pass ulimit parameters # Pass ulimit parameters
# If you are using bash in POSIX mode for your shell, note that the
# ulimit command uses a block size of 512 bytes for the -c and -f
# options
#rc_ulimit="-u 30" #rc_ulimit="-u 30"
# It's possible to define extra dependencies for services like so # It's possible to define extra dependencies for services like so

View File

@@ -10,9 +10,9 @@
trap : SIGINT trap : SIGINT
trap "echo 'Boot interrupted'; exit 1" SIGQUIT trap "echo 'Boot interrupted'; exit 1" SIGQUIT
/sbin/openrc sysinit || exit 1 /sbin/rc sysinit || exit 1
/sbin/openrc boot || exit 1 /sbin/rc boot || exit 1
/sbin/openrc default /sbin/rc default
# We don't actually care if rc default worked or not, we should exit 0 # We don't actually care if rc default worked or not, we should exit 0
# to allow logins # to allow logins

View File

@@ -14,4 +14,4 @@ LD_LIBRARY_PATH="/lib${LD_LIBRARY_PATH:+:}${LDLIBRARY_PATH}" ; export LD_LIBRARY
[ -z "$TERM" -o "$TERM" = "dumb" ] && TERM="@TERM@" && export TERM [ -z "$TERM" -o "$TERM" = "dumb" ] && TERM="@TERM@" && export TERM
action=${1:-shutdown} action=${1:-shutdown}
exec /sbin/openrc "${action}" exec /sbin/rc "${action}"

View File

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

5
init.d/.gitignore vendored
View File

@@ -3,8 +3,9 @@ fsck
hostname hostname
local local
localmount localmount
loopback
moused moused
net.lo
net.lo0
netmount netmount
network network
root root
@@ -23,7 +24,6 @@ modules
mount-ro mount-ro
mtab mtab
numlock numlock
osclock
procfs procfs
staticroute staticroute
sysfs sysfs
@@ -41,5 +41,4 @@ syslogd
termencoding termencoding
ttys ttys
wscons wscons
tmpfiles.dev
tmpfiles.setup tmpfiles.setup

View File

@@ -2,8 +2,8 @@ include ../mk/net.mk
DIR= ${INITDIR} 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 loopback.in \
netmount.in osclock.in root.in savecache.in swap.in swapfiles.in \ netmount.in root.in savecache.in swap.in swapfiles.in \
tmpfiles.setup.in swclock.in sysctl.in urandom.in s6-svscan.in ${SRCS-${OS}} tmpfiles.setup.in swclock.in sysctl.in urandom.in ${SRCS-${OS}}
BIN= ${OBJS} BIN= ${OBJS}
# Are we installing our network scripts? # Are we installing our network scripts?
@@ -21,7 +21,7 @@ SRCS-FreeBSD= hostid.in moused.in newsyslog.in pf.in rarpd.in rc-enabled.in \
SRCS-FreeBSD+= adjkerntz.in devd.in dumpon.in encswap.in ipfw.in \ SRCS-FreeBSD+= adjkerntz.in devd.in dumpon.in encswap.in ipfw.in \
mixer.in nscd.in powerd.in syscons.in mixer.in nscd.in powerd.in syscons.in
SRCS-Linux= binfmt.in devfs.in dmesg.in hwclock.in consolefont.in keymaps.in \ SRCS-Linux= devfs.in dmesg.in hwclock.in consolefont.in keymaps.in \
killprocs.in modules.in mount-ro.in mtab.in numlock.in \ killprocs.in modules.in mount-ro.in mtab.in numlock.in \
procfs.in sysfs.in termencoding.in tmpfiles.dev.in procfs.in sysfs.in termencoding.in tmpfiles.dev.in

View File

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

View File

@@ -1,20 +0,0 @@
#!@SBINDIR@/openrc-run
# Copyright 2015 William Hubbs <w.d.hubbs@gmail.com>
# Released under the 2-clause BSD license.
description="Register misc binary format handlers"
depend()
{
after procfs
use modules devfs
keyword -openvz -prefix -systemd-nspawn -vserver -lxc
}
start()
{
ebegin "Loading custom binary format handlers"
"$RC_LIBEXECDIR"/sh/binfmt.sh
eend $?
return 0
}

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -6,7 +6,7 @@ depend()
{ {
need localmount need localmount
before logger before logger
after clock root sysctl after clock sysctl
keyword -prefix -timeout keyword -prefix -timeout
} }
@@ -68,7 +68,7 @@ cleanup_var_run_dir()
do do
# Clean stale sockets # Clean stale sockets
if [ -S "$x" ]; then 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" fuser "$x" >/dev/null 2>&1 || rm -- "$x"
else else
rm -- "$x" rm -- "$x"
@@ -117,42 +117,18 @@ migrate_to_run()
clean_run() clean_run()
{ {
[ "$RC_SYS" = VSERVER -o "$RC_SYS" = LXC ] && return 0
local dir local dir
# If / is still read-only due to a problem, this will fail!
if ! checkpath -W /; then
eerror "/ is not writable; unable to clean up underlying /run"
return 1
fi
if ! checkpath -W /tmp; then
eerror "/tmp is not writable; unable to clean up underlying /run"
return 1
fi
# Now we know that we can modify /tmp and /
# if mktemp -d fails, it returns an EMPTY string
# STDERR: mktemp: failed to create directory via template /tmp/tmp.XXXXXXXXXX: Read-only file system
# STDOUT: ''
rc=0
dir=$(mktemp -d) dir=$(mktemp -d)
if [ -n "$dir" -a -d $dir -a -w $dir ]; then mount --bind / $dir
mount --bind / $dir && rm -rf $dir/run/* || rc=1 rm -rf $dir/run/*
umount $dir umount $dir
rm -rf $dir rm -rf $dir
else
rc=1
fi
if [ $rc -ne 0 ]; then
eerror "Could not clean up underlying /run on /"
return 1
fi
} }
start() start()
{ {
# Remove any added console dirs # Remove any added console dirs
if checkpath -W "$RC_LIBEXECDIR"; then rm -rf "$RC_LIBEXECDIR"/console/*
rm -rf "$RC_LIBEXECDIR"/console/*
fi
local logw=false runw=false extra= local logw=false runw=false extra=
# Ensure that our basic dirs exist # Ensure that our basic dirs exist
@@ -214,13 +190,10 @@ start()
if yesno $log_dmesg; then if yesno $log_dmesg; then
if $logw || checkpath -W /var/log; then if $logw || checkpath -W /var/log; then
# Create an 'after-boot' dmesg log # Create an 'after-boot' dmesg log
case "$RC_SYS" in if [ "$RC_SYS" != VSERVER -a "$RC_SYS" != OPENVZ -a "$RC_SYS" != LXC ]; then
VSERVER|OPENVZ|LXC|SYSTEMD-NSPAWN) ;; dmesg > /var/log/dmesg
*) chmod 640 /var/log/dmesg
dmesg > /var/log/dmesg fi
chmod 640 /var/log/dmesg
;;
esac
fi fi
fi fi

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -8,7 +8,7 @@ depend()
{ {
need localmount termencoding need localmount termencoding
after hotplug bootmisc after hotplug bootmisc
keyword -openvz -prefix -systemd-nspawn -uml -vserver -xenu -lxc keyword -openvz -prefix -uml -vserver -xenu -lxc
} }
start() start()

View File

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

View File

@@ -1,86 +1,21 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name> # Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
description="Set up the /dev directory" description="Mount system critical filesystems in /dev."
depend() depend() {
{ use dev-mount
provide dev-mount
before dev before dev
keyword -prefix -systemd-nspawn -vserver -lxc keyword -prefix -vserver -lxc
} }
mount_dev() start() {
{ # Mount required stuff as user may not have then in /etc/fstab
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
# extra symbolic links not provided by default
[ -e /dev/fd ] || ln -snf /proc/self/fd /dev/fd
[ -e /dev/stdin ] || ln -snf /proc/self/fd/0 /dev/stdin
[ -e /dev/stdout ] || ln -snf /proc/self/fd/1 /dev/stdout
[ -e /dev/stderr ] || ln -snf /proc/self/fd/2 /dev/stderr
[ -e /proc/kcore ] && ln -snf /proc/kcore /dev/core
# Mount required directories as user may not have them in /etc/fstab
for x in \ for x in \
"mqueue /dev/mqueue 1777 ,nodev mqueue" \ "mqueue /dev/mqueue 1777 ,nodev mqueue" \
"devpts /dev/pts 0755 ,gid=5,mode=0620 devpts" \ "devpts /dev/pts 0755 ,gid=5,mode=0620 devpts" \
"tmpfs /dev/shm 1777 ,nodev,mode=1777 shm" \ "tmpfs /dev/shm 1777 ,nodev shm" \
; do ; do
set -- $x set -- $x
grep -Eq "[[:space:]]+$1$" /proc/filesystems || continue grep -Eq "[[:space:]]+$1$" /proc/filesystems || continue
@@ -99,23 +34,5 @@ seed_dev()
eend $? eend $?
fi fi
done 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 return 0
} }

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name> # Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -7,7 +7,7 @@ description="Set the dmesg level for a cleaner boot"
depend() depend()
{ {
before dev modules before dev modules
keyword -lxc -prefix -systemd-nspawn -vserver keyword -lxc -prefix -vserver
} }
start() start()

View File

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

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright 1992-2012 FreeBSD Project # Copyright 1992-2012 FreeBSD Project
# Released under the 2-clause BSD license # 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> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -9,7 +9,7 @@ _IFS="
depend() depend()
{ {
use dev clock modules use dev clock modules
keyword -jail -openvz -prefix -systemd-nspawn -timeout -vserver -lxc -uml keyword -jail -openvz -prefix -timeout -vserver -lxc -uml
} }
_abort() { _abort() {

View File

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

View File

@@ -1,11 +1,11 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
description="Sets the hostname of the machine." description="Sets the hostname of the machine."
depend() { depend() {
keyword -prefix -systemd-nspawn -lxc keyword -prefix -lxc
} }
start() start()

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name> # Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -28,7 +28,7 @@ depend()
else else
before * before *
fi fi
keyword -openvz -prefix -systemd-nspawn -uml -vserver -xenu -lxc keyword -openvz -prefix -uml -vserver -xenu -lxc
} }
setupopts() setupopts()
@@ -83,17 +83,22 @@ start()
fi fi
fi fi
# Always set the kernel's time zone.
_hwclock --systz $utc_cmd $clock_args
: $(( retval += $? ))
if [ -e /etc/adjtime ] && yesno $clock_adjfile; then if [ -e /etc/adjtime ] && yesno $clock_adjfile; then
_hwclock --adjust $utc_cmd _hwclock --adjust $utc_cmd
: $(( retval += $? )) : $(( retval += $? ))
fi fi
if yesno ${clock_hctosys:-YES}; then # If setting UTC, don't bother to run hwclock when first booting
_hwclock --hctosys $utc_cmd $clock_args # 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 += $? )) : $(( retval += $? ))
fi fi

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # 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> # Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -8,7 +8,7 @@ depend()
{ {
need localmount termencoding need localmount termencoding
after bootmisc after bootmisc
keyword -openvz -prefix -systemd-nspawn -uml -vserver -xenu -lxc keyword -openvz -prefix -uml -vserver -xenu -lxc
} }
start() start()

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name> # Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # 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> # Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -12,75 +12,40 @@ depend()
start() start()
{ {
ebegin "Starting local" einfo "Starting local"
local file has_errors=0 redirect retval local file
yesno $rc_verbose || redirect='> /dev/null 2>&1' for file in @SYSCONFDIR@/local.d/*.start ; do
eindent [ -x "$file" ] && "$file"
for file in @SYSCONFDIR@/local.d/*.start; do
if [ -x "${file}" ]; then
vebegin "Executing \"${file}\""
eval "${file}" $redirect
retval=$?
if [ ${retval} -ne 0 ]; then
has_errors=1
fi
veend ${retval} "Execution of \"${file}\" failed."
fi
done done
eoutdent
if command -v local_start >/dev/null 2>&1; then if type local_start >/dev/null 2>&1; then
ewarn "\"@SYSCONFDIR@/conf.d/local\" should be removed." ewarn "@SYSCONFDIR@/conf.d/local should be removed."
ewarn "Please move the code from the local_start function" ewarn "Please move the code from the local_start function"
ewarn "to executable scripts with an .start extension" ewarn "to scripts with an .start extension"
ewarn "in \"@SYSCONFDIR@/local.d\"" ewarn "in @SYSCONFDIR@/local.d"
local_start local_start
fi fi
eend ${has_errors} eend 0
# 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
} }
stop() stop()
{ {
ebegin "Stopping local" einfo "Stopping local"
local file has_errors=0 redirect retval local file
yesno $rc_verbose || redirect='> /dev/null 2>&1'
eindent
for file in @SYSCONFDIR@/local.d/*.stop; do for file in @SYSCONFDIR@/local.d/*.stop; do
if [ -x "${file}" ]; then [ -x "$file" ] && "$file"
vebegin "Executing \"${file}\""
eval "${file}" $redirect
retval=$?
if [ ${retval} -ne 0 ]; then
has_errors=1
fi
veend ${retval} "Execution of \"${file}\" failed."
fi
done done
eoutdent
if command -v local_stop >/dev/null 2>&1; then if type local_start >/dev/null 2>&1; then
ewarn "\"@SYSCONFDIR@/conf.d/local\" should be removed." ewarn "@SYSCONFDIR@/conf.d/local should be removed."
ewarn "Please move the code from the local_stop function" ewarn "Please move the code from the local_stop function"
ewarn "to executable scripts with an .stop extension" ewarn "to scripts with an .stop extension"
ewarn "in \"@SYSCONFDIR@/local.d\"" ewarn "in @SYSCONFDIR@/local.d"
local_stop local_stop
fi fi
eend ${has_errors} eend 0
# 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
} }

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -9,7 +9,7 @@ depend()
need fsck need fsck
use lvm modules mtab use lvm modules mtab
after lvm modules after lvm modules
keyword -jail -prefix -systemd-nspawn -vserver -lxc keyword -jail -prefix -vserver -lxc
} }
start() start()
@@ -59,35 +59,10 @@ stop()
no_umounts_r="^($no_umounts_r)$" no_umounts_r="^($no_umounts_r)$"
# Flush all pending disk writes now # Flush all pending disk writes now
sync sync; sync
. "$RC_LIBEXECDIR"/sh/rc-mount.sh . "$RC_LIBEXECDIR"/sh/rc-mount.sh
if [ "$RC_UNAME" = Linux ] && [ -d /sys/fs/aufs ] ; then
#if / is aufs we remount it noxino during shutdown
if mountinfo -q -f '^aufs$' / ; then
mount -o remount,noxino,rw /
sync
fi
local aufs_branch aufs_mount_dir aufs_mount_point aufs_si_dir aufs_si_id
for aufs_si_dir in /sys/fs/aufs/*; do
aufs_mount_dir=${aufs_si_dir#/sys/fs/aufs/}
aufs_si_id="$(printf "%s" $aufs_mount_dir | sed 's/_/=/g')"
aufs_mount_point="$(mountinfo -o ${aufs_si_id})"
for x in $aufs_si_dir/br[0-9][0-9][0-9]; do
aufs_branch=$(sed 's/=.*//g' $x)
eindent
if ! mount -o "remount,del:$aufs_branch" "$aufs_mount_point" > /dev/null 2>&1; then
ewarn "Failed to remove branch $aufs_branch from aufs \
$aufs_mount_point"
fi
eoutdent
sync
done
done
fi
# Umount loop devices # Umount loop devices
einfo "Unmounting loop devices" einfo "Unmounting loop devices"
eindent eindent

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2013 William Hubbs <w.d.hubbs@gmail.com> # Copyright (c) 2013 William Hubbs <w.d.hubbs@gmail.com>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -6,14 +6,14 @@ description="Configures the loopback interface."
depend() depend()
{ {
keyword -jail -prefix -systemd-nspawn -vserver return 0
} }
start() start()
{ {
if [ "$RC_UNAME" = Linux ]; then if [ "$RC_UNAME" = Linux ]; then
ebegin "Bringing up network interface lo" ebegin "Bringing up network interface lo"
if command -v ip > /dev/null 2>&1; then if type ip > /dev/null 2>&1; then
ip addr add 127.0.0.1/8 dev lo brd + scope host 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 route add 127.0.0.0/8 dev lo scope host
ip link set lo up ip link set lo up

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name> # Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # 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> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -7,7 +7,7 @@ description="Loads a user defined list of kernel modules."
depend() depend()
{ {
use isapnp use isapnp
keyword -openvz -prefix -systemd-nspawn -vserver -lxc keyword -openvz -prefix -vserver -lxc
} }
start() start()

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -7,7 +7,7 @@ description="Re-mount filesytems read-only for a clean reboot."
depend() depend()
{ {
need killprocs savecache need killprocs savecache
keyword -openvz -prefix -systemd-nspawn -vserver -lxc keyword -openvz -prefix -vserver -lxc
} }
start() start()
@@ -15,7 +15,7 @@ start()
local ret=0 local ret=0
# Flush all pending disk writes now # Flush all pending disk writes now
sync sync; sync
ebegin "Remounting remaining filesystems read-only" ebegin "Remounting remaining filesystems read-only"
# We need the do_unmount function # 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> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # 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> # Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -7,35 +7,30 @@ description="Update /etc/mtab to match what the kernel knows about"
depend() depend()
{ {
need root need root
keyword -prefix -systemd-nspawn keyword -prefix
} }
start() start()
{ {
[ -L /etc/mtab ] && return 0 if [ -L /etc/mtab ]
local rc=0 then
ebegin "Updating /etc/mtab" einfo "Skipping mtab update (mtab is a symbolic link)"
if ! checkpath -W /etc; then return 0
rc=1
elif [ ! -e /etc/mtab ]; then
ln -snf /proc/self/mounts /etc/mtab
else
ewarn "The support for updating /etc/mtab as a file is"
ewarn "deprecated and will be removed in the future."
ewarn "Please run the following command as root on your system."
ewarn
ewarn "ln -snf /proc/self/mounts /etc/mtab"
ewarn
# With / as tmpfs we cannot umount -at tmpfs in localmount as that
# makes / readonly and dismounts all tmpfs even if in use which is
# not good. Luckily, umount uses /etc/mtab instead of /proc/mounts
# which allows this hack to work.
grep -v "^[! ]* / tmpfs " /proc/mounts > /etc/mtab
# Remove stale backups
rm -f /etc/mtab~ /etc/mtab~~
fi fi
eend $rc "/etc is not writable; unable to create /etc/mtab"
return 0 ebegin "Updating /etc/mtab"
if ! echo 2>/dev/null >/etc/mtab; then
ewend 1 "/etc/mtab is not updateable"
return 0
fi
# With / as tmpfs we cannot umount -at tmpfs in localmount as that
# makes / readonly and dismounts all tmpfs even if in use which is
# not good. Luckily, umount uses /etc/mtab instead of /proc/mounts
# which allows this hack to work.
grep -v "^[! ]* / tmpfs " /proc/mounts > /etc/mtab
# Remove stale backups
rm -f /etc/mtab~ /etc/mtab~~
eend 0
} }

View File

@@ -1,21 +1,29 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
description="Mounts network shares according to /etc/fstab." description="Mounts network shares, other than NFS, according to /etc/fstab."
# We skip all NFS shares in this script because they require extra
# daemons to be running on the client in order to work correctly.
# It is best to allow nfs-utils to handle all nfs shares.
depend() depend()
{ {
config /etc/fstab config /etc/fstab
use afc-client amd nfsclient autofs openvpn use afc-client amd autofs openvpn
use dns use dns
keyword -jail -prefix -systemd-nspawn -vserver -lxc keyword -jail -prefix -vserver -lxc
} }
start() start()
{ {
local x= fs= rc= local x= fs= rc=
for x in $net_fs_list $extra_net_fs_list; do for x in $net_fs_list $extra_net_fs_list; do
case "$x" in
nfs|nfs4)
continue
;;
esac
fs="$fs${fs:+,}$x" fs="$fs${fs:+,}$x"
done done
@@ -38,7 +46,14 @@ stop()
. "$RC_LIBEXECDIR"/sh/rc-mount.sh . "$RC_LIBEXECDIR"/sh/rc-mount.sh
for x in $net_fs_list $extra_net_fs_list; do for x in $net_fs_list $extra_net_fs_list; do
fs="$fs${fs:+,}$x" case "$x" in
nfs|nfs4)
continue
;;
*)
fs="$fs${fs:+,}$x"
;;
esac
done done
if [ -n "$fs" ]; then if [ -n "$fs" ]; then
umount -at $fs || eerror "Failed to simply unmount filesystems" umount -at $fs || eerror "Failed to simply unmount filesystems"
@@ -47,7 +62,14 @@ stop()
eindent eindent
fs= fs=
for x in $net_fs_list $extra_net_fs_list; do for x in $net_fs_list $extra_net_fs_list; do
fs="$fs${fs:+|}$x" case "$x" in
nfs|nfs4)
continue
;;
*)
fs="$fs${fs:+|}$x"
;;
esac
done done
[ -n "$fs" ] && fs="^($fs)$" [ -n "$fs" ] && fs="^($fs)$"
do_unmount umount ${fs:+--fstype-regex} $fs --netdev do_unmount umount ${fs:+--fstype-regex} $fs --netdev

View File

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

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # 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> # Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # 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> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -9,7 +9,7 @@ ttyn=${rc_tty_number:-${RC_TTY_NUMBER:-12}}
depend() depend()
{ {
need localmount need localmount
keyword -openvz -prefix -systemd-nspawn -vserver -lxc keyword -openvz -prefix -vserver -lxc
} }
_setleds() _setleds()

View File

@@ -1,12 +0,0 @@
#!@SBINDIR@/openrc-run
# Copyright (c) 2014 Ralph Sennhauser <sera@igentoo.org>
# Released under the 2-clause BSD license.
# Can be used on OSs that take care of the clock.
description="Provides clock"
depend()
{
provide clock
}

View File

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

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # 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> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -8,20 +8,66 @@ depend()
{ {
use modules devfs use modules devfs
need localmount need localmount
keyword -openvz -prefix -systemd-nspawn -vserver -lxc keyword -openvz -prefix -vserver -lxc
} }
start() start()
{ {
# Make sure we insert usbcore if it's a module
if [ -f /proc/modules -a ! -d /sys/module/usbcore -a ! -d /proc/bus/usb ]; then
modprobe -q usbcore
fi
[ -e /proc/filesystems ] || return 0
# Setup Kernel Support for miscellaneous Binary Formats # Setup Kernel Support for miscellaneous Binary Formats
if [ -d /proc/sys/fs/binfmt_misc -a ! -e /proc/sys/fs/binfmt_misc/register ]; then if [ -d /proc/sys/fs/binfmt_misc -a ! -e /proc/sys/fs/binfmt_misc/register ]; then
modprobe -q binfmt-misc
if grep -qs binfmt_misc /proc/filesystems; then if grep -qs binfmt_misc /proc/filesystems; then
ebegin "Mounting misc binary format filesystem" ebegin "Mounting misc binary format filesystem"
mount -t binfmt_misc -o nodev,noexec,nosuid \ mount -t binfmt_misc -o nodev,noexec,nosuid \
binfmt_misc /proc/sys/fs/binfmt_misc binfmt_misc /proc/sys/fs/binfmt_misc
if eend $? ; then
local fmts
ebegin "Loading custom binary format handlers"
fmts=$(grep -hsv -e '^[#;]' -e '^[[:space:]]*$' \
/run/binfmt.d/*.conf \
/etc/binfmt.d/*.conf \
""/usr/lib/binfmt.d/*.conf)
if [ -n "${fmts}" ]; then
echo "${fmts}" > /proc/sys/fs/binfmt_misc/register
fi
eend $? eend $?
fi
fi fi
fi fi
[ "$RC_SYS" = "OPENVZ" ] && return 0
# Check what USB fs the kernel support. Currently
# 2.5+ kernels, and later 2.4 kernels have 'usbfs',
# while older kernels have 'usbdevfs'.
if [ -d /proc/bus/usb -a ! -e /proc/bus/usb/devices ]; then
local usbfs=$(grep -Fow usbfs /proc/filesystems ||
grep -Fow usbdevfs /proc/filesystems)
if [ -n "$usbfs" ]; then
ebegin "Mounting USB device filesystem [$usbfs]"
local usbgid="$(getent group usb | \
sed -e 's/.*:.*:\(.*\):.*/\1/')"
mount -t $usbfs \
-o ${usbgid:+devmode=0664,devgid=$usbgid,}noexec,nosuid \
usbfs /proc/bus/usb
eend $?
fi
fi
# Setup Kernel Support for SELinux
if [ -d /selinux ] && ! mountinfo -q /selinux; then
if grep -qs selinuxfs /proc/filesystems; then
ebegin "Mounting SELinux filesystem"
mount -t selinuxfs selinuxfs /selinux
eend $?
fi
fi
return 0 return 0
} }

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name> # Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # 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> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # 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> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -7,7 +7,7 @@ description="Mount the root fs read/write"
depend() depend()
{ {
need fsck need fsck
keyword -jail -openvz -prefix -systemd-nspawn -vserver -lxc keyword -jail -openvz -prefix -vserver -lxc
} }
start() start()

View File

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

View File

@@ -1,31 +0,0 @@
#!@SBINDIR@/openrc-run
# Copyright (C) 2015 William Hubbs <w.d.hubbs@gmail.com>
# Released under the 2-clause BSD license.
command=/bin/s6-svscan
command_args="${RC_SVCDIR}"/s6-scan
command_background=yes
pidfile=/var/run/s6-svscan.pid
depend()
{
need localmount
}
start_pre()
{
einfo "Creating s6 scan directory"
checkpath -d -m 0755 "$RC_SVCDIR"/s6-scan
return $?
}
stop_post()
{
ebegin "Stopping any remaining s6 services"
s6-svc -dx "${RC_SVCDIR}"/s6-scan/* 2>/dev/null || true
eend $?
ebegin "Stopping any remaining s6 service loggers"
s6-svc -dx "${RC_SVCDIR}"/s6-scan/*/log 2>/dev/null || true
eend $?
}

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -25,12 +25,12 @@ start()
local rc= local rc=
if [ ! -d "$RC_LIBEXECDIR"/cache ]; then if [ ! -d "$RC_LIBEXECDIR"/cache ]; then
rm -rf "$RC_LIBEXECDIR"/cache rm -rf "$RC_LIBEXECDIR"/cache
if ! mkdir -p "$RC_LIBEXECDIR"/cache; then if ! mkdir "$RC_LIBEXECDIR"/cache; then
rc=$? rc=$?
if yesno "${RC_GOINGDOWN}"; then if yesno "${RC_GOINGDOWN}"; then
rc=0 rc=0
fi fi
eend $rc "Unable to create $RC_SVCDIR/cache" eend $rc
return $rc return $rc
fi fi
fi fi

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -23,7 +23,7 @@ start()
# Don't quote ${dump_device}, so that if it's unset, # Don't quote ${dump_device}, so that if it's unset,
# savecore will check on the partitions listed in fstab # savecore will check on the partitions listed in fstab
# without errors in the output # without errors in the output
savecore -C $dump_device >/dev/null savecore -C "$dump_dir" $dump_device >/dev/null
else else
ls "$dump_dir"/bsd* > /dev/null 2>&1 ls "$dump_dir"/bsd* > /dev/null 2>&1
fi fi

View File

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

View File

@@ -1,11 +1,11 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
depend() depend()
{ {
before localmount before localmount
keyword -jail -openvz -prefix -systemd-nspawn -vserver -lxc keyword -jail -openvz -prefix -vserver -lxc
} }
start() start()

View File

@@ -1,11 +1,11 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
depend() depend()
{ {
need localmount need localmount
keyword -jail -openvz -prefix -systemd-nspawn -vserver -lxc keyword -jail -openvz -prefix -vserver -lxc
} }
start() start()

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2009 Roy Marples <roy@marples.name> # Copyright (c) 2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -8,7 +8,7 @@ depend()
{ {
before * before *
provide clock provide clock
keyword -openvz -prefix -systemd-nspawn -uml -vserver -xenu -lxc keyword -openvz -prefix -uml -vserver -xenu -lxc
} }
# swclock is an OpenRC built in # swclock is an OpenRC built in
@@ -17,7 +17,7 @@ start()
{ {
ebegin "Setting the local clock based on last shutdown time" ebegin "Setting the local clock based on last shutdown time"
if ! swclock 2> /dev/null; then if ! swclock 2> /dev/null; then
swclock --warn @SBINDIR@/openrc-run swclock --warn @SBINDIR@/runscript
fi fi
eend $? eend $?
} }

View File

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

View File

@@ -1,31 +0,0 @@
#!@SBINDIR@/openrc-run
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
depend()
{
before bootmisc logger
keyword -prefix
}
start()
{
[ -e /etc/sysctl.conf ] || return 0
local retval=0 var= comments= conf=
ebegin "Configuring kernel parameters"
eindent
for conf in @SYSCONFDIR@/sysctl.conf @SYSCONFDIR@/sysctl.d/*.conf; do
if [ -r "$conf" ]; then
vebegin "applying $conf"
while read var comments; do
case "$var" in
""|"#"*) continue;;
esac
sysctl -w "$var" >/dev/null || retval=1
done < "$conf"
veend $retval
fi
done
eoutdent
eend $retval "Some errors were encountered"
}

View File

@@ -1,32 +0,0 @@
#!@PREFIX@/sbin/openrc-run
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
#FIXME: Modify for GNU/Hurd
depend()
{
before bootmisc logger
keyword -prefix
}
start()
{
[ -e /etc/sysctl.conf ] || return 0
local retval=0 var= comments= conf=
ebegin "Configuring kernel parameters"
eindent
for conf in @SYSCONFDIR@/sysctl.conf @SYSCONFDIR@/sysctl.d/*.conf; do
if [ -r "$conf" ]; then
vebegin "applying $conf"
while read var comments; do
case "$var" in
""|"#"*) continue;;
esac
sysctl -w "$var" >/dev/null || retval=1
done < "$conf"
veend $retval
fi
done
eoutdent
eend $retval "Some errors were encountered"
}

View File

@@ -1,19 +1,34 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name> # Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
depend() depend()
{ {
before bootmisc logger before bootmisc logger
keyword -prefix -systemd-nspawn -vserver keyword -lxc -prefix -vserver
} }
start() start()
{ {
local quiet local conf= retval=0 err errs
yesno $rc_verbose || quiet=-q
ebegin "Configuring kernel parameters" ebegin "Configuring kernel parameters"
sysctl ${quiet} --system eindent
eend $? "Unable to configure some kernel parameters"
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> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -8,7 +8,7 @@ sysfs_opts=nodev,noexec,nosuid
depend() depend()
{ {
keyword -lxc -prefix -systemd-nspawn -vserver keyword -lxc -prefix -vserver
} }
mount_sys() mount_sys()
@@ -82,15 +82,6 @@ mount_misc()
fi fi
fi fi
# Setup Kernel Support for SELinux
if [ -d /sys/fs/selinux ] && ! mountinfo -q /sys/fs/selinux; then
if grep -qs selinuxfs /proc/filesystems; then
ebegin "Mounting SELinux filesystem"
mount -t selinuxfs selinuxfs /sys/fs/selinux
eend $?
fi
fi
# setup up kernel support for efivarfs # setup up kernel support for efivarfs
# slightly complicated, as if it's build as a module but NOT yet loaded, # slightly complicated, as if it's build as a module but NOT yet loaded,
# it will NOT appear in /proc/filesystems yet # it will NOT appear in /proc/filesystems yet
@@ -108,22 +99,19 @@ mount_misc()
mount_cgroups() mount_cgroups()
{ {
mountinfo -q /sys/fs/cgroup || return 0 mountinfo -q /sys/fs/cgroup || return 0
if ! mountinfo -q /sys/fs/cgroup/openrc; then local agent="@LIBEXECDIR@/sh/cgroup-release-agent.sh"
local agent="@LIBEXECDIR@/sh/cgroup-release-agent.sh" mkdir /sys/fs/cgroup/openrc
mkdir /sys/fs/cgroup/openrc mount -n -t cgroup \
mount -n -t cgroup \ -o none,${sysfs_opts},name=openrc,release_agent="$agent" \
-o none,${sysfs_opts},name=openrc,release_agent="$agent" \ openrc /sys/fs/cgroup/openrc
openrc /sys/fs/cgroup/openrc echo 1 > /sys/fs/cgroup/openrc/notify_on_release
echo 1 > /sys/fs/cgroup/openrc/notify_on_release
fi
yesno ${rc_controller_cgroups:-YES} && [ -e /proc/cgroups ] || return 0 yesno ${rc_controller_cgroups:-YES} && [ -e /proc/cgroups ] || return 0
while read name hier groups enabled rest; do while read name hier groups enabled rest; do
case "${enabled}" in case "${enabled}" in
1) mountinfo -q /sys/fs/cgroup/${name} && continue 1) mkdir /sys/fs/cgroup/${name}
mkdir /sys/fs/cgroup/${name}
mount -n -t cgroup -o ${sysfs_opts},${name} \ mount -n -t cgroup -o ${sysfs_opts},${name} \
${name} /sys/fs/cgroup/${name} ${name} /sys/fs/cgroup/${name}
;; ;;
@@ -131,21 +119,18 @@ mount_cgroups()
done < /proc/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
}
start() start()
{ {
local retval
mount_sys mount_sys
mount_misc retval=$?
mount_cgroups if [ $retval -eq 0 ]; then
restorecon_sys mount_misc
return 0 retval=$?
fi
if [ $retval -eq 0 ]; then
mount_cgroups
retval=$?
fi
return $retval
} }

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # 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> # Copyright (c) 2008-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -9,7 +9,7 @@ ttyn=${rc_tty_number:-${RC_TTY_NUMBER:-12}}
depend() depend()
{ {
keyword -lxc -openvz -prefix -systemd-nspawn -uml -vserver -xenu keyword -lxc -openvz -prefix -uml -vserver -xenu
use root use root
after bootmisc after bootmisc
} }

View File

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

View File

@@ -1,8 +1,8 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright 1999-2012 Gentoo Foundation # Copyright 1999-2012 Gentoo Foundation
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
description="Set up tmpfiles.d entries" description="set up tmpfiles.d entries"
depend() depend()
{ {
@@ -11,8 +11,8 @@ depend()
start() start()
{ {
ebegin "Setting up tmpfiles.d entries" 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} ${tmpfiles_opts}
eend $? eend $?
return 0 return 0

View File

@@ -1,4 +1,4 @@
#!@SBINDIR@/openrc-run #!@SBINDIR@/runscript
# Copyright (c) 2008 Roy Marples <roy@marples.name> # Copyright (c) 2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # 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> # Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license. # Released under the 2-clause BSD license.
@@ -8,7 +8,7 @@ description="Initializes the random number generator."
depend() depend()
{ {
need localmount need localmount
keyword -jail -lxc -openvz -prefix -systemd-nspawn keyword -jail -lxc -openvz -prefix
} }
save_seed() save_seed()

View File

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

View File

@@ -1,17 +1,9 @@
MK= ../mk
include ${MK}/sys.mk
include ${MK}/os.mk
MAN3= einfo.3 \ MAN3= einfo.3 \
rc_config.3 rc_deptree.3 rc_find_pids.3 rc_plugin_hook.3 \ rc_config.3 rc_deptree.3 rc_find_pids.3 rc_plugin_hook.3 \
rc_runlevel.3 rc_service.3 rc_stringlist.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 service.8 start-stop-daemon.8
ifeq (${OS},Linux)
MAN8 += rc-sstat.8
endif
# Handy macro to create symlinks # Handy macro to create symlinks
# This does rely on correctly formatting our manpages! # This does rely on correctly formatting our manpages!
MAKE_LINKS= suffix=$${man\#*.}; \ MAKE_LINKS= suffix=$${man\#*.}; \
@@ -24,6 +16,8 @@ MAKE_LINKS= suffix=$${man\#*.}; \
fi; \ fi; \
done; done;
MK= ../mk
include ${MK}/sys.mk
include ${MK}/gitignore.mk include ${MK}/gitignore.mk
all: all:

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