Jump to content

Make SDcard image with sole purpose of eMMC receiving a fresh bootable Armbian image


Recommended Posts

Posted

Certainly not a new item but havn't found an Armbian how-to.

Hardware: Rockchip rk3588 based hardware with both SDcard slot and eMMC memory.
Wish: make a SD card image that, when inserted in the SDcard slot, causes a bootable Armbian OS image to be written to eMMC from that SDcard, followed by boot from eMMC.
The bootable image should remain in its most compact form, to limit copy time, and only upon first boot from eMMC be made to use the entire eMMC.

Has this been explored already? Ideas on how-to?

Posted
5 часов назад, wwortel сказал:

Certainly not a new item but havn't found an Armbian how-to.

Hardware: Rockchip rk3588 based hardware with both SDcard slot and eMMC memory.
Wish: make a SD card image that, when inserted in the SDcard slot, causes a bootable Armbian OS image to be written to eMMC from that SDcard, followed by boot from eMMC.
The bootable image should remain in its most compact form, to limit copy time, and only upon first boot from eMMC be made to use the entire eMMC.

Has this been explored already? Ideas on how-to?

Do you mean that we need to make a boot image by analogy and similarity, as well-known distributions such as openSUSE, ubuntu do?

Posted

Well, apparently my question was not clear. No, the purpose is to have the option of creating a .img Armbian OS for a rk3588s based system that when written onto a SDcard and inserted in the rk3588s hardware, that also has eMMC on board, writes a working Armbian image to eMMC, such that the SD card slot is only used once to get the image into the eMMC.

Reason being that not so experienced users find it a lot easier to write and insert a SD card, than to write into eMMC. Latter requires either access to serial console, or the use of Rockchip helper programs.

Thinking about it it would be like the original .img as binary file inside a .img that can be written to the SD card, with the effect that just enough u-boot and perhaps kernel start is done from the SD card to get the .img file, also on that card, into eMMC.  

Posted
19.11.2024 в 20:01, wwortel сказал:

Well, apparently my question was not clear. No, the purpose is to have the option of creating a .img Armbian OS for a rk3588s based system that when written onto a SDcard and inserted in the rk3588s hardware, that also has eMMC on board, writes a working Armbian image to eMMC, such that the SD card slot is only used once to get the image into the eMMC.

This is not a viable option.

 

Posted

@going

What makes you think this is not viable? After all u-boot is able to start Armbian from either SD or eMMC, so why could it not be made to copy an image from one to the other?

Posted
4 часа назад, wwortel сказал:

What makes you think this is not viable?

The functionality of the armbian-install script is quite enough to meet your needs.

 

But the community requests are a bit more than this script can handle.

In addition, you will probably want to check how the system boots and works before deciding whether to install it on an internal drive.

 

 

 

Posted
4 hours ago, wwortel said:

why could it not be made to copy an image from one to the other?


@going Probably @wwortel means to develop a minimal boot image which would download and dd image to eMMC. I agree that would be nice to have, but develop that requires time / resources we don't have. If you look into the script that installs OS to eMMC (and other media) its pretty complex and hard to maintain https://github.com/armbian/build/blob/main/packages/bsp/common/usr/bin/armbian-install Not to mention that people doesn't pile up to help us around that. There is / always was just a few people that sacrifices their precious family time to provide you current experience. Where we can always find something to fix and improve. 

Posted
10 минут назад, Igor сказал:

Probably @wwortel means to develop a minimal boot image which would download and dd image to eMMC.

I understood perfectly well, but this functionality is necessary for mass deployment.
Previously, this was used by lazy and smart system administrators when the task was to expand the number of new jobs.

But there seems to be something different here.

 

On which hardware devices does the author want to massively deploy operating systems?

Posted
1 hour ago, Igor said:

@going Probably @wwortel means to develop a minimal boot image which would download and dd image to eMMC. I agree that would be nice to have, but develop that requires time / resources we don't have. If you look into the script that installs OS to eMMC (and other media) its pretty complex and hard to maintain https://github.com/armbian/build/blob/main/packages/bsp/common/usr/bin/armbian-install Not to mention that people doesn't pile up to help us around that. There is / always was just a few people that sacrifices their precious family time to provide you current experience. Where we can always find something to fix and improve. 

 

I had no idea there is a script for THAT :) Thanks Armbian team :) 

 

To the original poster: all beginners should stick to microSD. Please gain experience, make the tool you want, and share it here.

 

Also look at this wonderful tool that bedna made: (it might be useful for you)

 

Posted

Thanks for all the answers, that certainly go beyond 'not a viable option'.
The hardware is a very dedicated motherboard with a Radxa CM5 compute module (RK3588s2 SoC) and some non-standard peripherals for software defined radio reception and transmission purpose, and an Armbian OS for the CM5 in which extensive use has been made of user patches and customize-image. A large part of the end users though are not into software, and an even larger part not into Linux based software. And, as with any product, a large part of the users will not read a manual.
Rather than explaining how to use 'rkdeveloptool' or equivalents to put the Armbian into eMMC, it would be much simpler to have a one time SD card insertion, wait, power off, remove SD card, and power-on with boot from eMMC. Certainly normal use of the system has to be from eMMC as it boots faster than SD. Hope this explains the motives for my question that also aimed at not re-inventing the wheel. But a ready to go solution seems not yet available.
Was looking into the one-time script 'armbian-resize-filesystem'. Perhaps that would be a good place to add the functionality I am looking for and, in case booted from SDcard, do a OS copy into eMMC before the OS on the SDcard is resized to memory size. I've read that when the copy is made one must make sure that no writing goes on into the source image that is being copied, to ensure integrity of the root file system that is landing on the eMMC. Ideas welcome how and where to do a copy into eMMC from SDcard in Armbian of the yet unexpanded OS!
Igor's point taken that preferably it should be as simple as possible and minimally disruptive to current standard Armbian. Basically a switch in configuration that, when set, makes the first boot process detect whether it starts from SD, whether eMMC is present, whether the switch has been set, and only then does the dd copy and ends with the invitation to remove the SD card and reboot.

Posted

I would suggest you consider a hybrid approach.  Boot partition on SD and root partition on emmc.  Leave the uboot on the SD card and only transition the rest to emmc.  You get the benefits of performance you are looking for (as everything other than uboot is running from emmc), but you don't have the complexities of switching your boot environment from SD to emmc all in a script.  Basically you on first boot need to format your emmc, copy the root filesystem over and adjust your fstab and armbianenv.txt entries to point to the new location of your root partion.  Now that itself doesn't come with protential issues, but that is a valid way to have Armbian configured (I think it is an option in armbian-install to have boot and root partitions on different media).

 

There is a script that the amlogic tv box builds use: https://github.com/armbian/build/blob/main/config/optional/boards/aml-s9xx-box/_packages/bsp-cli/root/install-aml.sh

This script is just a fairly simple example of the steps involved in moving from SD to emmc, with some very specific amlogic tvbox stuff mixed in.  It may be a good starting point to think from (as opposed to armbian-install which is a lot more complex as it is generically handling a bunch of different requirements)

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines