Dual boot from NVMe: getting to (initramfs) prompt
See forum RaspberryPi forums post https://forums.raspberrypi.com/viewtopic.php?t=142574&start=2200#p2314495
Attached are the meta files I've adapted. Attached folder listing screenshot, showing contents and structure of folder 'os' at the root of the USB stick used to install the OSes.
As your posts are quite separated in the forum, I'm just going to post them here for reference.
Re: STICKY: PINN - An enhanced version of NOOBS. Post by Eamoex » Sat Mar 08, 2025 1:00 pm
Hello, I'm trying to install a dual boot RaspberryOS/RetroPie on my Pi 5 NVMe drive. I have copied the gz compressed RetroPie image to the /os/ folder in a subfolder called retropie.
Of course the OS does not appear in the PINN installation list yet.
What are suporting JSON files and how to find/create them?
Re: STICKY: PINN - An enhanced version of NOOBS. Post by Eamoex » Sat Mar 08, 2025 1:43 pm
Ah... just found https://github.com/procount/pinn/issues/88, and I saw a RetroPie3 folder in the list. But your post there also points to https://raw.githubusercontent.com/proco ... pie48.json, which somehow looks more recent. Should I use this JSON somehow?
Re: STICKY: PINN - An enhanced version of NOOBS. Post by procount » Sat Mar 08, 2025 6:41 pm
PINN does not install "images". Please read the User Guide at https://github.com/procount/pinn/blob/m ... ME_PINN.md for a more complete understanding. There is no official Retropie image for the RPi5 yet, so you're best bet is to use PINN to install Retropie Lite, and then follow the instructions on the Retropie website on how to install the Retropie application onto that image.
When an official image becomes available, if you want to do the conversion yourself, or just understand how to convert an image to PINN installation files, please read https://github.com/procount/pinn/wiki/H ... using-PINN as an example (but each OS is different).
Re: STICKY: PINN - An enhanced version of NOOBS. Post by Eamoex » Sun Mar 09, 2025 3:38 pm
Thank you procount.
Now another problem which I can't seem to solve (I know almost nothing about Linux systems). Whichever OS I install using PINN boots to a command line with prompt "(initramfs)". I've tried RaspberryOS 64-bit Full and RaspberryOS Lite.
Re: STICKY: PINN - An enhanced version of NOOBS. Post by procount » Sun Mar 09, 2025 4:20 pm
Eamoex wrote: Sun Mar 09, 2025 3:38 pm Thank you procount.
Now another problem which I can't seem to solve (I know almost nothing about Linux systems). Whichever OS I install using PINN boots to a command line with prompt "(initramfs)". I've tried RaspberryOS 64-bit Full and RaspberryOS Lite. Hmm. You've probably done something wrong. Did you install PINN to your NVME first?
Re: STICKY: PINN - An enhanced version of NOOBS. Post by Eamoex » Sun Mar 09, 2025 5:58 pm
Yes, I copied the PINN files to a freshly formatted NVMe drive. Then I booted from there and proceeded to make partitions and install OSes from the PINN GUI.
The OS splash screen shows, but then I end up on the initramfs prompt.
Re: STICKY: PINN - An enhanced version of NOOBS. Post by procount » Sun Mar 09, 2025 8:43 pm
Can you check your bootloader is up to date?
Re: STICKY: PINN - An enhanced version of NOOBS. Post by Eamoex » Mon Mar 10, 2025 11:00 pm
Okay, I now understand what the bootloader is and I confirm it is latest.
Anyway, thanks for your links and the very well written documentation. I'm now going to try to make a dual boot out of 2 working installs as per your guide here: https://github.com/procount/pinn/wiki/H ... using-PINN
I guess at "Step 4 - Make a PINN Bootable SD card", I can simply replace the SD card by my NVMe drive?
Re: STICKY: PINN - An enhanced version of NOOBS. Post by procount » Tue Mar 11, 2025 12:14 am
Eamoex wrote: Mon Mar 10, 2025 11:00 pm Okay, I now understand what the bootloader is and I confirm it is latest.
Anyway, thanks for your links and the very well written documentation. I'm now going to try to make a dual boot out of 2 working installs as per your guide here: https://github.com/procount/pinn/wiki/H ... using-PINN If you are still booting into an (initramfs), I suggest you try to sort that out before even attempting to create your own multi-boot installation. Have you tried booting Raspberry Pi OS on your NVME directly without PINN? Once that works, install PINN to your NVME and then use PINN to install Raspberry Pi OS. Only when you have that working should you start creating your own OS installations. Eamoex wrote: Mon Mar 10, 2025 11:00 pm I guess at "Step 4 - Make a PINN Bootable SD card", I can simply replace the SD card by my NVMe drive? Yes, but Step 4 is the old way of installing PINN. These days its better to use RPi Image Installer. For installing to NVME, I find using the built-in net-installer to run RPi image installer is the easiest way.
Re: STICKY: PINN - An enhanced version of NOOBS. Post by Eamoex » Tue Mar 11, 2025 7:30 am
Thank you procount. I'm sorry I'm not very savvy with RPi, could you please confirm these? procount wrote: Tue Mar 11, 2025 12:14 am Have you tried booting Raspberry Pi OS on your NVME directly without PINN? You mean by installing it using the RPi Imager (https://www.raspberrypi.com/news/raspbe ... g-utility/)? procount wrote: Tue Mar 11, 2025 12:14 am For installing to NVME, I find using the built-in net-installer to run RPi image installer is the easiest way. You mean there is an "internet" install of PINN available through the RPi Imager?
Re: STICKY: PINN - An enhanced version of NOOBS. Post by Eamoex » Tue Mar 18, 2025 2:56 pm
procount wrote: Tue Mar 11, 2025 12:14 am If you are still booting into an (initramfs), I suggest you try to sort that out before even attempting to create your own multi-boot installation. Have you tried booting Raspberry Pi OS on your NVME directly without PINN? Imaged RaspberryOS 64-bit directly to NVMe. Boots fine. Stay tuned... (Sorry progress is very slow, I'm kind of hyper ultra over busy these days.)
Re: STICKY: PINN - An enhanced version of NOOBS. Post by Eamoex » Wed Mar 26, 2025 5:49 pm
I'm trying to make a copy of the RetroPie install I have on an SD card. Issuing command Code: Select all
sudo bsdtar --numeric-owner --format gnutar -cpvf ~/os/retropie/boot.tar . returns Code: Select all
bsdtar: Failed to open '/home/emy/os/retropie/boot.tar' Both partitions from the SD card are mounted and readable.
I'm doing this from RPiOS, and I've installed package bsdtar. What am I doing wrong?
Thanks
Re: STICKY: PINN - An enhanced version of NOOBS. Post by procount » Thu Mar 27, 2025 1:53 pm
Eamoex wrote: Wed Mar 26, 2025 5:49 pm I'm trying to make a copy of the RetroPie install I have on an SD card. Issuing command Code: Select all
sudo bsdtar --numeric-owner --format gnutar -cpvf ~/os/retropie/boot.tar . returns Code: Select all
bsdtar: Failed to open '/home/emy/os/retropie/boot.tar' Both partitions from the SD card are mounted and readable.
I'm doing this from RPiOS, and I've installed package bsdtar. What am I doing wrong?
Thanks
-
Did you install bsdtar from APT? If so, best to uninstall it. You should use bsdtar v3.3.1, which can be installed following the instructions here -> https://github.com/procount/pinn/blob/m ... pendencies
-
Does the target folder path '/home/emy/os/retropie/' exist?
Re: STICKY: PINN - An enhanced version of NOOBS. Post by Eamoex » Tue Apr 01, 2025 8:43 pm
Still working to make 2 custom OSes available to PINN as per your doc here: https://github.com/procount/pinn/wiki/H ... using-PINN
Thanks, building bsdtar per your instructions worked. I'm down to the step where I should output the size of the tar archives to text files (apparently), but command Code: Select all
sudo du -BK -s /media/
bash: boot.size: Permission denied Why?
Re: STICKY: PINN - An enhanced version of NOOBS. Post by procount » Tue Apr 01, 2025 8:58 pm
It means you don't have permission to write boot.size to your current directory, but you didn't say where that was. Maybe do Code: Select all
cd ~ to put you in your home directory then repeat the command.
Re: STICKY: PINN - An enhanced version of NOOBS. Post by Eamoex » Tue Apr 01, 2025 9:44 pm
I sort of figured out that I didn't have permission, but I don't get the reason. I issued the command from ~/os/RetroPie/, which is a folder I created myself last week. Hard to understand why I would be denied writing there.
Re: STICKY: PINN - An enhanced version of NOOBS. Post by procount » Tue Apr 01, 2025 9:57 pm
If you created or copied the ~/os/RetroPie with sudo then it will be owned by root.
Find out by:
Code: Select all
cd ~/os ls -alF RetroPie That will also tell you the permissions the folder has.
Another way around it is to use: Code: Select all
sudo sh -c "du -BK -s /media/
Re: STICKY: PINN - An enhanced version of NOOBS. Post by Eamoex » Fri Apr 04, 2025 7:49 am
The folder is indeed owned by root. I used the "sh -c" command and it worked. Thank you for the Linux class... :)
The next snag is that OS meta data files source Code: Select all
http://downloads.sourceforge.net/project/pinn/os/Retropie2/* doesn't appear to exist any longer. Can I edit a copy of the equivalent files from source Code: Select all
http://downloads.raspberrypi.org/raspbian/* ? Can the values (names, png) be anything (except the numeric, size-related ones you give the process for)?
Re: STICKY: PINN - An enhanced version of NOOBS. Post by procount » Fri Apr 04, 2025 9:11 am
Please use https://sourceforge.net/projects/pinn/files/os/Retropie3/ and adapt the files to your model of RPi and OS.
Many of the filenames are named based off the name of the OS in os.json with spaces converted to underscores and hyphens added appropriately, or have a standard name. Please follow the pattern used in all the other OSes, otherwise PINN will not know which files to use. You can ignore os_list.json if you are only installing your OS from a local storage device.
Re: STICKY: PINN - An enhanced version of NOOBS. Post by Eamoex » Sun Apr 13, 2025 4:30 am
Hello, thanks for the help.
I'm back with the next step.
I've followed instructions, modified os.json and partitions.json, and finally copied files for both OSes on an USB stick in folder /os. But they still don't appear on the PINN UI (no ethernet, wi-fi disabled). Not even sure where they should appear. The intuition would suggest that there should be some button to direct PINN to search for OSes on local drives, but I understand this isn't necesary when all goes well... :)
I removed checksums from os.json and partitions.json. I'm using an ext4-formatted USB drive and PINN v3.9.3.
Not sure what to try next.
Re: STICKY: PINN - An enhanced version of NOOBS. Post by procount » Wed Apr 16, 2025 1:05 am
Eamoex wrote: Sun Apr 13, 2025 4:30 am I've followed instructions, modified os.json and partitions.json, and finally copied files for both OSes on an USB stick in folder /os. But they still don't appear on the PINN UI (no ethernet, wi-fi disabled). First check that your USB stick is being recognised by PINN. From the command shell, check to see if your USB is mounted on /tmp/media/sda1 or similar. (It may also appear in the Destination Drive drop down on the Archival menu page.)
If the USB stick is mounted but the OSes are still not appearing, it may be a problem with os.json. Try validating your syntax is correct by posting it on the jsonlint.com webpage.
Re: STICKY: PINN - An enhanced version of NOOBS. Post by Eamoex » Sun Apr 27, 2025 2:09 pm
First check that your USB stick is being recognised by PINN. It is. It appears as an install destination in the drop-down at the bottom of the window. Try validating your syntax is correct by posting it on the jsonlint.com webpage. The page validates the syntax.
I'm sorry, I do not know what to do next.
Re: STICKY: PINN - An enhanced version of NOOBS. Post by procount » Mon Apr 28, 2025 4:11 pm
Eamoex wrote: Sun Apr 27, 2025 2:09 pm I'm sorry, I do not know what to do next. Try enabling the 'showall' option in the Maintenance Menu. (select PINN, Edit Config, Edit Options, Source tab I think?) and reboot PINN.
Failing that, provide a list of the files on your USB stick. I presume they are in /os/Retropie2/ folder, or similar. And post the contents of os.json. You might find it easier to open an issue on my github ( https://github.com/procount/pinn/issues ) if you want to post files or photos.
Re: STICKY: PINN - An enhanced version of NOOBS. Post by Eamoex » Sat May 10, 2025 2:24 pm
procount wrote: Mon Apr 28, 2025 4:11 pm Try enabling the 'showall' option in the Maintenance Menu. (select PINN, Edit Config, Edit Options, Source tab I think?) and reboot PINN. That did the trick, thanks! After correcting my wrong partition size values and names in partitions.json, and ignoring PINN's warning that none of the OSes were supposedly compatible with Raspberry Pi 5, PINN did install both OSes.
But still no joy. For the first boot I selected the Raspberry OS partition and ended up on an Code: Select all
(initramfs) prompt... :(
sigh
Any idea what could be wrong here?
EDIT: please note, I'm targeting the NVMe drive attached to the PCI port. All installed OS files and partitions on the NVMe drive show up and are readable from a Raspberry OS booted from the SD card slot.
EDIT 2: also, between my first initrams woes and this, I had successfully installed and booted a regular (non-PINN) image of Raspberry OS on the NVMe drive.
Re: STICKY: PINN - An enhanced version of NOOBS. Post by procount » Sun May 11, 2025 11:36 pm
Eamoex wrote: Sat May 10, 2025 2:24 pm procount wrote: Mon Apr 28, 2025 4:11 pm Try enabling the 'showall' option in the Maintenance Menu. (select PINN, Edit Config, Edit Options, Source tab I think?) and reboot PINN. That did the trick, thanks! After correcting my wrong partition size values and names in partitions.json, and ignoring PINN's warning that none of the OSes were supposedly compatible with Raspberry Pi 5, PINN did install both OSes.
But still no joy. For the first boot I selected the Raspberry OS partition and ended up on an Code: Select all
(initramfs) prompt... :(
sigh
Any idea what could be wrong here?
EDIT: please note, I'm targeting the NVMe drive attached to the PCI port. All installed OS files and partitions on the NVMe drive show up and are readable from a Raspberry OS booted from the SD card slot.
EDIT 2: also, between my first initrams woes and this, I had successfully installed and booted a regular (non-PINN) image of Raspberry OS on the NVMe drive.
If the showall option displays your OS, then you haven't included the Pi5 model in the list of suitable models this OS is suitable for in the os.json and os_list.json files.
If you end up with an (initramfs) prompt, then there's probably something wrong with the cmdline.txt modifications from partition_setup.sh. Maybe you didn't adapt it for bookworm(?) by removing the space after boot?
If you're "targeting the NVME drive", do you still have PINN on an SD card? You should really have PINN on the NVME drive as well. PINN is not just an installer, but a boot selector, and so it needs to be present on the boot drive. Keeping it on the SD card means you must always have the SD card fitted to boot from.
I'm groping in the dark a bit, because I can't see any of your modified files. Converting an OS for use with PINN is a bit of an art since each one is unique and the conversion may even have to change for a new release. If you're still stuck, try opening an issue on my github and post your meta files there. It's a bit difficult to follow all the posts in this thread over a long period of time, so keeping them together in a github issue would be easier to manage.
Re: STICKY: PINN - An enhanced version of NOOBS. Post by Eamoex » Mon May 12, 2025 7:16 am
First, thanks for all your help and replies.
The SD card has a separate OS, nothing to do with PINN. Yes, PINN is on the NVMe as well.
I'll "move this topic" to GitHub and post the meta files there.
Re: STICKY: PINN - An enhanced version of NOOBS. Post by Eamoex » Mon Jun 09, 2025 7:51 pm
Created a GitHub issue regarding my (initramfs) prompt problems (see latest post of this forum here).
See forum RaspberryPi forums post https://forums.raspberrypi.com/viewtopic.php?t=142574&start=2200#p2314495
Attached are the meta files I've adapted. Attached folder listing screenshot, showing contents and structure of folder 'os' at the root of the USB stick used to install the OSes.
OK. Thanks for uploading your meta files, which make the issue a lot clearer.
- Have you confirmed that the images you are converting for use under PINN actually work on the PI5?
AFAIK, Retropie is still not officially released for the Pi5, so you would have had to have started with a bookworm version of Raspios and installed Retropie on to it. The os.json files you have taken look really old and you need to update them to reflect the OS versions that you are using. At the moment I can only assume you are using Bookworm versions of Raspios, but that's not what the os.json files tell me. A better starting point would be https://sourceforge.net/projects/pinn/files/os_rpf/raspios_arm64/
- The partition_setup.sh files are also old and have not been adapted for bookworm. On the third
sedline of the file, you need to replace the 2 instances of/boot |with/boot|(ie, remove the spaces). - Also note the recent issue with Raspios that I've had on NVMEs. If your OSes freeze on the splash screen (or after about 4 secs for the lite version, you can get around it by waiting about 15 secs and pressing 'C' to cancel twice. then reboot.
See how you go with those changes.