Am proud of being a g33k! I do PHP Programming, *NIX, FreeBSD, MacOSX, White Water Rafting, Volleyball, PS3/PC Gaming, Travelling, and of course GADGETS!

Finding Duplicates with SQL

Monday, June 6th, 2011
Here’s a handy query for finding duplicates in a table. Suppose you want to find all email addresses in a table that exist more than once :-
SELECT email,
COUNT(email) AS NumOccurrences
FROM users
GROUP BY email
HAVING ( COUNT(email) > 1 )
You could also use this technique to find rows that occur exactly once :-
SELECT email
FROM users
GROUP BY email
HAVING ( COUNT(email) = 1 )

Prompt for iOS on iPad & iPhone

Monday, May 9th, 2011

If you guys looking for an iOS app which can connect via SSH to your NIX servers, here’s your answer :)
Link : http://itunes.apple.com/us/app/prompt/id421507115?mt=8
More Info : https://www.panic.com/blog/2011/04/introducing-prompt-ssh-for-ios/

image

image

Transfer Default MySQL Database Directory From /var To /usr

Monday, March 21st, 2011

Default partition size for /var normally not enough to store databases, so we need to store it somewhere bigger (/usr). The steps will show how to transfer database from /var/db/mysql (default path installation for MySQL in FreeBSD) to /usr/local/mysql/data (suggested path). Steps as follows :-

[root@dev /var/db/mysql]# /usr/local/etc/rc.d/mysql-server stop
Stopping mysql.
Waiting for PIDS: 993.
[root@dev /var/db/mysql]# mkdir -p /usr/local/mysql/data
[root@dev /var/db/mysql]# mv * /usr/local/mysql/data/.
[root@dev /var/db/mysql]# cd ../
[root@dev /var/db]# rm -rf mysql
[root@dev /var/db]# ln -s /usr/local/mysql/data mysql
[root@dev /var/db]# chown -R mysql mysql
[root@dev /var/db]# chgrp -R mysql mysql
[root@dev /var/db]# cd /usr/local/
[root@dev /usr/local]# chown -R mysql mysql
[root@dev /usr/local]# chgrp -R mysql mysql
[root@dev /usr/local]# /usr/local/etc/rc.d/mysql-server start
Starting mysql.
[root@dev /usr/local]# ps aux | grep mysql
mysql    46491  0.1  1.1 208112 44860  ??  S     6:15AM   0:00.09 [mysqld]
mysql    46411  0.0  0.0  8264  1920  ??  Ss    6:15AM   0:00.01 /bin/sh /usr/local/bin/mysqld_safe –defaults-extra-file=/var/db/mysql/my.cnf –user=mysql –datadir=/var/db/mysql –pid-file=/var/db/my
root     46494  0.0  0.0  9092  1432   0  S+    6:15AM   0:00.00 grep mysql
[root@dev /usr/local]#

DONE!

My squid.conf

Friday, January 14th, 2011

Some of my friends asked how my squid.conf looks like. Here’s how it looks like. Feel free to comment so that i can improve on the configuration

[root@squid ~]# cat /usr/local/etc/squid/squid.conf

(more…)

HowTo Install iStat in FreeBSD for Server Monitoring

Tuesday, January 11th, 2011
iStats for iPhone can be used to remotely monitor your Mac or Mac server. See your iPhone’s stats for battery, memory, disk space, Wi-Fi and Cell IP addresses, uptime & load averages.
No only you can monitor you Mac, but also for other OS (Linux, Solaris & FreeBSD) as well. Assuming you’ve download the iStats app from iTunes App Store, here’s how you can access and monitor your FreeBSD server via these simple steps.
  1. Download the file here (http://github.com/tiwilliam/istatd/downloads)
  2. tar -vxzf istatsd-0.5.7.tar.gz #uncompress the package assuming you’ve downloaded iStats version 0.5.7
  3. cd istatd-0.5.7 #go into the uncompressed directory
  4. ./configure #start compiling
  5. make
  6. make install
  7. mkdir -p /var/{run,cache}/istat
  8. adduser istat #add user istat
  9. chown istat:istat /var/{run,cache}/istat #set permission of user & group for the created folder
  10. vi /etc/istat.conf #remember to change the server code (your password to access iStat)
  11. /usr/local/bin/istatd -d #start the iStat as daemon

P/S : The service is listening on port 5190 so please make sure the firewall allows it.

Official Site : http://bjango.com/apps/istat/
More info : http://www.google.com.my/search?client=safari&rls=en&q=istats+remote+monitoring&ie=UTF-8&oe=UTF-8&redir_esc=&ei=NN37S9ftMI-trAfhz-GuAg

HOWTO Delete Old Directory in UNIX

Thursday, July 8th, 2010

There are 2 ways u can do this. For example if u want to delete directory older than 7 days :

First method :

find /path/dir -type d -mtime +7 -exec rm -rf {} \;

Second method :

find /path/dir -type d -mtime +7 | xargs rm -rf {} \;

You can always change the +7 value to any number of days preferred.
FYI, this command is only for directory deletion, if u want to delete files, u can change the “-type d” (d means directory) to “-type f” (f means files).

Example :

find /path/dir/unl.txt -type f -mtime +7 | xargs rm -f {} \;

P/S : There’s an alternative command which we can use, tmpwatch (more info : http://linux.about.com/library/cmd/blcmdl8_tmpwatch.htm)

The Power of Virtualization

Tuesday, July 6th, 2010

Running Ubuntu 10.04 & Fedora 12 on Mac OSX Snow Leopard via Parallels Desktop. Cool huh~!

mod_dosevasive for Apache

Monday, June 21st, 2010

mod_dosevasive is an evasive maneuvers module for Apache to provide evasive action in the event of an HTTP DoS or DDoS attack or brute force attack. It is also designed to be a detection and network management tool, and can be easily configured to talk to ipchains, firewalls, routers, and etcetera. mod_dosevasive presently reports abuses via email and syslog facilities.

Detection is performed by creating an internal dynamic hash table of IP Addresses and URIs, and denying any single IP address from any of the following:
  • Requesting the same page more than a few times per second
  • Making more than 50 concurrent requests on the same child per second
  • Making any requests while temporarily blacklisted (on a blocking list)
This method has worked well in both single-server script attacks as well as distributed attacks, but just like other evasive tools, is only as useful to the point of bandwidth and processor consumption (e.g. the amount of bandwidth and processor required to receive/process/respond to invalid requests), which is why it’s a good idea to integrate this with your firewalls and routers for maximum protection.

Speed Up Connection to ProFTPD server

Tuesday, June 15th, 2010

Open the config file (/usr/local/etc/proftpd.conf)

add these lines into the config

<Global>
IdentLookups                    off
</Global>
UseReverseDNS off

and restart your proFTPd services. Tadaa~!

Ubuntu 9.10 – Karmic Koala

Thursday, November 19th, 2009
Ubuntu 9.10 - Karmic Koala running on Snow Leopard Parallels Desktop

Ubuntu 9.10 - Karmic Koala running on Snow Leopard Parallels Desktop

Get Adobe Flash playerPlugin by wpburn.com wordpress themes

Switch to our mobile site