Another great way to learn Linux is to setup a VPS. Last year I setup a VPS from scratch with no previous experience (Ubuntu, PHP, Ruby on Rails, DNS, email server, iptables and more) using just web tutorials. It was a slow process (it took me about a week full time) but it taught me a lot.