My checklist for Linux setup

| 2 Comments
Every few years or so I need to migrate this site (and others) to a new hosted server. Here is my checklist for what packages to install, and other stuff to do. At the moment, I'm using CentOS 5. So far, I haven't decided to go the virtualization route; even though virtual hosted servers are cheaper, they don't have the horsepower to run some of the bigger sites I host. (hint: not this blog.) Packages (via yum): emacs postfix mysql-devel freetype-devel (for RRDtool) libpng-devel libart_lgpl-devel Directories to tar/rsync over: web document roots /home dirs /usr/local Critical configs: /etc/httpd/conf and conf.d /etc/sysconfig/iptables /etc/passwd /etc/shadow /etc/group /etc/sudoers /etc/ssh/sshd_config Misc tasks:
  • disable hosting company account
  • disable webmin or other security holes
  • configure postfix for outbound
  • recompile RRDtool
  • dude, DON'T FORGET THE CRONTABS!!!!! including for users and /etc/crontab and .daily etc
  • Time zone: cp /usr/share/zoneinfo/US/Eastern /etc/localtime
Cutover procedure 1. put up global "we are moving" web page on all sites 2. dump/restore mysql data to new server 3. bring up httpd with /etc/hosts file on my machine pointing to new server 4. test 5. change DNS to point to new server