آرشیو کردن در لینوکس

آرشیو کردن یعنی چی و به چه دردی می خوره؟خیلی وقت ها پیش میاد که شما لازم دارید که تعداد زیادی از فایل ها رو یک جایی ذخیره کنید (برای نگهداری در طولانی مدت) یا حتی ممکنه لازم باشه که فایل هاتون رو از جایی به جای دیگری منتقل کنید. در این جود مواقع، حرفه ای ترین راه اینه که شما یک آرشیو از این فایل ها ایجاد کنید و بعد کار باهاش رو شروع کنید. دلیلش اینه که تو این حالت مدیریت فایل ها بسیار ساده تر می شه و فایلی جا نمی مونه. همچنین دسته بندی و نگهداریشون هم خیلی مرتب تر می شه. در نظر داشته باشید که همین دایرکتوری ها و فولدر هایی که ما روی سیستم هامون داریم در واقع یک آرشیو هستش که سیستم ما ایجاد مرده برای مدیریت بهتر اطلاعات.توجه داشته باشید که فشرده سازی با آرشیو کردن فرق می کنه. شما می تونید تعدادی فایل رو آرشیو کنید ولی تغییری در سایز اونها ایحجاد نکنید. اما در زمان فشرده سازی، با بهینه کردن ساختار اطلاعات، حجم اونها رو پایین میاریم.الگوریتم های فشرده سازی مختلف:توضیح الگوریتم Lossy: در این نوع از فشرده سازی، برای پایین آوردن حجم فایل بخشی از اطلاعات حذف می شه. از این نوع الگوریتم ها بیشتر در فایل های صوتی و تصویری استفاده می شه. Mp3. یکی از بهترین نمونه ها برای ای نوع از الگوریتم هاست.توضیح الگوریتم Lossless: این نوع از الگوریتم ها هیچ بخشی از اطلاعات رو حذف نمی کنن و فقط با یک سری تکنیک هایی که در هر کدوم متفاوته، اطلاعات رو بهینه می کنن. PNG یک مثال خوب برای این گونه از الگوریتم هاست.ابزار های مختلف برای فشرده سازی:توضیح zip: اگه لازمه فایلی که ایجاد می کنید تو سیستم های ویندوزی استفاده بشه، این ابزار بهترین گزینه برای شماستتوضیح gzip: اگه فایل قرار روی سیستم های یونیکسی/لینوکسی استفاده بشه، این ابزار گزینه خوبی هستش. تقریبا تو همه ی توزیع های لینوکس می شه از این ابزار استفاده کرد اما یکم کار باهاش زمان بره (نسبت به بقه ابزار ها)توضیح bzip2: مثل gzip هستش اما از یک الگوریتم دیگه استفاده می کنه که ممکنه حجم فایل نهایی کمتر بشه اما یکم زمان بیشتری می بره.توضیح xz: می شه گفت بهترین فشرده سازی رو انجام می ده اما زمان بیشتری می بره. همچنین این ابزار نسبتا جدیدی محسوب می شه و ممکنه روی تمام نسخه های لینوکس موجود نباشه.توضیح tar: این ابزار بیشتر برای آرشیو کردن استفاده می شه و نه برای فشرده سازی لازمه بگیم که می شه فشرده سازی هم انجام داد.نحوه کار با ابزار های فشرده سازی:سویچ های زیادی برای هر کدام از ابزارهای زیر وجود دارد که شما می تونید با وارد کردن سویچ -h تمامی آنها را ببینید.برای شروع کار با ابزار zip به شکل زیر،‌اول لازمه که روی سیستم نصبش کنید.‍‍‍‍‍‍‍‍‍$ apt-get install zip unzipدر شکل زیر می تونید ببینید که ما برای تست از دو عکس استفاده کردیم که به نسبت حجم بالایی دارن.(در آخر این مقاله می تونید لینک دانلود این عکس ها و خود عکس ها رو ببینید).$ ls -lhشما می تونید به شکل زیر یک فایل زیپ با نام دلخواهتون ایجاد کنید.$ zip Paris.zip Paris-1652.jpgبه شکل زیر یم تونید بدون اینکه فایل رو از حالت فشرده خارج کنید، لیست محتواش رو ببینید.$ unzip -l paris.zipشما می تونید با استفاده از دستور زیر، فایلتون رو از حالت فشرده خارج کنید.$ unzip paris.zipابزار gzip به طور معمول، روی تمامی توزیع های لینوکس نصب هست. اگر هم نبود می تونید به راحتی نصبش کنید.برای فشرده سازی یک فایل با استفاده از این ابزار، می تونید به شکل زیر عمل کنید.وارد کردین سویچ -k الزامی نیست و تنها به این معنا می باشد که فایل اصلی رو بعد از فشرده سازی حذف نکنه و رو یسیستم نگه داره.$ gzip -k Persia-1701.jpgدر شکل زیر می تونید نسخه فشرده شده از این عکس رو مشاهده کنید که پسوند .gz داره.$ ls -lhبرای اینکه نهایت زور رو در فشرده سازی به کار ببریم می تونید از ۱ تا ۹ یک عددی رو به این ابزار بدین. (هر چی عدد بزرگتری وارد کند،‌ ابزار زور بیشتری برای فشرده سازی می زند). همچنین شما می توندی به شکل زیر ۲ فایل رو به صورت هم زمان فشرده کنید.$ gzip -9 Persia-1701.jpg paris-1652.jpgدر تصویر زیر می تونید ببینید که هر دو فایل به صورت مجزا فشرده شدن (به حجمشون توجه کنید).$ ls -lhبه شکل زیر می تونید هر دو فایل رو به صورت یک جا فشرده کنید و در یک فایل قرار بدین.$ gzip -c pparis-1652.jpg Persia-1701.jpg > photos.gzدر اینجا ما دو فایل اول رو حذف می کنیم و شما می تونید هر دو فایل رو در قالب یک فایل روی سیستمتون داشته باشید.$ ls -lh\برای اینکه یک فایل رو از حالت فشرده خارج کنید می تونید به شکل زیر عمل کنید.$ ls -lh$ gzip -d Persia-1701.jpg.gz$ ls -lhبرای استفاده از ابزار bzip2، می تونید به شکل زیر روی سیستمتون نصبش کنید.(روی بعضی از توزیع ها جدید، پیش فرض نصب هستش)$ apt-get install bzip2برای فشرده سازی فایل ها با حداکثر توان می تونید از دستور زیر استفاده کنید (توجه داشته باشید که سویچ -k) اختیاری هستش و برای نگهداری فایل های اولیه استفاده می شه).$bzip2 -k9 pparis-1652.jpg Persia-1701.jpg $ ls -lhبرای اینکه فایل ها رو از حالت فشرده خارج کنید می تونید از دستور زیر استفاده کنید$ bzip2 -d Persia-1701.jpg.bz2 pparis-1652.jpg.bz2 $ ls -lhبرای استفاده از ابزار xz می تونید به صورت زیر، روی سیستمتون نصبش کنید.$ apt-get install xz-utils$ rm -rf pparis-1652.jpg Persia-1701.jpg $ ls -lhm$ xz -z pparis-1652.jpg Persia-1701.jpgدر شکل زیر می تونید ببینید که فایل ها با پسوند xz روی سیستم فشرده شدن.$ ls -lhبرای اینکه فایل ها رو از حالت فشرده خارج کنید، می تونید از دستور زیر استفاده کنید.$ xz -d Persia-1701.jpg.xz pparis-1652.jpg.xz $ ls -lhابزار tar بر روی تمامی توزیع های لینوکس به صورت پیش فرض نصب هستش.شما می تونید با استفاده از این ابزار هر فایل و یا حتی دایرکتوری که دوست دارید رو آرشیو کنید. در شکل زیر می بینید که ما یک دایرکتوری Test داریم که داخلش عکس هامون هستش.$ lsبا استفاده از دستور زیر می تونید یک فایل آرشیو با اسم دلخاهتون درست کنید.$ tar -cvf photos.tar /home/debian/Testدر شکل زیر می بینید که فایل آرشیو در کنار دایرکتوری اولیه ایجاد شده.$ lsبرای انجام تست، ما در اینجا دایرکتوری اولیه رو پاک می کنیم.$ rm -rf Test/ $ lsبه شکل زیر می تونید فایل آرشیو رو روی سیستمتون باز کنید و ازش استفاده کنید.$ tar -xvf photos.tarتوجه داشته باشید که بعد از باز کردن این فایل، دایرکتوری اولیه رو با آدرس کاملش در اختیار ما قرار داده.$ cd home/debian/Test $ pwنقشه ایران سال ۱۷۰۱نقشه پاریس سال ۱۶۵۲