Compare commits
16 Commits
Author | SHA1 | Date | |
---|---|---|---|
82bf65d4fa | |||
f8a8bc673b | |||
65e0733db7 | |||
d9721360b1 | |||
![]() |
a3bcf72edb | ||
f3b0b94b3b | |||
![]() |
d100216548 | ||
953c999ccf | |||
253e6b1c5e | |||
![]() |
3f8be91085 | ||
![]() |
8aebbc7784 | ||
![]() |
cd027fc19e | ||
![]() |
207a4e6ebc | ||
![]() |
3fd1449a1f | ||
![]() |
6b361ce618 | ||
c327918eb2 |
20
1
20
1
@@ -5,15 +5,21 @@ PATH=/usr/bin:/usr/sbin
|
|||||||
|
|
||||||
. /etc/runit/functions
|
. /etc/runit/functions
|
||||||
|
|
||||||
msg "Welcome to Artix Linux!"
|
|
||||||
|
|
||||||
[ -r /etc/runit/rc.conf ] && . /etc/runit/rc.conf
|
[ -r /etc/runit/rc.conf ] && . /etc/runit/rc.conf
|
||||||
|
|
||||||
# Start core services: one-time system tasks.
|
msg "Welcome to Artix Linux!"
|
||||||
detect_virt
|
|
||||||
for f in /etc/runit/core-services/*.sh; do
|
if [ -x /usr/bin/openrc ] && [ "$SVMANAGER" = "openrc" ]; then
|
||||||
[ -r $f ] && . $f
|
# Start core services: we'll use OpenRC for this.
|
||||||
done
|
msg "Initializing runlevel sysinit with OpenRC..."
|
||||||
|
openrc sysinit || msg_error "Failed to start sysinit runlevel"
|
||||||
|
else
|
||||||
|
# Start core services: one-time system tasks.
|
||||||
|
detect_virt
|
||||||
|
for f in /etc/runit/core-services/*.sh; do
|
||||||
|
[ -r $f ] && . $f
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
dmesg >/var/log/dmesg.log
|
dmesg >/var/log/dmesg.log
|
||||||
if [ $(sysctl -n kernel.dmesg_restrict 2>/dev/null) -eq 1 ]; then
|
if [ $(sysctl -n kernel.dmesg_restrict 2>/dev/null) -eq 1 ]; then
|
||||||
|
7
2
7
2
@@ -13,6 +13,13 @@ done
|
|||||||
|
|
||||||
[ -x /etc/runit/rc.local ] && /etc/runit/rc.local
|
[ -x /etc/runit/rc.local ] && /etc/runit/rc.local
|
||||||
|
|
||||||
|
# The reason that boot is not in stage 1 is because if something hangs
|
||||||
|
# we can still listen for signals, however stage 1 does NOT accept signals
|
||||||
|
if [ -x /usr/bin/openrc ] && [ "$SVMANAGER" = "openrc" ]; then
|
||||||
|
openrc boot
|
||||||
|
openrc default
|
||||||
|
fi
|
||||||
|
|
||||||
runsvchdir "${runlevel}"
|
runsvchdir "${runlevel}"
|
||||||
mkdir -p /run/runit/runsvdir
|
mkdir -p /run/runit/runsvdir
|
||||||
ln -s /etc/runit/runsvdir/current /run/runit/service
|
ln -s /etc/runit/runsvdir/current /run/runit/service
|
||||||
|
47
3
47
3
@@ -11,49 +11,10 @@ if [ -e /run/runit/reboot ]; then
|
|||||||
chmod 100 /run/runit/reboot
|
chmod 100 /run/runit/reboot
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo
|
|
||||||
msg "Waiting for services to stop..."
|
|
||||||
sv force-stop /run/runit/service/*
|
|
||||||
sv exit /run/runit/service/*
|
|
||||||
|
|
||||||
[ -x /etc/runit/rc.shutdown ] && /etc/runit/rc.shutdown
|
[ -x /etc/runit/rc.shutdown ] && /etc/runit/rc.shutdown
|
||||||
|
|
||||||
msg "Saving random seed..."
|
for f in /etc/runit/shutdown-services/*.sh; do
|
||||||
( umask 077; bytes=$(cat /proc/sys/kernel/random/poolsize) || bytes=512; dd if=/dev/urandom of=/var/lib/random-seed count=1 bs=$bytes >/dev/null 2>&1 )
|
[ -r $f ] && . $f
|
||||||
|
done
|
||||||
|
|
||||||
if [ -z "$VIRTUALIZATION" -a -n "$HARDWARECLOCK" ]; then
|
msg "Stage 3 completed."
|
||||||
hwclock --systohc ${HARDWARECLOCK:+--$(echo $HARDWARECLOCK |tr A-Z a-z)}
|
|
||||||
fi
|
|
||||||
|
|
||||||
halt -w # for utmp
|
|
||||||
|
|
||||||
if [ -z "$VIRTUALIZATION" ]; then
|
|
||||||
msg "Stopping udev..."
|
|
||||||
udevadm control --exit
|
|
||||||
fi
|
|
||||||
|
|
||||||
msg "Sending TERM signal to processes..."
|
|
||||||
pkill --inverse -s0,1 -TERM
|
|
||||||
sleep 1
|
|
||||||
msg "Sending KILL signal to processes..."
|
|
||||||
pkill --inverse -s0,1 -KILL
|
|
||||||
|
|
||||||
if [ -z "$VIRTUALIZATION" ]; then
|
|
||||||
msg "Unmounting filesystems, disabling swap..."
|
|
||||||
swapoff -a
|
|
||||||
umount -r -a -t nosysfs,noproc,nodevtmpfs,notmpfs
|
|
||||||
msg "Remounting rootfs read-only..."
|
|
||||||
mount -o remount,ro /
|
|
||||||
fi
|
|
||||||
|
|
||||||
sync
|
|
||||||
|
|
||||||
if [ -z "$VIRTUALIZATION" ]; then
|
|
||||||
deactivate_vgs
|
|
||||||
deactivate_crypt
|
|
||||||
if [ -e /run/runit/reboot ] && command -v kexec >/dev/null; then
|
|
||||||
msg "Triggering kexec..."
|
|
||||||
kexec -e 2>/dev/null
|
|
||||||
# not reached when kexec was successful.
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
22
Makefile
22
Makefile
@@ -6,14 +6,14 @@ all:
|
|||||||
$(CC) $(CFLAGS) pause.c -o pause $(LDFLAGS)
|
$(CC) $(CFLAGS) pause.c -o pause $(LDFLAGS)
|
||||||
|
|
||||||
install:
|
install:
|
||||||
install -d ${DESTDIR}${PREFIX}/bin
|
install -d ${DESTDIR}${PREFIX}/lib/runit-artix/bin
|
||||||
install -m755 halt ${DESTDIR}${PREFIX}/bin/halt-runit
|
install -m755 halt ${DESTDIR}${PREFIX}/lib/runit-artix/bin/halt
|
||||||
install -m755 pause ${DESTDIR}${PREFIX}/bin/pause-runit
|
install -m755 pause ${DESTDIR}${PREFIX}/lib/runit-artix/bin/pause
|
||||||
install -m755 shutdown ${DESTDIR}${PREFIX}/bin/shutdown-runit
|
install -m755 shutdown ${DESTDIR}${PREFIX}/lib/runit-artix/bin/shutdown
|
||||||
install -m755 modules-load ${DESTDIR}${PREFIX}/bin/modules-load
|
install -m755 modules-load ${DESTDIR}${PREFIX}/lib/runit-artix/bin/modules-load
|
||||||
install -m755 zzz ${DESTDIR}${PREFIX}/bin/zzz-runit
|
install -m755 zzz ${DESTDIR}${PREFIX}/lib/runit-artix/bin/zzz
|
||||||
ln -sf halt-runit ${DESTDIR}${PREFIX}/bin/poweroff-runit
|
ln -sf halt ${DESTDIR}${PREFIX}/lib/runit-artix/bin/poweroff
|
||||||
ln -sf halt-runit ${DESTDIR}${PREFIX}/bin/reboot-runit
|
ln -sf halt ${DESTDIR}${PREFIX}/lib/runit-artix/bin/reboot
|
||||||
install -d ${DESTDIR}${PREFIX}/share/man/man1
|
install -d ${DESTDIR}${PREFIX}/share/man/man1
|
||||||
install -m644 pause.1 ${DESTDIR}${PREFIX}/share/man/man1
|
install -m644 pause.1 ${DESTDIR}${PREFIX}/share/man/man1
|
||||||
install -d ${DESTDIR}${PREFIX}/share/man/man8
|
install -d ${DESTDIR}${PREFIX}/share/man/man8
|
||||||
@@ -26,7 +26,9 @@ install:
|
|||||||
install -d ${DESTDIR}/etc/runit/sv
|
install -d ${DESTDIR}/etc/runit/sv
|
||||||
install -d ${DESTDIR}/etc/runit/runsvdir
|
install -d ${DESTDIR}/etc/runit/runsvdir
|
||||||
install -d ${DESTDIR}/etc/runit/core-services
|
install -d ${DESTDIR}/etc/runit/core-services
|
||||||
|
install -d ${DESTDIR}/etc/runit/shutdown-services
|
||||||
install -m644 core-services/*.sh ${DESTDIR}/etc/runit/core-services
|
install -m644 core-services/*.sh ${DESTDIR}/etc/runit/core-services
|
||||||
|
install -m644 shutdown-services/*.sh ${DESTDIR}/etc/runit/shutdown-services
|
||||||
install -m755 ${SCRIPTS} ${DESTDIR}/etc/runit
|
install -m755 ${SCRIPTS} ${DESTDIR}/etc/runit
|
||||||
install -m644 functions $(DESTDIR)/etc/runit
|
install -m644 functions $(DESTDIR)/etc/runit
|
||||||
install -m644 crypt.awk ${DESTDIR}/etc/runit
|
install -m644 crypt.awk ${DESTDIR}/etc/runit
|
||||||
@@ -35,8 +37,8 @@ install:
|
|||||||
install -m755 rc.shutdown ${DESTDIR}/etc/runit
|
install -m755 rc.shutdown ${DESTDIR}/etc/runit
|
||||||
ln -sf /run/runit/reboot ${DESTDIR}/etc/runit/
|
ln -sf /run/runit/reboot ${DESTDIR}/etc/runit/
|
||||||
ln -sf /run/runit/stopit ${DESTDIR}/etc/runit/
|
ln -sf /run/runit/stopit ${DESTDIR}/etc/runit/
|
||||||
cp -aP runsvdir/* ${DESTDIR}/etc/runit/runsvdir/
|
cp -R --no-dereference --preserve=mode,links -v runsvdir/* ${DESTDIR}/etc/runit/runsvdir/
|
||||||
cp -aP services/* ${DESTDIR}/etc/runit/sv/
|
cp -R --no-dereference --preserve=mode,links -v services/* ${DESTDIR}/etc/runit/sv/
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
-rm -f halt pause
|
-rm -f halt pause
|
||||||
|
15
README.md
15
README.md
@@ -4,21 +4,24 @@ This repository contains the runit init scripts for the Artix Linux
|
|||||||
distribution.
|
distribution.
|
||||||
|
|
||||||
This work is based on Void Linux's
|
This work is based on Void Linux's
|
||||||
[runit-void](https://github.com/voidlinux/void-runit). Patches to Void
|
[void-runit](https://github.com/voidlinux/void-runit). Patches to Void
|
||||||
Linux's repo will also be applied here.
|
Linux's repo will also be applied here.
|
||||||
|
|
||||||
## Dependencies
|
## Dependencies
|
||||||
|
|
||||||
|
- GNU coreutils
|
||||||
- A POSIX shell
|
- A POSIX shell
|
||||||
- A POSIX awk
|
- A POSIX awk
|
||||||
- procps-ng (needs pkill -s0,1)
|
- procps-ng (needs pkill -s0,1)
|
||||||
- runit
|
- runit
|
||||||
|
- opentmpfiles
|
||||||
|
- opensysusers
|
||||||
|
|
||||||
### How to use it
|
### How to use it
|
||||||
|
|
||||||
To see enabled services for "current" runlevel:
|
To see enabled services for "current" runlevel:
|
||||||
|
|
||||||
$ ls -l /var/service
|
$ ls -l /run/runit/service
|
||||||
|
|
||||||
To see available runlevels (default and single, which just runs sulogin):
|
To see available runlevels (default and single, which just runs sulogin):
|
||||||
|
|
||||||
@@ -26,21 +29,21 @@ To see available runlevels (default and single, which just runs sulogin):
|
|||||||
|
|
||||||
To enable and start a service into the "current" runlevel:
|
To enable and start a service into the "current" runlevel:
|
||||||
|
|
||||||
# ln -s /etc/runit/sv/<service> /var/service
|
# ln -s /etc/runit/sv/<service> /run/runit/service
|
||||||
|
|
||||||
To disable and remove a service:
|
To disable and remove a service:
|
||||||
|
|
||||||
# rm -f /var/service/<service>
|
# rm -f /run/runit/service/<service>
|
||||||
|
|
||||||
To view status of all services for "current" runlevel:
|
To view status of all services for "current" runlevel:
|
||||||
|
|
||||||
# sv status /var/service/*
|
# sv status /run/runit/service/*
|
||||||
|
|
||||||
Feel free to send patches and contribute with improvements!
|
Feel free to send patches and contribute with improvements!
|
||||||
|
|
||||||
## Copyright
|
## Copyright
|
||||||
|
|
||||||
runit-cromnix is in the public domain.
|
runit-artix is in the public domain.
|
||||||
|
|
||||||
To the extent possible under law, the creator of this work has waived
|
To the extent possible under law, the creator of this work has waived
|
||||||
all copyright and related or neighboring rights to this work.
|
all copyright and related or neighboring rights to this work.
|
||||||
|
@@ -8,8 +8,10 @@ mountpoint -q /dev || mount -o mode=0755,nosuid -t devtmpfs dev /dev
|
|||||||
mkdir -p -m0755 /run/runit /run/lvm /run/user /run/lock /run/log /dev/pts /dev/shm
|
mkdir -p -m0755 /run/runit /run/lvm /run/user /run/lock /run/log /dev/pts /dev/shm
|
||||||
mountpoint -q /dev/pts || mount -o mode=0620,gid=5,nosuid,noexec -n -t devpts devpts /dev/pts
|
mountpoint -q /dev/pts || mount -o mode=0620,gid=5,nosuid,noexec -n -t devpts devpts /dev/pts
|
||||||
mountpoint -q /dev/shm || mount -o mode=1777,nosuid,nodev -n -t tmpfs shm /dev/shm
|
mountpoint -q /dev/shm || mount -o mode=1777,nosuid,nodev -n -t tmpfs shm /dev/shm
|
||||||
|
mountpoint -q /sys/kernel/security || mount -n -t securityfs securityfs /sys/kernel/security
|
||||||
|
|
||||||
if [ -z "$VIRTUALIZATION" ]; then
|
if [ -z "$VIRTUALIZATION" ]; then
|
||||||
mountpoint -q /sys/fs/cgroup || mount -o mode=0755 -t tmpfs cgroup /sys/fs/cgroup
|
mountpoint -q /sys/fs/cgroup || mount -o mode=0755 -t tmpfs cgroup /sys/fs/cgroup
|
||||||
|
mountpoint -q /sys/fs/cgroup/openrc || mkdir -p /sys/fs/cgroup/openrc && mount -t cgroup -o none,name=openrc cgroup /sys/fs/cgroup/openrc
|
||||||
awk '$4 == 1 { system("mountpoint -q /sys/fs/cgroup/" $1 " || { mkdir -p /sys/fs/cgroup/" $1 " && mount -t cgroup -o " $1 " cgroup /sys/fs/cgroup/" $1 " ;}" ) }' /proc/cgroups
|
awk '$4 == 1 { system("mountpoint -q /sys/fs/cgroup/" $1 " || { mkdir -p /sys/fs/cgroup/" $1 " && mount -t cgroup -o " $1 " cgroup /sys/fs/cgroup/" $1 " ;}" ) }' /proc/cgroups
|
||||||
fi
|
fi
|
||||||
|
@@ -2,5 +2,5 @@
|
|||||||
# Load them by looking at the output of `kmod static-nodes`.
|
# Load them by looking at the output of `kmod static-nodes`.
|
||||||
|
|
||||||
for f in $(kmod static-nodes 2>/dev/null|awk '/Module/ {print $2}'); do
|
for f in $(kmod static-nodes 2>/dev/null|awk '/Module/ {print $2}'); do
|
||||||
modprobe -q $f 2>/dev/null
|
modprobe -bq $f 2>/dev/null
|
||||||
done
|
done
|
||||||
|
@@ -10,6 +10,11 @@ else
|
|||||||
msg_warn "cannot find udevd!"
|
msg_warn "cannot find udevd!"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -x /usr/bin/tmpfiles ]; then
|
||||||
|
msg "Setting up tmpfiles.d entries for /dev..."
|
||||||
|
tmpfiles --prefix=/dev --create --boot
|
||||||
|
fi
|
||||||
|
|
||||||
if [ -n "${_udevd}" ]; then
|
if [ -n "${_udevd}" ]; then
|
||||||
msg "Starting udev and waiting for devices to settle..."
|
msg "Starting udev and waiting for devices to settle..."
|
||||||
${_udevd} --daemon
|
${_udevd} --daemon
|
||||||
|
@@ -19,3 +19,13 @@ if [ -n "$TIMEZONE" ]; then
|
|||||||
msg "Setting up timezone to '${TIMEZONE}'..."
|
msg "Setting up timezone to '${TIMEZONE}'..."
|
||||||
ln -sf "/usr/share/zoneinfo/$TIMEZONE" /etc/localtime
|
ln -sf "/usr/share/zoneinfo/$TIMEZONE" /etc/localtime
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
msg "Setting up sysusers.d entries..."
|
||||||
|
if [ -x /usr/bin/sysusers ]; then
|
||||||
|
sysusers
|
||||||
|
fi
|
||||||
|
|
||||||
|
msg "Setting up tmpfiles.d entries..."
|
||||||
|
if [ -x /usr/bin/tmpfiles ]; then
|
||||||
|
tmpfiles --exclude-prefix=/dev --create --remove --boot
|
||||||
|
fi
|
||||||
|
@@ -3,10 +3,10 @@
|
|||||||
if [ -x /sbin/sysctl -o -x /bin/sysctl ]; then
|
if [ -x /sbin/sysctl -o -x /bin/sysctl ]; then
|
||||||
msg "Loading sysctl(8) settings..."
|
msg "Loading sysctl(8) settings..."
|
||||||
for i in /run/sysctl.d/*.conf \
|
for i in /run/sysctl.d/*.conf \
|
||||||
/etc/sysctl.d/*.conf \
|
|
||||||
/usr/local/lib/sysctl.d/*.conf \
|
/usr/local/lib/sysctl.d/*.conf \
|
||||||
/usr/lib/sysctl.d/*.conf \
|
/usr/lib/sysctl.d/*.conf \
|
||||||
/etc/sysctl.conf; do
|
/etc/sysctl.conf \
|
||||||
|
/etc/sysctl.d/*.conf; do
|
||||||
|
|
||||||
if [ -e "$i" ]; then
|
if [ -e "$i" ]; then
|
||||||
printf '* Applying %s ...\n' "$i"
|
printf '* Applying %s ...\n' "$i"
|
||||||
|
@@ -7,5 +7,6 @@ fi
|
|||||||
if [ ! -e /var/log/btmp ]; then
|
if [ ! -e /var/log/btmp ]; then
|
||||||
install -m0600 -o root -g utmp /dev/null /var/log/btmp
|
install -m0600 -o root -g utmp /dev/null /var/log/btmp
|
||||||
fi
|
fi
|
||||||
install -dm1777 /tmp/.X11-unix /tmp/.ICE-unix
|
rm -rf /tmp
|
||||||
|
install -dm1777 /tmp /tmp/.X11-unix /tmp/.ICE-unix
|
||||||
rm -f /etc/nologin /forcefsck /forcequotacheck /fastboot
|
rm -f /etc/nologin /forcefsck /forcequotacheck /fastboot
|
||||||
|
@@ -49,7 +49,9 @@ deactivate_vgs() {
|
|||||||
deactivate_crypt() {
|
deactivate_crypt() {
|
||||||
if [ -x /sbin/dmsetup -o -x /bin/dmsetup ]; then
|
if [ -x /sbin/dmsetup -o -x /bin/dmsetup ]; then
|
||||||
msg "Deactivating Crypt Volumes"
|
msg "Deactivating Crypt Volumes"
|
||||||
dmsetup ls --target crypt --exec 'cryptsetup close'
|
for v in $(dmsetup ls --target crypt --exec "dmsetup info -c --noheadings -o open,name"); do
|
||||||
|
[ ${v%%:*} -eq 0 ] && cryptsetup close ${v##*:}
|
||||||
|
done
|
||||||
deactivate_vgs "Crypt"
|
deactivate_vgs "Crypt"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
3
rc.conf
3
rc.conf
@@ -1,5 +1,8 @@
|
|||||||
# /etc/runit/rc.conf - system configuration
|
# /etc/runit/rc.conf - system configuration
|
||||||
|
|
||||||
|
# Set the service manager (available options: "runit" or "openrc")
|
||||||
|
#SVMANAGER="runit"
|
||||||
|
|
||||||
# Set the host name.
|
# Set the host name.
|
||||||
#
|
#
|
||||||
# NOTE: it's preferred to declare the hostname in /etc/hostname instead:
|
# NOTE: it's preferred to declare the hostname in /etc/hostname instead:
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
if [ -x /sbin/agetty -o /bin/agetty ]; then
|
if [ -x /sbin/agetty -o -x /bin/agetty ]; then
|
||||||
# util-linux specific settings
|
# util-linux specific settings
|
||||||
if [ "${tty}" = "tty1" ]; then
|
if [ "${tty}" = "tty1" ]; then
|
||||||
GETTY_ARGS="--noclear"
|
GETTY_ARGS="--noclear"
|
||||||
|
3
shutdown-services/00-stop-services.sh
Normal file
3
shutdown-services/00-stop-services.sh
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
msg "Waiting for services to stop..."
|
||||||
|
sv force-stop /run/runit/service/*
|
||||||
|
sv exit /run/runit/service/*
|
2
shutdown-services/01-random-seed.sh
Normal file
2
shutdown-services/01-random-seed.sh
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
msg "Saving random seed..."
|
||||||
|
( umask 077; bytes=$(cat /proc/sys/kernel/random/poolsize) || bytes=512; dd if=/dev/urandom of=/var/lib/random-seed count=1 bs=$bytes >/dev/null 2>&1 )
|
6
shutdown-services/02-hwclock.sh
Normal file
6
shutdown-services/02-hwclock.sh
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
if [ -z "$VIRTUALIZATION" ] && [ -n "$HARDWARECLOCK" ]; then
|
||||||
|
msg "Saving hardware clock..."
|
||||||
|
hwclock --systohc ${HARDWARECLOCK:+--$(echo $HARDWARECLOCK |tr A-Z a-z)}
|
||||||
|
fi
|
||||||
|
|
||||||
|
halt -w # for utmp
|
4
shutdown-services/03-stop-udev.sh
Normal file
4
shutdown-services/03-stop-udev.sh
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
if [ -z "$VIRTUALIZATION" ]; then
|
||||||
|
msg "Stopping udev..."
|
||||||
|
udevadm control --exit
|
||||||
|
fi
|
5
shutdown-services/04-killall.sh
Normal file
5
shutdown-services/04-killall.sh
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
msg "Sending TERM signal to processes..."
|
||||||
|
pkill --inverse -s0,1 -TERM
|
||||||
|
sleep 1
|
||||||
|
msg "Sending KILL signal to processes..."
|
||||||
|
pkill --inverse -s0,1 -KILL
|
8
shutdown-services/97-mount-ro.sh
Normal file
8
shutdown-services/97-mount-ro.sh
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
if [ -z "$VIRTUALIZATION" ]; then
|
||||||
|
msg "Unmounting filesystems, disabling swap..."
|
||||||
|
swapoff -a
|
||||||
|
umount -r -a -t nosysfs,noproc,nodevtmpfs,notmpfs
|
||||||
|
msg "Remounting rootfs read-only..."
|
||||||
|
mount -o remount,ro /
|
||||||
|
fi
|
||||||
|
sync
|
9
shutdown-services/98-deactivate-crypt.sh
Normal file
9
shutdown-services/98-deactivate-crypt.sh
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
if [ -z "$VIRTUALIZATION" ]; then
|
||||||
|
deactivate_vgs
|
||||||
|
deactivate_crypt
|
||||||
|
if [ -e /run/runit/reboot ] && command -v kexec >/dev/null; then
|
||||||
|
msg "Triggering kexec..."
|
||||||
|
kexec -e 2>/dev/null
|
||||||
|
# not reached when kexec was successful.
|
||||||
|
fi
|
||||||
|
fi
|
Reference in New Issue
Block a user