:: [devuan-dev] bug#932: init scripts …
Top Page
Delete this message
Reply to this message
Author: Walter Alejandro Iglesias
Date:  
To: Mark Hindley, 932-quiet, Thorsten Glaser
CC: 932, 932-submitter
Subject: [devuan-dev] bug#932: init scripts fail when /var is in a separate partition
On Fri, Jan 09, 2026 at 01:01:18PM +0100, Walter Alejandro Iglesias wrote:
> Mark and Thorsten,
>
> On Fri, Jan 09, 2026 at 12:04:38PM +0100, Walter Alejandro Iglesias wrote:
> > Consider my solution, please. It allows restoring that check, this time
>
> Now I understood how logsave(8) works. I was telling nonsense. Forget
> about my diff and sorry for the noise!


I'd like to add that, even after removing the [ -e "${FSCK_LOGFILE}" ]
check from the conditional in logsave_best_effort(), the logs from
checkfs.sh *still are not saved* in /var/log/fsck/checkfs. The only
solution I can think of is to save them first in a temporary file, as in
the example at bottom.

Another question I couldn't get rid of no matter how much I searched the
web is whether there is a way to configure initramfs to fsck all
partitions and not just / and /usr.


--- /lib/init/mount-functions.sh.orig    2026-01-09 17:24:51.587997366 +0100
+++ /lib/init/mount-functions.sh    2026-01-09 17:48:26.227997219 +0100
@@ -728,7 +728,7 @@ is_fastboot_active() {
 # for #901289.
 logsave_best_effort() {
     if [ -x /sbin/logsave ]; then
-        logsave -s "${FSCK_LOGFILE}" "$@"
+        logsave -s /run/checkfs.log "$@"
     else
         log_failure_msg "Cannot persist the following output on disc"
         "$@"
--- /etc/init.d/mountall.sh.orig    2026-01-09 16:36:51.391997720 +0100
+++ /etc/init.d/mountall.sh    2026-01-09 17:47:21.511998206 +0100
@@ -53,6 +53,10 @@ do_start() {
     # tmpfs, we have to make /var/log/fsck appear here. (see #524007)
     mkdir -p /var/log/fsck


+    if [ -e /run/checkfs.log ]; then
+        cat /run/checkfs.log > /var/log/fsck/checkfs
+    fi
+
     # We might have mounted something over /run; see if
     # /run/initctl is present.  Look for
     # /usr/share/sysvinit/update-rc.d to verify that sysvinit (and