not sure what you exactly define as hardware troubleshooting, so here my 2 cents.
I do such a job since 1998, i am responsible for any kind of trouble appearing in our *nix hard- and software environment.
From my point having a good knowledge of electrical and engineering, and as a result really to know how hardware works, is the minimal. Knowledge of C-programming is really helpful, so you can track down into source to see how a driver on a specific device acts. Learning to debug a system and its drivers and how to handle core dumps and kernel panics is useful. Also additional indepth knowledge in networking, SAN and cluster solutions is required.
So i think it will be difficult to find a book covering out all this different areas. Most of my knowledge is retrieved from more than 25 years of work in IT area.
Should i provide a brain dump on a USB stick?