Pimping the Linux-kernel to use another root-drive

Hi People :slight_smile: Can I change an already compiled kernel to mount a different drive as root-drive? My idea is to boot the kernel from SD only, but the hole system is on another drive, such as SATA for example.


Sure, you ‘can change a kernel’, you can also adjust kernel command line to use a different rootfs (weird instructions posted somewhere here in the forums) but you can’t use SATA since BPi M3 has no SATA, just the slowest USB-to-SATA bridge in the world.

Putting the rootfs on an USB disk (no SATA possible) is a very bad idea since it’s slow as hell: http://linux-sunxi.org/Banana_Pi_M3#Booting_from_different_device

My problem: I’m living on an Island in the middle of the south-Pacific. Everything to bring in here takes long time… I have:

  • BananaPi M3
  • 4GB only! micro SD :C

My Plan: Writing the 8G-image to the 64GB-SSD and copy the compressed image as a file onto the it’s partition. Writing the first 260MB of the image to the 4GB-MicroSD erase the second partition, tell the kernel on the VFat to use SATA as root-partition. Once is booted I’m decompressing and copying the image to the build-in drive onto the M3 in one single step like "zcad image.zip | dd of={M3-Drive}, shut down, take out the MicroSD, boot again and use the 64BG Drive as the default-storage of my home-directory…

/in theory/ :wink:

Forget about this approach. You need an image that fits on the 4GB SD card (no idea whether there exists one). Then you put the OS image you want to use later on the SSD, then you boot the M3 from SD card just to burn the image that resides now on the SSD to eMMC.

There is still no SATA, it’s just an horribly slow USB-to-SATA bridge some weird ‘engineers’ chose to put on this board. And the onboard eMMC is magnitudes faster. So put the image on eMMC and do not even think about using your USB-SSD for this purpose.

Then you boot the M3 from eMMC, format the whole SSD as ext4 and add it as /home to /etc/fstab and you’re done. Your OS will the reside on the fast eMMC and /home will be on SSD. This is the best combination possible. Using SD cards is not a good idea.

You’ll find some performance numbers and reasons why M3 sucks here: http://forum.armbian.com/index.php/topic/474-quick-review-of-banana-pi-m3/

Jap, read this already

As far as I understood you is that you don’t recommend this because of the poor speed only, not because it’s impossible. To download another image on this bloody island will definitely take longer then running Linux from SATA for one time only. btw: I like to do crude hacks with learning side-effects :wink: