Installing PHP 5.2.6 on CentOS box

If you want to install PHP 5.2.x instead of the PHP 5.1.6 offered with default CentOSPlus repo. Please consider installing the utterramblings repo. Setting up this repo is a breeze … just follow these steps

Continue reading

Installing MySQL 5.1 on Ubuntu

I wanted to use PARTITIONING introduced in MySQL 5.1 to handle some 2 Million records (and growing everyday) in a table. Ubuntu 8.10 does not have MySQL 5.1 available if you do apt-get the latest version available is 5.0

So this is what I did, its easy and this might help somebody.

nano /etc/apt/sources.list

I prefer nano editor but you can use any editor of your choice. Add these new lines at the end of the end of the file.

deb http://ppa.launchpad.net/monty/ubuntu gutsy main universe restricted multiverse
deb http://ppa.launchpad.net/smurf/ubuntu gutsy main universe restricted multiverse

(These packages were targeted for 7.10 so I will recommend using them and removing them from this list once you got the latest MySQL version)

Now run the following commands

apt-get update
apt-get upgrade

Note that you may need to do sudo prefix to these commands if you are using a non-root account. Now lets do the one last step, Installing MySQL 5.1

apt-get install mysql-server-5.1

Update: I have got another source to get even latest minor version of MySQL 5.1, just follow the above steps, then start over again and add following lines to “/etc/apt/sources.list” instead of the one above.

deb http://packages.dotdeb.org stable all
deb-src http://packages.dotdeb.org stable all

It worked for me on Ubuntu 8.10, im sure it will work for just any server version.

I am not a linux guru so if someone has a better option to upgrade to MySQL 5.1 or the latest version, please let me know.

Intall Apache, MySQL and PHP on Ubuntu 8.10

WARNING: Please use this method to install Apache, PHP and MySQL because its more suitable for most of your needs and has options to auto-upgrade your installation. The following method is obsolete and not recommended.

After trying to install Apache, MySQL and PHP on Ubuntu 8.10 via several methods listed over the web. I opted for xampp package for linux.

It is as easy as ABC

Download the xampp linux package from their official website

wget http://nchc.dl.sourceforge.net/sourceforge/xampp/xampp-linux-1.7.tar.gz

(I have selected NCHC, Taiwan as the mirror to download this package, you may try another)

Extract the files

sudo tar xvfz xampp-linux-1.7.tar.gz -C /opt

Chmod the files to have nobody ownership

sudo chown -R nobody:root /opt/lampp/

Configure xampp security

sudo /opt/lampp/lampp security

Start xampp with this command

sudo /opt/lampp/lampp start

Stop xampp

sudo /opt/lampp/lampp stop

Restart xampp

sudo /opt/lampp/lampp restart

Login to ftp using the username nobody and the password that you have set up in the “xampp security”

To uninstall xampp

sudo rm -fr /opt/lampp

Enjoy!!

Download files from a http authenticated directory using wget

I wanted to download something off a sub-domain using wget that I have password protected using .htaccess
so the following command was NOT working

wget http://secure.asim.pk/myfiles.tar 

Luckily, we can pass two arguments to the same command and tell wget what the username and password is

wget http://secure.asim.pk/myfiles.tar --http-user=myuser --http-password=mypass 

Works Great!!

If you are using Ubuntu 8.10, have not enabled root user and trying to download to a directory that has “nobody” or “root” as owner then try pre-pending it with sudo

sudo wget http://secure.asim.pk/myfiles.tar --http-user=myuser --http-password=mypass 

How to Install Webmin in Ubuntu

From the little help that I can get over the internet, I found out that you need to install the following packages to prepare the system for Webmin installation.

Run the following command over SSH or Ubuntu Desktop’s terminal window (Applications -> Accessories -> Terminal).

sudo apt-get install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl libmd5-perl 

(Learn how to configure SSH on Ubuntu 8.10 if you want to have a remote access to your Ubuntu box).

Download the latest version of Webmin by running the following command (visit webmin download section for newer versions)

wget http://ignum.dl.sourceforge.net/project/webadmin/webmin/1.500/webmin_1.500_all.deb 

Downloading Webmin
Downloading Webmin

After the package has been downloaded, run the following command to install it

sudo dpkg -i webmin_1.500_all.deb 

You should now be able to login to Webmin at the URL https://localhost:10000/ using root or any other user with sudo access.

Configuring SSH on Ubuntu 8.10

The first issue that I had after installing Ubuntu 8.10 was that I could not connect to SSH on it because SSH server is not installed on Ubuntu 8.10 and it never asked me if I wanted to make a selection of what software packages I need to have installed. I guess thats why they are making a less then 25 min install promise.

Here’s how you can enable / configure / install SSH on your Ubuntu 8.10
Open a terminal window by selecting the Applications menu and selecting Terminal from the Accessories menu. In the terminal window enter the following command and press enter to execute it

sudo apt-get install openssh-server

It will automatically download and install the SSH serve and configure it to run on port 22 (default port).

Ubuntu 8.10 SSH Access
Ubuntu 8.10 SSH Access

I will write another article to explain how you can change the port or enable / disable the SSH server.

Using CakePHP’s Bake on Linux

If you want to use CakePHP’s bake tool on Linux command line (like I have development environment on Linux) then you can ssh to your linux box as shown in the screen shot below

Linux Console

Second, you can execute the cake bake command in the following manner

./cake/console/cake bake

as shown in the picture below
Linux Console

How to create a tar file using SSH on Linux

To create a tar from a directory using SSH on Linux punch in the following command

tar -vcf backup.tar mystuff/

Where “mystuff” is a directory and backup.tar is the target compressed file.
You can also create a file called archive.tar of all the files and subdirectories in the current directory with the following command

tar -vcf backup.tar *

Note: “v” flag is for verbose mode.