If you have lots of objects in your world drawn on top of this background and you want them all to rotate with the background, then you would do well to purchase my sprite system. It handles this sort of thing wonderfully through a robust parent-child system. You could even scale the background to zoom in on everything.
The only limitation with it is that you won't get the results you expect if you rotate a sprite and then scale the background non-uniformly, meaning more on the Y axis than the X axis for example. But as long as you scale the background uniformly you can still rotate and scale the sprites on it non-uniformly.
Of course there may be ways to do this in OpenGL directly, but then you're limited to using OpenGL. Copying the screen to a buffer is a bad idea because it is slow.
The only limitation with it is that you won't get the results you expect if you rotate a sprite and then scale the background non-uniformly, meaning more on the Y axis than the X axis for example. But as long as you scale the background uniformly you can still rotate and scale the sprites on it non-uniformly.
Of course there may be ways to do this in OpenGL directly, but then you're limited to using OpenGL. Copying the screen to a buffer is a bad idea because it is slow.