My friend told me about my NginX Auto Installer, too bad because it only support CentOS, he really want to use my auto installer if it supports Debian or Ubuntu. As i said before, i’ve never tried OS other than CentOS, so last night i tried to install NginX, PHP, and MySQL under Ubuntu 10.04.2 Lucid, guess what? It was confusing me, why can’t this OS just give a standard name for their modules and packages? For example, on CentOS if we want to install PAM and PAM devel, then we’re just type
yum install pam pam-devel
but on Ubuntu
apt-get install libpam0g-dev libpam-devperm
Why not creating the normal name like ‘pam’ for package name and ‘pam-devel’ for development package name? I had to do googling for almost of those packages which i wanted to install because they have a ‘not normal’ name. :p
Okay, enough with the preamble story, here’s the result of my experiment.
Box: Ubuntu 10.04.2 Lucid 64bit with 256MB RAM OpenVZ
First update Ubuntu repository list and update existing packages
apt-get update apt-get upgrade
Install dependencies
apt-get install -y build-essential make automake patch bc netcat libgeoip1 libgeoip-dev fontconfig libfontconfig-dev libpam0g-dev libpam-devperm slapd ldap-utils libldap-2.4-2 libdb4.6 libxpm-dev libtool libaio-dev libltdl3-dev libmcrypt-dev libmhash-dev unixodbc unixodbc-dev zip unzip nano perl openssl libssl-dev libdevel-repl-perl libperl-dev libpcre3 libpcre3-dev libjpeg62 libjpeg62-dev libpng-dev libtiff4 libtiff-dev libfreetype6 libfreetype6-dev libgmp3-dev aspell libaspell-dev libpspell-dev libiconv-ruby mlocate libc-client2007e libc-client2007e-dev uw-imapd tidy libtidy-dev libbz2-dev libmysqlclient15-dev
Because i want to build NginX, PHP, and MySQL manually from source, also i will update a few dependencies for PHP, so now remove the following packages and also stop apache and bind processes.
apt-get remove apache2 php5 mysql-server gnupg curl libcurl3 libcurl-dev libidn11 libidn11-dev libxslt-dev killall -9 apache2 killall -9 named
Install GD Library
wget http://pkgs.serversreview.net/files/gd-2.0.33.tar.gz tar -zxvf gd-2.0.33.tar.gz cd gd-2.0.33 ./configure --prefix=/usr --libdir=/usr/lib --with-png=/usr/lib --with-freetype=/usr/lib --with-fontconfig=/usr/lib --with-jpeg=/usr/lib --with-xpm=/usr/lib make make install