شاید تا به حال در هنگام کار با نسخه‌های ۶ تا ۸ سیستم عامل سنت‌ او اِس (CentOS) یا رد هت لینوکس (Red Hat Linux) ، با مشکل پیدا نشدن ابزار تار  (tar)مواجه شده باشید و بخواهید حتماً این ابزار را با نوار فرمان یام (Yum) نصب کنید. مطلب کنونی که در ادامه می‌آید، پاسخی برای شما خواهد بود. با ما همراه باشید.

GNU tar یک بسته نر‌م‌افزاری رایگان و متن‌باز است که برای آرشیو کردن فایل‌ها مورد استفاده قرار می‌گیرد. امّا شاید این ابزار در سیستم شما نصب نشده باشد و در ادامه می‌خواهیم نحوه نصب آن را در توزیع‌های لینوکس سنت‌ او اِس یا رد هت به شما نشان دهیم:

روند کار نصب tar در لینوکس رد هت اینترپرایز به صورت زیر خواهد بود:

۱) برنامه ترمینال را باز کنید.

۲) برنامه tar را جستجو کنید و فرمان sudo yum search tar را اجرا نمایید.

۳) با اجرای فرمان sudo yum install tar، برنامه tar را روی سیستم‌عامل نصب کنید.

۴) سپس با اجرای فرمان sudo yum update tar، برنامه tar را در این توزیع‌های سیستم‌عامل لینوکس بروزرسانی کنید.

در ادامه، جزئیات کامل تمام فرمان‌ها و یک مثال در این زمینه را بررسی خواهیم کرد.

چگونه از Yum برای نصب ابزار tar استفاده کنیم؟

برنامه ترمینال را باز کنید و یا با استفاده از یک کلاینت  ssh وارد شده و فرمان Yum زیر را تایپ کنید تا روند نصب ابزار tar بر روی CentOS/RHEL 6/7/8 آغاز شود.


sudo yum search tar

خروجی نمونه:


<pre>Last metadata expiration check: 0:31:31 ago on Mon Dec 16 16:39:38 2019.
=========================== Name Exactly Matched: tar ============================
tar.i686 : A GNU file archiving program
tar.x86_64 : A GNU file archiving program
========================== Summary & Name Matched: tar ===========================
libtar.i686 : Tar file manipulation API
libtar.x86_64 : Tar file manipulation API
python3-pylibravatar.noarch : Python module for Libravatar
target-restore.noarch : Systemd service for targetcli/rtslib
selinux-policy-targeted.noarch : SELinux targeted base policy
targetcli.noarch : An administration shell for storage targets
....
...
...
aespipe.x86_64 : AES-based encryption tool for tar/cpio and loop-aes imagemore
mingw32-pkg-config.x86_64 : A tool for determining compilation options for the win32 target
mingw64-pkg-config.x86_64 : A tool for determining compilation options for the win64 target
mingw32-filesystem.noarch : MinGW cross compiler base filesystem and environment for the win32 target
mingw64-filesystem.noarch : MinGW cross compiler base filesystem and environment for the win64 target
icedtea-web.noarch : Additional Java components for OpenJDK - Java browser plug-in and Web Start implementation</pre>

دریافت اطلاعات در مورد بسته tar

فرمان زیر را در yum تایپ کنید:

sudo yum list tar

خروجی نمونه:

Last metadata expiration check: 0:32:48 ago on Mon Dec 16 16:39:38 2019.
Available Packages
tar.i686                                                     2:1.30-4.el8                                                   BaseOS
tar.x86_64                                                   2:1.30-4.el8                                                   BaseOS>

فرمان زیر را اجرا کنید:

yum info tar.x86_64

خروجی نمونه:

