Jump to content
XPEnology Community

Redpill Multiloader (rp_ml v.2.0.0-r02)


FOXBI

Recommended Posts

Hello~!

 

I am xpenology user. And I am an IT engineer who creates shell scripts as hobbies.

 

Please understand that it is written by a google translate site. because i’m korean who is not fluent in English.

 

I created built Redpill Multi boot loader. Multiple DSMs can be used as one loader

 

 

Requirement
=============================================================

 

1, Redpill-Multiloader_7.1-42661.img file Download
    Please understand that Google Drive is used because of its large capacity. There is a link below.

 

2. It is the same as using the existing Redpill Tinycore or a separately made loader.

 

3. ESXi Enviroment
    (Bootloader SATA1 (1:0), DataDisk SATA0 (0:0))

 

    or

 

    Baremetal Enviroment
    (It can be used by making a USB with rufus or dd, etc.)

 

 

How to RUN Redpill Multiloader
=============================================================

 

 

1.  Redpill-Multiloader_7.1-42661.zip decompression

 

2. Modify /boot/grub/grub.cfg by mounting the first partition on OSFmount or TC

#====================================================================================
## User config - Your values Change
#====================================================================================
set sn=1234SQRDD5678
set netif_num=1
set mac1=001122334455
set SataPortMap=9
set DiskIdxMap=0
set SasIdxMap=0

  The USB or Boot oder part is an additional setting and does not necessarily need to be modified.

 

3. Convert Redpill-Multiloader_7.1-42661.img  to Redpill-Multiloader_7.1-42661.vmdk, Redpill-Multiloader_7.1-42661-flat.vmdk

 

4. Register as boot disk in ESXi VM (default SATA1 (1:0))

 

5. Enter GRUB and use the desired DSM version

 

How to ADD Ext Driver (for Baremetal & ESXi, How to make USB Stick include)

=============================================================

 

 

Additional notes

=============================================================

 

1. It is built by default for EXSi and can be modified after additional builds if necessary.

    (I'll update the method further.)

2. Due to variable processing for sn, mac, etc., it is temporarily modified in GRUB state and cannot be used.

3. The video has been processed only with the popular DS918+, DS920+, DS1621+, DS3622xs+, and DVA3221,

    and DS3615xs and DS3617xs are also available.

4. USB is handled as a submenu, and pressing ESC will return to the upper menu.

5. In the future, we plan to make Multiloader production possible directly on TC through tr_cb.sh.

    https://xpenology.com/forum/topic/60469-tinycore-redpill-create-boot-image-usb-tr_cb-v099-r01/    

 

Quote

## Update v2.0.0-r01 - 2022.04.28

- USB multiloader Support for Baremetal(mbr error fix)

- Automatic support when writing up to 4 nic/mac

- Add setting value variable processing item(com port)

- Set to enable serial console connection when writing com port

- A guide on how to add drivers(as soon as possible)

- You can change the Ubuntu style of the GRUB menu by removing comments.

- Update & Change Download Link

- Fixed some errors

 

## Update v2.0.0-r02- 2022.04.29

- Modification of efi classification conditional statement and redistribution of images

- How to add Ext Driver Video production

 

 

Attachement

=============================================================

 

Download : (Google drive link - 400MB) -  Please understand that Google Drive is used because of its large capacity

https://drive.google.com/file/d/1t1cOPMmlSg3c65mXJBeI_44yor_sp9Xl/view?usp=sharing

 

 

 

Finally comment

=============================================================

 

I'm an ESXi user, so the Native test is lacking.(Check only basic bootability)

Please note that there may be errors.

If you tell me the test results and points for improvement, I'll reflect them.

 

Have Nice Day!! Thank you~!!!

Edited by FOXBI
new versio update
  • Like 4
  • Thanks 6
Link to comment
Share on other sites

4 minutes ago, nemesis122 said:

Hi Foxbi thank you for the image i have tried on my Gen8 Baremetal not ESXI the stick is not booting is this only for ESXI ?

 

 

 

It is optimized for ESXi environment.

In Baremetal state, it seems to be booted by moving to the USB submenu rather than SATA.

Basically, since the nic driver is set to vmxnet3, it seems that Baremetal's nic driver will also need to be added.
(Probably the nic side driver of the gen8 board is most likely tg3 which is broadcom.)

Link to comment
Share on other sites

I have checked on the Serial Port the message :please remove the usb key and press a key 

Is this only for uefi bios because Gen8 microserver have not a uefi bios only mbr booting

i saw no menu etc because the usb stick is not booting the first partition is set to active

Edited by nemesis122
Link to comment
Share on other sites

3 minutes ago, nemesis122 said:

I have checked on the Serial Port the message :please remove the usb key and press a key 

Is this only for uefi bios because Gen8 microserver have not a uefi bios only mbr booting

 

 

I know that redpill supports both efi and mbr.

The USB side has not yet been fully tested, but it was carried out when trying to boot from microserver gen8

with a USB made with the redpill image as the base. I'll check the USB boot some more.

  • Like 1
Link to comment
Share on other sites

Hi 

My steps was format the usb Key with ntfs 

copy the img file with w32 disk imager.

change the user config 

booting with the gen8 but on the serial port when the stick should booting it says please remove the usb stick and press a key

 

how you have created the usb stick when the gen8 has sucessfully bootet ?

thank you

 

Edited by nemesis122
Link to comment
Share on other sites

9 hours ago, nemesis122 said:

But it is not booting

 

8 hours ago, RICARDO MELO said:

When I tried boot with USB I received the same message

 

I'm so sorry..

 

Since I mainly use ESXi and it works well on ESXi, I guess I didn't pay attention to USB booting.

I have confirmed the phenomenon that does not work in baremetal, and I'll try to solve the problem.

This is a temporary way to do it.

rufus -> grub2.06 select -> USB adjust

OSFmount -> img mount 1st partition -> copy all > USB open > paste

I have confirmed that the grub menu appears.

 

 

I will fix it so that baremetal can work well as soon as possible.

 

thank you

  • Like 3
Link to comment
Share on other sites

 

2 hours ago, FOXBI said:

 

 

I'm so sorry..

 

Since I mainly use ESXi and it works well on ESXi, I guess I didn't pay attention to USB booting.

I have confirmed the phenomenon that does not work in baremetal, and I'll try to solve the problem.

This is a temporary way to do it.

rufus -> grub2.06 select -> USB adjust

OSFmount -> img mount 1st partition -> copy all > USB open > paste

I have confirmed that the grub menu appears.

 

 

I will fix it so that baremetal can work well as soon as possible.

 

thank you

ok thank you

 

Edited by nemesis122
Link to comment
Share on other sites

Hi,

 

First of all great job.

 

I head problem with error 'disk msdos1 not exist' but manually change in grub.cfg (root=(hd0,msdos1) for test and is working (for test just DS918+), using UEFI (CMS - used to work, but now is error from post above).

I put my stic pid, vid, mac, eave old sn.

I have menu, can start from USB, but looks like no RTL8111/RTL8211 drv. I see 'starting kernel with USB boot on the screen'. I search from find.synology.com, syno assistant, put ip in the browser, nothing.

 

i5-4460, H81M, xpenology 918+ works from other usb stick with loader.

 

I try later to bild own loader.

Edited by BartAcid
  • Thanks 1
Link to comment
Share on other sites

1 hour ago, BartAcid said:

First of all great job.

 

I head problem with error 'disk msdos1 not exist' but manually change in grub.cfg (root=(hd0,msdos1) for test and is working (for test just DS918+), using UEFI (CMS - used to work, but now is error from post above).

I put my stic pid, vid, mac, eave old sn.

I have menu, can start from USB, but looks like no RTL8111/RTL8211 drv. I see 'starting kernel with USB boot on the screen'. I search from find.synology.com, syno assistant, put ip in the browser, nothing.

 

 

As mentioned in Topic, this material is made with ESXi basic base. Of course, no other drivers exist.

I will guide you on how to add drivers in the next version.

In addition, the use of the above mentioned Baremetal is not currently normal, so please use the next released version.

Good news soon. :)

  • Like 2
Link to comment
Share on other sites

  • FOXBI changed the title to Redpill Multiloader (rp_ml v.2.0.0-r01)
50 minutes ago, FOXBI said:

 

A new version can be downloaded.

 

Thank you to  nemesis122 and RICARDO MELO for reporting the error.

 

Thanks to you, I was able to add more features and see if it works.

 

Tested with VMWare only works with option USB Redpill Bootloader, not works with sata option.

Captura de pantalla 2022-04-27 202932.png

Captura de pantalla 2022-04-27 202618.png

Link to comment
Share on other sites

4 minutes ago, apriliars3 said:

Tested with VMWare only works with option USB Redpill Bootloader, not works with sata option.

 

 

As mentioned in the topic, the default setting for the ESXi environment is SATA1 (1:0).

 

Change 

 

    #====================================================================================

    ## SATA Boot Priority (default : loader (1:0), data (0:0) )

    #====================================================================================

    set shd=hd1

 

To

 

    #====================================================================================

    ## SATA Boot Priority (default : loader (1:0), data (0:0) )

    #====================================================================================

    set shd=hd0

 

in grub.cfg

Edited by FOXBI
Link to comment
Share on other sites

34 minutes ago, FOXBI said:

 

 

As mentioned in the topic, the default setting for the ESXi environment is SATA1 (1:0).

 

Change 

 

    #====================================================================================

    ## SATA Boot Priority (default : loader (1:0), data (0:0) )

    #====================================================================================

    set shd=hd1

 

To

 

    #====================================================================================

    ## SATA Boot Priority (default : loader (1:0), data (0:0) )

    #====================================================================================

    set shd=hd0

 

in grub.cfg

Other question. How can add tg3.ko to rd.gz by DS3622xs+ or other?

 

I think without tg3.ko not works HP Microserver Gen 8.

Captura de pantalla 2022-04-27 210954.png

Link to comment
Share on other sites

5 hours ago, apriliars3 said:

Other question. How can add tg3.ko to rd.gz by DS3622xs+ or other?

 

I think without tg3.ko not works HP Microserver Gen 8.

 

 

I don't think you need to update rd.gz.

 

Instead, if you import custom.gz from the build including the driver and overwrite it, you can boot with the driver applied loader.

 

 

I succeeded in this test and I will post a related method soon. :)

  • Like 1
Link to comment
Share on other sites

  • FOXBI changed the title to Redpill Multiloader (rp_ml v.2.0.0-r02)
On 4/26/2022 at 12:02 PM, FOXBI said:

1. It is built by default for EXSi and can be modified after additional builds if necessary.

    (I'll update the method further.)

 

 

 

Added a video on how to add an extension driver to Topic.

 

Please refer to it for use.

 

Link to comment
Share on other sites

On 4/26/2022 at 4:02 AM, FOXBI said:

Hello~!

 

I am xpenology user. And I am an IT engineer who creates shell scripts as hobbies.

 

Please understand that it is written by a google translate site. because i’m korean who is not fluent in English.

 

I created built Redpill Multi boot loader. Multiple DSMs can be used as one loader

 

 

Requirement
=============================================================

 

1, Redpill-Multiloader_7.1-42661.img file Download
    Please understand that Google Drive is used because of its large capacity. There is a link below.

 

2. It is the same as using the existing Redpill Tinycore or a separately made loader.

 

3. ESXi Enviroment
    (Bootloader SATA1 (1:0), DataDisk SATA0 (0:0))

 

    or

 

    Baremetal Enviroment
    (It can be used by making a USB with rufus or dd, etc.)

 

 

How to RUN Redpill Multiloader
=============================================================

 

 

1.  Redpill-Multiloader_7.1-42661.zip decompression

 

2. Modify /boot/grub/grub.cfg by mounting the first partition on OSFmount or TC


#====================================================================================
## User config - Your values Change
#====================================================================================
set sn=1234SQRDD5678
set netif_num=1
set mac1=001122334455
set SataPortMap=9
set DiskIdxMap=0
set SasIdxMap=0

  The USB or Boot oder part is an additional setting and does not necessarily need to be modified.

 

3. Convert Redpill-Multiloader_7.1-42661.img  to Redpill-Multiloader_7.1-42661.vmdk, Redpill-Multiloader_7.1-42661-flat.vmdk

 

4. Register as boot disk in ESXi VM (default SATA1 (1:0))

 

5. Enter GRUB and use the desired DSM version

 

How to ADD Ext Driver (for Baremetal & ESXi, How to make USB Stick include)

=============================================================

 

 

Additional notes

=============================================================

 

1. It is built by default for EXSi and can be modified after additional builds if necessary.

    (I'll update the method further.)

2. Due to variable processing for sn, mac, etc., it is temporarily modified in GRUB state and cannot be used.

3. The video has been processed only with the popular DS918+, DS920+, DS1621+, DS3622xs+, and DVA3221,

    and DS3615xs and DS3617xs are also available.

4. USB is handled as a submenu, and pressing ESC will return to the upper menu.

5. In the future, we plan to make Multiloader production possible directly on TC through tr_cb.sh.

    https://xpenology.com/forum/topic/60469-tinycore-redpill-create-boot-image-usb-tr_cb-v099-r01/    

 

 

## Update v2.0.0-r02- 2022.04.29

- Modification of efi classification conditional statement and redistribution of images

- How to add Ext Driver Video production

 

 

Attachement

=============================================================

 

Download : (Google drive link - 400MB) -  Please understand that Google Drive is used because of its large capacity

https://drive.google.com/file/d/1t1cOPMmlSg3c65mXJBeI_44yor_sp9Xl/view?usp=sharing

 

 

 

Finally comment

=============================================================

 

I'm an ESXi user, so the Native test is lacking.(Check only basic bootability)

Please note that there may be errors.

If you tell me the test results and points for improvement, I'll reflect them.

 

Have Nice Day!! Thank you~!!!


@FOXBI I really like your idea ! 
 

Do you thing that If I could export a custom gz you could use it on your multi boot ? 
 

maybe I can write a function for just exporting the custom.gz for you 

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

38 minutes ago, pocopico said:

Do you thing that If I could export a custom gz you could use it on your multi boot ? 

 

I haven't tried everything, but custom.gz I just updated and confirmed that the driver was applied properly.

 

I first thought about making a multi-loader base with images built by default in RedPill

 

and building and importing only the necessary custom.gz in RedPill. If only custom.gz can be controlled separately,

 

I also thought that it would be possible to skip the build.

 

 

As with all my scripts, I don't want to touch the main features of RedPill. Currently,

 

I think the best way is to use the auxiliary role in which RedPill runs or to utilize the results created through RedPill.

 

It's a pleasure to see so many things I can create with your wonderful results. :)

Edited by FOXBI
Link to comment
Share on other sites

14 minutes ago, FOXBI said:

 

I haven't tried everything, but custom.gz I just updated and confirmed that the driver was applied properly.

 

I first thought about making a multi-loader base with images built by default in RedPill

 

and building and importing only the necessary custom.gz in RedPill. If only custom.gz can be controlled separately,

 

I also thought that it would be possible to skip the build.

 

 

As with all my scripts, I don't want to touch the main features of RedPill. Currently,

 

I think the best way is to use the auxiliary role in which RedPill runs or to utilize the results created through RedPill.

 

It's a pleasure to see so many things I can create with your wonderful results. :)


Actually the structure of custom.gz is very static. We have to reengineer the custom.gz at some point if that makes sense. I changed the custom.gz script at some point to overcome the limit of module extension interdependence. Jumkey added the JUN patch function etc. 

 

Thats the beauty of open source. The project has no limits and keeps going as long as there are people interested on progressing the project 

  • Like 4
Link to comment
Share on other sites

4 hours ago, pocopico said:

Actually the structure of custom.gz is very static. We have to reengineer the custom.gz at some point if that makes sense. I changed the custom.gz script at some point to overcome the limit of module extension interdependence

why does it have to be a *.gz file? there is no real size limit/problem and the handling (like adding a extension manually) would be easier if its just s directory structure with files, with jun's loader it keeps most people out to try out or change things as the format is way to "exotic" (at least for windows)

if it has to be a archive the at least it should be a format that can be used on any platform (and it should be able to simple change the content of the file), maybe *.zip?

there are a lot of windows users and the *.gz files cand be changed with normal programms like 7zip

 

 

Link to comment
Share on other sites

34 minutes ago, IG-88 said:

why does it have to be a *.gz file? there is no real size limit/problem and the handling (like adding a extension manually) would be easier if its just s directory structure with files, with jun's loader it keeps most people out to try out or change things as the format is way to "exotic" (at least for windows)

if it has to be a archive the at least it should be a format that can be used on any platform (and it should be able to simple change the content of the file), maybe *.zip?

there are a lot of windows users and the *.gz files cand be changed with normal programms like 7zip

 

 


I have  the impression that it’s a CPIO format and not gzip at all, but I need to dig into my notes. The reason for having the format in that certain way has to do with the kernel capabilities of each platform. It could have been a simple directory though but TTH decided to go the other way. A more controlled and user targeted way 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

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.

×
×
  • Create New...