Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cubietruck build fails on Ubuntu #151

Closed
gdimopoulos opened this issue Feb 25, 2017 · 35 comments
Closed

Cubietruck build fails on Ubuntu #151

gdimopoulos opened this issue Feb 25, 2017 · 35 comments

Comments

@gdimopoulos
Copy link

First of all thank you for the effort to provide support for A20 devices.

I tried building the vanilla image for cubietruck with the commands provided in the instructions:
./build.sh -b arm -d armbian_cubietruck_vanilla -v 2.0

I then flashed the image with Etcher and tried to boot my cubietruck with it.
The boot process fails with the message "Ramdisk image is corrupt or invalid"

Here are some screenshots of the boot log
https://goo.gl/photos/Cm24u48CBF978ft9A

@gkkpch
Copy link
Collaborator

gkkpch commented Feb 26, 2017

The build scripts for Armbian images are brand new, not sure how much of it actually has been tested.
Perhaps @chrismade can jump in and have a look?

@chrismade
Copy link
Contributor

chrismade commented Feb 26, 2017

cubietruck is tested - both vanilla and legacy and works ok on my end - from attached screenshot it looks like sd-card is either not found or corrupt - pls try again to rewrite image on sd-card or try another sd-card - pls see also debug notes on armbian saying 97% of all boot issues is either unreliable sd-card or power supply.
Simple test on Linux:
plug-in sd-card and check console logs on which device it appears,
your device name of the sd-card should also appear at the bottom of 'dmesg' command output
Let's assume device is /dev/sdd (caution - might be different on your computer ! )
Then
fdisk /dev/sdd
should show 3 partitions. You may want to
mount /dev/sdd1 /mnt
and check files on the boot loader, boot.scr, uInitrd etc should be there.
if possible use dd on linux to copy image on sd-card, e.g.
dd bs=1M of=/dev/sdd if=pathtoimage
again, pls check first that /dev/sdd is really the sd-card not anything else
if boot still fails I need a copy from the 'build.sh' output

@volumio
Copy link
Owner

volumio commented Feb 26, 2017

@chrismade I think what you've done with this modification is just great. It will allow basically any board to run volumio...
I think it would be a good idea to document how to build an image, and the current limitations of that approach. What do you think?
If you're interested you can send PR to this repo
https://github.com/volumio/docs

@chrismade
Copy link
Contributor

will do

@gdimopoulos
Copy link
Author

@chrismade Thanks for helping me troubleshoot this issue.
I tried again with a much newer sd-card which is practically unused. I copied the image with dd as you suggested. Again, boot fails.

The sd-card contains 3 partitions: BOOT, volumio and volumio_data
BOOT seems to contain all the right files.
volumio contains only volumio_current.sqsh
volumio_data is empty

here is a pastebin of the fdisk output and the contents of the partitions
http://pastebin.com/kTkpaSEw

here is the build log
https://www.dropbox.com/s/zopct4ztw8ijmrj/build.log?dl=0

@chrismade
Copy link
Contributor

@gdimopoulos thanks for this excellent debug info - we are coming closer to the root cause but I cannot offer a fix yet - it fails to create the volumio init-ramdisk on your end for some unknown reason: your log shows:
Creating initramfs 'volumio.initrd'

  • mkinitramfs-custom.sh -o /tmp/initramfs-tmp
    Version: 4.9.12-sunxi
    mkinitramfs: failed to determine device for /
    and anything beyond that point is failing, too

On my end it looks like this:
Creating initramfs 'volumio.initrd'

  • mkinitramfs-custom.sh -o /tmp/initramfs-tmp
    Version: 4.9.12-sunxi
    Unsupported ioctl: cmd=0x5331
    Adding findfs/ parted/ mkfs.ext4/ e2fsck to initramfs
    Adding all common dependencies
    Adding volumio-init-updater to initramfs
    Creating initrd image
    .
    ./conf
    ./conf/initramfs.conf
    ./conf/arch.conf
    ./conf/modules

I have Debian 8u2 for my build environment:
Linux debian-ali 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1+deb8u2 (2016-10-19) x86_64 GNU/Linux