Last metadata expiration check: 0:33:46 ago on Mon Dec 16 16:39:38 2019.
Available Packages
Name         : tar
Epoch        : 2
Version      : 1.30
Release      : 4.el8
Arch         : x86_64
Size         : 838 k
Source       : tar-1.30-4.el8.src.rpm
Repo         : BaseOS
Summary      : A GNU file archiving program
URL          : http://www.gnu.org/software/tar/
License      : GPLv3+
Description  : The GNU tar program saves many files together in one archive and can
             : restore individual files (or all of the files) from that archive. Tar
             : can also be used to add supplemental files to an archive and to update
             : or list files in the archive. Tar includes multivolume support,
             : automatic archive compression/decompression, the ability to perform
             : remote archives, and the ability to perform incremental and full
             : backups.
             : 
             : If you want to use tar for remote backups, you also need to install
             : the rmt package on the remote box.

نصب ابزار tar بر روی سیستم‌عامل‌های CentOS یا RHEL

سرانجام به مرحله نصب ابزار tar بر روی سیستم‌عامل CentOS یا RHEL می‌رسیم:

sudo yum update
sudo yum install tar

حالا که نصب ابزار tar در این توزیع‌های لینوکس به اتمام رسیده، بیایید نسخه این بسته را بررسی کنیم. برای این منظور باید عبارت tar –version را تایپ کنید.

خروجی نمونه:

tar (GNU tar) 1.30

Copyright (C) 2017 Free Software Foundation, Inc.

License GPLv3+: GNU GPL version 3 or later &amp;lt;https://gnu.org/licenses/gpl.html&amp;gt;.

This is free software: you are free to change and redistribute it.

There is NO WARRANTY, to the extent permitted by law.



Written by John Gilmore and Jay Fenlason.

 

چگونه پس از نصب ابزار tar، از فرمان آن در لینوکس استفاده کنیم:

حالا که نصب ابزار tar در توزیع ردهت لینوکس انجام شده، بهتر است چند نمونه از فرمان‌های tar را بررسی کنیم. فرمت دستوری به صورت زیر است:

tar [options] file

استخراج فایل‌های یک آرشیو tar.gz

فرض کنید که یک آرشیو wordpress.tar.gz داشته باشید و بخواهید فایل‌های آن را استخراج کنید. برای این منظور، فرمان زیر را اجرا کنید:

tar -xvzf wordpress.tar.gz

نمونه خروجی:

wordpress/

wordpress/xmlrpc.php

wordpress/wp-blog-header.php

wordpress/readme.html

wordpress/wp-signup.php

wordpress/index.php

wordpress/wp-cron.php

wordpress/wp-config-sample.php

wordpress/wp-login.php

wordpress/wp-settings.php

wordpress/license.txt

wordpress/wp-content/

wordpress/wp-content/themes/

wordpress/wp-content/themes/twentynineteen/

wordpress/wp-content/themes/twentynineteen/footer.php

wordpress/wp-content/themes/twentynineteen/template-parts/

wordpress/wp-content/themes/twentynineteen/template-parts/content/

....

...

....

wordpress/wp-admin/widgets.php

wordpress/wp-admin/setup-config.php

wordpress/wp-admin/install.php

wordpress/wp-admin/admin-header.php

wordpress/wp-admin/post-new.php

wordpress/wp-admin/themes.php

wordpress/wp-admin/options-reading.php

wordpress/wp-trackback.php

wordpress/wp-comments-post.php

در اینجا از منظور از x فایل‌های استخراجی، v خروجی‌های وربوس، z کاری است که بر روی فایل‌های فشرده انجام می‌شود و منظور از f فایل استخراجی با نام wordpress.tar.gz  است.

چگونه فایل‌ها را در یک دایرکتوری خاص استخراج کنیم؟

برای استخراج تمام فایل‌ها به یک دایرکتوری خاص مانند /tmp/ از گزینه –C در فرمان tar استفاده کنید؛ به عنوان مثال:

tar -xvzf wordpress.tar.gz -C /tmp/

استخراج تنها یک فایل از tarball

فرض کنید که تنها فایل README.txt را بخواهید؛ برای این منظور، فرمان زیر را اجرا کنید:

tar -xvzf wordpress.tar.gz README.txt

این در حالی است که شخص می‌تواند با استفاده از پسوندها، مثلاً چند فایل txt یا php را به صورت همزمان استخراج کند:

&lt;/pre&gt;
tar -xvzf wordpress.tar.gz *.php
tar -xvzf wordpress.tar.gz *.txt

