Derivative Maker Automated CI Builder

Yes.

That one should be easy hopefully.

binary_build_folder_dist is currently set to "$HOMEVAR/derivative-binary"

binary_build_folder_dist=“$HOMEVAR/derivative-binary”

But can be overwritten using an environment variable.

binary_build_folder_dist="/path/to/folder"
export binary_build_folder_dist

That one may not be so easy to fix since I couldn’t reproduce that locally.

There might be some service running on the server which accesses that folder for some purpose such as KDE baloo indexing service. (Probably not that but something similar.)

Could you please share a

sudo ps aux

of the server?

Are logs posted automatically anywhere yet? If so or once that happens, I might be able to debug this easier but adding more and more debugging code to the build script.

Added more debugging (and maybe even a fix).

Yes, very much so.

Yes, that would be amazing!

New error with the umount_kill.sh script after rebase

logs

+ sudo --non-interactive test -d /var/cache/pbuilder/base.cow_amd64
+ /home/ansible/derivative-maker/help-steps/umount_kill.sh /var/cache/pbuilder/base.cow_amd64/
/home/ansible/derivative-maker/help-steps/umount_kill.sh: ERROR: This MUST be run as root (sudo)!
++ errorhandlergeneral ERR
++ last_failed_exit_code=1
++ last_failed_bash_command='"$dist_source_help_steps_folder/umount_kill.sh" "$base_folder/"'
++ output_cmd_set
++ '[' -o xtrace ']'
++ output_cmd=true
++ true 'INFO: Middle of function errorhandlergeneral of ././build-steps.d/1200_create-debian-packages.'
++ errorhandlerprocessshared ERR
++ last_script=././build-steps.d/1200_create-debian-packages
++ trap_signal_type_previous=
++ '[' '' = '' ']'
++ trap_signal_type_previous=unset
++ trap_signal_type_last=ERR
++ dist_build_error_counter=1
1 Like

Pretty sure it just needs $SUDO_TO_ROOT on lines 182 and 229 in build-steps.d/1200_create-debian-packages. Fixed on my branch

1 Like

Thanks! That and other similar cases is now fixed in 16.0.7.2-developers-only.

I guess I dont know what I am talking about because things still aren’t working.

logs

On the upside I got all the mounted volume issues fixed by just making the VPS a little larger and ditching the volume + mount logic. It was cheaper to add 50 gigs to the disk than have a 100gb block storage attached anyway :man_shrugging:

No need to make things unnecessarily complicated I suppose

1 Like

Thank you for your patience with me!

More debugging in 16.0.7.3-developers-only added and maybe even fixed.

No worries at all! Still having errors on the latest master build @Patrick

logs

1 Like

Hopefully fixed in 16.0.7.4-developers-only.

1 Like

Thank you. It seems as though this fixed the issues.

I am back to this weird mount issue, and would love some input.

logs

The error:

$ sudo --non-interactive umount /home/ansible/derivative-binary/Whonix-Gateway-XFCE_image
umount: /home/ansible/derivative-binary/Whonix-Gateway-XFCE_image: target is busy.

The system being mounted:

$ df -h | grep -i derivative
/dev/mapper/loop0p1   98G  2.8G   91G   4% /home/ansible/derivative-binary/Whonix-Gateway-XFCE_image

Processes running:

$ ps aux
USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root           1  0.0  0.2  99556  5560 ?        Ss   Aug31   0:12 /sbin/init
root           2  0.0  0.0      0     0 ?        S    Aug31   0:00 [kthreadd]
root           3  0.0  0.0      0     0 ?        I<   Aug31   0:00 [rcu_gp]
root           4  0.0  0.0      0     0 ?        I<   Aug31   0:00 [rcu_par_gp]
root           6  0.0  0.0      0     0 ?        I<   Aug31   0:00 [kworker/0:0H-events_highpri]
root           8  0.0  0.0      0     0 ?        I<   Aug31   0:13 [kworker/0:1H-events_highpri]
root           9  0.0  0.0      0     0 ?        I<   Aug31   0:00 [mm_percpu_wq]
root          10  0.0  0.0      0     0 ?        S    Aug31   0:00 [rcu_tasks_rude_]
root          11  0.0  0.0      0     0 ?        S    Aug31   0:00 [rcu_tasks_trace]
root          12  0.0  0.0      0     0 ?        S    Aug31   0:11 [ksoftirqd/0]
root          13  0.0  0.0      0     0 ?        I    Aug31   0:16 [rcu_sched]
root          14  0.0  0.0      0     0 ?        S    Aug31   0:01 [migration/0]
root          16  0.0  0.0      0     0 ?        S    Aug31   0:00 [cpuhp/0]
root          18  0.0  0.0      0     0 ?        S    Aug31   0:00 [kdevtmpfs]
root          19  0.0  0.0      0     0 ?        I<   Aug31   0:00 [netns]
root          20  0.0  0.0      0     0 ?        S    Aug31   0:00 [kauditd]
root          21  0.0  0.0      0     0 ?        S    Aug31   0:00 [khungtaskd]
root          22  0.0  0.0      0     0 ?        S    Aug31   0:00 [oom_reaper]
root          23  0.0  0.0      0     0 ?        I<   Aug31   0:00 [writeback]
root          24  0.0  0.0      0     0 ?        S    Aug31   0:09 [kcompactd0]
root          25  0.0  0.0      0     0 ?        SN   Aug31   0:00 [ksmd]
root          26  0.0  0.0      0     0 ?        SN   Aug31   0:00 [khugepaged]
root          44  0.0  0.0      0     0 ?        I<   Aug31   0:00 [kintegrityd]
root          45  0.0  0.0      0     0 ?        I<   Aug31   0:00 [kblockd]
root          46  0.0  0.0      0     0 ?        I<   Aug31   0:00 [blkcg_punt_bio]
root          47  0.0  0.0      0     0 ?        I<   Aug31   0:00 [edac-poller]
root          48  0.0  0.0      0     0 ?        I<   Aug31   0:00 [devfreq_wq]
root          50  0.0  0.0      0     0 ?        S    Aug31   0:06 [kswapd0]
root          51  0.0  0.0      0     0 ?        I<   Aug31   0:00 [kthrotld]
root          52  0.0  0.0      0     0 ?        I<   Aug31   0:00 [acpi_thermal_pm]
root          53  0.0  0.0      0     0 ?        I<   Aug31   0:00 [ipv6_addrconf]
root          63  0.0  0.0      0     0 ?        I<   Aug31   0:00 [kstrp]
root          66  0.0  0.0      0     0 ?        I<   Aug31   0:00 [zswap-shrink]
root          67  0.0  0.0      0     0 ?        I<   Aug31   0:00 [kworker/u3:0]
root         109  0.0  0.0      0     0 ?        I<   Aug31   0:00 [ata_sff]
root         110  0.0  0.0      0     0 ?        S    Aug31   0:00 [scsi_eh_0]
root         111  0.0  0.0      0     0 ?        I<   Aug31   0:00 [scsi_tmf_0]
root         112  0.0  0.0      0     0 ?        S    Aug31   0:00 [scsi_eh_1]
root         113  0.0  0.0      0     0 ?        I<   Aug31   0:00 [scsi_tmf_1]
root         115  0.0  0.0      0     0 ?        S    Aug31   0:00 [scsi_eh_2]
root         117  0.0  0.0      0     0 ?        I<   Aug31   0:00 [scsi_tmf_2]
root         182  0.0  0.0      0     0 ?        S    Aug31   0:13 [jbd2/vda1-8]
root         183  0.0  0.0      0     0 ?        I<   Aug31   0:00 [ext4-rsv-conver]
root         231  0.0  1.4 134824 30340 ?        Ss   Aug31   0:06 /lib/systemd/systemd-journald
root         294  0.0  0.0      0     0 ?        I<   Aug31   0:00 [cryptd]
root         326  0.0  0.0      0     0 ?        I<   Aug31   0:00 [ttm_swap]
root         360  0.0  0.2   8120  4880 ?        Ss   Aug31   0:07 /usr/sbin/haveged --Foreground --verbose=1
root         573  0.0  0.1  21336  3068 ?        Ss   Aug31   0:00 /lib/systemd/systemd-udevd
apt-cac+     601  0.0  0.3 459892  7900 ?        Ssl  Aug31   0:02 /usr/sbin/apt-cacher-ng -c /etc/apt-cacher-ng ForeGround=1
root         604  0.0  0.0   5576  1768 ?        Ss   Aug31   0:00 /usr/sbin/cron -f
message+     605  0.0  0.0   7984  1960 ?        Ss   Aug31   0:01 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
root         606  0.0  0.6 1225244 12580 ?       Ssl  Aug31   0:00 /opt/digitalocean/bin/droplet-agent
root         608  0.0  0.1 220740  2448 ?        Ssl  Aug31   0:01 /usr/sbin/rsyslogd -n -iNONE
root         615  0.0  0.1  13680  3064 ?        Ss   Aug31   0:01 /lib/systemd/systemd-logind
_chrony      627  0.0  0.1  18968  2276 ?        S    Aug31   0:00 /usr/sbin/chronyd -F 1
root         628  0.0  0.0   2812  1152 tty1     Ss+  Aug31   0:00 /sbin/agetty -o -p -- \u --noclear tty1 linux
root         629  0.0  0.0   4336  1400 ttyS0    Ss+  Aug31   0:00 /sbin/agetty -o -p -- \u --keep-baud 115200,57600,38400,9600 ttyS0 vt220
_chrony      630  0.0  0.0  10776  1920 ?        S    Aug31   0:00 /usr/sbin/chronyd -F 1
root         632  0.0  0.2  13296  4308 ?        Ss   Aug31   0:01 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups
root         633  0.0  0.5 106124 11012 ?        Ssl  Aug31   0:00 /usr/bin/python3 /usr/share/unattended-upgrades/unattended-upgrade-shutdown --wait-for-signal
root        1267  0.0  0.4 288416  9976 ?        Ssl  Aug31   0:01 /usr/libexec/packagekitd
root        1271  0.0  0.2 233444  5044 ?        Ssl  Aug31   0:00 /usr/libexec/polkitd --no-debug
root      135422  0.0  0.0      0     0 ?        I<   Sep02   0:00 [iprt-VBoxWQueue]
ansible   184556  0.0  0.1  15252  3884 ?        Ss   00:00   0:01 /lib/systemd/systemd --user
ansible   184557  0.0  0.1 102276  2996 ?        S    00:00   0:00 (sd-pam)
root      185769  0.0  0.2  14220  4448 ?        Ss   00:01   0:00 sshd: ansible [priv]
ansible   185776  0.0  0.2  15464  4428 ?        S    00:01   0:03 sshd: ansible@pts/1
ansible   185777  0.0  0.2   7080  4612 pts/1    Ss   00:01   0:00 -bash
root      270187  0.1  0.0      0     0 ?        I    00:20   0:02 [kworker/0:3-events]
root      334178  0.0  0.0      0     0 ?        I    00:38   0:00 [kworker/0:1-events]
root      340479  0.9  0.0      0     0 ?        S<   00:39   0:12 [loop0]
root      340481  0.0  0.0      0     0 ?        I<   00:39   0:00 [kdmflush]
root      340499  0.1  0.0      0     0 ?        S    00:39   0:02 [jbd2/dm-0-8]
root      340500  0.0  0.0      0     0 ?        I<   00:39   0:00 [ext4-rsv-conver]
root      383805  0.0  0.0      0     0 ?        I    00:45   0:00 [kworker/u2:0-flush-254:0]
root      385028  0.0  0.0      0     0 ?        I    00:52   0:00 [kworker/u2:1-events_unbound]
ansible   385050  0.0  0.1   8592  3188 pts/1    R+   01:00   0:00 ps aux
1 Like