What is your build env (seems to be ubuntu)? Can you pls post output from
uname -a

PS: unfortunately switch to legacy won't fix it as this code is the same for both

@chrismade
Copy link
Contributor

could you please insert a line after line number 1 ... !/bin/sh
a new line with just
set +x
in file
~/Build/scripts/initramfs/mkinitramfs-custom.sh
and create a new log from build - we need to see what exactly is going on in this script

@chrismade
Copy link
Contributor

@volumio is there a chance to offer more xz-compressed pre-built images for download?

@gdimopoulos
Copy link
Author

My build machine is running Ubuntu 16.04 LTS
uname -a
Linux XPS 4.4.0-64-generic #85-Ubuntu SMP Mon Feb 20 11:50:30 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

Here is the build log after adding the set +x line
https://www.dropbox.com/s/u2uf42srj178fpz/build2.log?dl=0

the problem is still there and there seems to be a confirmed bug for Ubuntu server 16.04
https://bugs.launchpad.net/ubuntu/+source/base-installer/+bug/1582899

@gkkpch
Copy link
Collaborator

gkkpch commented Feb 27, 2017

@gdimopoulos: I believe this is not related as the build process uses a customized script to build an initramfs under chroot.
But, are we sure the problem did not already start during the first stage of the build process while building the rootfs? Anything particular showing up there? Unfortunately I can't look at the build log from where I am right now.

@gdimopoulos
Copy link
Author

@gkkpch
I found these 4 errors in the log that might be related to the failure of the mkinitramfs script.

Starting ISC DHCP server: dhcpdcheck syslog for diagnostics. ... failed!
failed!

dnsmasq: cannot create netlink socket: Address family not supported by protocol
failed!
invoke-rc.d: initscript dnsmasq, action "start" failed.

Starting Music Player Daemon: mpdFeb 27 09:18 : errno: Failed to open /var/lib/mpd/tag_cache: No such file or directory
ERROR: Could not determine network interfaces, you must use a interfaces config line
failed!
invoke-rc.d: initscript mpd, action "start" failed.
dpkg: error processing package mpd (--configure):
subprocess installed post-installation script returned error exit status 1
Setting up init (1.22) ...
Setting up python-gtk2 (2.24.0-4) ...
Setting up libglade2-0:armhf (1:2.6.4-2) ...
Setting up python-glade2 (2.24.0-4) ...
Setting up avahi-discover (0.6.31-5) ...
Processing triggers for libc-bin (2.19-18+deb8u7) ...
Processing triggers for ca-certificates (20141019+deb8u2) ...
Updating certificates in /etc/ssl/certs... 174 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d....done.
Processing triggers for python-support (1.0.15) ...
Processing triggers for initramfs-tools (0.120+deb8u2) ...
Errors were encountered while processing:
mpd

Starting Music Player Daemon: mpdFeb 27 09:20 : errno: Failed to open /var/lib/mpd/tag_cache: No such file or directory
ERROR: Could not determine network interfaces, you must use a interfaces config line
failed!
invoke-rc.d: initscript mpd, action "start" failed.
dpkg: error processing package mpd (--install):
subprocess installed post-installation script returned error exit status 1
Processing triggers for systemd (215-17+deb8u6) ...
Errors were encountered while processing:
mpd

@gkkpch
Copy link
Collaborator

gkkpch commented Feb 27, 2017 via email

@chrismade
Copy link
Contributor

most errors can be ignored, we only need to focus why this happened (happens):
Creating initramfs 'volumio.initrd'

mkinitramfs-custom.sh -o /tmp/initramfs-tmp
Version: 4.9.12-sunxi
mkinitramfs: failed to determine device for /
and anything beyond that point is failing, too

@chrismade
Copy link
Contributor

from what I read here ( thanks @gdimopoulos )
Launchpad Janitor (janitor) wrote on 2016-05-21: #12

Status changed to 'Confirmed' because the bug affects multiple users.
Changed in live-installer (Ubuntu):
status: New → Confirmed

there is no fix from the volumio team - as this ubuntu bug is confirmed since May 2016 - and is no bug in debian (which is pretty close to ubuntus codebase)

