মূল অংশে যান

TAR বা TAR.GZ ফাইল খুলুন

Linux ও macOS থেকে আসা আর্কাইভ টার্মিনাল না খুলেই আনপ্যাক করুন। TAR, TAR.GZ, TGZ আর সাধারণ GZ সবই এখানে পড়া যায়, আর কিছুই সংরক্ষণ করা হয় না।

  • কখনো সংরক্ষণ করা হয় না
  • কোনো লাইন নেই, অপেক্ষা নেই
  • সাইনআপ নেই, ওয়াটারমার্ক নেই

যেভাবে কাজ করে

1

আপনার আর্কাইভ যোগ করুন

TAR, TAR.GZ, TGZ বা gzip করা একটি একক ফাইল। কমপ্রেস করা ফাইল আগে স্বয়ংক্রিয়ভাবে ডিকমপ্রেস করা হয়।

2

ভেতরে দেখুন

প্রতিটি ফাইল তার সাইজ আর ফোল্ডারসহ তালিকায় দেখানো হয়। লিংকগুলো অনুসরণ না করে লিংক হিসেবেই দেখানো হয়।

3

যা দরকার নিয়ে নিন

একটি ফাইল ডাউনলোড করুন, অথবা সবগুলো একসাথে এমন একটি ZIP হিসেবে নিন, যা সব জায়গায় খোলে।

দুটি ফরম্যাট একটির ওপর আরেকটি, আর ডাউনলোড যা ফেরাতে পারে না

একটি .tar.gz হলো একটির ওপর আরেকটি বসানো দুটি ফরম্যাট, আর TAR-এর প্রায় সব বৈশিষ্ট্য এখান থেকেই আসে। TAR নিজে কিছুই কমপ্রেস করে না: এটি ফাইলগুলোকে জোড়া দিয়ে একটি স্ট্রিম বানায়, প্রতিটির আগে থাকে ৫১২ বাইটের একটি হেডার, যাতে নাম, সাইজ, পারমিশন, মালিক আর টাইমস্ট্যাম্প থাকে। কমপ্রেশন হলো পুরো জিনিসটির চারপাশে মোড়ানো আলাদা একটি স্তর — gzip, bzip2 বা xz — এ কারণেই এক্সটেনশনগুলো একটার পর একটা জুড়ে যায়, আর এ কারণেই কমপ্রেশন রেশিও ZIP-এর চেয়ে ভালো: ZIP প্রতিটি ফাইল আলাদাভাবে কমপ্রেস করে, তাই ফাইলগুলোর মধ্যকার পুনরাবৃত্তি কাজে লাগাতে পারে না, অথচ কমপ্রেস করা TAR পুরো স্ট্রিমকে একসাথে চাপে।

এই একই স্তর-ব্যবস্থা TAR-এর একমাত্র আসল দুর্বলতাও ব্যাখ্যা করে। কমপ্রেশন সবকিছু মুড়ে রাখে বলে পড়ার মতো কোনো ক্যাটালগ নেই: .tar.gz-এর কনটেন্টের তালিকা দেখাতে শুরু থেকে ডিকমপ্রেস করতে হয়, আর শেষ ফাইলটি বের করতে পুরোটাই ডিকমপ্রেস করতে হয়। ZIP যত বড়ই হোক, সঙ্গে সঙ্গে তালিকা দেখায়। এটি ম্যাগনেটিক টেপের যুগের একটি ডিজাইনগত আপস, যখন ক্রমানুসারে পড়াই ছিল একমাত্র উপায় — নামটিও সেখান থেকে (tape archive)।

