keith smith wrote: > Hi, > > I'm a web programmer and from time to time I am tasked to do some work > on a server. While I have been using and playing with Linux for about 8 > years I have really not spent too much time working with it in the real > world until recently. > > I personally run Fedora and the webservers I work on run CentOS or RHEL. > > I am looking for a reference that will list the things I might need to > know to manage a (web) server from the command line. Is there such a > thing or is it a crazy question? > Hi Keith. I feel your pain. There are lots of things to know, and it would be great to have it all in one place. The diversity/variety of free software means there usually isn't a single 'manual' for how to do things. For CentOs specifically, try http://www.centos.org/docs/. The trouble, though, is that the set of 'what I need to know' and 'what you need to know' and 'what generic hacker/admin needs to know' are never the same sets of stuff. I think the best advice is to start a collection of useful bookmarks (or a wiki page or whatever other medium suits you) for documentation for the set of technologies that comprise your application stack. * You've mentioned you're a PHP developer in other posts, so of course you know about php.net. * httpd.apache.org/docs is first-rate documentation for Apache (and could help you with the htpasswd confusion). * MySQL, Postgres, and other RDBMSs have great online docs. * For ssh questions, try http://www.openssh.com/manual.html. * You might also want to collect information SEO or interface design. That wouldn't be relevant to lots of programmers, but makes a ton of sense for web stuff. The point is that there's tons of information out there, but given the great variety of possible combinations of software, it's unlikely someone shares your identical stack and documentation needs. I'd say a wiki could work quite well. (It has for me.) Not only can you collect links that are useful, but you can also write your own HOWTOs (tailored to your situation). Making it public means that others can benefit from your reasearch, and even add to what you've collected. The trick is often identifying which organization/web site will have documentation for the specific issue you're working out. Knowing that openssh.org will have info on /usr/bin/ssh isn't obvious to everyone. I usually start with 'man whatever' for an unfamiliar program, and use the man page to check for references to URLs. I scan the man pages for keywords or organization names that can form the basis for better web searches. Also try looking in /usr/share or /usr/doc. Config files in /etc often have piles of comments that can point you in a useful direction. Keep in mind that man pages aren't limited to binaries. 'man ssh_config' gives more details about that specific config file. Really, trying 'man ' is worth a shot. On RPM-based distros like RHEL/Centos, you can use the RPM database to get more information. 'rpm -qf /usr/bin/ssh' will tell you which package /usr/bin/ssh belongs to. then feed that package name into 'rpm -ql ' to find all files that are part of that package. This can often turn up documentation files in odd places you wouldn't have thought to look in. I know there are equivalent commands for Debian/dpkg, but i don't know them offhand. I hope that helps. alex