SYS: Archive, compress, unpack, and uncompress files using tar, star, gzip, and bzip2.

Share this link

Note: This is an RHCSA 7 exam objective.

To compress a file, type:

# gzip file
# bzip2 file

To uncompress a file, type:

# gunzip file.gz
# bunzip2 file.bz2

To archive and compress a directory (with the SELinux contexts), type:

# tar --selinux -czvf directory.tgz directory

Note: Try to avoid using full path when specifying the directory path, use relative path, it will be easier when restoring.

Alternatively, you can group both operations (tar+compression) in one command (respectively for gzip and bzip2 content):

# tar cvzf directory.tgz directory
# tar cvjf directory.bz2 directory

To unpack and uncompress an archive file (respectively for gunzip and bunzip2 content) (with the SELinux contexts), type:

# tar --selinux xzvf directory.tgz
# tar --selinux xjvf directory.bz2

To list the archive content (respectively for gunzip and bunzip2 content), type:

# tar tzvf directory.tgz
# tar tjvf directory.bz2

To archive a directory with the star command (with the SELinux contexts), type:

# yum install -y star
# star -xattr -H=exustar -c -f=directory.star directory

To unpack a archive file, type:

# star -x -f=directory.star

Additional Resources

The linoxide website provides a tutorial about Relax and Recover, the new Open Source disaster recovery solution.

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading...
12 comments on “SYS: Archive, compress, unpack, and uncompress files using tar, star, gzip, and bzip2.
  1. algorisms says:

    If you are like me and you prefer to remember one command, you can also use the z and j directives with tar for creating compressed archives instead of using bzip2/gzip

    Ex:

    # tar cvfz archive.tar.gz archive/ #gzip archive creation
    # tar cvfj archive.tar.bz2 archive/ #bzip2 archive creation

    To some, it’s probably more complex than to use gzip/gunzip etc… But if I can get away with using one command to do multiple things, I always go that route.

  2. pawel says:

    Just a few minor mistakes I’ve noticed in your article.

    1. This will NOT work in the way it should as ‘f’ parameter takes an argument (see manual):

    -f, –file=ARCHIVE
    use archive file or device ARCHIVE

    # tar cvfz directory.tgz directory —> tar cvzf directory.tgz directory
    # tar cvfj directory.bz2 directory —> tar cvjf directory.bz2 directory

    2. You create an archive taking selinux context into account:

    tar –selinux -czvf directory.tgz directory

    But later you unpack it without “–selinux” parameter which will unpack the contents without selinux contexts

    # tar xzvf directory.tgz —> tar –selinux xzvf directory.tgz
    # tar xjvf directory.bz2 —> tar –selinux xjvf directory.bz2

    3. I guess it’s also worth mentioning (though it might not be relevant for RHCSA exam) that you can include:

    –acls – POSIX ACLs
    –xattrs- Extended attributes

    into your tar archive.

  3. Ahmad says:

    Hi,

    Can you please help to answer the below:

    1-Is FTP a part of RHCSA objectives?
    2-Is HTTP a part of RHCSA objectives?
    3-Is VNC access a part of RHCSA objectives?
    4-Is logrotate a part of RHCSA objectives?

    If there are not, what is the required info we should have about them for the RHCSA?

    Thanks

    • CertDepot says:

      FTP, HTTP, VNC and logrotate are not part of the RHCSA 7 objectives.
      However, you are supposed to know how to start/stop/restart or get the status from any of these services with the systemctl command.

  4. RedHatter says:

    “Note: Try to avoid using full path when specifying the directory path, use relative path, it will be easier when restoring”
    What do you mean by this? Can you please elaborate?

    • CertDepot says:

      When you execute the following command: # tar cvf /root/etc dir.tar
      You create a file called dir.tar containing the /root/etc directory.
      The problem occurs when you want to restore the directory: there is no way to avoid squashing the current content of the /root/etc directory. If there was a file with the same name, it is squashed by the new file and you can’t restore the /root/etc directory in another place.
      All this doesn’t occur if you don’t use a full path.
      If my explanation is not clear, experiment by yourself, you will see.

Leave a Reply

Upcoming Events (Local Time)

There are no events.

RHCSA7: Task of the day

Allowed time: 10 minutes.
Create two new user accounts "steve" and "oliver".
Create a group "team". Create a directory "shared".
All files put into the "shared" directory by "steve" or "oliver" should belong to the "team" group and be only visible by them.

RHCE7: Task of the day

Allowed time: 8 minutes.
Set up an iScsi target based on a fileio backstore of 100MB called /opt/shareddata with CHAP authentication (username=usr/password=pwd), xfs filesystem and standard firewall configuration.

Follow me on Twitter

Poll for favorite RHEL 7 book

What is your favorite RHEL 7 book to prepare RHCSA & RHCE exams?

View Results

Loading ... Loading ...

Poll for most difficult RHCSA 7 topic

What do you think is the most difficult RHCSA 7 topic?

View Results

Loading ... Loading ...

Poll for most difficult RHCE 7 topic

What do you think is the most difficult RHCE 7 topic?

View Results

Loading ... Loading ...