Jump to content
XPEnology Community

How to install TCRP on Proxmox


Recommended Posts

Posted (edited)

This is a simple guide and step by step tutorial on how I got tiny core red pill loader running and working on a proxmox server. This not the only way, just the way I do it and it seems to work. You will need a few things downloaded and ready to access on your local machine.

 

  1. The tiny core red pill image from @pocopico DOWNLOAD
  2. Putty for windows (or your mac equivalent) DOWNLOAD
  3. WinSCP for windows (or mac equivalent) DOWNLOAD
  4. and of course a working server with proxmox installed and running. DOWNLOAD
  5. The correct .pat dsm installation file downloaded directly from synology.com (you can handle this one on your own 😉)

 

From proxmox create a VM.

 

image.thumb.png.02b2dc7b73a6e470adffcf5a280722ce.png

 

Most of the defaults work, change these according to your specific needs and requirements, I personally used: Q35, virtio nic, HDD is your choice, 2 cores and 2gb ram (again your choice). System Q35 is not required either, i440x works too, this is just what I used and it works. HDD is whatever you want, or pass thru complete drives or controllers.. again your choice based on your setup. Same for nic, cpu and ram. Just be sure to Use NO MEDIA in the OS section

* REMEMBER THE VM ID # * you will need it later *

image.thumb.png.d078f11d23a9148f142081b6da1ba618.png

image.thumb.png.09bb8af50fc8bc8c982e8d860d0e8a9c.png

Remember, do not use any media is selected here.

image.thumb.png.849ffd0c54c34786924a4525d9c59235.png

image.thumb.png.99f042cd95678a9f088bcd0e941c52bb.png

image.thumb.png.98a0f088255299ad9f7cb18202aa8f89.png

image.thumb.png.88b0d32e2a5941b31bfed1f05fe42241.png

image.thumb.png.60edb05df7eb7e14bf413e37e8107b51.png

 

Now, load WinSCP and connect to your proxmox server using your local ip and proxmox credentials.

There on the right side, navigate to /var/lib/vz/images/ and create a folder/directory of whatever the vm number was you created, in these pictures its 101 so in this case it should be /var/lib/vz/images/101/

On the left side in WinSCP navigate to where you downloaded and extracted the tcrp image

Copy the extracted tcrp img from your local machine to your proxmox vm directory

image.thumb.png.680fa1594e43e94df83bd76a88e9416b.png

Alternatively, you can enter a couple of command lines in the main pve node shell to download and extract the tcrp image without using winscp at all, but I do it the hard way. Either way works so its up to you.

The alternative method is open the main pve node shell in proxmox and enter these commands (use copy and paste for each line)

# set vm id to whatever it was at time of creation
id=101

# create image directory, download and uncomporess
mkdir -p /var/lib/vz/images/${id}
curl --location https://github.com/pocopico/tinycore-redpill/raw/main/tinycore-redpill.v0.4.6.img.gz --output /var/lib/vz/images/${id}/tinycore-redpill.v0.4.6.img.gz
gzip --decompress /var/lib/vz/images/${id}/tinycore-redpill.v0.4.6.img.gz --keep

 

Now, at this point one way or another you should have a dir of your vm # in the correct location with the tcrp extracted image inside ready to issue the following commands, so now click your main pve node on the left panel and choose shell and paste this command there. (edit the 101 vm # with whatever your vm # is)

echo "args: -device 'nec-usb-xhci,id=usb-bus0,multifunction=on' -drive 'file=/var/lib/vz/images/101/tinycore-redpill.v0.4.6.img,media=disk,format=raw,if=none,id=drive-disk-bootloader' -device 'usb-storage,bus=usb-bus0.0,port=1,drive=drive-disk-bootloader,id=usb-disk-bootloader,bootindex=999,removable=on'" >> /etc/pve/qemu-server/101.conf

 

image.thumb.png.0b612f7a16847a7f92a15d5f8dd0844f.png

 

Now type nano and the last part of the above command (the directory part) to verify the entry into your vm .conf file so in this case