They are always posted as the artifacts of the build, so on my fork Mycobee/derivative-maker you can go to the actions folder and see the logs for each run.

Also, here is sudo ps aux per request

$ sudo ps aux
USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root           1  0.0  0.2  99556  5560 ?        Ss   Aug31   0:12 /sbin/init
root           2  0.0  0.0      0     0 ?        S    Aug31   0:00 [kthreadd]
root           3  0.0  0.0      0     0 ?        I<   Aug31   0:00 [rcu_gp]
root           4  0.0  0.0      0     0 ?        I<   Aug31   0:00 [rcu_par_gp]
root           6  0.0  0.0      0     0 ?        I<   Aug31   0:00 [kworker/0:0H-events_highpri]
root           8  0.0  0.0      0     0 ?        I<   Aug31   0:13 [kworker/0:1H-events_highpri]
root           9  0.0  0.0      0     0 ?        I<   Aug31   0:00 [mm_percpu_wq]
root          10  0.0  0.0      0     0 ?        S    Aug31   0:00 [rcu_tasks_rude_]
root          11  0.0  0.0      0     0 ?        S    Aug31   0:00 [rcu_tasks_trace]
root          12  0.0  0.0      0     0 ?        S    Aug31   0:11 [ksoftirqd/0]
root          13  0.0  0.0      0     0 ?        I    Aug31   0:16 [rcu_sched]
root          14  0.0  0.0      0     0 ?        S    Aug31   0:01 [migration/0]
root          16  0.0  0.0      0     0 ?        S    Aug31   0:00 [cpuhp/0]
root          18  0.0  0.0      0     0 ?        S    Aug31   0:00 [kdevtmpfs]
root          19  0.0  0.0      0     0 ?        I<   Aug31   0:00 [netns]
root          20  0.0  0.0      0     0 ?        S    Aug31   0:00 [kauditd]
root          21  0.0  0.0      0     0 ?        S    Aug31   0:00 [khungtaskd]
root          22  0.0  0.0      0     0 ?        S    Aug31   0:00 [oom_reaper]
root          23  0.0  0.0      0     0 ?        I<   Aug31   0:00 [writeback]
root          24  0.0  0.0      0     0 ?        S    Aug31   0:09 [kcompactd0]
root          25  0.0  0.0      0     0 ?        SN   Aug31   0:00 [ksmd]
root          26  0.0  0.0      0     0 ?        SN   Aug31   0:00 [khugepaged]
root          44  0.0  0.0      0     0 ?        I<   Aug31   0:00 [kintegrityd]
root          45  0.0  0.0      0     0 ?        I<   Aug31   0:00 [kblockd]
root          46  0.0  0.0      0     0 ?        I<   Aug31   0:00 [blkcg_punt_bio]
root          47  0.0  0.0      0     0 ?        I<   Aug31   0:00 [edac-poller]
root          48  0.0  0.0      0     0 ?        I<   Aug31   0:00 [devfreq_wq]
root          50  0.0  0.0      0     0 ?        S    Aug31   0:06 [kswapd0]
root          51  0.0  0.0      0     0 ?        I<   Aug31   0:00 [kthrotld]
root          52  0.0  0.0      0     0 ?        I<   Aug31   0:00 [acpi_thermal_pm]
root          53  0.0  0.0      0     0 ?        I<   Aug31   0:00 [ipv6_addrconf]
root          63  0.0  0.0      0     0 ?        I<   Aug31   0:00 [kstrp]
root          66  0.0  0.0      0     0 ?        I<   Aug31   0:00 [zswap-shrink]
root          67  0.0  0.0      0     0 ?        I<   Aug31   0:00 [kworker/u3:0]
root         109  0.0  0.0      0     0 ?        I<   Aug31   0:00 [ata_sff]
root         110  0.0  0.0      0     0 ?        S    Aug31   0:00 [scsi_eh_0]
root         111  0.0  0.0      0     0 ?        I<   Aug31   0:00 [scsi_tmf_0]
root         112  0.0  0.0      0     0 ?        S    Aug31   0:00 [scsi_eh_1]
root         113  0.0  0.0      0     0 ?        I<   Aug31   0:00 [scsi_tmf_1]
root         115  0.0  0.0      0     0 ?        S    Aug31   0:00 [scsi_eh_2]
root         117  0.0  0.0      0     0 ?        I<   Aug31   0:00 [scsi_tmf_2]
root         182  0.0  0.0      0     0 ?        S    Aug31   0:13 [jbd2/vda1-8]
root         183  0.0  0.0      0     0 ?        I<   Aug31   0:00 [ext4-rsv-conver]
root         231  0.0  1.5 134824 30736 ?        Ss   Aug31   0:06 /lib/systemd/systemd-journald
root         294  0.0  0.0      0     0 ?        I<   Aug31   0:00 [cryptd]
root         326  0.0  0.0      0     0 ?        I<   Aug31   0:00 [ttm_swap]
root         360  0.0  0.2   8120  4880 ?        Ss   Aug31   0:07 /usr/sbin/haveged --Foreground --verbose=1
root         573  0.0  0.1  21336  3068 ?        Ss   Aug31   0:00 /lib/systemd/systemd-udevd
apt-cac+     601  0.0  0.3 459892  7900 ?        Ssl  Aug31   0:02 /usr/sbin/apt-cacher-ng -c /etc/apt-cacher-ng ForeGround=1
root         604  0.0  0.0   5576  1768 ?        Ss   Aug31   0:00 /usr/sbin/cron -f
message+     605  0.0  0.0   7984  1960 ?        Ss   Aug31   0:01 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
root         606  0.0  0.6 1225244 12580 ?       Ssl  Aug31   0:00 /opt/digitalocean/bin/droplet-agent
root         608  0.0  0.1 220740  2448 ?        Ssl  Aug31   0:01 /usr/sbin/rsyslogd -n -iNONE
root         615  0.0  0.1  13680  3064 ?        Ss   Aug31   0:01 /lib/systemd/systemd-logind
_chrony      627  0.0  0.1  18968  2276 ?        S    Aug31   0:00 /usr/sbin/chronyd -F 1
root         628  0.0  0.0   2812  1152 tty1     Ss+  Aug31   0:00 /sbin/agetty -o -p -- \u --noclear tty1 linux
root         629  0.0  0.0   4336  1400 ttyS0    Ss+  Aug31   0:00 /sbin/agetty -o -p -- \u --keep-baud 115200,57600,38400,9600 ttyS0 vt220
_chrony      630  0.0  0.0  10776  1920 ?        S    Aug31   0:00 /usr/sbin/chronyd -F 1
root         632  0.0  0.2  13296  4308 ?        Ss   Aug31   0:01 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups
root         633  0.0  0.5 106124 11012 ?        Ssl  Aug31   0:00 /usr/bin/python3 /usr/share/unattended-upgrades/unattended-upgrade-shutdown --wait-for-signal
root        1267  0.0  0.4 288416  9976 ?        Ssl  Aug31   0:01 /usr/libexec/packagekitd
root        1271  0.0  0.2 233444  5044 ?        Ssl  Aug31   0:00 /usr/libexec/polkitd --no-debug
root      135422  0.0  0.0      0     0 ?        I<   Sep02   0:00 [iprt-VBoxWQueue]
ansible   184556  0.0  0.1  15252  3884 ?        Ss   00:00   0:01 /lib/systemd/systemd --user
ansible   184557  0.0  0.1 102276  2996 ?        S    00:00   0:00 (sd-pam)
root      185769  0.0  0.2  14220  4448 ?        Ss   00:01   0:00 sshd: ansible [priv]
ansible   185776  0.0  0.2  15464  4428 ?        S    00:01   0:03 sshd: ansible@pts/1
ansible   185777  0.0  0.2   7080  4636 pts/1    Ss   00:01   0:00 -bash
root      270187  0.1  0.0      0     0 ?        I    00:20   0:03 [kworker/0:3-events]
root      334178  0.0  0.0      0     0 ?        I    00:38   0:00 [kworker/0:1-events]
root      340479  0.7  0.0      0     0 ?        S<   00:39   0:12 [loop0]
root      340481  0.0  0.0      0     0 ?        I<   00:39   0:00 [kdmflush]
root      340499  0.1  0.0      0     0 ?        S    00:39   0:02 [jbd2/dm-0-8]
root      340500  0.0  0.0      0     0 ?        I<   00:39   0:00 [ext4-rsv-conver]
root      383805  0.0  0.0      0     0 ?        I    00:45   0:00 [kworker/u2:0-flush-254:0]
root      385028  0.0  0.0      0     0 ?        I    00:52   0:00 [kworker/u2:1-events_unbound]
root      385055  0.0  0.0      0     0 ?        I    01:05   0:00 [kworker/u2:2-flush-254:0]
root      385058  0.0  0.0      0     0 ?        I    01:06   0:00 [kworker/u2:3]
root      385059  0.0  0.2   9280  4756 pts/1    S+   01:06   0:00 sudo ps aux
1 Like

