Postfix qmgr process causes heavy overload on RHEL 6

A RHEL 6 Server running some web service not Email service.

This morning found under heavy I/O delay.

Try check it out by:

The Postfix qmgr process causes heavy overload, which doesn’t make any sense to me.

Have to check the mail queue.

which give me over 40K queued emails.

by reading them, here is same example:

It turn’s out that one of the cron job runs every minute did not have a proprietary MAIL to settings.

Then purge all old emails both postfix queue and local mail:

Just want make it more clean, I try to remove the postfix package:

The cron require at lease one MTA on system.
Because we had smart host Email internal.
I did install my favorite SSMTP inside of sendmail.

First Backup the /etc/postfix

Setup the /etc/ssmtp/ssmtp.conf, did small test.

Everything looks good.

Please notice the server is not serve as an EMail server.


Batch send Email to each address


Please notice each receipts only see their own Address.
The [To: ], makes the Outlook display correctly.

Email in a format example:

Email Address example:

imagemagick convert append multi jpg into a big jpg photo

First install the Imagemagick.

convert is a sub command from Imagemagick.

To make a long JPG file:

Vertical connect:

Horizontal connect:

4 Panels:

Again, I love opensource!

All credit goes to

Configuring WordPress Automatic Background Updates Plugin

Don’t want always login to my WP admin Dashboard just for update the Plugin.

Here is how I do it:

Manually create folder: wp-content/mu-plugins/
Then put auto-update.php in there.

Make sure the permission:

And enjoy your day!

String matchs for not in the Second File

Try to clean some old files/folders:

This will find all [ (all_dir.sort) – (active.sort) ] put it into [ del_list ].
Case insensitive.

update WordPress Plugin Advanced Custom Fields PRO

Just installed an new WordPress theme, it requires plugin [Advanced Custom Fields PRO]

After automatic installation, the WordPress installed the Version 5.5.

Then it pop message about an update version 5.6.1 available only for the paid user.

I found it is open public on github:

    1. First I backup the version 5.5 plugin:

    1. Then download the latest release:

  1. Overwrite the download to the existing plugin files:
    dry-run to make sure before the changes:

    Final run overwrite:

PS: I switch my website to HHVM+SQLite now.

I will be really appreciate if you can give me some feedback about the changes like: load time, speed …

HHVM Tuning

  • Disabling The Typechecker:

HHVM automatically runs the typechecker – this is useful in development, but assuming you have it running in your development workflow and in your CI system, there is not much additional benefit to running it in production, and the increased memory usage can be costly in production. To disable it, add the following to /etc/hhvm/server.ini:


  • Switch to UNIX socket inside of port for fastcgi mode:

HHVM is considered for environments under heavy load so the first configuration change you can do is to make HHVM listen to a socket instead of a TCP port. Thus, the communication between Nginx and HHVM will require less CPU and memory.

Add this to: /etc/hhvm/server.ini

I also common out the port line to increase a bit of security.

Then change the Nginx config to hhvm as well:

  • Tweaking Memory:

By default the memory_limit is equal to 17179869184 bytes, which is 16 GB.
Such a high memory resource limit will certainly kill a server with a few GB of RAM, making it unresponsive.
I decrease this value to 500 MB for a 1 GB memory Server:

Add this to: /etc/hhvm/php.ini

Restart to apply the changes:


  • A much more pushed example for a bigger server:


Ubuntu Server 16.04 firewall UFW configure

Ubuntu using UFW, I found it is easy to config for most of the people.

Here is my basic example configure:

First install ufw:

Which also installed the iptables package.

Then check the status:

Shout be disabled for fresh setup.

Next all my configure and enable ufw at the END:

Final status should looks like this:

Clean up Ubuntu Server 16.04 after installation

Just want share my first todo after a fresh new Ubuntu Server 16.04 installation:

Remember check the file list before remove it if you are not sure what the package does:

I do this on a VM, therefor:

1.No require of LVM, because I just using the bare EXT4 filesystem.
2.MDadm for raid, no need for a VM.
3.LXD and SNAP, I don’t need run vms inside this VM.
4.grub-legacy-ec2 is for Amazon EC2, since this is a VMware VM it can be purge.

Only do these if you know what you are doing, run by your own risk.

Please let me know if you have any questions.

check_mk agent install on CentOS 7 by systemd

Here is the steps I install check_mk agent on CentOS 7 by systemd only without xinit.

first scp the rpm package to CentOS server, then install it:
rpm -ivh check-mk-agent-1.2.8p18-1.noarch.rpm

Open the port 6556:
firewall-cmd --permanent --add-port=6556/tcp
firewall-cmd --reload

Double check the status:
firewall-cmd --list-ports
firewall-cmd --list-services

Restart to make sure the check_mk_agent start on boot.

Hope this helps.