4

Is it possible to somehow connect 2 or 3 Raspberry Pis to one SD card and have then all run off one. I understand that reading and setting files may be an issue, but

1
  • This is certainly an interesting idea that could be looked into. May I ask why you would want to do this, though? I am sure it could be possible, but I can immediately recognise the issue of writing at the same time. File corruption would be very likely with this kind of setup. What would be nice is a method to network boot a Pi from another. Basically, piggybacking on another Pi's OS with only needing an incredibly small SD card client side. Feb 1, 2014 at 11:09

1 Answer 1

5

This is not possible, in the way you want to do it.

The BCM chip uses dedicated IO lines to the SD card and the OS only has access to this via the Kernel Module, which means the OS must support this kind of data multiplexing (or server if you like) and act as a host.

enter image description here

The problem is only 1 OS can use the SD Card module at a time and not several because of IO synchronisation issues that will corrupt data instantly. Each BCM runs of an oscilator and the internal mechanics decide what speeds to run at. If another Pi at even a slihgly varying clock speed would be connected you would have serious issues. It might be possible by multiplexing the channels, but speed will decrease exponentially since this becomes half-duplex. Say you connect 8 Pi's via a multiplexer.. then the speed will be reduced 8 times. Besides no normal operating system driver is capable of understating this "wait" period and will crash.

It is possible theoretically to have several partitions and have other Pi's boot of these partitions over TCP/IP, but you cannot share the partitions because the driver disallows sharing of certain files to prevent Kernel Panick.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.