Difference Between /var/tmp and /tmp

Are you confused between /var/tmp and /tmp? Do you want to know what is the difference between these two? We are sure you need to know this difference. This is one of the most common questions asked in Linux interviews and the interviewer may ask you what is the difference between /var/tmp and /tmp.

There has been always discussion among the new Linux System Administrator that what is the difference between /var/tmp and /tmp and why they are used. So today in this tutorial we are going to solve your problem and will try to tell you about them.

difference between /var/tmp and /tmp

What is /var/tmp and /tmp?

As the name suggests and also many of you must already know /var/tmp and /tmp both are used for temporary storage within your Linux systems.

You can put your data on /tmp and /var/tmp temporarily and can continue your work. Both these filesystems are also used by programs for temporary storage.

As a system administrator, you may be using this space for storing your packages (RPMs) for patching, testing purposes, or anything you want to do temporarily.

Difference Between /var/tmp and /tmp?

The main difference between these two is in the retention period of the data. As per “pathname.com“, data stored in /var/tmp is more persistent than data in /tmp.

By default, data kept in /tmp live for 10 days and it’s 30 days for /var/tmp. This is the main difference between these two. Also, the temporary content of the program in /tmp is cleared after reboot.

On Red Hat Enterprise Linux 7, you can also use /tmp as a mount point for a temporary file storage system (tmpfs) and the files in /tmp are not stored on the hard drive except when memory is low, in which case swap space is used.

Thus, data of /tmp does not survive reboots.

Important files to be checked for /var/tmp and /tmp are as below.

RHEL 6: /etc/cron.daily/tmpwatch
RHEL 7: /usr/lib/tmpfiles.d/tmp.conf

On RHEL 7, if you will view “/usr/lib/tmpfiles.d/tmp.conf“, you will find below lines that clearly indicate the retention period of these two temporary filesystems.

# See tmpfiles.d(5) for details

# Clear tmp directories separately, to make them easier to override
d /tmp 1777 root root 10d
d /var/tmp 1777 root root 30d

d” means creating a directory if it does not exist yet with given permission and age.

The last option on the line starting with “d” is the age of the directory. The age field only applies to lines starting with d, D, and x.

You can also stop the automatic clean of /tmp or /var/tmp, just by removing “d” or setting it to “-“.

On REHL 7, do check “man 5 tmpfiles.d


If you still have any questions or doubts, do not hesitate to comment below or email us. If you like the article do like and share it. If you want more such articles, do not forget to subscribe to our email newsletter (FREE) and like us on social media websites.

Buy me a coffeeBuy me a coffee

Add Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.