The first thing you need to do is download CentOS. There are tons of mirrors. You can find a list of those CentOS mirrors here
. It will be either eight or so CDs or two DVDs. Make sure you download the most recent version unless you have some reason not to.
Put that CD into the server machine and boot the machine you are wanting to install it on from CD Drive. (Usually pushing F12 during boot brings up a boot menu.)
Once it boots from the disc it will lead you through the installation. It will ask you for a graphical install or a text install. Since I am setting this up to be a server and thus I don't need any graphical interface whatsoever, I chose text install.
The first part is just loading a bunch of drivers.
My installation hung right here at "Loading ata_piix driver". Apparently, CentOS 5.x has some sort of bug
that makes it incompatible with a Dell Inspiron 530 (the exact computer I was trying to load it on). I went into the BIOS like the bug report suggested and changed my Sata Mode to RAID. It seems to have fixed the problem.
Next, it asked if I wanted to test the CD media. Since I had sort of scratched it up I decided to choose "OK", but it does take a while, so unless you really have a reason to verify your CD, I would suggest simply choosing "Skip".
It will now ask you for your language and your model keyboard. The answers will probably be "English" and "us". "us" is just a standard qwerty keyboard with no special buttons. Chances are, unless you know your keyboard is something special, it is just a "us" keyboard.
Next it asks what Hard Drive I want to install on. Since this computer has only one hard drive, and I am devoting this entire hard drive to the server (that is, I don't want to partition it at all), I am going to choose that hard drive. I also chose "Remove all partitions and use default partitioning". Unless you're doing something fancy, the default partitioning scheme should be fine.
Next it asks if I want to configure eth0, which is the network card. I chose "Activate on boot" and "Enable IPv4 support".
Since you are running a server (and I assume you're using a router), you don't want your machine's IP address to change. So choose "Manual address configuration" instead of DHCP. Choose an IP address that you want for your machine. Usually it will be something like 192.168.0.4 or something along those lines. This would be if your router's internal IP address is 192.168.0.1. (If you want more information about the IP address, check out this thread
If you have trouble figuring out any of the next values, you can usually find it by opening a command prompt on a computer that is connect to the same network, and typing
This will tell you tons of things about your network.
It will also ask for your Prefix (Netmask). It is probably 255.255.255.0, but check this with ipconfig /all.
The next asks for Gateway, Prinary DNS, and Secondary DNS. The Gateway is probably going to be the address of the router, which you can check with ipconfig /all. It will be called the "Default gateway".
For the Primary DNS, I put 192.168.1.1. (I initially didn't put anything because I couldn't figure out what I was supposed to put, but it led to problems later. After some searching around, I put my router's IP address, and now everything works fine.) I did not put a secondary DNS.
Now you must choose a hostname for your server. I just called my server1 because I'm not imaginative.
Choose what time zone your in.
Now, choose a root password. The "root" user in a linux environment is the one who has the power to do everything
. Root security is very important, and you need to pick a good root password or you risk compromising your system.
Now the installation will ask about some things you may want to install. Since I am installing this simply to be a server machine, I am going to uncheck the "Desktop" feature. I can do everything I need to through the command line, so I see no reason to have that. Instead, I chose "Server". Also make sure to check "Customize Software Selection".
Now it gives me a big list of other things I can install. I am planning on using this server to run a HLDS game server, HLTVs, and maybe a website. I can always go back later and install other packages if I need to, but to start out with, this is what I chose:
- DNS Name Server
- Development Libraries
- Development Tools
- FTP Server
- Java Development
- Legacy Network Server
- Mail Server
- MySQL Database
- Network Servers
- Server Configuration Tools
- System Tools
- Text-based Internet
- Web Server
- Windows File Server
Click OK a couple of times, and the installation is finally ready to begin.