This issue with umount was occuring later in the build process, a few tags ago

1 Like

More things

The below command returns nothing

$ sudo lsof /home/ansible/derivative-binary/Whonix-Gateway-XFCE_image/
1 Like

I think I may have narrowed down the culprit. Some sort of loopback device backing file is created on the VPS, perhaps by Digital Ocean.

$ sudo losetup -a
/dev/loop0: [65025]:1312791 (/home/ansible/derivative-binary/85e3ae26a1fa287badd3957b88fa03bbe1b7205a/Whonix-Gateway-XFCE-85e3ae26a1fa287badd3957b88fa03bbe1b7205a.Intel_AMD64.raw)
1 Like

Can you unmount /home/ansible/derivative-binary/Whonix-Gateway-XFCE_image somehow?

That’s quite a lot. I don’t know all of them.

Which distribution was used? Possible to start with Debian minimal as a build system?

That’s just to lower the amount of daemons that might do something inside the newly mounted folder which then prevents unmounting it.

That is supposed to be unmounted during help-steps/unmount-raw. The command unmounting it should look similar to…

sudo kpartx -d -s -v "/home/ansible/derivative-binary/85e3ae26a1fa287badd3957b88fa03bbe1b7205a/Whonix-Gateway-XFCE-85e3ae26a1fa287badd3957b88fa03bbe1b7205a.Intel_AMD64.raw" ; echo $?