Unix পারমিশন আর সিম্বলিক লিংক তালিকায় দেখানো হয়, কিন্তু ফিরিয়ে আনা যায় না, আর মানুষ TAR যে কাজে ব্যবহার করে, তার জন্য এটিই সবচেয়ে গুরুত্বপূর্ণ সীমা। ডাউনলোড আসে সাধারণ পারমিশনসহ সাধারণ ফাইল হিসেবে, তাই এক্সিকিউটেবল স্ক্রিপ্ট বের হয় নন-এক্সিকিউটেবল হয়ে, আর সিম্বলিক লিংক বের হয় একটি ছোট ফাইল হিসেবে — যা সে আসলে — যার ভেতরে থাকে সে যে পাথ নির্দেশ করত। যে সোর্স রিলিজ বিল্ড করতে চান, তা খোলার ক্ষেত্রে এটি খুঁটিনাটি নয়, সত্যিকারের বাধা — মেটাডেটা এখানে পড়া ও দেখানো হয়, কিন্তু ডাউনলোড তা বহন করতে পারে না।

মালিকানা নিয়েও একটি কথা বলা দরকার। TAR প্রতিটি ফাইলের মালিক ইউজার ও গ্রুপ লিখে রাখে, ঠিক এ কারণেই সার্ভারে root হিসেবে TAR এক্সট্র্যাক্ট করা নিয়ে মানুষকে সতর্ক করা হয়। ডাউনলোডের ক্ষেত্রে এর কিছুই প্রযোজ্য নয় — এই একটি দিক থেকে এটি কমান্ড লাইনের চেয়ে নিরাপদ।

অন্য কিছু দরকার হলে

যা শুধু দেখার জন্য নয়, ব্যবহারের জন্য, তার জন্য tar নিজেই সমাধান, আর এটি প্রতিটি Mac ও Linux মেশিনে আগে থেকেই আছে: tar -xzf archive.tar.gz পারমিশন, সিম্বলিক লিংক, মালিকানা আর টাইমস্ট্যাম্প ফিরিয়ে আনে, কোনো মেমোরি-সীমা ছাড়াই সরাসরি ডিস্কে বের করে, আর যেকোনো সাইজের আর্কাইভ সামলায়। Windows-এ ২০১৮ সাল থেকে এটি বিল্ট-ইন আছে, তাই সাধারণ কমান্ড প্রম্পটেই tar -xf কাজ করে।

যেসব ক্ষেত্রে এটি সাহায্য করতে পারে না, সেগুলোই ঠিক সেই কাজ, যার জন্য TAR-এর অস্তিত্ব: কম্পাইল করার জন্য সোর্স টারবল খোলা, ব্যাকআপ রিস্টোর করা, বা একটি ডিরেক্টরি-কাঠামো অক্ষত রেখে এক মেশিন থেকে আরেক মেশিনে সরানো। তিনটিই নির্ভর করে ঠিক সেই মেটাডেটার ওপর, যা ডাউনলোডে বাদ পড়ে যায়। এই পেজ হলো আর্কাইভে কী আছে দেখার জন্য, বা এমন মেশিনে একটি ডকুমেন্ট বা ছবি বের করে নেওয়ার জন্য, যেখানে আপনি কিছু ইনস্টল করতে পারেন না।

সাধারণ প্রশ্নোত্তর

.tar আর .tar.gz-এর মধ্যে পার্থক্য কী?

.tar একেবারেই কমপ্রেস করা নয় — এটি শুধু ফাইলগুলোর নাম ও ফোল্ডার ঠিক রেখে জোড়া লাগিয়ে একটি বানায়। .tar.gz হলো সেই একই বান্ডেল, পুরোটার চারপাশে gzip মোড়ানো। আগে জোড়া লাগানো, পরে কমপ্রেস করা — এ কারণেই .tar.gz প্রায়ই একই ফাইলের ZIP-এর চেয়ে ছোট হয়: gzip সব ফাইলকে একটানা একটি স্ট্রিম হিসেবে দেখে এবং ফাইলগুলোর সীমানা পেরিয়েও পুনরাবৃত্তি ধরতে পারে, যেখানে ZIP প্রতিটি ফাইল আলাদাভাবে কমপ্রেস করে এবং প্রতিবার নতুন করে শুরু করে।

আমার আর্কাইভ কি কোথাও সংরক্ষণ করা হয়?

না। কিছুই সংরক্ষণ করা হয় না, কিছুই রেখে দেওয়া হয় না, আর পেজ একবার লোড হলে Wi-Fi বন্ধ রেখেও এটি কাজ করে। বেশিরভাগ ফাইলের চেয়ে আর্কাইভের ক্ষেত্রে এটি বেশি গুরুত্বপূর্ণ — আপনার ট্যাক্স রিটার্নের zip বা কোনো ফোল্ডারের ব্যাকআপ ঠিক সেই জিনিস, যা অচেনা কারও সার্ভারে তুলে দেওয়া উচিত নয়।

লম্বা ফাইলনাম কি কাজ করে?

হ্যাঁ। মূল tar ফরম্যাট ১০০ অক্ষরের বেশি লম্বা নাম রাখতে পারত না, আর তা ঠিক করতে পরস্পরের সঙ্গে বেমানান দুটি এক্সটেনশন তৈরি হয়েছিল — GNU-র আর POSIX pax। দুটোই এখানে পড়া যায়, তাই যেকোনো বাস্তব সিস্টেমের আর্কাইভ নামসহ অক্ষত অবস্থায় খোলে।

সিম্বলিক লিংকের কী হয়?

সেগুলো কোথায় নির্দেশ করে তা সহ তালিকায় দেখানো হয়, কিন্তু কখনো অনুসরণ করা হয় না। আর্কাইভের ভেতরের লিংক অনুসরণ করা হলো এক্সট্র্যাক্টরকে ভুলিয়ে এমন জায়গায় লেখানোর একটি ক্লাসিক কৌশল, যেখানে তার লেখার কথা নয় — তাই এটি করাই হয় না।

সাইজের কোনো সীমা আছে?

নির্দিষ্ট কোনো সাইজ-সীমা নয়, সীমা হলো ডিভাইসের ফাঁকা মেমোরি। ফরম্যাট যেখানে অনুমতি দেয়, সেখানে খুব বড় আর্কাইভ একবারে একটি করে ফাইল খোলা হয় — তাই বড় ZIP-ও সঙ্গে সঙ্গে তালিকা দেখায়, আর শুধু আপনার চাওয়া ফাইলটিই খোলা হয়।

অচেনা কারও কাছ থেকে পাওয়া TAR খোলা কি নিরাপদ?

আর্কাইভই একমাত্র ধরনের ফাইল, যার ভেতরের কনটেন্ট ক্ষতিকর হতে পারে, তাই আপনি কিছু দেখার আগেই দুটি পুরোনো আক্রমণ সামলানো হয়। আর্কাইভের ভেতরের কোনো ফাইলের নাম “../../something” রাখা যায়, যাতে সে যে ফোল্ডারে খোলা হচ্ছে তার বাইরে বেরিয়ে যেতে পারে — এমন নাম আটকে দেওয়া হয়, আর কোনগুলো বদলানো হলো তা আপনাকে জানানো হয়। আবার কয়েক কিলোবাইটের একটি আর্কাইভ খুলে টেরাবাইট হয়ে যেতে পারে, যা ব্রাউজারের ট্যাবসহ সব বসিয়ে দেবে; এটি মেপে দেখা হয় এবং চেষ্টা না করে প্রত্যাখ্যান করা হয়।

জেনে রাখুন: TAR, TAR.GZ, TAR.BZ2 ও TAR.XZ সবই খোলে — শেষের তিনটি libarchive-এর মাধ্যমে, যা শুধু তখনই আনা হয় যখন সত্যিই কোনো কমপ্রেস করা আর্কাইভ খোলা হয়, তাই সাধারণ TAR-এর পথ হালকা থাকে। Unix পারমিশন আর সিমলিংক তালিকায় দেখানো হয়, কিন্তু ফিরিয়ে আনা যায় না: ব্রাউজারের এ দুটির কোনোটিতেই প্রবেশাধিকার নেই।

এই টুলটি আপনার ওয়েবসাইটে যোগ করুন

যেকোনো ব্লগ, ক্লাসের পেজ বা হেল্প আর্টিকেলের জন্য ফ্রি। একটি স্নিপেট পেস্ট করলেই আপনার ভিজিটররা আপনার পেজেই এটি ব্যবহার করতে পারবেন।