Age | Commit message (Collapse) | Author | Files |
|
The new ordering is now:
1) book-keeping
2) shutting down and killing processes
3) swapoff
4) unmounting and tearing down of block devices
The reason to move 1) to the top is so it will not interfere with
the killing of processes. The reason for not moving 3) to the top
as well is that we want to minimize the amount of stuff that has to
be moved from swap to ram.
However, swapoff must happen before 4) as we don't know what is under
the swap device/file.
Added a TODO: unmount any devices backed by swap (tmpfs/ramfs) to make
sure that their contents is thrown away rather than moved to ram. In
principle we might get OOM on shutdown due to the current situation,
but in most cases the only problem should be that shutdown is unecessarily
slow.
Thanks to Dan and Dave for prompting me to look into this.
Cc: Dan McGee <dpmcgee@gmail.com>
Cc: Dave Reisner <d@falconindy.com>
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
This is not very useful, is not maintained, has open serious bugs. Better
to admit that it does not work and just remove it. Someone could easily
make an AUR package with a hook, if they want it and can make it work
as expected.
The only case where this would be useful is in case lvm monitoring is in use
and dmeventd sends out a message to syslog before syslog-ng is started
(there is a very small window). However, not even this works atm (as far
as I know) due to bugs in minilogd.
Signed-off-by: Tom Gundersen <teg@jklm.no>
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Uglier script, but should now work with zsh as well as bash.
v2: only read rc.conf if LANG is not set in locale.conf, no
functional change. Based on suggestion by Dave.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
|
|
udev was receiving some events (due to e.g. swapoff) on shutdown
that caused it to fork new processes. These then receivde TERM before
they could finish, and complained on the console.
In principle, I'm worried that, with the right ammonut of bad luck,
we could fork off some process at exactly the wrong time which escapes
the killall logic.
This, by the way, highlights the frailty of the killall stuff.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
Read KEYMAP, CONSOLEFONT and CONSOLEMAP from vconsole.conf. If they are
set they take precedence over the values in rc.conf.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
This should fix (to the extent possible) #FS26337.
Figured-out-by: Dave Reisner <d@falconindy.com>
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
We don't have the problem with non-bash shells here, but better make the support uniform.
|
|
We now require udev 173, and the manpages use asciidoc.
|
|
Thanks to Elvis Stansvik <elvstone@gmail.com> for its template.
Fix bug: FS#25269
Signed-off-by: Sebastien Luttringer <seblu@seblu.net>
|
|
This is mainly to support non-bash shells that cannot source rc.conf.
The format of /etc/locale.conf is described here:
<http://0pointer.de/public/systemd-man/locale.conf.html>.
If LANG is not set in locale.conf, then we fall back to LOCALE
from rc.conf, as before.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
This will make sure the same hook is run regardless of whether you pivot
to the shutdown ramfs or not. This is in order to run apcupsd --killpower
as pointed out by Gerardo.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
These are only useful to a minority of users.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
This can be a symlink or a regular file, and rc.sysinit will preserve it
as such.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
I was getting "^[71G", this fixed it.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
With the new logic we will only wait for the timeout in case of problems,
we therefore increase the timeout as this will make problems more obvious.
There has been reports of problems with processes not being terminated, but
hopefully this should help us reproduce them.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
We do this before killing all processes. There is no reason to do it later,
and this might give some processes a bit more time to terminate properly.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
This uses the function introduced in 9b77b7d7b535c3c52c99a95374e1f800466c6414.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
Since recent change in udev package [#1] (install: remove post-install)
In case of booting without initramfs and there is no /dev/null:
* if / is ro, devtmpfs mount will fail, in consecuence /dev will be mounted as tmpfs.
* if / is rw, devtmpfs mount will success, but a regular file /dev/null in / will be created.
[#1] http://projects.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/udev&id=8728747c2b3d5d0506f7e6f1ac74edc0319591d6
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
rc.conf defaults LOCALE to en_US.UTF-8
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Abstract out timezone setting into its own function, passing
Country/Area as a parameter. Do some menial checking to make sure:
- the zonefile actually exists, erroring when it doesn't
- /etc/localtime is a symlink to the correct zoneinfo file, relinking
when it isn't.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This isn't _all_ your modules. Just the extras specified from rc.conf.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This patch implement loading of sysctl config files as described in
http://0pointer.de/public/systemd-man/sysctl.d.html
This is a very conveniant way of configuring sysctl option for sysadmin
which can drop sysctl config files inside this directory to enable some
feature.
Dropping a file like disableipv6.conf inside this directory will disable ipv6
$ cat disableipv6.conf
net.ipv6.conf.all.disable_ipv6 = 1
There is atm no package which use this functionnality
Signed-off-by: Sebastien Luttringer <seblu@seblu.net>
|
|
rc.d can now take --started, --stopped, --auto, --noauto as option which
help user to filter list of daemon for all actions
As a corollary list command can now take a list of dameon to display
All kind of arguments can be mixed to obtain the proper output.
zsh and bash completion are updated
Note: Output of help command exit 0 and is no more printed on stderr
Signed-off-by: Sebastien Luttringer <seblu@seblu.net>
|
|
Signed-off-by: Sebastien Luttringer <seblu@seblu.net>
|
|
Signed-off-by: Sebastien Luttringer <seblu@seblu.net>
|
|
Daemon running in background should let error output to be printed.
Standart output is still hided to have a correct printing in default cases.
This will help to detect error in daemon runned in background.
This will also remove have_daemon call which is already called in start_daemon.
Signed-off-by: Sebastien Luttringer <seblu@seblu.net>
|
|
init is now included in mkinitcpio's busybox, so we don't need
to copy it. This might break compat with dracut, but it can be
worked around very simply in case anyone wants to use dracut
with Arch, so we don't care.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
Tell the /run/initramfs/shutdown what action to preform. Still no kexec support though.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
Signed-off-by: Eric Bélanger <snowmaniscool@gmail.com>
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
Suggested-by: Karol B?a?ewicz <karol.blazewicz@gmail.com>
Suggested-by: Eric Bélanger <snowmaniscool@gmail.com>
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
A script marked a-x will be reported as missing, when in fact it's only
non-executable.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This was caused by commit fc9ce46483fc4d -- if the user has no interface
defined but also has no legacy variables defined, our legacy check
fails, and we try to bring up the network using an empty declaration.
Add in an additional safeguard of checking sysfs to see that the
interface really does exist.
Fixes FS#25671
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Reported-by: Dave Reisner <d@falconindy.com>
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
Fixes #25623.
Reported-by: Segej Puykin <arch@sergej.pp.ru>
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
locale.sh parses rc.conf at runtime and sets the LOCALE accordingly,
rather than writing a static file at every boot.
This eliminates yet another write to /etc.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
We still support a separate /usr if it was somehow mounted by the initrd.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
At worst this will give an error message if /usr is not mounted,
which is fine as we are warning against this anyway. It will not
break boot.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
install /dev/null as the new file instead of creating an empty file via
a no-op process substitution.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
[tomegun: the commit also adds a similar fix to rc.shutdown]
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
|
|
We check for /usr/lib being present. If it is not, we assume /usr
is not yet mounted and warn.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
This keeps the functionality, but disables it by default.
Individual scripts/functions can turn it on if they want.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
Assume that a shutdown executable has been created in /run/initramfs
by either dracut or mkinitramfs. Setup /run/initramfs to be a new root
and pivot into it. Making sure that nothing is using our old root anymore.
In particular this means we have to reexec init in the new root and
make sure stdio is using the new /dev/console.
This is inspired by Harald Hoyers work for systemd as well
as Thomas Bächlers deinitramfs.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
|
|
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
This add a /etc/tmpfiles.d inside makefile to automatically create directory with package.
/etc is a better place to store user specific tmpfiles config where /usr/lib is better
for shipped with package config.
As Dave as already included this path inside his arch-tmpfiles, it would be a shame to miss out.
Signed-off-by: Sebastien Luttringer <seblu@seblu.net>
|
|
Make it clear that the message refers to network settings, as some
users found this confusing.
Signed-off-by: Tom Gundersen <teg@jklm.no>
|
|
Categorize actions as 'create' or 'remove', for finer control.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|
|
Introduces the checkparams functions, which thoroughly checks arguments
for presence, length, and some amount of data validation.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
|