I'd say that is a reasonable selection - however I would say the best book on C is "the C programming language" by Kernighan and Ritchie (known as the K&R book). It literally is 'the book' on the subject.
I wouldn't bother with the Ubuntu book, I know you said you don't know how to operate it - but online tutorials and forums are much
more useful for this kind of thing as they are more up-to-date and can focus specifically on your problem. Those books are generally designed for people who want to use Ubuntu like Windows - i.e. what applications are similar to X, Y and Z on Windows/Mac. They won't tell you how to install g++ (the C++ compiler for linux) and what the filesystem structure is used for by convention. Also, if you like ubuntu, I'd suggest Linux Mint as a derivative distribution because it is hugely popular, has a massive community forum and you can find lots of good tools which others have already built for it.
For people new-ish to Linux I can't overstate how important popularity and a vibrant support community is.
One genre of book you don't have a representative for on your list would be something like: Computer Graphics: Principles and Practice
I had the second edition of this book through my CS degree where I specialised in Grahpics, and it was by far the best at conveying what the core CG concepts are and how to think about them when writing code. In short - don't even bother trying to write games until you've grasped the rationale behind things like lighting, perspective, the modelview and projection matrices (opengl specific terminology there) etc.
Game Development Aspirations:
As you've mentioned C++ and OpenGL books I'm inferring the kind of game programming you're talking about, but this does impact slightly upon your aspirations. There are easier ways to learn how to write simple games, but I'd definitely recommend the approach you're suggesting in the long run as it is incredibly satisfying to see your own 3d worlds come to life. One thing I will caveat that with though, is that it takes a lot of dedication to understand what's required for game programming and how it all works (this is what the aforementioned CG book is excellent at explaining).
You should decide up front what platform you wish to make games for (i.e. Windows/Linux) and ensure whatever books you get are tailored for that environment.
Ensure your graphics hardware is compatible with the latest version of OpenGL (or whatever version your wish to use / get books for etc.)
Before you purchase anything, get the simplest
online example from a tutorial and make sure you know how to use your build environment properly (by this I mean: navigate in your IDE - e.g. eclipse, visual studio; build a new project, compile it, link with external libraries, run it, debug it etc.) And (more importantly) make sure you understand these terms and when each is required. Like many students on my course you could spend more time trying to work out what's wrong with your code when it's actually something on your system which is setup incorrectly.
OpenGL versions: Make sure everything you're looking at is the same version - there are HUGE differences between 'old' opengl (1&2) and 'new' opengl (3&4). You have been warned!
For windows, the NeHe opengl tutorials are exceptional (available at: NeHe Productions - Everything OpenGL
For linux there are a few pretty good ones
1) Lighthouse 3d: OpenGL @ Lighthouse 3D - Tutorials
2) Opengl tutorials: Tutorial 1 : Opening a window | opengl-tutorial.org
Regardless of what platform / books / games / tutorials you decide to adopt as a 'permanent' solution. I would suggest reading through all of these at a high level to begin with as it will give you some good ideas about what's possible and motivate you to continue through what appear basic and uninspiring examples at the start.
Hope that helps,