Using RockPi 4 as a LTSP client

I’ve searched this forum but I can’t find any posts about anyone having tried to get LTSP working with the RockPi (4).

For those who don’t know what LTSP is, its the Linux Terminal Server Project. It allows you to boot Debian or Ubuntu Linux over the network and store your users home dirs on the LTSP server which means the clients can be operated without any storage devices and can be centrally updated and managed.

LTSP works with the RaspberryPi and the RockPi 4 supports PXE booting so I don’t think there is any reason why LTSP couldn’t be made to work on the RockPi 4. It would be a better choice of LTSP SBC than the RaspPi in some ways because the RockPi 4 can PXE boot via the SPI flash whereas the RaspPi requires a correctly configured uSD card to PXE boot and the RockPi has superior spec including a CPU thats about twice as fast.

I might have to give it a go soon and see how far I get.

https://wiki.radxa.com/Rockpi4/dev/u-boot/pxe

2 Likes

Hi Dan,

This is cool.

I want to wish you luck and encouragement, if you get it working, please update us and steps to do this, I would love to be able to do this with my three Rock Pi 4A that I have, thanks.

Although you mention better choice via SPI flash, for me I would prefer to use uSD card, I do not mind “waste” uSD card so that completely remove possibility to ‘brick’ my Rock Pi 4, if any issue I can just reimage the uSD or replace with another uSD card if is gone bad, if is SPI flash I don’t have ability to solve if is ‘bricked’.

To anyone from radxa team, the pxe link provided by Dan to the wiki, in the wiki it says can “spi flash or emmc or microSD” and gives link for spi, if someone from radxa can please enhance the wiki to add how to do this using microSD card would be very much appreciated, thanks.

Hi Dan,
That looks like a cool project…

seems like you need to build a DHCP server and a TFTP server with some netboot files which PXE client needed… and maybe need a NFS server or web server in you local network.
and then we just need some netboot files which can activate SPI flash to enbale PXE CLIENT function?

@Jacky_Li

Pretty much all that server config you mention is automated by the LTSP installation scripts:

It is pretty easy to configure a basic LTSP server.

I think it should be possible to use the same (x86-64) LTSP server that you might use with x64 machines with RockPi clients. One ‘issue’ is that it will be a bit more involved updating the client image as that may need to be done on the RPi itself before using dd to create an image of the OS to be converted into an LTSP image with the ltsp image command. This would only be an issue is you are using a VM image as the source, which is the way I prefer to use LTSP. This wouldn’t be a problem if your LTSP server is also a RockPi because they you can use ‘chrootless’ mode where the server forms the basis of the LTSP image.

I’ve read that qemu can kinda emulate a RaspberryPi but its limited to 256 MB RAM so I expect these restrictions would apply too, if its possible to emulate a RockPi under qemu. I have not tried qemu’s ARM support yet.

It seems to be very complicated, what is this mainly used for? Do you implement network boot? I don’t understand its application scenario

It’s not very complicated to set up if you have a fair amount of experience installing Linux.

I run an LTSP server to provide Ubuntu Linux for a UK university. We have 100’s of desktops on our campus that all boot Ubuntu from a single LTSP server. LTSP Ubuntu clients boot slower than off a local SSD as you’d expect, but once you’ve booted LTSP Ubuntu its actually perfectly usable for most tasks. I probably wouldn’t recommend doing serious video editing or recording multitrack music on an LTSP client but I bet you could.

LTSP is SO much better as far as updates are concerned than trying to administer a network of Windows machines which require you re-image them on a regular basis. We have to do that still but it’d be great if Windows could run like LTSP Linux.

I was DM’d about this and thought it best to share my reply publicly:

Hi Jorge

No, I never did get round to trying this out unfortunately.

Have you managed to get LTSP working using RPis using a ‘chrootless’ RPi LTSP server? That would be my recommended first step in trying to get this working. See if you can set up a chrootless LTSP server using a RPi 4. I believe others have got RPi’s working as LTSP servers so you should have a fighting chance.

Your RockPi LTSP server would also most likely have to be chrootless too because I’d imagine it would be a pain if not impossible to create a LTSP image using the VM image method, which is the only other potentially viable method to create a LTSP image.

If you can get LTSP working with an RPi 4 server and an RPi 4 client then you’ve got a fighting chance of getting a very similar config working with a RockPi 4 server and client(s).

If I get a chance to try setting up a RPi4 LTSP server I’ll let you know.

1 Like

Hi Dan,

well mixing from here and there I am able to boot the Rockpi 4C+ with a LTSP server, right now in NFS_RW mode. I have started a discussion in LTSP github pages here where I have told (more or less) what I did.

The thing here is to be able to modify u-boot so it boots from network. Comiling uboot is such an ordeal, but the official Rockpi 4C+ DEBIAN image provides a way of doing that. It is not perfect but it works.

And the workflow is very similar to what is told in LTSP instructions for Raspios. I hope I could get the card booting in LTSP mode soon (read only root filesystem, /home folders in server). I have very limited knowledge of all this stuff but I guess it should not be difficult, so stay on tune if you want

All the best

Jorge

1 Like

Hi Jorge

Thats good news, it sounds like you’re most of the way to having a working setup now.

I could test an RPi LTSP config as I can borrow another RPi 4 off work or a friend but I’ve only got one Rock Pi 4 and I can’t afford another.

Please keep us updated, I’m sure others will find it useful.

Hi all,

Here I left some sort of step-by-step guide on the subject

Cheers