Setting New PHP Development with Apricity OS & VirtualBox : Part 3 – Install PHP 5.2, 5.3, 5.4, 5.5, 5.6 and 7.0 on single Ubuntu Server 14.04 LTS 32 bit

The application sholud be work on PHP 5 is no longer relevant term for my team. Client use more precision term like PHP 5.2.17, PHP 5.3.3 etc. Its insane to support checking all those claim. The only ‘fair’ play assumption is testing it with more common version. Like PHP 5.2 I decide to use latest version of 5.2 family like 5.2.17.

In this post I try to retry available post that already use same approach but using Ubuntu Server 16.04 LTS that use 64 bit architecture while I use 32 bit Ubuntu 14.04 server for this case.

The Plan

List of Supported PHP version in this post including from  museum are :

5.2 -> 5.2.17

5.3 -> 5.3.29

5.4 -> 5.4.33

5.5 -> 5.5.34

5.6 -> 5.6.20

7.0 -> 7.0.5

Those PHP version will be install in single VM that tun Ubuntu 14.04 server with memory 1GB. In case the memory not fit the process then I can add it easily 🙂


Install base package and friends

sudo apt-get install -y nginx git autoconf lynx wget build-essential libxml2-dev libssl-dev libbz2-dev libcurl4-openssl-dev  libpng12-dev libfreetype6-dev libxpm-dev libmcrypt-dev libmhash-dev libmysqlclient-dev libjpeg62-dev freetds-dev libjson-c-dev re2c

Setting Local Environment on Ubuntu 14.04 Server

sudo nano /etc/environment

Add these lines :


save. Continue reading

Setting New PHP Development with Apricity OS & VirtualBox : Part 2 – Install and Configure Ubuntu Server 14.04 LTS Guest

In last section I already write about setting VirtualBox for initial preparation. This time I’ll continue with Ubuntu Server 14.04 LTS install.

In this section nothing new beside next and next. One thing I need to use in install the server is only use OpenSSH server when server prompt available package during install.

For Part 1, click here.

Configuration Ubuntu Server 14.04 LTS

To continue with configuration step I prefer to do it from terminal. Open terminal from Apricity OS and type :

ssh ubuntu@localhost -p 2222

note : ubuntu is username that I use for my installation and server 123456.

Port 2222 is port that I use for port forwarding.

Like this one.

ssh ubuntu@localhost -p 2222

ubuntu@localhost’s password:
Welcome to Ubuntu 14.04.4 LTS (GNU/Linux 4.2.0-27-generic i686) Continue reading

Setting New PHP Development with Apricity OS & VirtualBox : Part 1 – Setting VirtualBox

My latest post was about Apricity OS. This OS continue to surprise me with its ‘archlinux’ blood 🙂 . Getting new update every day is good for my general requirement but not suitable for my job in programming. I need php environment that stable and also support all old php version that our team ever made (I can share it to my team easily).

In short I need mutiple php support with these requirements :

  1. Minimum dependency
  2. Using Ubuntu or CentOS
  3. I can code in Apricity OS and see the result in other machine (point 2).

All those factors fit with Virtualbox. I just need to install Virtualbox (I use version 5.0.16) in Apricity (host) and install Ubuntu LTS (14.04 or 16.04) as guest.

Setting VirtualBox Guest in Apricity OS

VirtualBox already installed in last post. The plan for VirtualBox new guest :

  1. Set 2 card for NAT and Host Only
  2. Create fix hard disk with VDI type (50GB)
  3. Use Ubuntu server 14.04 LTS (32 bit for lower resource).
  4. 1 GB memory assignment

Picture of 2 card on VirtualBox


Adapter 1 -> NAT Continue reading

Apricity OS : Disappointing Me

My Peppermint OS 5 seem to let me behind with latest trend. Even I can install Sigil but it’s not latest one because of LTS stuff (yes, Sigil requires Qt >= 5.4 available in Ubuntu 15.10). I also can not introduce Krita for my daughter (its installed but crash). Obviously a lot of fun things I got with Peppermint OS 5 like setting brightness, set Team viewer 10 for remote my wife laptop. Use Xampp for Phalcon PHP backup. Learn Corona SDK a bit before switch to Ionic.

While latest Ubuntu will be out this April I actually will ignore it till 2019  but I can’t 🙂 . This LTS (Xenial  Xerus) hard to refuse but I need it to follow latest trend). During waiting period I think I’ll use Elementary OS. I download and play with it  and I love it until my friend came and told me about his arch linux box. I already knew that name from long time ago while I still working with FreeBSD server but I have no idea until I see it myself.

Apricity OS

Being afraid of new challenge that I might see with arch linux I decide to look for beginner friendly distro that use arch linux as basis. Manjaro, Antergos are nice but I see other one called Apricity OS. Its GUI approach is really good and force me to end my waiting period for Ubuntu LTS after test it 2 days with virtualbox. Continue reading

How to fix mysql error can’t read dir on Peppermint OS

Suddenly my php stack can’t open phpmyadmin. Its getting timeout all the time. Due to health problem I let it as I think my computer might need rest too like me 🙂

Today I need to overcome the problem since my friend need to access mysql table structure and I use command line, the error appear in different format :

mysql -u root -p nkppt -e ‘show tables;’
Enter password:
ERROR 1018 (HY000) at line 1: Can’t read dir of ‘./nkppt/’ (errno: 24)

Wow, I think the error also serious and apt-get update in last run might be the cause of this problem.

After look around I got solution from here.

Edit security limits

$ cat /etc/security/limits.conf



mysql soft nofile 24000
mysql hard nofile 32000

Modify mysql.conf

$ cat /etc/init/mysql.conf
# MySQL Service

description     “MySQL Server”
author          “Mario Limonciello <>”

start on runlevel [2345]
stop on starting rc RUNLEVEL=[016]

respawn limit 2 5

env HOME=/etc/mysql
umask 007

# The default of 5 seconds is too low for mysql which needs to flush buffers
kill timeout 300

limit nofile 32000 32000
limit nproc 32000 32000

pre-start script
## Fetch a particular option from mysql’s invocation.
# Usage: void mysqld_get_param option

The lines in bold is solution for my problem.

Restart mysql service and my problem gone 🙂