Age | Commit message (Collapse) | Author | Files |
|
Our current process of initializing /etc/mtab is
hackish and probably error-prone, replace it by
simply copying /proc/mounts.
|
|
Creating the RTC device will result in an error if devtmpfs is used,
as it already exists after loading the module. The new code skips
the mknod if the device is already present.
Additionally to rtc-cmos, we now also try to load rtc and genrtc,
as some custom kernels use the "old" misc RTC device instead of
the newer RTC class. In this case, the created device is also
different. This should fix FS#18078.
|
|
This sets FSCK_STDERR to /dev/stdout, but still makes it possible
to override this behaviour in a hook.
|
|
To avoid message about busy filesystem.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
This is necessary as the new udev defaults to --action=change which
breaks network device renaming.
|
|
devtmpfs instead of tmpfs if supported by the kernel
|
|
We don't want fsck looking at any network device, and we would otherwise
check things like iSCSI devices during boot before the network was up. This
doesn't quite work.
Fixes FS#17887.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Fixes FS#19311, use POSIX compliant stdout/stderr redirection.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
See FS#18759 for more details.
Signed-off-by: Roman Kyrylych <roman@archlinux.org>
|
|
|
|
The cryptsetup binary will move to /sbin/cryptsetup and the static binary
will be removed. Add code that will try /sbin/cryptsetup first, then
/usr/sbin/cryptsetup and fall back to the old /sbin/cryptsetup.static
if everything else fails.
|
|
|
|
|
|
|
|
|
|
|
|
Kurt Bosch)
|
|
|
|
Kurt Bosch)
|
|
|
|
Signed-off-by: Roman Kyrylych <roman@archlinux.org>
|
|
This is an Arch initscripts original (commit 98c76a4), but is not actually
necessary for hwclock to operate correctly, so kill it. The file is created
automatically when `hwclock --systohc` is invoked.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
hwclock calls appear to block somewhere between 1 and 2 seconds when we have
back-to-back calls. My theory (without looking at the code) is that hwclock
has to synchronize to the 1 second intervals of the hardware clock, so it
can sometimes take up to a second to complete.
To get around this unpleasant behavior, we can background the calls at point
X in the boot sequence, and then later at point Y in the script (when we
absolutely need the clock actions to be complete), we wait on the
subprocess. This allows the rest of the boot sequence, after the hwclock
code block, to continue until the point where we wait on the subprocess.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
combination with the new udev-based device mapper node creation
|
|
after udev has settled
|
|
latest device-mapper rules
|
|
|
|
|
|
|
|
We use ": > /foo" in a few cases to truncate a file.
If noclobber happens to be set, this fails, so we'll
use bash's >| operator instead to force it
Suggested-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
This fixes an issue with mount.aufs which requires mtab to
be present and apparently will not create it on its own
See FS#16497
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
Previous commit acac4f47597320f55995bdaf692d6f2335a1d67e
attempted to parse the name of the interface from the config
line, but neglected to check for "dhcp" config lines, in which
case the interface is the name
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
Using the variable name doesn't work in cases like this:
my_interface_foo="eth0 blah blah"
INTERFACES=(my_interface_foo)
It produces errors like so:
my_interface_foo no such device
Fixes FS#16114
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
Cleans up double application of earlier fixes for this issue.
Instead of calling $(tput cols 2>/dev/null), we now try tput cols
silently to see whether it complains. If not, then we call $(tput cols)
with no redirection of stderr. This way, we can get results other than
80.
eliminate color when stdout is not terminal
Signed-off-by: Jim Pryor <profjim@jimpryor.net>
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
\e isn't recongized in all shells. This causes issues with the locale.sh
script. For completeness, \e is replaced throughout the rc.sysinit script
Original-idea-by: David Khunne <stahlheinzkockhausen@googlemail.com>
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
This patch makes the hook names unique, prefixing them all with the script name (without the 'rc.')
It also removes the explicit declarations of all elements of the array, bash assumes "" if they are uninitialized
|
|
certain places
A function add_hook can be called from functions.d to register a hook function. The existing hooks
are based on suggestions from Michael Towers (larch) and on the implementation of initscripts-extras-fbsplash
which currently uses the strings passed to stat_busy and stat_done for this. More hooks can
be added if requested.
The implementation uses associative arrays and will thus only work with bash 4 or later
|
|
the code in rc.sysinit/rc.shutdown
udev has been a dependency of initscripts for a long time, the system won't work without it anyway.
Thus remove the "Using static filesystem" message which does nothing anyway and always try to start udevd
At the same time, update the killall5 and udev start code in rc.single
|
|
work between trigger and settle
|
|
The last patch caused applications to break that mmap()ed devices with PROT_EXEC
It's sad that we can't avoid putting binaries into /dev, but at least we can avoid setuid-binaries being there
|
|
|
|
In in_array a check might look like [ "!" = "@" ], which will fail because of the !,
so make this check look like [ "x!" = "x@" ].
Also, when an entry is prefixed with !, it should be handled as if it was not in the array.
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This operation doesn't block for more than a half second, and backgrounding
it invites race conditions if the settle operation ends up actually getting
executed first. My slice won't even boot without this change.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
For virtualized machines, the hardware clock doesn't actually exist, so all
hwclock calls fail and print error messages during system startup, shutdown,
and the hourly adjtime cronjob. By explicitly looking for HARDWARECLOCK to
be set to 'UTC' or 'localtime', all other values will result in hwclock
calls being skipped (e.g. set the variable to 'none').
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
man hwclock implies this option is rarely necessary, and (almost) all
systems Arch supports surely have a /dev/rtc device and load the rtc driver
in the kernel. Even if this is not available, hwclock will fall back to
direct I/O requests anyway.
As a side note, the adjtime cronjob didn't even respect this setting anyway.
Signed-off-by: Dan McGee <dan@archlinux.org>
|