There is a ton of stuff out there, reference-wise. A good place to start is The Linux Cookbook which covers a lot of “How do I do this in Linux?” type questions. It’s online, totally free, and pretty helpful.
If you want a physical book, you can’t go wrong with the O’Reilly Linux books. They have a Learning Red Hat Linux book that’s fairly recent (Jan 2002), and coming out next month is an update of Running Linux which I bought a copy of a few years ago. The update is probably worth waiting for, as a lot of the graphical-based stuff has improved dramatically since the last edition.
As for installing programs, I’d recommend that you stick to using RPMs until you get to a situation where an RPM dosen’t work for you. RPM information is stored in a big database on your computer, and a lot of times it’s just smoother to do everything via RPM - especially when it comes to managing dependencies. Open a terminal (I firmly believe that it’s pretty pointless to mess around with Linux if you don’t get to know the command line), and type “man rpm” to get an overview.
The basics:
rpm -i packagename.rpm – installs the package
rpm -e packagename – removes the package
rpm -qa – a big dump of all the packages currently installed
rpm -qa --last – same as above but ordered by date
rpm -qa | grep “something” – shows you what packages installed, then narrows it down to packages that match the pattern between quotes. This is one of the wonderful magical things about Linux, the ability to take the output of one command (rpm -qa) and “pipe” it (using the | ) so it acts as the input for another program (grep, the pattern matching program in this example).
rpm -Uvh packagename.rpm – updates a previously installed package to a newer version. The “vh” give you a little graphical represenation of the progress. rpm -u works just fine by itself, but I usually use the “vh” flags when I install or update things.
The big problem with RPM is that it dosen’t handle dependencies very well. If you want to install a package and somehow depends on having a differnet package available that you don’t have, it’ll tell you what it needs then it will exit. Other versions of Linux have better methods to deal with this, and some of them are getting ported to Redhat’s Package Manager system (that’s what rpm stands for).
Anyway, a good resource for finding packages is
RPM Find, which allows you to search for RPMs and dependencies.
As for video players, check out MPlayer. It is notoriously hard to install and the people who develop it have some hatred towards Redhat (and all people in general), but due to the magic of open source, it’s been repackaged in a friendly RPM at Fresh RPMs. It’ll play pretty much anything but Quicktime. There are some solutions out there to play Quicktime - like the Crossover plugin, which isn’t free but supposedly works very well.
Good luck. Linux, for me at least, is a lot of fun. You’re treated as a second-class citizen in a lot of ways, but you aren’t subjected to as many security issues (and if you are, they’re usually fixed quickly) and you aren’t tied down to any sort of monopolistic company. Be sure to keep your system locked down (don’t run services you don’t need) and update regularly - Redhat’s up2date utility is really nice for this.