But above command won’t work without a prior unmount:

sudo umount /home/ansible/derivative-binary/Whonix-Gateway-XFCE_image

Which is broken.

So the proper order which is already implemented by the build script is:

  1. kpartx loop
  2. mount
  3. umount
  4. kpartx unloop

So I think the loop device is created by the build script. Unfortunately it seems unavoidable to create a loop device for the purpose of building a raw image which contains a bootable operating system.

I’ll create a build locally now and check if there are any stray / leftover loop devices. But I guess not.

Investigating the latest build log, it seems that build step 1300_create-raw-image is already failing.

  • build-steps.d/1300_create-raw-image

Broken link. But I just found it under actions.

https://github.com/Mycobee/derivative-maker/actions

A server reboot might be required to get rid of the stray loop device. Maybe it’s from a previous bugged state of the build script and now fixed.

1 Like

The build script by the way isn’t a big monolithic blob that always takes ages until some issue happens. To ease debugging, it’s step based. Each step can be more or less independently from other steps.

(Of course some steps depend on others. For example 1300_create-raw-image cannot be done before 1700_install-packages.)

Would it help if I’d provide some easier test cases to reproduce this very issue faster so debugging gets faster and thereby hopefully easier?

1 Like

One thing is for sure: If a previous build failed, if there is already a stray loop device then a subsequent build has a high chance to fail. I’ll add a check to the build script now to test for such situations and abort early.


As for build https://github.com/Mycobee/derivative-maker/actions/runs/2982494928 already 1300_create-raw-image was failing. That is purely using grml-debootstrap. A standalone tool where we just pass environment variables and command line options.

At that point in time in the build script, we don’t use any related help-steps such as mount-raw, unmount-raw, chroot-raw, unchroot-raw or umount_kill.sh. So chances are low that there is something wrong with the build scirpt logic to mount / unmount.

I’ll come up with instructions for a simplified test case to get to the bottom of the mount / umount soon.

Build script now check for stray loop devices and aborts if there are any as this would likely cause strange follow up issues.

So a primary development goal of mine for the build script is to avoid stray loop devices at all cost. But once they exist, the safest way to get rid of them is probably a reboot. Otherwise the build script attempting to unmount things which itself might not have created could lead to unexpected results by the user.


Here are the simplified steps just to get to the grml-deboostrap base raw image creation step.
(Skipping package creation. Therefore it’s fast and probably saying a lot of time.)

args="--flavor whonix-gateway-xfce --target virtualbox --build --allow-untagged true"
./build-steps.d/1100_sanity-tests $args
./build-steps.d/1120_prepare-build-machine $args
./build-steps.d/1300_create-raw-image $args

This could even be run manually. No need to automate in CI (just yet). Just until we get closer to what is causing this. A build script issue (less likely since until this stage it’s pretty simple build steps) or some other issue which even happens with relatively simpler tools such as grml-debootstrap…

From the build log:

+ grep -q /dev/mapper/loop0p1 /proc/mounts
+ eerror '/dev/mapper/loop0p1 already mounted, exiting to avoid possible damage. (Manually unmount /dev/mapper/loop0p1)'

So by the time grml-debootstrap was running, /dev/mapper/loop0p1 was already existing. So this could be a follow-up issue from a previous unclean run of the build script. In that case, this very error should be resolved after reboot.

You are awesome @Patrick

Thanks so much for the help. Just got back from a big day climbing in the mountains but will dive in to all of this when I have the energy

1 Like