nano /etc/pve/qemu-server/101.conf

image.thumb.png.389e98995645da34dbc73bfda0f12f0b.png

You easily verify the entry into the bottom of the .conf file of your vm, now press control x to exit.

 

Now select your vm and choose hardware from the column

image.thumb.png.3166899d822af0b8c25131fca01fe8df.png

Here using the Add button you should add a serial 0 console to monitor your dsm loader if needed (helpful for troubleshooting) and if you are adding hdd or using pass thru of hba controllers or sata controllers or any other specific hardware for your build add it here.

image.thumb.png.2bf5ef9fe13a127f83b15b49b00cc9a9.png

 

Now select Options from the list column, and select only ide2 CD-ROM (uncheck all others) and make cd-rom priority #1 by dragging it to the top.

image.thumb.png.2181ede653f53025bd0a4535c9c55f33.png

 

Now you are ready to spin up your vm and build your loader.

image.thumb.png.cd7fe05495666955dce6453cd5b3dc17.png

You can watch the process of booting by right clicking on the vm number/name and select >_ console

a new window will open and you will see lines of code fly by, but only in this console monitor window. This is an optional step.

image.png.c11a137a069c7dc0f895d76a8406638f.png

 

At this point you should be booting tcrp and ready to build your loader... @Peter Suh has a great tutorial for that linked here. Follow his directions for building your loader.

Use putty to SSH into tcrp to build the loader, The main thing when building if you used virtualized nic card, add the v9fs ext to get network port working, use this command before executing the redpill build command in putty.

./rploader.sh ext <build platform> add https://raw.githubusercontent.com/pocopico/rp-ext/master/v9fs/rpext-index.json

After you successfully build your loader, and during the reboot, go back to proxmox gui and when you see the booting menu screen, press UP to select BOOT FROM USB, VERBOSE then press enter... that is very important. You only have to do this once, and it will save and retain that selection until you change it again. You do not want to boot from sata!

image.thumb.png.0dc6ddc4223ebd39cee706f6712f26d2.png

At this point you load your browser, go to find.synology.com or use synology search application on your pc, or simply go to the ip of your new vm dsm and complete the process. If you had your console monitor opened from above, you should see sign in prompt, if you scroll up a little bit you will also see the ip of your dsm vm.

If you successfully booted from usb, everything will work. If you did not change that during the first reboot, and you are booting from sata, you will most likely get a failure to install dsm. You will need to power down the vm, re-start the vm, and choose boot from usb verbose.

 

If this guide helped you, please press the thanks button for me. 🖖😀

And remember to thank @pocopico and @Peter Suh

Enjoy!

Edited by phone guy
  • Like 6
  • Thanks 4
Link to comment
Share on other sites

Now that you gotten your TCRP loader up and working in proxmox vm. Here are a couple easy proxmox tips for a better experience.

Issuing these commands on main PVE node shell, replaces subscription only repo (paid) to community driven repo (free).

Removes the NO SUBSCRIPTION nag when logging into web gui portal

and updates proxmox to most current version, amd even installs the cool Dark theme... super easy.

 

# Disable Commercial Repo 
sed -i "s/^deb/\#deb/" /etc/apt/sources.list.d/pve-enterprise.list
apt-get update 

# Add PVE Community Repo 
echo "deb http://download.proxmox.com/debian/pve $(grep "VERSION=" /etc/os-release | sed -n 's/.*(\(.*\)).*/\1/p') pve-no-subscription" > /etc/apt/sources.list.d/pve-no-enterprise.list 
apt-get update 

# Remove nag 
echo "DPkg::Post-Invoke { \"dpkg -V proxmox-widget-toolkit | grep -q '/proxmoxlib\.js$'; if [ \$? -eq 1 ]; then { echo 'Removing subscription nag from UI...'; sed -i '/data.status/{s/\!//;s/Active/NoMoreNagging/}' /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js; }; fi\"; };" > /etc/apt/apt.conf.d/no-nag-script
apt --reinstall install proxmox-widget-toolkit

