How to clean /tmp directory automatically in Linux/cPanel using tmpwatch

The “tmpwatch ” command in linux is to removes files which haven’t been accessed for a period of time. The tmpwatch recursively removes files which haven’t been accessed for a given time. Normally, it’s used to clean up directories which are used for temporary holding space such as /tmp.

If you are noticing “/tmp” getting overloaded with files and not sure which files/folders to delete – you better use “tmpwatch” to cleanup or delete files/folders from the “/tmp” directory.

You’ll need SSH root access to install tmpwatch and add it in the cron. If your server is inaccessible due to “/tmp” getting full – you may restart the server and that should free up some space after reboot.

  1. Login to the server as root using SSH
  2. Run the following command:

    #yum install tmpwatch -y

  3. To delete temporary files (for example after every 12 hours) run the following command:

    #/usr/sbin/tmpwatch -am 12 /tmp

  4. The next step is to configure tmpwatch to run automatically through a cron. To do that type the following command:

    #crontab -e

  5. The above command will open the cron job list for the user root. Now go to the bottom and add the following line and save the file:

    0 4 * * * /usr/sbin/tmpwatch -am 12 /tmp

    If you are unable to add the above line, you may navigate to “/var/spool/cron” and open the cron file “root” with a text editor (such as, vi, nano). Add the line at the bottom and save the file:

    0 4 * * * /usr/sbin/tmpwatch -am 12 /tmp

Check the usage of “/tmp” and it should be clean by now.

Thank you.

How to Clear bash / SSH / Terminal command history in Linux

You might need to wipe off the command history that you’ve executed in your linux system for various reason. Normally when logged into the bash / SSH terminal – if the Up Arrow key is pressed – previously executed commands are shown. To completely delete the history type the following command:

# history -c
# history -w

 

How to find the IP addresses of a Linux system

The following command in a linux based system will show all the IPs assigned to that system:
# ip addr show

Or alternatively, if you’d like to know the IP address(es) of a certain port (for example eth0) type the following:
# ip addr show eth0

Sample output:
eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:30:67:b4:b7:4d brd ff:ff:ff:ff:ff:ff
inet 72.144.122.10/29 brd 72.144.122.15 scope global eth0
inet6 ef80::120:67ef:deb4:f74e/64 scope link
valid_lft forever preferred_lft forever

The IPv4 assigned to the system are: 72.144.122.10/29  (72.144.122.10 – 72.144.122.15 = 6 IPs)
The IPv6 assigned to the system are: ef80::120:67ef:deb4:f74e/64

How to disable IPtables Firewall in Linux (Red hat/CentOS/Fedora Core)

Disable / Turn off Linux Firewall (Red hat/CentOS/Fedora Core)

Type the following two commands to save the IPtables first and then to stop it (you must login as the root user):

# /etc/init.d/iptables save
# /etc/init.d/iptables stop

Turn off firewall on boot

# chkconfig iptables off

Enable / Turn on Linux Firewall (Red hat/CentOS/Fedora Core)

Type the following command to turn on iptables firewall:

# /etc/init.d/iptables start

 

Turn on firewall on boot:

# chkconfig iptables on

How to know your server inode limit and usage

Shared hosting accounts, Virtual Private server and Dedicated servers – all come with inode lmit. Any file on your Unix (or linux) system is considered as an inode. For example, an email stored in the system is considered as an inode. This way all the systems are restricted to a number of max inodes.

If you’d like to know the max allowed inodes and the usage – you need to ssh into your system (if you have SSH access) and run the following command:

df -i

This will display the amount of maximum, used and free inodes in different file systems for your unix account.

SSH commands to check Hard Drive usage information in Linux Server

Login to your Linux server using SSH Client (ie, PuTTy)

Once you are connected to your server:

Use to following command to check Hard Drive and partitions:

(without the “#”)

# df -h

It will show you output like this:

Filesystem Size Used Avail Use% Mounted on
/dev/simfs 489G 42G 447G 9% /
none 7.8G 4.0K 7.8G 1% /dev
none 7.8G 0 7.8G 0% /dev/shm

The Size is shown in GigaBytes.

If you’d like to see the usage volume of a particular partition (ie, “/home”), use the following command:

(without the “#”)

# du -sh /home/

It will show you the usage in Gigabytes (or in Megabytes if usage is below 1 GB)

If you’d like to view the directory size in a particular partition (ie, “/home”):

(without the “#”)

# du -sh /home/*

The above will show you the size of all the directories in that partition.