@gkkpch
Copy link
Collaborator

gkkpch commented Feb 27, 2017

True, but we are not using mkinitramfs.
Unless it also affects the installation of the initramfs-tools package under chroot in the first stage, that is why I was wondering if there were any errors there...
So the +x setting (and perhaps verbose="n" ==>verbose ="y" a few lines further down) would be interesting...

@chrismade
Copy link
Contributor

@gdimopoulos - first my apologies - I need a "set -x" in
scripts/initramfs/mkinitramfs-custom.sh
above I asked for "set +x" which was wrong - sorry!!

However, I checked extended shell output on my machine and this script is doing a lot of /sys reading in order to determine the root device -
@gkkpch do you know the history of that file "mkinitramfs-custom.sh", who brought it into the project and might be able to advise on this issue ? - I haven't touched that file so far - and from logs we can tell 100% for sure that the issue of failing to create the volumio ramdisk comes from that script.

@volumio
Copy link
Owner

volumio commented Feb 27, 2017

I think it fails here:
mkinitramfs: workaround is MODULES=most, check:
grep -r MODULES /etc/initramfs-tools/

Error please report bug on initramfs-tools

basically it cannot find the required modules to embed in the initramfs, so its not adding any of them. Therefore the initram does not get created, and the system will never boot...

@chrismade
Copy link
Contributor

chrismade commented Feb 27, 2017

@gdimopoulos can you please give us another log
with these seeting at beginning at scripts/initramfs/mkinitramfs-custom.sh
#!/bin/sh
set -x
echo '-------- mkinitramfs-custom.sh ---------'
umask 0022
export PATH='/usr/bin:/sbin:/bin'
CONFDIR="/etc/initramfs-tools"
verbose="y"

@gdimopoulos
Copy link
Author

@chrismade I'll give it another try with set -x and debug="y" to see if I can get any more details and report back here.

I can also report that I tried the build on a Debian machine and everything worked without a hiccup. I should probably rename the issue to "cubietruck build fails on Ubuntu" because this seems to be an Ubuntu related issue.

@chrismade
Copy link
Contributor

@gdimopoulos excellent ! yes, I assume that issue is related to ubuntu
we should recommend debian instead for the time being
thx again for spending so much time in digging into this issue

@gdimopoulos gdimopoulos changed the title Boot fails on cubietruck Cubietruck build fails on Ubuntu Feb 27, 2017
@gdimopoulos
Copy link
Author

@chrismade I agree, people should be advised to go with Debian until this issue is fixed. It is possible that there is a problem with the particular version of initramfs-tools on Ubuntu that might be fixed in the future.

@gkkpch
Copy link
Collaborator

gkkpch commented Feb 27, 2017 via email

@chrismade
Copy link
Contributor

@gdimopoulos - pls share output from another try with set -x and debug="y" - I'm still curious ;-)
Even you solved your issue by using debian - if you still have the log somewhere ... pls share

@gdimopoulos
Copy link
Author

@chrismade Yes, I'm still interested to solve this. I ran the build again with this morning with the two options enabled but didn't have time to post it here.

From a quick first look, I didn't see any additional info being printed in that part of the log.

I'll share the log tonight so you and anyone else interested can have a look.

@chrismade
Copy link
Contributor

@gdimopoulos no hurry - I just would like to see what happened before this line is printed:

mkinitramfs: failed to determine device for /

@gdimopoulos
Copy link
Author

@chrismade
Copy link
Contributor

chrismade commented Mar 1, 2017

Thank you @gdimopoulos -here is the part of concern:

.. [ ! -d /sys/devices/ ]
.. + readmount -r
dev foo mp foo fs opts rest
.. [ /boot = / ]
.. read -r dev foo mp foo fs opts rest
.. [ /dev = / ]
.. read -r dev foo mp foo fs opts rest
.. [ /proc = / ]
.. read -r dev foo mp foo fs opts rest
.. [ /sys = / ]
.. read -r dev foo mp foo fs opts rest
.. eval
.. [ -z ]
.. [ -r /proc/mounts ]
.. read dev mp fs opts rest
.. [ /boot = / ]
.. read dev mp fs opts rest
.. [ /dev = / ]
.. read dev mp fs opts rest
.. [ /proc = / ]
.. read dev mp fs opts rest
.. [ /sys = / ]
.. read dev mp fs opts rest
.. eval
.. [ / != / ]
.. [ = ubifs ]
.. [ / = / ]
.. [ = /dev/root ]
.. [ -z ]
.. echo mkinitramfs: failed to determine device for /
mkinitramfs: failed to determine device for /
.. echo mkinitramfs: workaround is MODULES=most, check:
mkinitramfs: workaround is MODULES=most, check:
.. echo grep -r MODULES /etc/initramfs-tools/
grep -r MODULES /etc/initramfs-tools/
.. echo

.. echo Error please report bug on initramfs-tools
Error please report bug on initramfs-tools
.. echo Include the output of 'mount' and 'cat /proc/mounts'
Include the output of 'mount' and 'cat /proc/mounts'
.. exit 1

@chrismade
Copy link
Contributor

chrismade commented Mar 5, 2017

The debian ( = working ) version looks like this:

.. [ ! -d /sys/devices/ ]
.. mount
.. read -r dev foo mp foo fs opts rest
.. [ /boot = /usr ]
.. read -r dev foo mp foo fs opts rest
.. [ /dev = /usr ]
.. read -r dev foo mp foo fs opts rest
.. [ /proc = /usr ]
.. read -r dev foo mp foo fs opts rest
.. [ /sys = /usr ]
.. read -r dev foo mp foo fs opts rest
.. eval
.. [ -z ]
.. [ -r /proc/mounts ]
.. read dev mp fs opts rest
.. [ / = /usr ]
.. read dev mp fs opts rest
.. [ /sys = /usr ]
.. read dev mp fs opts rest
.. [ /proc = /usr ]
.. read dev mp fs opts rest
.. [ /dev = /usr ]
.. read dev mp fs opts rest
.. [ /dev/pts = /usr ]
.. read dev mp fs opts rest
.. [ /run = /usr ]
.. read dev mp fs opts rest
.. [ / = /usr ]
.. read dev mp fs opts rest
.. [ /sys/kernel/security = /usr ]
.. read dev mp fs opts rest
.. [ /dev/shm = /usr ]
.. read dev mp fs opts rest
.. [ /run/lock = /usr ]
.. read dev mp fs opts rest
.. [ /sys/fs/cgroup = /usr ]
.. read dev mp fs opts rest
.. [ /sys/fs/cgroup/systemd = /usr ]
.. read dev mp fs opts rest
.. [ /sys/fs/pstore = /usr ]
.. read dev mp fs opts rest
.. [ /sys/fs/cgroup/cpuset = /usr ]
.. read dev mp fs opts rest
.. [ /sys/fs/cgroup/cpu,cpuacct = /usr ]
.. read dev mp fs opts rest
.. [ /sys/fs/cgroup/devices = /usr ]
.. read dev mp fs opts rest
.. [ /sys/fs/cgroup/freezer = /usr ]
.. read dev mp fs opts rest
.. [ /sys/fs/cgroup/net_cls,net_prio = /usr ]
.. read dev mp fs opts rest
.. [ /sys/fs/cgroup/blkio = /usr ]
.. read dev mp fs opts rest
.. [ /sys/fs/cgroup/perf_event = /usr ]
.. read dev mp fs opts rest
.. [ /proc/sys/fs/binfmt_misc = /usr ]
.. read dev mp fs opts rest
.. [ /sys/kernel/debug = /usr ]
.. read dev mp fs opts rest
.. [ /dev/hugepages = /usr ]
.. read dev mp fs opts rest
.. [ /dev/mqueue = /usr ]
.. read dev mp fs opts rest
.. [ /run/rpc_pipefs = /usr ]
.. read dev mp fs opts rest
.. [ /proc/sys/fs/binfmt_misc = /usr ]
.. read dev mp fs opts rest
.. [ /mnt/volumio/images = /usr ]
.. read dev mp fs opts rest
.. [ /boot = /usr ]
.. read dev mp fs opts rest
.. [ /dev = /usr ]
.. read dev mp fs opts rest
.. [ /proc = /usr ]
.. read dev mp fs opts rest
.. [ /sys = /usr ]
.. read dev mp fs opts rest
.. eval
.. [ /usr != / ]
.. [ -z ]
.. return


