بسم الله الرحمان الرحيم
موضوعنا اليوم يتمحور حول كيفية استعمال الأمرTar-(tape archive) لانشاء أرشيفات لملفات مع طرح امثلة بسيطة.
تتجلى اهمية هذا الامر في عمل نسخ احتياطية لملفات النظام و كذلك للملفات الشخصية، وذلك لدواعي عدة منها الحفاظ على الملفات بطريقة آمنة أو نقلها من جهاز لآخر.
بالنسبة لكيفية الاستعمال و التثبيت فالبرنامج ياتي افتراضيا في جل التوزيعات ان لم نقل كلها، وفي الفقرة التالية سنبين كيفية استخدام البرنامج.
فك ضغط أرشيف file.tar.gz
أشهر أمر لفك الضغط :الخصائص المستعملة في الامر تعني :$ tar -xvzf tarfile.tar.gz
x - استخراج الملفات
v - طباعة أسماء الملفات كما يتم استخراج واحدا تلو الآخر وهي خاصية اختيارية
z - تصفية أرشيف من خلال 'gzip'
f - استخدام ارشيف ملف أو جهاز
فك الضغط أرشيف file.tar.bz2
j - تصفية أرشيف من خلال BZIP2 المستخدم لضغط الملفات .bz2$ tar -xvjf archivefile.tar.bz2
فك ضغط أرشيف في مسار معين
$ tar -xvzf abc.tar.gz -C /home/extra
استخراج فقط ملف معين من أرشيف مضغوط
استخراج ملفين أو$ tar -xz -f abc.tar.gz "./usr/soood.txt"
$ tar -xv -f abc.tar.gz "./usr/soood.txt" "/home/sin/cod.html"
استخراج عدد من الملفات باستخدام خاصية --wildcards
في الامر السابق قمنا باستخراج فقط الملفات ذات الامتداد .txt$ tar -xv -f abd.tar.gz --wildcards "*.txt"
البحث في الأرشيف بدون فك الضغط
$ tar -tz -f abc.tar.gz
اذا كان الأرشيف ذو امتداد tar.bz2/bzip يجب اضافة خاصية -j./new/
./new/cde.txt
./new/subdir/
./new/subdir/in.txt
./new/abc.txt ...
إنشاء ملف tar عادي
$ tar -cvf abc.tar ./files
انشاء أرشيف tar مضغوط فقط قم باضافة خاصية z أو j حسب نوع الضغط الذي تريده
$ tar -cvzf abc.tar.gz ./files
انشاء أرشيف tar مع تأكيد اختيار الملفات التي ستتضمنه
$ tar -czw -f abc.tar.gz ./files/*
add ‘./new/abc.txt’?y
add ‘./new/cde.txt’?y
add ‘./new/newfile.txt’?n
add ‘./new/subdir’?y
add ‘./new/subdir/in.txt’?n
اضافة ملفات لأرشيف tar موجود
$ tar -rv -f abc.tar new.text
لا يمكن اضافة ملف لملف tar مضغوط، فقط الأرشيف العادي .tar
اضافة ملفات لملف مضغوط (tar.gz/tar.bz2)، يمكن ذلك فقط باستخدام الأمر gunzip لإلغاء ضغط الأرشيف، بعدها إضافة ملف لأرشفة والضغط عليه مرة أخرى.
$ gunzip archive.tar.gz
$ tar -rf archive.tar ./path/to/file
$ gzip archive.tar
لعمل نسخة احتياطية لملف ما
سيقوم الامر السالف بعمل نسخة احتياطية للمجلد /files بجميع ملفاته و ستتم تسميته حسب تاريخ إنشائه 'archive-20170211.tar.gz' .$ tar -cvz -f archive-$(date +%Ym%d).tar.gz ./files
أتمنى ان اكون قد أفدتكم قدر المستطاع، شكرا على القراءة، بالتوفيق .
الإبتساماتإخفاء