نمونه خروجی:

&lt;/pre&gt;
wordpress/license.txt

wordpress/wp-content/themes/twentynineteen/readme.txt

wordpress/wp-content/themes/twentysixteen/readme.txt

wordpress/wp-content/themes/twentysixteen/genericons/COPYING.txt

wordpress/wp-content/themes/twentysixteen/genericons/LICENSE.txt

wordpress/wp-content/themes/twentytwenty/readme.txt

wordpress/wp-content/themes/twentyseventeen/readme.txt

wordpress/wp-content/plugins/akismet/LICENSE.txt

wordpress/wp-content/plugins/akismet/readme.txt

wordpress/wp-includes/images/crystal/license.txt

wordpress/wp-includes/ID3/license.commercial.txt

wordpress/wp-includes/ID3/license.txt

wordpress/wp-includes/ID3/readme.txt

wordpress/wp-includes/js/tinymce/license.txt

wordpress/wp-includes/js/swfupload/license.txt

wordpress/wp-includes/js/plupload/license.txt
&lt;pre&gt;

نحوه فهرست‌کردن و جستجوی محتوای آرشیو tar

از گزینه –ztvf به صورت زیر استفاده کنید:

tar -ztvf wordpress.tar.gz

خروجی نمونه:

drwxr-xr-x nobody/nogroup&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 2019-12-12 21:33 wordpress/

-rw-r--r-- nobody/nogroup 3150 2019-07-01 08:01 wordpress/xmlrpc.php

-rw-r--r-- nobody/nogroup&amp;nbsp; 369 2017-11-30 23:11 wordpress/wp-blog-header.php

-rw-r--r-- nobody/nogroup 7368 2019-09-02 21:44 wordpress/readme.html

-rw-r--r-- nobody/nogroup 31112 2019-09-03 00:41 wordpress/wp-signup.php

-rw-r--r-- nobody/nogroup&amp;nbsp;&amp;nbsp; 420 2017-11-30 23:11 wordpress/index.php

-rw-r--r-- nobody/nogroup&amp;nbsp; 3955 2019-10-10 22:52 wordpress/wp-cron.php

-rw-r--r-- nobody/nogroup&amp;nbsp; 2898 2019-01-08 04:30 wordpress/wp-config-sample.php

-rw-r--r-- nobody/nogroup 47597 2019-12-09 13:30 wordpress/wp-login.php

-rw-r--r-- nobody/nogroup 19120 2019-10-15 15:37 wordpress/wp-settings.php

-rw-r--r-- nobody/nogroup 19935 2019-01-01 20:37 wordpress/license.txt

drwxr-xr-x nobody/nogroup&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 2019-12-12 21:33 wordpress/wp-content/

drwxr-xr-x nobody/nogroup&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 2019-12-12 21:33 wordpress/wp-content/themes/

استفاده از فرمان grep برای جستجوی یک فایل:

tar -ztvf wordpress.tar.gz | grep INSTALL.txt

چگونه یک آرشیو tarball ایجاد کنیم؟

فرمت کار به صورت زیر خواهد بود:

tar -cvf backups.tar /var/www/html/

اضافه‌کردن فشردگی با استفاده از gzip


tar -zcvf backups.tar.gz /var/www/html/

برای اضافه‌کردن فشردگی bzip2 و ساخت یک tarball، فرمان زیر را اجرا نمایید:


tar -jcvf backups.tar.bz2 /var/www/html/

همچنین امکان استخراج چنین فایل‌هایی با فرمت زیر وجود خواهد داشت:


tar -jxvf backups.tar.bz2 ## gzip compression ##

tar -jxvf backups.tar.bz2 ## bzip2 compression ##

جمع‌بندی

در این مطلب، با نحوه نصب ابزار tar در نسخه‌های ۶ تا ۸ سیستم عامل سنت‌ او اِس (CentOS) یا رد هت لینوکس (Red Hat Linux) با استفاده از فرمان yum آشنا شدید. برای کسب اطلاعات بیشتر می‌توانید به صفحات راهنمای GNU/tar مراجعه کنید.