I propose as @gdimopoulos found a workaround solution by using debian instead of ubuntu and it appears that the Volumio team can't fix this ...

...to CLOSE this issue as WONTFIX - and wait for the ubuntu team to fix this

@macmpi
Copy link
Contributor

macmpi commented Mar 5, 2017

Curious why this issue is cubietruck image dependent.
I can successfully build RPi images on Ubuntu 16.04

@gdimopoulos
Copy link
Author

@chrismade I can see that the debian process is a bit different than the ubuntu one. Still I cannot identify the reason why it fails since the log doesn't provide any useful info. I'm fine with closing the issue as wontfix given that this is probably an ubuntu specific issue.

@macmpi I can also successfully build RPi on my system but the script fails for all the armbian-based images with the same error.

@yonhdee
Copy link

yonhdee commented Nov 16, 2017

  • i am running build.sh to build volumio for tinkerboard with:

    sudo ./build.sh -b armv7 -d tinkerboard -v 0.0.1
    came up with the same "mkinitramfs: failed to determine device for /" error

  • my build machine is:

    Linux DebianStretch 4.9.0-4-amd64 First contribution for Odroid-C1 #1 SMP Debian 4.9.51-1 (2017-09-28) x86_64 GNU/Linux

    before i tried build.sh on debian stretch, i was using Ubuntu16.04LTS, came up with the same "mkinitramfs: failed to determine device for /" error


LOG (debian stretch):

...
Creating initramfs 'volumio.initrd'
+ echo -------- mkinitramfs-custom.sh ---------
-------- mkinitramfs-custom.sh ---------
+ umask 0022
+ export PATH=/usr/bin:/sbin:/bin
+ keep=n
+ CONFDIR=/etc/initramfs-tools
+ verbose=y
+ test -e /bin/busybox
+ BUSYBOXDIR=/bin
+ test -e /usr/lib/initramfs-tools/bin/busybox
+ export BUSYBOXDIR
+ getopt -o c:d:ko:r:v -n /usr/local/sbin/mkinitramfs-custom.sh -- -o /tmp/initramfs-tmp
+ OPTIONS= -o '/tmp/initramfs-tmp' --
+ [ 0 != 0 ]
+ eval set --  -o '/tmp/initramfs-tmp' --
+ set -- -o /tmp/initramfs-tmp --
+ true
+ outfile=/tmp/initramfs-tmp
+ shift 2
+ true
+ shift
+ break
+ . /usr/share/initramfs-tools/scripts/functions
+ . /usr/share/initramfs-tools/hook-functions
+ . /etc/initramfs-tools/initramfs.conf
+ MODULES=dep
+ BUSYBOX=y
+ KEYMAP=n
+ COMPRESS=gzip
+ DEVICE=
+ NFSROOT=auto
+ EXTRA_CONF=
+ [ -e /usr/share/initramfs-tools/conf.d/* ]
+ [ -e /etc/initramfs-tools/conf.d/* ]
+ [ -d /usr/share/initramfs-tools/conf-hooks.d/* ]
+ [ -e /usr/share/initramfs-tools/conf-hooks.d/* ]
+ [ -n  ]
+ [ -z /tmp/initramfs-tmp ]
+ touch /tmp/initramfs-tmp
+ readlink -f /tmp/initramfs-tmp
+ outfile=/tmp/initramfs-tmp
+ ls -t /lib/modules
+ cat
+ head -n2
+ versions=4.4.16
+ echo 4.4.16
+ awk {print $1}
+ v_version=4.4.16
+ echo 4.4.16
+ awk {print $2}
+ o_version=
+ [ -n  ]
+ mktemp -d /var/tmp/mkinitramfs_XXXXXX
+ DESTDIR_REAL=/var/tmp/mkinitramfs_cO3XEC
+ chmod 755 /var/tmp/mkinitramfs_cO3XEC
+ mktemp -d /var/tmp/mkinitramfs_XXXXXX
+ DESTDIR_OTHER=/var/tmp/mkinitramfs_aZWNOi
+ chmod 755 /var/tmp/mkinitramfs_aZWNOi
+ dpkg --print-architecture
+ DPKG_ARCH=armhf
+ [ armhf = armhf ]
+ LIB_GNUE=/lib/arm-linux-gnueabihf
+ DESTDIR=/var/tmp/mkinitramfs_cO3XEC
+ version=4.4.16
+ echo Version: 4.4.16
Version: 4.4.16
+ build_initramfs
+ [ -z  ]
+ compress=gzip
+ command -v gzip
+ dpkg --compare-versions 4.4.16 lt 2.6.38
+ [ gzip = lzop ]
+ [ gzip = xz ]
+ [ -d /tmp/initramfs-tmp ]
+ MODULESDIR=/lib/modules/4.4.16
+ [ ! -e /lib/modules/4.4.16 ]
+ [ ! -e /lib/modules/4.4.16/modules.dep ]
+ export MODULESDIR
+ export version
+ export CONFDIR
+ export DESTDIR
+ export DPKG_ARCH
+ export verbose
+ export KEYMAP
+ export MODULES
+ export BUSYBOX
+ export __TMPCPIOGZ
+ export __TMPEARLYCPIO
+ mkdir -p /var/tmp/mkinitramfs_cO3XEC/bin
+ mkdir -p /var/tmp/mkinitramfs_cO3XEC/conf/conf.d
+ mkdir -p /var/tmp/mkinitramfs_cO3XEC/etc
+ mkdir -p /var/tmp/mkinitramfs_cO3XEC/lib/modules
+ mkdir -p /var/tmp/mkinitramfs_cO3XEC/run
+ mkdir -p /var/tmp/mkinitramfs_cO3XEC/sbin
+ mkdir -p /var/tmp/mkinitramfs_cO3XEC/scripts
+ mkdir -p /var/tmp/mkinitramfs_cO3XEC//lib/modules/4.4.16
+ [ -f /lib/modules/4.4.16/modules.builtin ]
+ cp -p /lib/modules/4.4.16/modules.builtin /var/tmp/mkinitramfs_cO3XEC/lib/modules/4.4.16/modules.builtin
+ [ -f /lib/modules/4.4.16/modules.order ]
+ cp -p /lib/modules/4.4.16/modules.order /var/tmp/mkinitramfs_cO3XEC/lib/modules/4.4.16/modules.order
+ [ -f /etc/initramfs-tools/modules ]
+ add_modules_from_file /etc/initramfs-tools/modules
+ [ ! -e /etc/initramfs-tools/modules ]
+ grep ^[^#] /etc/initramfs-tools/modules
+ read module args
+ [ -n overlay ]
+ force_load overlay 
+ manual_add_modules overlay
+ local prefix kmod options firmware
+ [ 1 -eq 0 ]
+ read prefix kmod options
+ modprobe --all --set-version=4.4.16 --ignore-install --quiet --show-depends overlay
+ [ insmod != insmod ]
+ [ -e /var/tmp/mkinitramfs_cO3XEC//lib/modules/4.4.16/kernel/fs/overlayfs/overlay.ko ]
+ install -Dpm 644 /lib/modules/4.4.16/kernel/fs/overlayfs/overlay.ko /var/tmp/mkinitramfs_cO3XEC//lib/modules/4.4.16/kernel/fs/overlayfs/overlay.ko
+ [ y = y ]
+ echo Adding module /lib/modules/4.4.16/kernel/fs/overlayfs/overlay.ko
Adding module /lib/modules/4.4.16/kernel/fs/overlayfs/overlay.ko
+ modinfo -k 4.4.16 -F firmware /lib/modules/4.4.16/kernel/fs/overlayfs/overlay.ko
+ read prefix kmod options
+ echo overlay 
+ read module args
+ [ -n squashfs ]
+ force_load squashfs 
+ manual_add_modules squashfs
+ local prefix kmod options firmware
+ [ 1 -eq 0 ]
+ + modprobe --allread --set-version=4.4.16 prefix --ignore-install kmod options --quiet
 --show-depends squashfs
+ [ builtin != insmod ]
+ continue
+ read prefix kmod options
+ echo squashfs 
+ read module args
+ [ -n nls_cp437 ]
+ force_load nls_cp437 
+ manual_add_modules nls_cp437
+ local prefix kmod options firmware
+ [ 1 -eq 0 ]
+ modprobe --all --set-version=4.4.16+  --ignore-install --quiet --show-depends nls_cp437
read prefix kmod options
+ [ builtin != insmod ]
+ continue
+ read prefix kmod options
+ echo nls_cp437 
+ read module args
+ [ -f /usr/share/initramfs-tools/modules.d/* ]
+ dep_add_modules
+ dep_add_modules_mount /
+ local dir block minor dev_node FSTYPE dev_sys_path
+ local modules=
+ dir=/
+ [ ! -d /sys/devices/ ]
+ + mount
read -r dev foo mp foo fs opts rest
+ [ /boot = / ]
+ read -r dev foo mp foo fs opts rest
+ [ /dev = / ]
+ read -r dev foo mp foo fs opts rest
+ [ /proc = / ]
+ read -r dev foo mp foo fs opts rest
+ [ /sys = / ]
+ read -r dev foo mp foo fs opts rest
+ eval 
+ [ -z  ]
+ [ -r /proc/mounts ]
+ read dev mp fs opts rest
+ [ /boot = / ]
+ read dev mp fs opts rest
+ [ /dev = / ]
+ read dev mp fs opts rest
+ [ /proc = / ]
+ read dev mp fs opts rest
+ [ /sys = / ]
+ read dev mp fs opts rest
+ eval 
+ [ / != / ]
+ [  = ubifs ]
+ [ / = / ]
+ [  = /dev/root ]
+ [ -z  ]
+ echo mkinitramfs: failed to determine device for /
mkinitramfs: failed to determine device for /
+ echo mkinitramfs: workaround is MODULES=most, check:
mkinitramfs: workaround is MODULES=most, check:
+ echo grep -r MODULES /etc/initramfs-tools/
grep -r MODULES /etc/initramfs-tools/
+ echo 

+ echo Error please report bug on initramfs-tools
Error please report bug on initramfs-tools
+ echo Include the output of 'mount' and 'cat /proc/mounts'
Include the output of 'mount' and 'cat /proc/mounts'
+ exit 1
Creating uInitrd from 'volumio.initrd'
/usr/bin/mkimage: Can't open /boot/volumio.initrd: No such file or directory
Cleaning up
/bin/rm: cannot remove '/boot/volumio.initrd': No such file or directory
Unmounting Temp devices
==> Tinkerboard device installed
...

@macmpi
Copy link
Contributor

macmpi commented Nov 16, 2017

Build stretch-based Volumio2 is not yet supported and has several issues that need workaround (recipes components tweaks, use of newer qemu, recompile some proprietary stuff, etc...). Volumio2 app will also needs tweaks.
You may check this #259 as a start.

@yonhdee
Copy link

yonhdee commented Nov 16, 2017

finally succeeded on a debian jessie host, thx

@chrismade
Copy link
Contributor

this little difference between ubuntu and debian is still a "known issue" - I did some investigations around it but couldn#t find a solution - so move onto a debian host is still the recommended workaround

@gkkpch
Copy link
Collaborator

gkkpch commented Sep 17, 2019

This is how it should be handled and it will work on debian and ubuntu host versions.
In cases where the xyzconfig.sh modifies "modules=most" to "modules=dep":

  • change it to modules=list instead!

"modules=dep", even when it "works", does not do anything anyway.
It only adds the basic ones, never adds any other module except the ones already in the config list.
It even horribly fails with jessie, due to an error in qemu. It will search the host's modules, but luckily does not find anything suitable. This is why "modules=list" is just as good.
It will not try to find any others, it just does the basic ones and adds what is in the list.

Tested with Odroid builds on Debian jessie, Debian buster and Ubuntu 18.04 and should work with any other build script which is using "modules=dep".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants