Jump to content
XPEnology Community

TinyCore RedPill Loader (TCRP)


pocopico

Recommended Posts

The output indicates that you have one sata controller with 5 ports (all 5 ports on /sys/devices/pci0000:00/0000:00:1f.2).

Try this values in extra_cmdline in your user_config.json:

"SasIdxMap": "0",
"SataPortMap": "5", 
"DiskIdxMap": "00"

 

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

Nice job on this project!

 

When running on ESXi using a PV SCSI controller, I get the following from the auto detection attempt for modules.

 

Found SAS Controller : pciid 15add000007c0  Required Extension : 
No matching extension

 

What is your preferred approach to add that pciid to be associated with your vmw_pvscsi extension? You want to add/control them or should we open pull requests on github?

Link to comment
Share on other sites

6 hours ago, ilovepancakes said:

Nice job on this project!

 

When running on ESXi using a PV SCSI controller, I get the following from the auto detection attempt for modules.

 


Found SAS Controller : pciid 15add000007c0  Required Extension : 
No matching extension

 

What is your preferred approach to add that pciid to be associated with your vmw_pvscsi extension? You want to add/control them or should we open pull requests on github?


The PCIID -> Module -> extensions is calculated using the available modules.alias that is available on Tinycore. A modules.alias.json exists on the repo where you downloaded the image. If you use that you will have your extensions identified correctly.


Download the file and gunzip it in /home/tc 

 

https://github.com/pocopico/tinycore-redpill/blob/main/modules.alias.json.gz?raw=true

  • Like 1
Link to comment
Share on other sites

Well as i see it, you have only one PCI SATA controller 00:1f:2 that has 5 hosts (host0/1/2/3/4).

 

There are cases where a single host can have multiple ports and other cases where each host is a single port. You may find it by running

 

ls -ldtr /sys/class/scsi_host//host*/device/port*

ls -ldtr /sys/class/scsi_host/host*/device/target*

ls -ldtr /sys/class/scsi_host/host*/device/phy*

 

The USB disk which is host5

 

/home/tc$ lsscsi -Hv
[0]    ahci          
  dir: /sys/class/scsi_host//host0
  device dir: /sys/devices/pci0000:00/0000:00:1f.2/ata1/host0
[1]    ahci          
  dir: /sys/class/scsi_host//host1
  device dir: /sys/devices/pci0000:00/0000:00:1f.2/ata2/host1
[2]    ahci          
  dir: /sys/class/scsi_host//host2
  device dir: /sys/devices/pci0000:00/0000:00:1f.2/ata3/host2
[3]    ahci          
  dir: /sys/class/scsi_host//host3
  device dir: /sys/devices/pci0000:00/0000:00:1f.2/ata4/host3
[4]    ahci          
  dir: /sys/class/scsi_host//host4
  device dir: /sys/devices/pci0000:00/0000:00:1f.2/ata5/host4
[5]    usb-storage   
  dir: /sys/class/scsi_host//host5
  device dir: /sys/devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.0/host5

 

 

Edited by pocopico
  • Thanks 4
Link to comment
Share on other sites

49 minutes ago, ilovepancakes said:

The ID "bromolow-7.0.1-42218" on the custom_config.json included with the repo seems to reference jumkey's master branch, but isn't 7.0.1 included on jumkey's develop branch only?

 

Hi, you can bring your own json configs, these are placeholders. They might work or they might not. I do not intent to maintain them anyway.

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

4 minutes ago, pocopico said:

 

Hi, you can bring your own json configs, these are placeholders. They might work or they might not. I do not intent to maintain them anyway.

 

Copy that. And upon changing that entry and downloading the modules file for correct matching of extensions, running the script seems to have worked flawlessly using the static rp-lkm option. Didn't try compile option yet. Well done!

Link to comment
Share on other sites

1 minute ago, ilovepancakes said:

 

Copy that. And upon changing that entry and downloading the modules file for correct matching of extensions, running the script seems to have worked flawlessly using the static rp-lkm option. Didn't try compile option yet. Well done!

 

Compile is not heavily tested i should say. But its not very crucial, i plan to update the static RedPill extension regularly or once we have an update at least.

  • Like 1
Link to comment
Share on other sites

11 minutes ago, pocopico said:

 

Compile is not heavily tested i should say. But its not very crucial, i plan to update the static RedPill extension regularly or once we have an update at least.

 

I appreciate the compile option being there nonetheless as sometimes it's nice to be able to compile something ourselves completely from scratch, for security. Although I suppose we could still compile rp-lkm manually and just use the .ko output from that to be the static module used rather than yours. I'm impressed with the ease of use now to generate a loader. I did it via SSH as on ESXi for some reason the mouse doesn't work when trying to use the GUI. I only tried with a USB 3.1 controller added to the VM maybe it only works with USB 2.0 or something.

 

Now to try and fix that pesky SCSI virtual disk issue....

Link to comment
Share on other sites

6 hours ago, pocopico said:

There are cases where a single host can have multiple ports and other cases where each host is a single port. You may find it by running

 

ls -ldtr /sys/class/scsi_host//host*/device/port*

ls -ldtr /sys/class/scsi_host/host*/device/target*

ls -ldtr /sys/class/scsi_host/host*/device/phy*

What what? I have never seen anything else than a one to one mapping of host to port and multiple ports to a single controller.

Learned something new today, thanks @pocopico

Link to comment
Share on other sites

4 hours ago, pocopico said:

 

Hi ! Thanks, Care for some documentation :)

I foolishly suggested I would do something like that last year, didn't I? 😀

 

Give me a few days to get back into the day job (and catch up with the last few weeks' posts on here) and I'll get into it. I've got a few proposals to run over with you, haydibe, etc. before I take them to the site admins. The main redpill thread needs to die, basically....

  • Like 5
Link to comment
Share on other sites

3 hours ago, WiteWulf said:

The main redpill thread needs to die, basically....

 

Yep... and would be great if TTG really is gone (still holding out hope though) to better organize efforts amongst community devs who are capable of continuing the project in various ways.

Edited by ilovepancakes
Link to comment
Share on other sites


curl: (22) The requested URL returned error: 403 Forbidden

[!] Failed to download https://mirrors.llilii.cn/redpill/extensions/enhancements /boot-wait/config/rpext-index.json to /home/tc/redpill-load/custom/extensions/_n                           ew_ext_index.tmp_json

*** Process will exit ***

[!] Failed to add "https://mirrors.llilii.cn/redpill/extensions/enhancements/boo                           t-wait/config/rpext-index.json" as an extension:


,

*** Process will exit ***
[!] Failed to install unknowno.boot-wait bundled extension - see errors above

*** Process will exit ***
FAILED : Loader creation failed check the output for any errors

anyone can helkp please?

Link to comment
Share on other sites

2 hours ago, ausmann said:


curl: (22) The requested URL returned error: 403 Forbidden

[!] Failed to download https://mirrors.llilii.cn/redpill/extensions/enhancements /boot-wait/config/rpext-index.json to /home/tc/redpill-load/custom/extensions/_n                           ew_ext_index.tmp_json

*** Process will exit ***

[!] Failed to add "https://mirrors.llilii.cn/redpill/extensions/enhancements/boo                           t-wait/config/rpext-index.json" as an extension:


,

*** Process will exit ***
[!] Failed to install unknowno.boot-wait bundled extension - see errors above

*** Process will exit ***
FAILED : Loader creation failed check the output for any errors

anyone can helkp please?

Use https://github.com/RedPill-TTG/redpill-extensions  The llilii.cn mirror is temporary not available.

Link to comment
Share on other sites

Lately, I have been working on some issues you have mentioned.

 

So whats new :

 

- USB disk identification and update user_config.json option
- SataPortMap and DiskIdxMap identification and update user_config.json option
- Serial number and Mac address generation and update user_config.json option
- user_config.json format validation 
- Image files have been updated to 1GB size and all files in /home/tc have been updated. 
- Added the backup option to backup /home/tc changes to local image for file repurposing if required in the future
- Fixed included custom_config.json to point to Jumkey develop repo instead, as i see many have issues with unknown0 repo. 
- The default passwd of user tc is now P@ssw0rd (no need to set password for ssh) 

 

As always, rploader.sh file might be silently updated, so keep watching for updates.

 

A normal build process would start with :

 

1. Image burn

a. For physical gunzip and burn img file to usb stick
b. For virtual gunzip and use the provided vmdk file 

 

2. ssh to your booted loader or just open the desktop terminal 

 

3. Bring over your json files (global_config.json,custom_config.json, user_config.json )

 

4. Check the contents of user_config.json, if satisfied keep or else run :

a. Change you serial and mac address by running ./rploader.sh serialgen DS3615xs
b. Update user_config.json with your VID:PID of your usb stick by running ./rploader.sh identifyusb now
c. Update user_config.json with your SataPortMap and DiskIdxMap by running ./rploader.sh satamap now (needs testing)

d. Backup your changes to local loader disk by running  ./rploader.sh backup now


5. ./rploader.sh build bromolow-7.0.1-42218

Edited by pocopico
  • Like 9
  • Thanks 2
Link to comment
Share on other sites

49 minutes ago, pocopico said:

Lately, I have been working on some issues you have mentioned.

 

So whats new :

 

- USB disk identification and update user_config.json option
- SataPortMap and DiskIdxMap identification and update user_config.json option
- Serial number and Mac address generation and update user_config.json option
- user_config.json format validation 
- Image files have been updated to 1GB size and all files in /home/tc have been updated. 
- Added the backup option to backup /home/tc changes to local image for file repurposing if required in the future
- Fixed included custom_config.json to point to Jumkey develop repo instead, as i see many have issues with unknown0 repo. 
- The default passwd of user tc is now P@ssw0rd (no need to set password for ssh) 

 

As always, rploader.sh file might be silently updated, so keep watching for updates.

 

A normal build process would start with :

 

1. Image burn

a. For physical gunzip and burn img file to usb stick
b. For virtual gunzip and use the provided vmdk file 

 

2. ssh to your booted loader or just open the desktop terminal 

 

3. Bring over your json files (global_config.json,custom_config.json, user_config.json )

 

4. Check the contents of user_config.json, if satisfied keep or else run :

a. Change you serial and mac address by running ./rploader.sh serialgen DS3615xs
b. Update user_config.json with your VID:PID of your usb stick by running ./rploader.sh identifyusb now
c. Update user_config.json with your SataPortMap and DiskIdxMap by running ./rploader.sh satamap now (needs testing)

d. Backup your changes to local loader disk by running  ./rploader.sh backup now


5. ./rploader.sh build bromolow-7.0.1-42218

It should be amazing if you can put a VID/PID reader.
Any news about DSM for DS3617xs?  i read something about it 

Link to comment
Share on other sites

when I try the command: ./rploader.sh identifyusb now I receive 2 times the error message:

sed: -e expression#1, char 33: invalid usage of line address 0

 

is there also a command the set the mac address? via ifconfig for example -> show the correct value for my adapter

 

one further question, where can I define which extension I would like to use?

Edited by Dreadnought
Link to comment
Share on other sites

54 minutes ago, Dreadnought said:

when I try the command: ./rploader.sh identifyusb now I receive 2 times the error message:

sed: -e expression#1, char 33: invalid usage of line address 0

 

is there also a command the set the mac address? via ifconfig for example -> show the correct value for my adapter

 

one further question, where can I define which extension I would like to use?

 

For the error , i've tested it thouroughly running it with user tc, do you run this as root or tc or sudo ?

 

To add an extension run (**already in the help page): 

 

./rploader.sh ext bromolow-7.0.1-42218 add https://raw.githubusercontent.com/pocopico/rp-ext/master/e1000/rpext-index.json
 

to specify the mac address manually to match your adapter (which you shouldn't you should use a generated mac address) you can modify manually user_config.json

 

 

 

Edited by pocopico
  • Like 2
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...