You are not logged in.
I'm seeing a repeatable problem when installing devuan excalibur aka 6 on libvirt. The first problematic symptom is a hang for more than 30 minutes with the install UI saying "Finishing the installation" and "Running late-install-stage2..." This problem appears to be similar to this topic: https://dev1galaxy.org/viewtopic.php?id=7521
Going to vt4 to see the installer's syslog, it appears the installer unmounts and ejects /dev/sr0, then runs script 18-late-install-stage2, which tries to install a few new packages: libestr0 libfastjson4 liblognorm5 rsyslog
Activating vt2, the 'ps' command shows the two last non-kworker, non-ps processes as follows:
- apt-get -y reinstall rsyslog
- /usr/lib/apt/methods/cdrom
My first hunch is that the cdrom got unmounted too early, and that's causing the apt-get package [re]installation to hang. I'd love to supply screenshots, but I haven't seen how to add an image.
Offline
My first hunch is that the cdrom got unmounted too early, and that's causing the apt-get package [re]installation to hang.
That's exactly correct. There's a workaround in the latest installer-iso program, so if/when a 6.0.1 iso is published it will be corrected.
Offline
Thank you! Many additional thanks in advance for a pointer to the details of the workaround, please. It would be convenient if the workaround could be patched in, either during the running installer or by rebuilding a modified ISO.
Offline
The first patch that addresses this issue was listed here
https://git.devuan.org/devuan/installer … 2e12e7251c
but then I removed that entirely (and removed other old parts), and placed rsyslog in another part to ensure it gets installed
https://git.devuan.org/devuan/installer … 37ddeb4887
Not sure that's the proper way to do it, but it did pass my initial testing at least.
The first fix could be patched into a running installer, by replacing /usr/lib/finish-install.d/18late-install-stage2
cat <<EOF | tee /usr/lib/finish-install.d/18late-install-stage2 > /dev/null
#!/bin/sh
if [ -f /target/var/lib/dpkg/info/desktop-base.list ]; then
# desktop-base was installed. reinstall it after other packages if possible
if [ -n "\$(grep ^deb\ http /target/etc/apt/sources.list)" ]; then
# there are online apt sources listed; do not use installation media
sed -i -e 's/^deb cdrom:/#deb cdrom:/g' /target/etc/apt/sources.list
in-target sh -c "apt-get -y reinstall desktop-base"
elif [ -n "\$(ls /target/tmp/desktop-base/desktop-base*.deb 2>/dev/null)" ]; then
# the deb from installation media is available
in-target sh -c "cd /tmp/desktop-base ; dpkg -i *.deb"
else
# this is an offline installation, and the deb was not found
log "(offline) unable to reinstall desktop-base: deb file is unavailable"
fi
fi
# check if rsyslog got installed
if [ ! -f /target/usr/sbin/rsyslogd ]; then
# not installed; try to install it if possible
if [ -n "\$(grep ^deb\ http /target/etc/apt/sources.list)" ]; then
# there are online apt sources listed; do not use installation media
sed -i -e 's/^deb cdrom:/#deb cdrom:/g' /target/etc/apt/sources.list
in-target sh -c "apt-get -y reinstall rsyslog"
elif [ -n "\$(ls /target/tmp/rsyslog/rsyslog*.deb 2>/dev/null)" ]; then
# offline installation; the deb from installation media is available
in-target sh -c "cd /tmp/rsyslog ; dpkg -i *.deb"
else
# this is an offline installation, and the deb was not found
log "(offline) unable to install rsyslog: deb file is unavailable"
fi
fi
# patch for /usr/lib/udev/rules.d/90-alsa-restore.rules
# see: https://dev1galaxy.org/viewtopic.php?pid=57929#p57929
pathname="/target/usr/lib/udev/rules.d/90-alsa-restore.rules"
if [ -f "\$pathname" ]; then
# verify if patch is required
if [ \$(grep -c '^LABEL="alsa_restore_go"' \$pathname) -eq 2 ]; then
# same label exists twice. patch is needed.
linenum=\$(grep -n '^LABEL="alsa_restore_go"' \$pathname | (read first; read second; echo \$second | cut -d : -f 1))
# delete the wrong label (2nd one) and insert the correct label
sed -i -e "\${linenum}cLABEL=\"alsa_restore_std\"" \$pathname
fi
fi
EOFOr... to build your own updated ISO:
git clone https://git.devuan.org/devuan/installer-iso.git
cd installer-iso
./build-sudo.sh excalibur netinstallreplace "netinstall" with the iso you want to create (for example, "desktop")
view the README.md file there to see dependencies and other helpful info.
Offline
Superb! Thank you very much!
Offline