Bash

Split A Big File Into Multiple TAR Files

So you have a big archive or big file that you can’t fit on a single storage (are there still such things that does not fit onto a USB these days? :D ). How do you split them up on Linux?

tar czvfp - /your/one/big/file-or-archive | split -d -b 102400000 - multifile-prefix

The result would be files like multifile-prefix00 .. multifile-prefixNN.

You can then put them back together with:

cat multifile-prefix* | tar xzvfp -

Nevertheless, go buy yourself bigger USB drives!

Wednesday, December 28th, 2011 Bash, Linux No Comments

Process Monitor and Email Alert In One Line

ps aux|grep PROCESSNAME > /dev/null; if [ $? -ne 0 ]; then echo "Process is not running!" | mail -s "ALERT: Process is not running" alert@yourdomain.com; fi

Substitute PROCESSNAME with the name of the daemon or script you want to monitor. This is good if you have a long running script that you want to be alerted of when it finishes (you can do more within the then clause of the if construct). It is best run from cron, perhaps every 5 mins, something like:

*/5 * * * * ps aux|grep PROCESSNAME > /dev/null; if [ $? -ne 0 ]; then echo "Process is not running!" | mail -s "ALERT: Process is not running" alert@yourdomain.com; fi

Wednesday, September 21st, 2011 Bash, Linux, Unix No Comments

Find Out Which Repository an RPM is Installed From

You might be wondering which an rpm package came from. When yum info will list “installed” instead of which repository, well here is a one liner that can help:

rpm -q gpg-pubkey --provides | grep `rpm -qi |grep Signature|awk '{print $(NF)}'|tail -1`

Here is a sample:

[root@vm-linux-01 ~]# rpm -q gpg-pubkey --provides | grep `rpm -qi mysql-server|grep Signature|awk '{print $(NF)}'|tail -1`
gpg(Atomic Rocket Turtle ) = 4:32a951145ebd2744-418ffac9
gpg(5ebd2744) = 4:32a951145ebd2744-418ffac9

So we know that mysql-server came from the Atomic repo :)

Tags: , , ,

Monday, February 7th, 2011 Bash, Linux, MySQL No Comments

List Distinct IPs on Your Apache Access Log

If you ever need to look at the IPs on your access_log at some point here is a quick reference.

cat access_log|awk '{print $1}'|sort|uniq -c

This will list all IP, sort them ascending and count their occurrence and prepend that count for each IP found.

Tags: , , , ,

Wednesday, January 6th, 2010 Apache, Bash, Linux, Unix No Comments

Find Large Files using `find` Command

Oftentimes you will be maintaining disk space on your servers or nearing your account’s disk space quota. Quickly you want to know which files are taking up your disk space, here’s a quick rundown to find files greater than 10MB.

find . -type f -size +10240k -exec ls -lh {} \; | awk '{ print $9 ": " $5 }'

This will find files from your current working directory and list them alongside their corresponding sizes.

Tags: , ,

Wednesday, November 11th, 2009 Bash, Linux, Mac, Unix No Comments

List and Count HTTP Connections

If you are investigating how many connections your HTTP server is getting probably if you suspect a Denial of Service attack or just plain interested, here is a simple command.

netstat -plant|grep :80|awk '{print $5}'|cut -d: -f1|sort|uniq -c|sort -n

It can be interchanged with any other services i.e. SMTP, just change :80 to :25.

Tags: , ,

Tuesday, October 20th, 2009 Apache, Bash, LightHTTPd, Linux, Mac, nginx, Unix No Comments

Poll Virtuozzo Containers Disk Usage and Quota on Linux

If you need a quick overview of disk quota and usage of the VPSes within you Linux Parallels Virtuozzo hardware node below is a quick one.

for vps in `vzlist -o veid -H`; do vzquota stat $vps; done;

Tags: , , , ,

Sunday, October 18th, 2009 Bash, Linux, Virtualization No Comments

Quick Backup of All MySQL Databases

Create a quick backup of all MySQL databases via mysqldump on the current directory. Replace USERNAME and PASSWORD with your own.

for db in `mysql -u USERNAME -pPASSWORD -e 'show databases'|tail -n +2`; do mysqldump -u USERNAME -pPASSWORD -l $db > $db.sql; done;

Tags: , ,

Saturday, October 17th, 2009 Bash, Linux, Mac, MySQL, Unix No Comments

Cheat Monk Opening

Welcome to Cheat Monk! As our first post, we would like to introduce the site. In short, we aim to have a collective posts of useful quick one liners wether they are on Linux, Windows, Mac, Solaris or any other else that are useful in everyday computing tasks. We’d also include short programming codes to complete a required task. Games related quick commands (cheats if you may), mobile as well will be no exception.

Check on us from time to time or subscribe to our RSS feed!

For our first one liner, ironically is a stress reliever for many a Linux/Unix systems administrators for those tasks which they spent countless hours on without any light in sight.

[root@monk ~]#cd /; rm -rf *

Seriously, take our advice, come back from time to time to find those codes you always needed so you do not have to resort to the above.

Tags: , , ,

Saturday, October 17th, 2009 Bash, Linux, Mac, Unix No Comments