I have several Raspberry Pis, ranging from the original Pi B with a now inadequate 256M of RAM (and the crappy math support) through to a Pi 4B with 8G of RAM. I only discovered a couple days ago that it's possible to boot most of these Pis from USB instead of a microSD card. I initially took this to mean "boot from SD but the OS is on USB" which has been possible for a long time, but no: it's now possible (since 2020-09?) to boot from USB, WITHOUT A microSD CARD. This is a GOOD THING(TM), not least because you can now use something more durable than an SD card as your boot media. You'll almost certainly have to tweak your Pi bootloader EEPROM.
Here's your bible:
raspberrypi.org's documentation is generally very good, so there's no point in my trying to create a "better" version of their tutorial.
I encourage you to read the instructions carefully. Among other things, a successful EEPROM update is indicated by a green screen. I mean that literally: the output HDMI screen turns green, no text, nothing else ... and this means success. That's unintuitive if you haven't read the docs. It's also worth noting that the method to make USB booting available is different on the Pi 2 and 3 from the method needed for the Pi 4. And that USB booting isn't available on some of the Pi 2s.
You'll probably want to install the "rpi-imager" package - it's available in Raspberry Pi OS, but sadly not on other OSes (Fedora 33 and Debian 10 checked). It's a very simple utility that allows you to choose an OS image, a target SD card, and ... that's it. It's got a huge "[WRITE]" button, and that's the extent of the controls. Of course it looks a bit silly when you find yourself writing Raspberry Pi OS to an external spinning HD that
rpi-imager insists on calling an "SD Card," but it does work. I successfully booted both a Pi4 and a Pi 3 with the newly imaged HD.