Automation / Manual – Compress Directory for Backup – Ubuntu

We'll explore a step-by-step guide to creating automated backups using the versatile tar and gzip utilities.


Creating regular backups is essential for safeguarding your data and ensuring business continuity. In this article, we’ll explore a step-by-step guide to creating automated backups using the versatile tar and gzip utilities. With just a few convenient options, you can automate the backup process and even include the current date in the backup file name for easy organization and retrieval.

Before diving into the automated backup process, let’s briefly understand the two crucial utilities we’ll be using: tar and gzip.

Tar: Tar, short for “tape archive,” is a command-line tool used for archiving files and directories. It bundles multiple files and directories into a single archive file, making it easier to manage and transfer data.

Gzip: Gzip, on the other hand, is a compression utility that reduces the size of files and directories, making them more efficient for storage and transmission.

In our backup process, we’ll combine these utilities to create compressed archive files of our data.

Manual Backup Creation

Let’s start by manually creating a backup using tar and gzip. The command below demonstrates how to do this:

Breaking down the options used in this command:

  • -z: This flag instructs tar to gzip the archive, reducing its size.
  • -c: Indicates that we want to create a new archive.
  • -v: Enables verbose mode, providing real-time feedback on the backup process.
  • -f: Specifies the file name of the resulting archive.

For instance, running this command will create a file named “backup.tar.gz” containing all the files and directories within “/var/www.”


Automation and Date Inclusion

To make the backup process more efficient and organized, we can automate it and include the current date in the file name. Here’s the command to achieve this:

Now, let’s break down the modified command:

  • backup-$(date ‘+%Y-%m-%d’).tar.gz: We’ve added a dynamic file name that includes the current date, making it easier to identify when the backup was created.

By using this automated approach, you can ensure that your backups are regularly updated and organized by date. For example, if you run this command on September 26, 2023, the resulting backup file will be named “backup-2023-09-26.tar.gz.”


Creating a Scheduled Backup

For true automation, consider scheduling regular backups using tools like cron. By creating a cron job that runs the backup command at specified intervals, you can ensure your data is consistently backed up without manual intervention.

Example of a cron job to run the backup daily at midnight:

This cron job will create a new backup file every day at midnight, with the date included in the file name.


In this article, we’ve explored how to create automated backups using the tar and gzip utilities. By understanding the options available and incorporating date inclusion, you can establish a robust backup system to protect your data. Whether you choose to run backups manually or schedule them using cron jobs, these methods ensure your data remains safe, organized, and easily retrievable in case of unexpected events.


Leave a Reply

Your email address will not be published. Required fields are marked *