Honestly one of the best Linux programming books I can recommend that covers lots of aspects is http://www.amazon.com/GNU-Linux-Application-Programming-Series/dp/1584505680
It's good for beginners, but points you in the right direction to dig deeper when required.