Only Boots When Connected To Wired Internet

Recently went to reinstall ZorinOS on my laptop for security and efficiency reasons, because well... Windows is trash outside of a wider program compatibility. Install "mostly" went ok. Had to remove and reinstall my USB stick to get it to actually load the environ (Had same issue with a MintOS stick). The issue comes that when booting the system it WILL NOT LOAD unless connected to a wired network. Thought it may have been a fluke so I updated system, even did a "sudo apt-get update" just to be sure. 2 more boots and still the same thing. This wouldn't be an issue for a desktop, but this is for my laptop. Would really like some suggestions as I don't want to have to put windows back on my laptop.

Hardware is a 2019 HP Envy x360 with Ryzen7 2700U, 16gb (2x8GB) g.skill DDR4, Samsung 970 EVO 250GB, BIOS is on latest available version.

1 Like

What does it say if you attempt to boot it without a wired network?

Do you use virtual as described here?:

Doesn't give any errors, just sits on the "Z" boot screen indefinitely. Waited 30min one time just to see, rebooted with wired ethernet and was at login screen in 17sec from power on.

If you press ESC during startup, you might find the cause of this problem.

Maybe your wired network device is set to start before Zorin OS on boot order? So until you don't plug it your PC don't load Zorin OS?

I don't use PXE boot for any of my devices. The last thing shown in the boot sequence when attempting to boot without ethernet is shown in image.

1 Like

Attempted a few additional starts without ethernet. Including the original image, it stopped at all 3 of these points with no clear error (at least not to me). In any case it will still only boot with ethernet connected. Furthermore, with ethernet connected it boots very quickly and gives no issues using wifi after OS is loaded. Problem is constant and 100% repeatable.

Lastly, I did attempt to use the Ubuntu fix that was linked. It seems like it's meant more for a VM environment which I'm not using. I looked anyhow to see if I could maybe apply the fix anyhow and the directory shown doesn't seem to be valid as it is empty on my machine.

I'm extremely computer literate, but my knowledge of Linux environments is overall quite limited. Any help towards solving this would be greatly appreciated.

1 Like

I can't read those entries for a moment longer :see_no_evil:. All that stuff is too much for me, I'm not an expert to this extent.

Going back to basics. Have you followed the pre-installation advice shown here: Before you install

I installed from a newly created USB, the drive was cleared of all previous partitions and data prior to install and I have tried adjusting all possible BIOS settings that make any possible sense. It's an HP modded BIOS so it's pretty limited. Also made certain to clear and disable TPM prior to install.

Just doesn't make much sense that there's no clear error and it has zero issue when ethernet is connected.

This sounds like a Systemd networkd issue, where boot is waiting for network interface prior to init.

What you need to do is to prevent waiting for interface.

Let's first try

systemctl disable systemd-networkd-wait-online.service

After running the above command, reboot and test. If it fails to work, then that means some other process is reenabling systemd-networkd online wait service (because that process relies on it), and you must mask the service instead of just disabling it.

1 Like

I explained as well as I could :grin:. But Aravisian knows better than me :smile:.

I actually somehow missed seeing your post. If I had seen it earlier, some of the synapses might have made the connection sooner.
But this is an issue that has come up in an unrelated request on the forums: Methods of Speeding up Boot.
Disabling the systemd-netword-wait-online service can speed boot up a bit.

1 Like

Ok, so I've made a new discovery. While I was of the belief that it was due to needing an active Ethernet connection, I was wrong. It seems that the USB-C Ethernet/USB dongle being connected is required to boot. I can't recall if i performed install with this connected or not so I'm going to attempt to reinstall without it connected and i'll update with my result.

Hopefully that will fix the issue. Never seen linux be so picky about hardware configuration before though. Will post results sometime later today.

1 Like

UPDATE: After creating a new Install USB and trying to boot it still would not boot without a connected ethernet adapter. Connected dongle and booted into the live environment. Performed install from desktop icon after disconnecting adapter and connecting to WiFi. After install finished, I discovered that I did still need to run the suggested disable/mask command. That solved the issue of needing the cable, but still it’s requiring a connected ethernet adapter to boot. Doesn’t matter if the cable is connected or not.

This isn’t making much sense to me as a couple years ago I had Zorin installed on this same laptop with no issues at all...

Have you tried this yet?

I tried that both before reinstall and after. Both times resulted in no change. It's entirely dependent on there being a present ethernet adapter to boot.

What BIOS version are you on and have you updated your machine BIOS?
Given the description in your O.P. and the other troubles you describe... checking the BIOS is well worth the effort.

Specifically due to a well known HP BIOS bug.

As a test you can do more simply, for now, you can try updating grub file to use the nolapic acpi=off parameter.

sudo nano /etc/default/grub

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" change to GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nolapic acpi=off"

ctrl+x to exit, then the y key and then `enter key to save configuration. Then run

sudo update-grub

Reboot and test. If it does not work, it is best to remove the parameter and udate grub again.

This may apply if it is, indeed, a systemd-networkd issue:

I do not see these files present in my copy of Zorin OS. So, you may need to create them.

Users should save configurations under /etc/netplan with a .yaml extension (e.g. /etc/netplan/config.yaml ).

In the .yaml file, you may want the parameter: optional: true added as the last line of the file.

GRUB fix didn't work. There was a bios update, only detailed "security enhancements", but updated regardless. Attempted to clear the drive and reinstall Zorin again, still would not boot without a physical NIC present. Will attempt the netplan fix after reinstall finishes.

I will say that I was able to successfully install Zorin on an older ASUS laptop with no issues. It does however, unlike the HP, have an integrated NIC. I was also able to load the live environment on my desktop with no issues.

All installs and test scenarios were performed with the same USB drive.