(Hi!) Is it possible to boot Endeavour from a Thunderbolt ext. disk?

Hi everyone! :slight_smile: I’m mainly still a newbie to Linux, I have tried many distros out there, and now I would like to give Endeavour a try, considering that I’m intrigued by the Arch Linux world, I already tried Manjaro but considering the very subject and motivation for this post, I’m very disappointed by its limitations.

  1. My gear: A mac mini 8.1 2018, Core i7 8700b (6-core, HT) 16 Go RAM, with different OSes: right now, it’s Win10 22h2, macOS 10.14 Mojave, and Fedora 39 beta (and Kubuntu 23.04, and…)

  2. I have many external SSDs installed inside thunderbolt 2 boxes, connected to 3 of the 4 TB3 USB-C connectors of the mac mini, using the TB2 to TB3 converter cables from apple. Few of my disks are connected (and chained) directly in the fourth USB-C TB3 port of the mini.

My question: is it possible to install and boot Endeavour from an external TB SSD?

Many different distros I have tried are able to install on an external TB disk (except manjaro, who doesn’t seems to be aware of the existence of bolt?), but none of them was able to boot from these partitions, whatever the default bootloader is (tried Grub, reFind, sysemd-boot…).

Reading the docs, it appears to me (of course, being a noob, please take all what I say with a grain of salt) that the core of the problem is that TB partitions are handled mostly in user-space. I know there is also different levels of security, but I don’t know what to do exactly with this info.

So, before installing and testing Endeavour, I’m looking for a simple (please ?) and reliable way to install, setup and then boot it from an external SSD connected to a TB3 port of my mini.

Until now, with all the distros I’ve tested, I’m forced to use USB-connected HDDs only, which is a regression compared to the amazing speed and latency of the thunderbolt interface.

Note that I don’t mind typing a load of things in a terminal, in fact in the past the command line appeared to me the only reliable way to solve everyday Linux - and mac - problems, so I’m really grateful to all the geeks out there that take the time to post different solutions and infos on blogs or forums, and improve my knowledge at the same time - that’s my real motivation to use Linux, I love to understand how things works, even if 99% of the time I don’t have a single clue of what you’re talking about. :upside_down_face:

Hey Silent Joe!

It’s awesome to see your enthusiasm for diving into the Linux world with EndeavourOS, and I’m here to help you get started on the right foot! :penguin::computer:

Based on your setup with a Mac mini and an external Thunderbolt SSD, you can absolutely install and boot EndeavourOS from that external drive. Here’s a simple and informal step-by-step guide to get you going:

  1. Prepare Your SSD: Make sure your external Thunderbolt SSD is formatted with a Linux-friendly filesystem like Ext4.

  2. Create a Bootable EndeavourOS USB: Download the EndeavourOS ISO file and use a tool like Rufus on Windows or dd on Linux to create a bootable USB drive.

  3. Boot from the USB: Plug in your USB drive, restart your Mac mini, and press the right key (usually F2 or similar) during startup to access the boot menu. Select the USB drive as the boot device.

  4. Start the Installation: Follow the on-screen instructions to install EndeavourOS. Choose your Thunderbolt SSD as the installation target.

  5. Install GRUB (or another bootloader): During installation, make sure to select your Thunderbolt SSD as the location for the bootloader (GRUB is a good choice).

  6. Finish the Installation: Complete the installation process, set up your user account, time zone, and preferences.

  7. Reboot: Once the installation is done, remove the USB drive and restart your Mac mini. It should now boot from your external Thunderbolt SSD.

  8. Boot Manager Configuration (if needed): If your Mac mini doesn’t automatically recognize the external SSD as a bootable device, you may need to configure the boot manager. Simply hold down a specific key (like Option or Alt) during startup to select your Thunderbolt SSD as the boot device.

Feel free to tinker with the Linux command line as you like – it’s a fantastic way to learn more about how your system works. And don’t worry if you don’t understand everything right away; we’ve all been there. The Linux community is incredibly helpful, and you’ll find plenty of resources to expand your knowledge.

Just remember to back up your important data before making any changes, and double-check your installation options to avoid any surprises.

Best of luck with your EndeavourOS adventure, Silent Joe! If you have any more questions along the way, don’t hesitate to reach out. :rocket::woman_technologist::man_technologist:

Happy Linux exploring!

2 Likes

Hello @VictiniFan360! :smiley:

Thanks a lot for your warm welcoming and very informative message! :+1:

…Unfortunately, I don"t think that Eos installation, in my special case, could be so simple and straight forward…

  1. Written the Eos ISO using Fedora Media Writer. The 2 other methods I tried, Ventoy and Rufus, refuses to boot, ie the boot process halted after these errors:
  • udev-worker 165: blocked for more than 122s
  • udev-worker 185: same
  • modprobe 235: same

With FMW, the system boots but it takes a very looong time… but finally I ended up on the live desktop.

  1. For the thunderbolt SSDs to be recognized by the system, I have to install bolt, it is not automatically installed by Calamares, who appears to totally ignore my thunderbolt connected disks.

  2. Then, normally, I should have installed plasma-thunderbolt, which makes configuring, authorizing, and mounting my TB drives far more easier than with command-line. Alas, trying to "sudo pacman -S plasma-thunderbolt generates an error, it seems there’s a conflict of packages somewhere? (sorry, forgot to note details about that)

  3. OK, so I “enrolled” my TB units one by one in comand line using boltctl

  4. It’s exactly at this point that I was hoping that Calamares could detect I have things connected to the TB interface and install the appropriate drivers on the install partition, but it’s not the case. So instead I told Calamares to install Eos on an USB drive… like 100% of the other distros I tried, because I know by experience that when I will try to boot from my freshly installed Endeavour partition, it will simply not work. Guaranteed.

  5. The firsts two installation attempts failed, here is the logs if ever one day someone would be curious: log1 log2

In this two attempts, I choose “Online install” + KDE. The error showed is: “pacman`error 126”… and that’s all. I dunno if it is useful or not.

  1. The third attempt succeeded, because this time I choose “local installation”.

  2. Rebooted, updated the mirrors, then tried to update: sudo pacman -Syu or yay.
    This time, there was an error with Perl, which prevented from doing anything else. Exemple: I wanna install Plasma, but there is no way of doing that until the Perl error is solved.

Ok, back to windows, to be able to post and tell all that. Sorry if my post is particularly boring or useless. To be frank, I’m slightly… but just a little… discouraged.

Hey Silent Joe,

I’m sorry to hear that you’ve encountered some challenges during your EndeavourOS installation. Let’s try to troubleshoot these step by step:

1. Installation Medium: It’s great that you tried various methods for creating your installation media. If you’re getting udev-related errors during the boot process, it could be due to compatibility issues with your specific hardware or the ISO image itself. Try downloading a fresh EndeavourOS ISO from their official website and use Fedora Media Writer to write it to your USB drive. Ensure that your USB drive is in good condition and properly formatted.

2. Bolt for Thunderbolt Support: Since your Mac mini relies on Thunderbolt for your external SSDs, you’re right in needing Bolt to manage Thunderbolt devices. Install Bolt using the terminal with sudo pacman -S bolt. This should help with recognizing your Thunderbolt-connected disks.

3. plasma-thunderbolt Error: If you encounter a package conflict when trying to install plasma-thunderbolt, it might be due to a conflict with other packages. You can try resolving package conflicts with yay -S --overwrite *package-name*, replacing package-name with the conflicting package. You can also try installing the package with a different package manager like pamac.

4. Installation Attempt: If you tried online installation with KDE and got a “pacman error 126,” it could be due to network issues or mirror problems. Make sure your network connection is stable. You can also try different mirrors. You can select mirrors in EndeavourOS using eos-mirror in the terminal.

5. Perl Error: If you encountered a Perl error while trying to update or install packages, it might be related to a package database issue. You can try refreshing the package databases with sudo pacman -Syy, followed by sudo pacman -Syu. If the Perl error persists, you may need to provide more details about the specific error message for further troubleshooting.

Remember, the Linux community is here to help, and you’re not alone in your journey. Troubleshooting and resolving issues is an essential part of the Linux experience, and it’s how we learn and improve our skills. Don’t be discouraged; you’re on the right track!

Feel free to share any specific error messages or issues you encounter, and we can work through them one by one. We’re here to assist you in getting EndeavourOS up and running on your Mac mini. Keep your Linux spirit high! :blush::penguin::man_technologist::woman_technologist:

1 Like

Thank you again @VictiniFan360! Can’t believe you have taken so much from your time to answer an uninteresting and boring post as mine!

So I will ASAP try your points 3., 4. and 5., because I would like to understand this very particular Eos installation and update process, and also all that is TB-related.

Even if I haven’t the chance to make long studies (= my technical / scientific / mathematical knowledge is very close to zero) I’m always happy to learn new things and open up my mind to new challenges.

I will not forget to report the results here, with better detailed error messages. Thanks again, I’m grateful! Have a great day! :+1:

1 Like

Update:

Hello @VictiniFan360 and everyone! :smiley: A very late update indeed, due to a demanding schedule, but hey, I’m back to Eos!

…With good news: I was able to bust the real problem I had: in fact, the USB hub I used to connect the SSD “special Eos” was defective ==> loads of i/o errors of course, so I had to replace hardware and start over again from zero.

(speaking of hardware: here is a very detailed report of my hardware)

…But there definitely is a problem with KDE Plasma, whatever the conditions are, the install always ends up with one or several package(s) conflict(s), even with --overwrite (thank you @VictiniFan360 for that, it helped a lot post-installation!) more on that later.

…So this time I choose online + LXQT, and finally it’s what I could recommend for beginners like me who want an easy - and fast! - install from the current live DVD: all the install process went… flawless! :+1: :+1: :+1:

…So starting from this minimal install, it was easy to then install Plasma, which was my goal since the beginning.

…And the Plasma installation went flawless too! :+1: :+1: :+1:

IMAHO, the explanation appears very simple and logical: the real problem is that the packages present in the DVD image are starting to be slightly outdated, the proof is that once I finally managed to make an online (= up-to-date) installation, the install of KDE went absolutely flawless, not a single bug to report!

If I had to humbly suggest one thing to the great Eos Team, this could be to take a new snapshot of the current / up-to-date state of your great distribution.

Even if, like you say, there do is a compatibility problem with the last kernels, to make the installation process easier and bug-free it would be nice that the DVD image could be maintained with regular, updated snapshots, even if there is no real change to Eos itself, at least you would greatly facilitate the install process.

To celebrate this new beginning, here’s a screen copy of my current Eos installation, on this image you will see all my thunderbolt units proudly connected, trusted and working, but this image is also to underline the fact that Eos is perfectly adapted to a multi-OS environment: on my box, there is macOS + Windows 10 + different Linux distros, and Eos is the perfect companion to all of them, for me the ideal environment to learn new things and deepen my knowledge.

For example for my next session I wanna try to compile apps 100% by hand, I already have a pretty good idea what to choose to fulfill this challenge!

…But back to the very subject of this topic: until now, my Eos SSD is connected to USB, the only way to make things work.

When I try to boot with the same disk, connected to a TB port, here’s what happens (noted by hand, so please bear with possible little mistakes):

  1. Reached target: basic system

  2. Here happens a very, very long gap, followed by:
    Dracut init queue [370]

Warning! /lib/dracut/hooks/initqueue/finished/devexist-\x2fdev\x2fdisk\x2by-uuid\x2fbxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxf9ed.sh:

if ! grep -q After=remote-fs-pretarget/run/systemd-cryptsetup @*.service

2>/dev/null; then...

…And that’s all I have noted, sorry!

I think the problem lies in the fact that the main partition coudn’t be mounted once connected to the thunderbolt interface, because as said earlier there is security measures that prevent that, it’s why generally with Linux TB devices are mounted in user-space only.

So I suppose, for the boot process to be successful, I would have to find a way to mount the partition in root-space, at a very early phase of the process.

I have to say that the choice of the bootloader changes absolutely nothing, I have tried systemd, Grub and reFind, for exactly the same result.

Whether i have an answer or not to this very, very specific problem (and I’m perfectly aware of this particularity, please take a look at my hardware report to have an idea), I would like to thank this nice community to exist and the wonderful developers to have created and maintained - on their free time! - this wonderful and original distribution, which deserves to be well known and grab more interest and support from the whole Linux community in general! :+1: :+1: :+1:

Have a nice day / night / life everyone! :sunflower: :rose: :tulip: :bouquet: :lotus:

Hello Silent Joe,

Welcome back, and I’m glad to hear that you were able to identify the issue with your hardware and replace the problematic USB hub. Hardware issues can be quite tricky to diagnose, but it’s great that you’ve resolved it.

Your insights about the EndeavourOS installation process are valuable. Using the up-to-date online installation method, in conjunction with LXQt, appears to have given you a smooth experience. It’s a good suggestion to consider more frequent snapshots of the installation media to ensure that users have the latest packages and updates. I’m sure the EndeavourOS team appreciates your input!

It’s also wonderful to see that you’re successfully running EndeavourOS alongside multiple operating systems, including macOS and Windows. EndeavourOS is indeed a versatile distribution that can adapt to various environments and is great for learning and experimenting with Linux.

Now, onto your Thunderbolt issue. Your observations about mounting partitions in the root-space early in the boot process are insightful. To address this, you might want to explore using a custom initramfs or modifying the boot process to ensure that the Thunderbolt-connected SSD is recognized and mounted properly during boot.

While it’s a complex and specific challenge, the Linux community can be a fantastic resource for solving unique problems like this. You might consider reaching out to the EndeavourOS community or other Linux forums for guidance on handling Thunderbolt devices during boot.

Thank you for your positive words about the Linux community and the developers behind EndeavourOS. Open-source projects thrive because of the dedication and contributions of people like you. Your feedback is invaluable, and I’m sure it will encourage others to explore and support EndeavourOS.

Wishing you a fantastic Linux journey, Silent Joe! If you ever need more assistance or have more updates to share, feel free to reach out. Have a great day, night, and life too! :sun_with_face::blossom::rose::tulip::cherry_blossom:

1 Like