في المقالة التالية سنلقي نظرة على أداة ضغط xz. أخبرنا أحد الزملاء عنها منذ بعض الوقت في مقال حول كيفية ضغط الملفات وفك ضغطها في أوبونتو. يشبه استخدام هذه الأداة gzip و bzip2.
قابل للاستخدام ل ضغط أو فك ضغط الملفات وفقًا لوضع التشغيل المحدد. طريقة الضغط التي تستخدمها هذه الملفات هي على أساس خوارزمية LZMA/ LZMA2. بدأ تطوير هذه الخوارزمية في أواخر التسعينيات ، وهي تستخدم نظام قاموس ضغط مشابه لخوارزمية LZ90.
تنتمي خوارزمية الضغط LZ77 إلى عائلة ضواغط ضياع، والمعروفة أيضًا باسم ضواغط النص. وهي معروفة بهذا الاسم لأنها لا تحذف المعلومات من الملف عند ضغطها. على عكس الضواغط التي تستخدم خوارزميات من النوع الضياع. هذه تحذف بعض المعلومات التي تسعى إلى تقليل حجم الملف الأصلي بشكل كبير. مثال على ذلك هو jpeg و MP3 و MPG وما إلى ذلك.
بالمقارنة مع ملفات "gz" ، فإن ملف "xz" يحتوي على امتداد نسبة ضغط أفضل وأقصر وقت فك الضغط. ومع ذلك ، عندما نستخدم إعدادات الضغط الافتراضية ، فسيتطلب الأمر مزيدًا من الذاكرة لفك الضغط. يستخدم Gzip ذاكرة أقل إلى حد ما.
تُستخدم ملفات .xz لضغط البيانات وفك ضغطها ، بحيث يشغل نقل الملفات عبر الإنترنت أو تخزين المعلومات على محركات الأقراص الثابتة أقل. في الختام ، إذا أردنا ضغط ملف يبحث عن مساحة صغيرة قدر الإمكان، لدينا خيار ضغطه باستخدام xz.
كيفية استخدام ضغط XZ
comprimir
El أبسط مثال ضغط ملف مع xz كما يلي. في المحطة (Ctrl + Alt + T) نكتب:
xz android-x86_64-7.1-r2.iso
يمكنك أيضًا استخدام ملف -z الخيار لأداء الضغط:
xz -z android-x86_64-7.1-r2.iso
ستضغط هذه الأوامر على الملف ، لكنها ستحذف الملف المصدر. نعم نحن لا نسعى لحذف ملفات المصدر، سوف نستخدم ملف -ك الخيار كالآتي:
xz -k android-x86_64-7.1-r2.iso
أزال الضغط
لفك ضغط ملف ، سنكون قادرين على استخدام امتداد الملف الخيار د:
xz -d android-x86_64-7.1-r2.iso
يمكننا أيضًا تحقيق نفس الشيء مع الخيار unxz:
unxz android-x86_64-7.1-r2.iso
ضغط القوة
إذا فشلت إحدى العمليات ، على سبيل المثال إذا كان هناك ملف مضغوط يحمل نفس الاسم ، فسنستخدم الامتداد -f الخيار لفرض العملية:
xz -kf android-x86_64-7.1-r2.iso
ضبط مستويات الضغط
تدعم هذه الأداة مستويات مختلفة من الضغط معدة مسبقًا (من 0 إلى 9. بقيمة افتراضية 6). سنكون أيضا قادرين على استخدام الأسماء المستعارة بسرعة (سيكون سريعًا ، ولكن بضغط أقل) لتعيينها كقيمة 0 و- من الأفضل تعيينها كقيمة 9 (ضغط بطيء ولكن أعلى). فيما يلي بعض الأمثلة حول كيفية تعيين هذه المستويات:
xz -k -8 android-x86_64-7.1-r2.iso xz -k --best android-x86_64-7.1-r2.iso
تقييد الذاكرة
في حالة وجود كمية صغيرة من ذاكرة النظام والرغبة في ضغط ملف ضخم ، سيكون لدينا إمكانية استخدام امتداد خيار الذاكرة = حد (يمكن أن تكون قيمة الحد بالميغا بايت أو كنسبة مئوية من ذاكرة الوصول العشوائي) لتعيين حد استخدام الذاكرة للضغط:
xz -k --best --memlimit-compress=10% android-x86_64-7.1-r2.iso
تمكين الوضع الصامت
إذا كنا مهتمين بتنفيذ الضغط في الوضع الصامت ، فسنضطر فقط إلى إضافة الامتداد -Q الخيار. يمكننا أيضًا تمكين الوضع المطول مع -vحيث يظهر في الآتي:
xz -k -q android-x86_64-7.1-r2.iso xz -k -qv android-x86_64-7.1-r2.iso
قم بإنشاء ملف tar.xz
فيما يلي مثال على الاستخدام للحصول على ملف ملف بالملحق tar.xz.
tar -cf - *.txt | xz -7 > txtfiles.tar.xz
لتحقيق هذه الغاية ، يمكننا أيضًا استخدام:
tar -cJf txtfiles.tar.xz *.txt
تحقق من سلامة الملفات المضغوطة
يمكننا اختبار سلامة الملفات المضغوطة باستخدام امتداد -t الخيار. باستخدام -l يمكننا أن نرى المعلومات حول ملف مضغوط.
xz -t txtfiles.tar.xz xz -l txtfiles.tar.xz
هذه أداة جيدة لضغط الملفات. في هذه المقالة ، نلقي نظرة فقط على بعض الأمثلة للضغط وفك الضغط. لمزيد من المعلومات حول كل ما يمكننا القيام به ، يمكنك الانتقال إلى الصفحة رجل xz.