General > Users
'Diskless' Raspberry Pis are out in the wild!
phenigma:
Hey everyone! I wanted to pass on some of the recent work I've been doing in relation to the Raspberry Pis.
It's been a long slog bringing the system to the RPi line of systems. In the original LMCE release for the RPi I had spent 2 months hacking u-boot to provide a really robust 'PXE like' boot process for the RPi in LMCE. It was intense and required understanding and programing u-boot for low-level memory access to pass boot parameters (ATAGS) properly to the linux kernel. When the RPi2 was released the hardware had changed significantly and the broadcom SOC was upgraded to a multi-core cpu and armv7 rather than the older armv6 architecture. Due to the architecture changes in the SOC u-boot failed to work with the new Raspberries. So I revived the old, old concept of disked Media Directors for the RPi2. This worked well as long as the power didn't go out (which meant you would have to re-write the sdcard and let the system re-install all the software packages again.) With the RPi foundation's recent announcement of netboot capability (https://www.raspberrypi.org/blog/pi-3-booting-part-ii-ethernet-all-the-awesome/) we have a new way to boot all Raspberry Pi B's (1, 2 and 3).
Head on over to http://wiki.linuxmce.org/index.php/RaspberryPi to read about how to setup a network booting RPi Media Director.
Keep in mind that the RPi foundation (and myself) still consider this to be very experimental.
Have fun!
G.I.R.:
Absolut fantastic work!
Thank You very much! A dream comes true! :)
It is near to that point that i would label this whole linuxmce thing as magical...
Affortable and noiseless md for every room. fantastic!
I am already trying to get it working.
Using a raspberry pi model 3b.
Updated and upgraded my linuxmce 14.04 system to the newest available point:
i386 - 201609172308+325de35d (besides the webadmin and the weborbiter are showing older version numbers)
Prepared the raspberry for network/usb booting (it is showing 0x3020000a).
I have not used the sdcard mentioned in the wiki. I used the way it was described there:
https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmodes/msd.md
Should be the same result?
Installed the default netboot kernel package.
Changed the TARGET_TYPE. (Do i need to change it back after i have created the tarball?)
The raspberry didn`t get recognized. So i even tried to add the template manually, providing a mac address and an ip address.
it won`t boot.
I made a tcpdump on the core/hybrid and all i could find is this:
--- Code: ---13:48:52.061106 IP moon142.49154 > 0.0.0.0.tftp: 29 RRQ "autoboot.txt" octet tsize 0
13:48:53.061145 IP moon142.49155 > 0.0.0.0.tftp: 27 RRQ "config.txt" octet tsize 0
13:48:54.061306 IP moon142.49156 > 0.0.0.0.tftp: 29 RRQ "recovery.elf" octet tsize 0
13:48:55.061453 IP moon142.49157 > 0.0.0.0.tftp: 26 RRQ "start.elf" octet tsize 0
13:48:56.061562 IP moon142.49158 > 0.0.0.0.tftp: 26 RRQ "fixup.dat" octet tsize 0
--- End code ---
I copied something via tft to the core and vice versa without any problem.
I don`t know what i can do. Maybe reinstall everything? Did the netboot kernel package changed since last week? Is it a good idea to reinstall that?
I would really like to have a noiseless raspberry as md.
And i really would be very thankfull for any idea/suggestion/hint!
But again thanks!
phenigma:
While I and one other have been successful I've heard of a couple issues more recently. I've heard of some issues with the diskless filesystem being created but the device itself should be creating.
--- Quote from: G.I.R. on September 21, 2016, 02:57:51 pm ---Prepared the raspberry for network/usb booting (it is showing 0x3020000a).
I have not used the sdcard mentioned in the wiki. I used the way it was described there:
https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmodes/msd.md
Should be the same result?
--- End quote ---
I assume you're booting without an sdcard. The RPi foundation has found a couple of bugs in that method. Try booting with an sdcard that has just bootcode.bin on it (or use the new one I just posted on the wiki, it'll set the OTP bit, rewrite the sdcard contents and reboot automatically).
--- Quote from: G.I.R. on September 21, 2016, 02:57:51 pm ---Installed the default netboot kernel package.
Changed the TARGET_TYPE. (Do i need to change it back after i have created the tarball?)
--- End quote ---
No, it simply needs to be set for the target type you want the image created for prior to running the script. You could create a tarball for both i386 and rpi, for example.
--- Quote from: G.I.R. on September 21, 2016, 02:57:51 pm ---The raspberry didn`t get recognized. So i even tried to add the template manually, providing a mac address and an ip address.
it won`t boot.
--- End quote ---
I really, really, really do not recommend adding the DT manually, it will not contain the serial number of the RPi, which is a requirement to netboot. The automatic process will pass the serial number to the core when it is discovered.
--- Quote from: G.I.R. on September 21, 2016, 02:57:51 pm ---I made a tcpdump on the core/hybrid and all i could find is this:
--- Code: ---13:48:52.061106 IP moon142.49154 > 0.0.0.0.tftp: 29 RRQ "autoboot.txt" octet tsize 0
13:48:53.061145 IP moon142.49155 > 0.0.0.0.tftp: 27 RRQ "config.txt" octet tsize 0
13:48:54.061306 IP moon142.49156 > 0.0.0.0.tftp: 29 RRQ "recovery.elf" octet tsize 0
13:48:55.061453 IP moon142.49157 > 0.0.0.0.tftp: 26 RRQ "start.elf" octet tsize 0
13:48:56.061562 IP moon142.49158 > 0.0.0.0.tftp: 26 RRQ "fixup.dat" octet tsize 0
--- End code ---
--- End quote ---
That doesn't seem like it's passing the files. Can you run 'ls -lah /tftpboot/ | pastebinit' so I can see if all of the tftp files are setup properly.
--- Quote from: G.I.R. on September 21, 2016, 02:57:51 pm ---I don`t know what i can do. Maybe reinstall everything? Did the netboot kernel package changed since last week? Is it a good idea to reinstall that?
--- End quote ---
Shouldn't have to re-install. The default kernel package has not changed since last week, the only change is that I've provided an sdcard to setup the OTP bit and rewrite the card automatically.
--- Quote from: G.I.R. on September 21, 2016, 02:57:51 pm ---I would really like to have a noiseless raspberry as md.
And i really would be very thankfull for any idea/suggestion/hint!
--- End quote ---
The rpi is pretty nice as a lightweight MD, I've been running 3 permanent and 2 testing units for many years now.
I'll be checking into the issues that you, and others, have been reporting over the next few days. Thanks for testing!
G.I.R.:
thanks for the quick reply.
here is the pastebin (ls -lah /tftpboot/)
http://paste.ubuntu.com/23211976/
and this is /tftboot/rpi
http://paste.ubuntu.com/23211995/
i deleted the manually created device (moon142) via webadmin.
is it okay that there is still this link:
--- Code: ---boot -> /usr/pluto/diskless/142/boot
--- End code ---
i tried booting with a sdcard only having bootcode.bin on it.
but i will try that one from the wiki, when i am at home.
would doing a tcpdump again help?
Thanks for Your help!
phenigma:
I would definitely try with my sdcard, in case there is some version mismatch between your bootcode.bin and start.elf in the default network boot directory. Your files all look good.
The link should be removed, it is not created properly as it doesn't contain the rpi serial number.
Navigation
[0] Message Index
[#] Next page
Go to full version