I searched for an hour and every problem about the rainbow screen is related to a boot problem. Not for me, I have no boot problem!
In my case, my raspberry pi 2 is working perfectly as a server, allowing ssh login within a minute after being powered, runs httpd and other services perfectly fine. I even have the console size in dmesg:
$ dmesg | grep Console [ 0.000000] Console: colour dummy device 80x30 [ 11.370802] Console: switching to colour frame buffer device 53x21 $ dmesg | grep fb1 [ 11.380644] graphics fb1: flexfb frame buffer, 320x240, 150 KiB video memory, 4 KiB DMA buffer memory, fps=20, spi0.0 at 48 MHz $ uname -a Linux raspberrypi 3.12.21+ #1 PREEMPT Sat Jun 14 12:01:42 CEST 2014 armv6l GNU/Linux $ cat /etc/issue Raspbian GNU/Linux 7 \n \l
The only problem is that HDMI consistently only output a rainbow screen at full-screen size, while the intended purpose of the Pi is to serve as an X Terminal.
I've tried 3 different power supplies both advertised more than 2.5A and 3 different cables and 2 different monitors, as well as the
boot_delay=1 option. Now it is a network box, with no capacity to display.