GithubHelp home page GithubHelp logo

boot failure about meta-intel-edison HOT 12 CLOSED

humanoid2050 avatar humanoid2050 commented on June 24, 2024
boot failure

from meta-intel-edison.

Comments (12)

htot avatar htot commented on June 24, 2024

Unfortunately this

Initramfs unpacking failed: invalid magic at start of compressed archive

is not related to your problems. It means the kernel is expecting a built-in initramfs, but it's not, we load it separately. I have the same same message, it's harmless.

Afaict you are having at least 2 problems.

  1. You don't have an Edison Arduino board, but you are loading the arduino.asl here. This causes the complaints on pca953x, as you probably don't have them. Question is, what asl would you need instead to enable your hardware. But let's try to boot first.
  2. Something is wrong with mmcblk0p8 or with /etc/fstab on it. So, because mounting fails systemd starts stopping services. Try again to go into rescue and then manually mount (if not already mounted) mmcblk0p8 and then check /etc/fstab. I'm not sure which branch you are using (zeus?). Maybe I made a mistake in fstab, if so, you should be able to manually fix it.

from meta-intel-edison.

humanoid2050 avatar humanoid2050 commented on June 24, 2024

@htot Thanks for taking the time to reply.

From uboot, I can do ls mmc 0:8 and get a nice dump of the partition contents. Side note, uboot can't detect the presence of an SD card, but I suspect that can be filed along with the .asl issues.

If I boot into rescue, I do get a prompt and I can poke around. The partitions seem to be fine, as /dev/mmcblk* lists all expected partitions. Additionally, /run/media/ contains automatically mounted entries for mmcblk0p5 mmcblk0p7 mmcblk0p8 mmcblk1.

Contents of fstab:

/run/media/mmcblk0p8/etc # cat fstab
tmpfs           /var/volatile      tmpfs      defaults              0  0

/dev/disk/by-partlabel/factory  /factory        auto    noauto,x-systemd.automount,nosuid,nodev,noatime,discard     1   1
/dev/disk/by-partlabel/home     /home       auto    nofail,x-systemd.automount,noatime,discard  1   1

Checking for those partitions (at least in the intramfs env):

/dev/disk/by-partlabel # ls
boot         home         rootfs       u-boot-env1  u-boot1
factory      panic        u-boot-env0  u-boot0      update

I am using zeus.

I also see in the boot log

mount: can't find /boot in /etc/fstab
mount: mounting /boot on /realroot/boot failed: Invalid argument
mount: can't find /lib/modules in /etc/fstab
mount: mounting /lib/modules on /realroot/lib/modules failed: Invalid argument

But what I can't find is what/where the requests for mounting /boot/ and /lib/modules are coming from. Is that relevant?

from meta-intel-edison.

humanoid2050 avatar humanoid2050 commented on June 24, 2024

Did a little more digging. By using the ./flashall --btrfs option instead of make flash from the project root, it works fine now. Just a mismatch somewhere in the install process?

from meta-intel-edison.

htot avatar htot commented on June 24, 2024

From uboot, I can do ls mmc 0:8 and get a nice dump of the partition contents. Side note, uboot can't detect the presence of an SD card, but I suspect that can be filed along with the .asl issues.

That's not normal. U-Boot can these days actually boot directly from the SD card.

I don't see why mounting home failed, still. This happens by the init script which is inside the initrd. After executing, loading needed modules and mounting it does a switchroot to systemd, same environment as do_rescue. You can find it here: https://github.com/edison-fw/meta-intel-edison/blob/zeus/meta-intel-edison-distro/recipes-core/initrdscripts/initramfs-framework/init

Installing the btrfs image, you get a slightly modified fstab. This is what I use so it is better tested. Still the ext image worked last time I tried.

Good that btrfs image is working though.

from meta-intel-edison.

humanoid2050 avatar humanoid2050 commented on June 24, 2024

I have discovered that in the non-btrfs path of flashall.sh, the rootfs is flashed but nothing is done for the home partition. As a result, mounting home fails due to lack of a proper filesystem. If I boot into recovery and run mkfs.ext4 /dev/mmcblk0p10 and then reboot, everything is fine. Perhaps I missed a step?

from meta-intel-edison.

htot avatar htot commented on June 24, 2024

I had the intention not to break the home partition :-( But good that the recovery partition works.

from meta-intel-edison.

humanoid2050 avatar humanoid2050 commented on June 24, 2024

I see your intent. Sometimes there are scripts that fire on first boot. If there is such a thing in this environment, could it be used to check for the existence of an ext4 fs on the home partition, and make one if it is missing? Otherwise at least a note in the online documentation might be helpful. Either way, I'm happy to close this issue.

from meta-intel-edison.

htot avatar htot commented on June 24, 2024

I have seen reports with the original firmware that if home is damaged you couldn't boot.

There is a script that runs on first boot (post-install.sh). But I think it runs after systemd. Best thing would be to have systemd fsck the partition if it's broken or create one if missing. But I thought it already did that.

from meta-intel-edison.

mwallnoefer avatar mwallnoefer commented on June 24, 2024

@htot The following warnings apply for me as well. Could we quiet them somehow?

I also see in the boot log

mount: can't find /boot in /etc/fstab
mount: mounting /boot on /realroot/boot failed: Invalid argument
mount: can't find /lib/modules in /etc/fstab
mount: mounting /lib/modules on /realroot/lib/modules failed: Invalid argument

But what I can't find is what/where the requests for mounting /boot/ and /lib/modules are coming from. Is that relevant?

from meta-intel-edison.

htot avatar htot commented on June 24, 2024

Hi @mwallnoefer it is done by this script (in the initrd) https://github.com/edison-fw/meta-intel-edison/blob/master/meta-intel-edison-distro/recipes-core/initrdscripts/initramfs-framework/init

Question: are you using Zeus or Dunfell? And are you booting ext4 or btrfs image?

from meta-intel-edison.

mwallnoefer avatar mwallnoefer commented on June 24, 2024

Dunfell with ext4

from meta-intel-edison.

htot avatar htot commented on June 24, 2024

Ok so it seems mount -n /boot || true and mount -n --move /boot /realroot/boot || true don't just silently fail as I hoped :-(

Other then that it's harmless.

from meta-intel-edison.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.