# Update proxmox pve to newest available version 
apt dist-upgrade -y

# Alt update everything (has been warned against, I never had any issue so use at own risk)
apt upgrade -y

 

Here is the dark theme mod for the proxmox gui taken from this author

 

# Install Dark Theme for Proxmox GUI
bash <(curl -s https://raw.githubusercontent.com/Weilbyte/PVEDiscordDark/master/PVEDiscordDark.sh ) install

 

Of course its good practice to reboot after installing updates or mods. ENJOY!

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

Posted (edited)
On 5/14/2022 at 11:35 AM, phone guy said:

 

Use putty to SSH into tcrp to build the loader, The main thing when building if you used virtualized nic card, add the v9fs ext to get network port working, use this command before executing the redpill build command in putty.


./rploader.sh ext <build platform> add https://raw.githubusercontent.com/pocopico/rp-ext/master/v9fs/rpext-index.json

 

 

would this be a better package to use for virtio?

https://github.com/pocopico/redpill-load/raw/develop/redpill-virtio/rpext-index.json

 

Quote

 

This extension adds support for fast para-virtualized devices in hypervisors supporting VirtIO. The following features are supported:

  • MMIO-mapped devices
  • PCI(e) passthrough devices
  • Ethernet devices
  • SCSI/SATA storage

 

Then again, looking through the v9fs files, it does mention the same modules and more:

 

 "kmods": {
    "virtio.ko": "",
    "virtio_ring.ko": "",
    "virtio_mmio.ko": "",
    "virtio_pci.ko": "",
    "virtio_blk.ko": "",
    "virtio_net.ko": "",
    "virtio_scsi.ko": "",
    "9pnet.ko": "",
    "9pnet_virtio.ko": "",
    "9p.ko": ""
  },

 

Edited by ideasman69
  • Like 2
Link to comment
Share on other sites

2 hours ago, ideasman69 said:

 

would this be a better package to use for virtio?

https://github.com/pocopico/redpill-load/raw/develop/redpill-virtio/rpext-index.json

 

Then again, looking through the v9fs files, it does mention the same modules and more:

 


 "kmods": {
    "virtio.ko": "",
    "virtio_ring.ko": "",
    "virtio_mmio.ko": "",
    "virtio_pci.ko": "",
    "virtio_blk.ko": "",
    "virtio_net.ko": "",
    "virtio_scsi.ko": "",
    "9pnet.ko": "",
    "9pnet_virtio.ko": "",
    "9p.ko": ""
  },

 

According to @pocopico the v9fs drivers has all of the virtio drivers + more, so I initially used just the virtio drivers, then switched to v9fs and they worked, so those are the ones I install now.

  • Like 1
Link to comment
Share on other sites

These are the 2 ACPI drivers that have worked for me, if either of these platforms are your building choice, these should work for you also. For other models YMMV.

 

DS3622+ acpi shutdown working (for me) was

./rploader.sh ext broadwellnk-7.1.0-42661 add https://raw.githubusercontent.com/dodo-dk/rp-ext/main/acpid/rpext-index.json

 

DS918+ @pocopico acpi works

./rploader.sh ext apollolake-7.1.0-42661 add https://github.com/pocopico/redpill-load/raw/develop/redpill-acpid/rpext-index.json

 

FYI: You can easily verify your acpi and status by opening the serial console of your vm dsm and watching the information there when you press the shutdown command on that vm. When it works, you will clearly see things "stopping" and "shutting down" etc...

  • Like 2
Link to comment
Share on other sites

Since I am unable to edit the first post, I will add this here.

With many thanks to user @flyride who graciously looked into an issue I was having, using an LSI HBA card in pci pass thru mode for my HDDs, but aways populating the DSM system in lower slots (for me it was slot #9 or slot #2 depending on the sataportmap), he discovered that by choosing system i440fx instead of Q35 fixed this issue.

His thread is located here:

As I mention in that post, I am not sure what advantages or disadvantages choosing i440fx vs Q35 have? But if you experience slot population issues, use i440fx as the system type and not Q35. The rest of the procedure remains the same.

  • Like 2
Link to comment
Share on other sites

Posted (edited)

When I try to build redpill in tinycore, there is some error on v9fs

 

Spoiler

[-] Recipe file for extension pocopico.v9fs platform ds918p_42218 is logically invalid - recipe defines kmod virtio_blk.ko *FILE* which doesn't exist after all files entries are processed. You SHOULD contact the extension packer to report that (see below)
[#] ========================================== pocopico.v9fs ==========================================
[#] Extension name: v9fs
[#] Description: Adds  Support
[#] To get help visit: <todo>
[#] Extension preparer/packer: https://github.com/pocopico/rp-ext/tree/main/v9fs
[#] Software author: https://github.com/pocopico
[#] Update URL: https://raw.githubusercontent.com/pocopico/rp-ext/master/v9fs/rpext-index.json
[#] Platforms supported: ds1621p_42218 ds918p_41890 dva3221_42661 ds3617xs_42621 ds3617xs_42218 ds920p_42661 ds918p_42661 ds1621p_42661 ds918p_25556 dva3221_42218 ds3615xs_42661 ds3622xsp_42661 ds3622xsp_42218 dva3221_42621 ds3615xs_41222 ds918p_42621 ds3617xs_42661 ds3615xs_25556 ds920p_42218 ds920p_42621 ds918p_42218 ds1621p_42621 ds3615xs_42621 ds3615xs_42218 ds3622xsp_42621
[#] =======================================================================================

[#] Downloading remote file https://github.com/RedPill-TTG/redpill-boot-wait/raw/master/recipes/universal.json to /home/tc/redpill-load/custom/extensions/_ext_new_rcp.tmp_json
#################################################################################################### 100.0%
[#] Filling-in newly downloaded recipe for extension redpill-boot-wait platform ds918p_42218
[#] Downloading remote file https://raw.githubusercontent.com/RedPill-TTG/redpill-boot-wait/master/src/boot-wait.sh to /home/tc/redpill-load/custom/extensions/redpill-boot-wait/ds918p_42218/boot-wait.sh
#################################################################################################### 100.0%
[#] Verifying /home/tc/redpill-load/custom/extensions/redpill-boot-wait/ds918p_42218/boot-wait.sh file... [OK]
[#] Successfully processed recipe for extension redpill-boot-wait platform ds918p_42218
[#] Verifying /home/tc/redpill-load/custom/extensions/redpill-boot-wait/ds918p_42218/boot-wait.sh file... [OK]
[#] Updating extensions... [OK]
[#] PAT file /home/tc/redpill-load/cache/ds918p_42218.pat not found - downloading from https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS918%2B_42218.pat
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  338M  100  338M    0     0  22.5M      0  0:00:15  0:00:15 --:--:-- 22.0M
[#] Verifying /home/tc/redpill-load/cache/ds918p_42218.pat file... [OK]
[#] Unpacking /home/tc/redpill-load/cache/ds918p_42218.pat file to /home/tc/redpill-load/build/1653058377/pat-ds918p_42218-unpacked... [OK]
[#] Verifying /home/tc/redpill-load/build/1653058377/pat-ds918p_42218-unpacked/zImage file... [OK]
[#] Patching /home/tc/redpill-load/build/1653058377/pat-ds918p_42218-unpacked/zImage to /home/tc/redpill-load/build/1653058377/zImage-patched... [OK]
[#] Verifying /home/tc/redpill-load/build/1653058377/pat-ds918p_42218-unpacked/rd.gz file... [OK]
[#] Unpacking /home/tc/redpill-load/build/1653058377/pat-ds918p_42218-unpacked/rd.gz file to /home/tc/redpill-load/build/1653058377/rd-ds918p_42218-unpacked... [OK]
[#] Apply patches to /home/tc/redpill-load/build/1653058377/rd-ds918p_42218-unpacked... [OK]
[#] Patching config files in ramdisk... [OK]
[#] Adding OS config patching... [OK]
[#] Repacking ramdisk to /home/tc/redpill-load/build/1653058377/rd-patched-ds918p_42218.gz... [OK]
[#] Bundling extensions... [#] Checking runtime for required tools... [OK]
[#] Dumping ds918p_42218 platform extensions to /home/tc/redpill-load/build/1653058377/custom-initrd/exts...
[!] Failed to dump extension pocopico.v9fs for platform ds918p_42218 as its recipe file cannot be retrieved. Isn't the extension misspelled or not supported on that platform?

*** Process will exit ***

[!] Failed to dump all extensions for ds918p_42218 platform to /home/tc/redpill-load/build/1653058377/custom-initrd/exts - see errors above

*** Process will exit ***

The command I use to build is here:

./rploader.sh update now
./rploader.sh fullupgrade now
./rploader.sh serialgen DS918+
./rploader.sh identifyusb now
./rploader.sh satamap now
./rploader.sh ext apollolake-7.0.1-42218 add https://raw.githubusercontent.com/pocopico/rp-ext/master/v9fs/rpext-index.json
./rploader.sh build apollolake-7.0.1-42218

 

image.png

 

image.png

 

 

Edited by luutuananh
Link to comment
Share on other sites

4 hours ago, luutuananh said:

When I try to build redpill in tinycore, there is some error on v9fs

 

  Log (Reveal hidden contents)

[-] Recipe file for extension pocopico.v9fs platform ds918p_42218 is logically invalid - recipe defines kmod virtio_blk.ko *FILE* which doesn't exist after all files entries are processed. You SHOULD contact the extension packer to report that (see below)
[#] ========================================== pocopico.v9fs ==========================================
[#] Extension name: v9fs
[#] Description: Adds  Support
[#] To get help visit: <todo>
[#] Extension preparer/packer: https://github.com/pocopico/rp-ext/tree/main/v9fs
[#] Software author: https://github.com/pocopico
[#] Update URL: https://raw.githubusercontent.com/pocopico/rp-ext/master/v9fs/rpext-index.json
[#] Platforms supported: ds1621p_42218 ds918p_41890 dva3221_42661 ds3617xs_42621 ds3617xs_42218 ds920p_42661 ds918p_42661 ds1621p_42661 ds918p_25556 dva3221_42218 ds3615xs_42661 ds3622xsp_42661 ds3622xsp_42218 dva3221_42621 ds3615xs_41222 ds918p_42621 ds3617xs_42661 ds3615xs_25556 ds920p_42218 ds920p_42621 ds918p_42218 ds1621p_42621 ds3615xs_42621 ds3615xs_42218 ds3622xsp_42621
[#] =======================================================================================

[#] Downloading remote file https://github.com/RedPill-TTG/redpill-boot-wait/raw/master/recipes/universal.json to /home/tc/redpill-load/custom/extensions/_ext_new_rcp.tmp_json
#################################################################################################### 100.0%
[#] Filling-in newly downloaded recipe for extension redpill-boot-wait platform ds918p_42218
[#] Downloading remote file https://raw.githubusercontent.com/RedPill-TTG/redpill-boot-wait/master/src/boot-wait.sh to /home/tc/redpill-load/custom/extensions/redpill-boot-wait/ds918p_42218/boot-wait.sh
#################################################################################################### 100.0%
[#] Verifying /home/tc/redpill-load/custom/extensions/redpill-boot-wait/ds918p_42218/boot-wait.sh file... [OK]
[#] Successfully processed recipe for extension redpill-boot-wait platform ds918p_42218
[#] Verifying /home/tc/redpill-load/custom/extensions/redpill-boot-wait/ds918p_42218/boot-wait.sh file... [OK]
[#] Updating extensions... [OK]
[#] PAT file /home/tc/redpill-load/cache/ds918p_42218.pat not found - downloading from https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS918%2B_42218.pat
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  338M  100  338M    0     0  22.5M      0  0:00:15  0:00:15 --:--:-- 22.0M
[#] Verifying /home/tc/redpill-load/cache/ds918p_42218.pat file... [OK]
[#] Unpacking /home/tc/redpill-load/cache/ds918p_42218.pat file to /home/tc/redpill-load/build/1653058377/pat-ds918p_42218-unpacked... [OK]
[#] Verifying /home/tc/redpill-load/build/1653058377/pat-ds918p_42218-unpacked/zImage file... [OK]
[#] Patching /home/tc/redpill-load/build/1653058377/pat-ds918p_42218-unpacked/zImage to /home/tc/redpill-load/build/1653058377/zImage-patched... [OK]
[#] Verifying /home/tc/redpill-load/build/1653058377/pat-ds918p_42218-unpacked/rd.gz file... [OK]
[#] Unpacking /home/tc/redpill-load/build/1653058377/pat-ds918p_42218-unpacked/rd.gz file to /home/tc/redpill-load/build/1653058377/rd-ds918p_42218-unpacked... [OK]
[#] Apply patches to /home/tc/redpill-load/build/1653058377/rd-ds918p_42218-unpacked... [OK]
[#] Patching config files in ramdisk... [OK]
[#] Adding OS config patching... [OK]
[#] Repacking ramdisk to /home/tc/redpill-load/build/1653058377/rd-patched-ds918p_42218.gz... [OK]
[#] Bundling extensions... [#] Checking runtime for required tools... [OK]
[#] Dumping ds918p_42218 platform extensions to /home/tc/redpill-load/build/1653058377/custom-initrd/exts...
[!] Failed to dump extension pocopico.v9fs for platform ds918p_42218 as its recipe file cannot be retrieved. Isn't the extension misspelled or not supported on that platform?

*** Process will exit ***

[!] Failed to dump all extensions for ds918p_42218 platform to /home/tc/redpill-load/build/1653058377/custom-initrd/exts - see errors above

*** Process will exit ***

The command I use to build is here:


./rploader.sh update now
./rploader.sh fullupgrade now
./rploader.sh serialgen DS918+
./rploader.sh identifyusb now
./rploader.sh satamap now
./rploader.sh ext apollolake-7.0.1-42218 add https://raw.githubusercontent.com/pocopico/rp-ext/master/v9fs/rpext-index.json
./rploader.sh build apollolake-7.0.1-42218

 

image.png

 

image.png

 

 

@pocopico I was able to duplicate this error, something is wrong when adding v9fs for apollolake 42218 and 42661, gives a recipe error.

@luutuananh until @pocopico fixes the issue with the v9fs drivers, use the virtio drivers and you will have success.. I just tested them myself and both 42218 and 42661 build successfully.

To build DS918+ DSM 7.0.1-42218

./rploader.sh clean now
./rploader.sh update now
./rploader.sh fullupgrade now
./rploader.sh serialgen DS918+
./rploader.sh identifyusb now
./rploader.sh satamap now
./rploader.sh ext apollolake-7.0.1-42218 add https://raw.githubusercontent.com/pocopico/redpill-load/master/redpill-virtio/rpext-index.json
./rploader.sh build apollolake-7.0.1-42218

 

To build DS918+ DSM 7.1.0-42661u1

./rploader.sh clean now
./rploader.sh update now
./rploader.sh fullupgrade now
./rploader.sh serialgen DS918+
./rploader.sh identifyusb now
./rploader.sh satamap now
./rploader.sh ext apollolake-7.1.0-42661 add https://raw.githubusercontent.com/pocopico/redpill-load/master/redpill-virtio/rpext-index.json
./rploader.sh build apollolake-7.1.0-42661

 

Remember to install dsm using .pat downloaded directly from synology.com for your platform (ds918+)

  • Like 1
Link to comment
Share on other sites

Thank you for the walkthrough.However, after trying several times (with different options) I always ended with the vm starting and pending at 'Booting the kernel'.

I've tried the instructions in the thread you referred to and also tried the my.sh-script. Also made sure (just in case) the macaddress of the vm matches the one in the config-file.

Any ideas/tips/etc...?

Link to comment
Share on other sites

PRox is quite easy to install: do : vm i440fx/seabios/2cor-4g/Virtioscsi default/ Sata0:22g writeback-discard/sata1: bootloaderpil.46 .   Add serial port, remove cdrom, set only sata1 as boot.  Boot.  No cli addition to the vm, no manual entry.

 this current guide is base on old jun method and v9s is not maintained as it was only for a specific request.

 install manual, m script just don't get it and add extra step with error all time.

 with:   update now/fullupgrade now/serialgen xxxxx/identifyusb now/satamap now/ install ext need : https://raw.githubusercontent.com/pocopico/rp-ext/main/redpill-acpid/  / build / sudo rm -rf /home/tc/custom-module / reboot :  webpage of syno and dsm install. enjoy.

Link to comment
Share on other sites

Posted (edited)
3 hours ago, docop1 said:

PRox is quite easy to install: do : vm i440fx/seabios/2cor-4g/Virtioscsi default/ Sata0:22g writeback-discard/sata1: bootloaderpil.46 .   Add serial port, remove cdrom, set only sata1 as boot.  Boot.  No cli addition to the vm, no manual entry.

 this current guide is base on old jun method and v9s is not maintained as it was only for a specific request.

 install manual, m script just don't get it and add extra step with error all time.

 with:   update now/fullupgrade now/serialgen xxxxx/identifyusb now/satamap now/ install ext need : https://raw.githubusercontent.com/pocopico/rp-ext/main/redpill-acpid/  / build / sudo rm -rf /home/tc/custom-module / reboot :  webpage of syno and dsm install. enjoy.

Will try. Thanks!

With bootloaderpil.46 you mean the image extracted from Tinycore Redpill?

Edited by MrHappy
typos
Link to comment
Share on other sites

yep, unzip the loader, put on temp folder and then 'attach' to your vm with the command .. qmimport 105 folder/temp/zyx/loaderxxx.img    -as vm105  perhaps a missing arguments there.. just by memory here.

Link to comment
Share on other sites

Posted (edited)
2 hours ago, docop1 said:

yep, unzip the loader, put on temp folder and then 'attach' to your vm with the command .. qmimport 105 folder/temp/zyx/loaderxxx.img    -as vm105  perhaps a missing arguments there.. just by memory here.

found it and works.

One thing I missed (I think), 'cause it nags about no disks present. Although there is one additional sata-drive attached (sata-0). Also fdisk -l shows 2 disks...

Beside the acpid ext I added redpill-virtio.

Edited by MrHappy
Link to comment
Share on other sites

I mention above this is not the only way to get redpill working in proxmox, its the way I get redpill working in proxmox.  And because there was no easy english tutorial with pictures to follow I wrote this to help others. This method is more like a baremetal build IMHO. As for ext drivers, acpid works on some but not all platforms depending on repo source, but all ext seem to change almost regularly, the guys keeping this whole project running are working constantly to improve, mod, tweak the experience. fixing things as they are reported, updating things as needed so everyones individual results will vary slightly depending on current status of project and those ext's and individual hardware and use case, another reason VM is desirable as its results are more easily reproducible, following each step correctly. 😉

 

As for the tutorial  @flyride created a great tutorial explaining in detail the process of building the loader.

 

 

Link to comment
Share on other sites

Thank you for this guide.  First time ProxMox user.  I'm having the same issue as MrHappy.  After trying several times (with different options) I always ended with the vm starting and pending at 'Booting the kernel'.

 

I tried with tinycore-redpill 0.4.6 and also 0.8.0.0 - always stuck at the same place.  I've also tried dcop1's suggestion, but I'm new to proxmox and don't really understand all the steps that he listed.

 

Any help would be appreciated.  Thank you

Link to comment
Share on other sites

Posted (edited)

It actually did work...  I wasn't able to find the server with the synology assistant or the find.synology.com url.  However, my home assistant server noticed new dsm servers and I was able to find the ip address that way.  I wonder why the url or assistant is unable to locate.  Anyway, it seems to work.  Thank you!

 

Edit:  Figured it out, Windows Defender Firewall was blocking the Synology Assistant app from locating servers.

Edited by James62370
Link to comment
Share on other sites

Posted (edited)

To build DS920 or DS1621 you have to create and edit the dtc/dtb files to physically and manually map each port to a drive. They were working on a way to automate the process, but for now, as a beginner, the DS918 would be much easier to build as pretty much automated.  Dont get caught up in the model numbers, unless a certain platform has a feature or compatibility issue with your hardware, in the end, they are all good choices.

 

Check out @flyride installation guide for excellent loader instructions, and in his signature he has a link to choosing a loader based on hardware requirements IIRC.

 

 

 

Edited by phone guy
  • Like 1
Link to comment
Share on other sites

Posted (edited)

I wanted to clear up a few things here for everyone new and experienced.

@pocopico has updated the tcrp image from 0460 to 0800 -> 0802 after updates and upgrades. so around the 7th step screen above in the guide where it shows you how to get your tcrp loader, the links have changed due to version changes.

 

Download tinycore-redpill.v0.8.0.0.img.gz from @pocopico Github HERE and you can manually enter the proper directory and upload the extracted img file to proxmox that way, nothing else changes.

 

To use The CLI to automatically create the required dirs and download and extract the correct and newest tcrp image would now need to be (and by the way you can test or use either of the 3 listed builders if you see a reason or advantage, that is all up to you.)

# set vm id to whatever it was at time of creation
id=101

# create image directory, download and uncomporess
mkdir -p /var/lib/vz/images/${id}
curl --location https://github.com/pocopico/tinycore-redpill/raw/main/tinycore-redpill.v0.8.0.0.img.gz --output /var/lib/vz/images/${id}/tinycore-redpill.v0.8.0.0.img.gz
gzip --decompress /var/lib/vz/images/${id}/tinycore-redpill.v0.8.0.0.img.gz --keep

 

The next step of creating your virtual usb to boot your redpill xpenology from needs to be edited to, it should now read like this

echo "args: -device 'nec-usb-xhci,id=usb-bus0,multifunction=on' -drive 'file=/var/lib/vz/images/101/tinycore-redpill.v0.8.0.0.img,media=disk,format=raw,if=none,id=drive-disk-bootloader' -device 'usb-storage,bus=usb-bus0.0,port=1,drive=drive-disk-bootloader,id=usb-disk-bootloader,bootindex=999,removable=on'" >> /etc/pve/qemu-server/101.conf

 

This method makes your vm as close to a baremetal build as possible, even genuine syno boxes boot from a usb (for the most part)...This build is rock solid and has in my production environment being heavily as its become a huge backup for all my other nas's and servers.

 

Then as I have said repeatedly for the actual building commands of ./rploader.sh so you build your redpill load, these commands are usually done via ssh putty/terminal a terrific detailed guide is available from @flyride

He explains the options and process to build the loader, its straight forward and mosty automated for the vast majority of users, read his resource and you'll get it running in no time.

 

The paravirtual ethernet ext drivers v9fs are everything the virtio drivers are (i.e. same) PLUS with the addition of v9 protocol on top, and the v9fs is the more recently compiled drivers and offers better compatibility with many of the newer current models/platforms, that comes from the main xpenology guys so use or not, up to you ;:

 

Last, when you finish and successfully boot the loader, it will stay on the kernel booting.....

kernel.thumb.png.814ac0cf95ba382c0b875d919af0aaa7.png

That screen is success (hopefully). At this point, using another machine, open a browser and go to find.mysynology.com, or download the synology assistant on your phone or pc, and make sure you can see your network. Now, if you followed my directions above, you can scroll up a few lines in your console output and see what ip your nas got dhcp.

Edited by flyride
edit a typo by request
  • Like 2
Link to comment
Share on other sites

  • 1 month later...

Once I have a machine up and running with one passthrough drive, do I have to rebuild to add another passthrough drive or can I just add the drive to the ProxMox VM and it will be recognized as a new drive by DSM?

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.   Paste as plain text instead

  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.

 Share

×
×
  • Create New...