Відмінності між версіями «Архіватори»
Jack iO (обговорення • внесок) (Створена сторінка: Під архівацією розуміють стиснення даних. Стиснення даних — це процедура перекодування...) |
Jack iO (обговорення • внесок) |
||
(не показані 3 проміжні версії цього учасника) | |||
Рядок 1: | Рядок 1: | ||
− | Під архівацією розуміють стиснення даних. | + | '''Під архівацією розуміють стиснення даних'''. |
− | Стиснення даних — це процедура перекодування даних, яка проводиться з метою зменшення їх об'єму, розміру, обсягу. Стиснення буває без втрат (коли можливе відновлення вихідних даних без спотворень) або з втратами (відновлення можливе з незначними спотвореннями). Стиснення без втрат використовується при обробці та збереженні комп'ютерних програм і даних. Стиснення з втратами зазвичай застосовується для зменшення об'єму звукової, фото, та відеоінформації. І, як показує практика, стиснення з втратами для такого роду інформації є набагато дієвим. Стиснення базується на видалені надлишку інформації, яка міститься у вихідних даних. Прикладом надлишку є повторення в тексті фрагментів (наприклад, слів природної або машинної мови). Подібний надлишок зазвичай усувається заміною повторюваних послідовностей більш коротким значенням (кодом). Інший вид надлишку пов'язаний з тим, що деякі значення в даних зустрічаються частіше інших. А від так можна замінити дані, що часто зустрічаються більш короткими кодами, а ті, що рідше зустрічаються - більш довгими (ймовірнісне стиснення). Стиснення даних, які не мають властивості надлишку (наприклад випадковий сигнал чи шум), неможливе, зазвичай неможливо стиснути і зашифровану інформацію. | + | '''Стиснення даних''' — це процедура перекодування даних, яка проводиться з метою зменшення їх об'єму, розміру, обсягу. Стиснення буває без втрат (коли можливе відновлення вихідних даних без спотворень) або з втратами (відновлення можливе з незначними спотвореннями). Стиснення без втрат використовується при обробці та збереженні комп'ютерних програм і даних. Стиснення з втратами зазвичай застосовується для зменшення об'єму звукової, фото, та відеоінформації. І, як показує практика, стиснення з втратами для такого роду інформації є набагато дієвим. Стиснення базується на видалені надлишку інформації, яка міститься у вихідних даних. Прикладом надлишку є повторення в тексті фрагментів (наприклад, слів природної або машинної мови). Подібний надлишок зазвичай усувається заміною повторюваних послідовностей більш коротким значенням (кодом). Інший вид надлишку пов'язаний з тим, що деякі значення в даних зустрічаються частіше інших. А від так можна замінити дані, що часто зустрічаються більш короткими кодами, а ті, що рідше зустрічаються - більш довгими (ймовірнісне стиснення). Стиснення даних, які не мають властивості надлишку (наприклад випадковий сигнал чи шум), неможливе, зазвичай неможливо стиснути і зашифровану інформацію. |
− | |||
− | У KDE та Gnome вбудовані | + | У KDE та Gnome вбудовані графічні архіватори, які підтримують формати архівів: * tar, * gz, * tar.bz2, * zip та ін. |
− | + | [[Файл:Ark.png]] | |
− | Існують | + | '''Існують програми-архіватори та пакувальники:''' |
− | + | - пакувальник tar[http://wiki.kspu.kr.ua/index.php/Tar]; | |
− | + | - архіватор gzip[http://wiki.kspu.kr.ua/index.php/Gzip]; | |
− | + | - архіватор bzip2[http://wiki.kspu.kr.ua/index.php/Bzip2]. | |
− | + | В таблиці зазначені основні формати архівів що використовуються операційною системою Linux | |
+ | |||
+ | [[Файл:tab.jpg]] | ||
+ | |||
+ | '''Пакувальник compress''' | ||
+ | Сompress упаковує вказаний йому файл і додає до імені розширення. Z. Приклад використання: | ||
+ | compress file | ||
+ | Для розпакування використовується програма uncompress: | ||
+ | uncompress file.Z | ||
+ | Зауваження: Якщо вказати ключ "-r" і ім'я директорії, то будуть упаковані / розпаковані всі файли в цій директорії. Але цей ключ ні в якому разі не означає "упакувати всю директорію в один файл"! | ||
+ | |||
+ | '''Пакувальник gzip''' | ||
+ | Gzip був створений як більш потужна заміна для compress. Використовується він точно так же: | ||
+ | gzip file | ||
+ | Gzip дозволяє досягати великих ступенів стиснення, ніж compress, і тому майже витіснив його. Оскільки більше стиснення займає більше часу, є можливість вказати gzip'у, як пакувати - швидше (і слабше) або краще (і повільніше). Для цього служать ключі від "-1" (найшвидше стиснення) до "-9" (найбільше стиснення): | ||
+ | gzip -9 file | ||
+ | За замовчуванням використовується "-6". Для розпакування застосовується програма gunzip. Gunzip вміє також розпаковувати файли .Z і .z. | ||
+ | |||
+ | '''Пакувальник bzip2''' | ||
+ | Bzip2 був створений порівняно недавно - в 1996 році. Він використовує при пакуванні алгоритм Burrows-Wheeler (замість Lempel-Ziv, що застосовується в compress / gzip / zip), що дозволяє досягати ще більших ступенів стиснення. Платою за це є кілька більший час упаковки. | ||
+ | Використовувані bzip2 ключі майже ідентичні gzip'овим. Але bzip2 за замовчуванням використовує найкраще стиснення ("-9"): | ||
+ | Bzip2 file | ||
+ | |||
+ | '''Архіватор tar''' | ||
+ | Спочатку tar був розроблений для резервного копіювання на стрічку, звідси і його назва - Tape ARchiver. Але оскільки можливість поміщати велику кількість файлів всередину одного надзвичайно зручно (наприклад, для зберігання і передачі груп файлів, наприклад, дистрибутивів), то він отримав більш широке поширення. | ||
+ | Взагалі, в кожному * nix є свій підвид tar, зі злегка відрізняються опціями. Але основні опції (створити, розгорнути, перевірити архів) однакові у всіх версіях. У Linux використовується GNU-версія tar, яка доступна в більшості інших Unix (іноді під ім'ям "gtar"). | ||
+ | Якщо tar використовується для роботи з файлами-архівами (а не зі стрічкою), то його виклик зазвичай виглядає так: | ||
+ | tar <буква-команди> f <ім'я-архіва.tar> [файли ...] | ||
+ | В якості команди зазвичай використовується одна з наступних букв: | ||
+ | c | ||
+ | (Create) створити архів; | ||
+ | x | ||
+ | (EXtract) розпакувати архів; | ||
+ | t | ||
+ | (Test) переглянути вміст архіву. | ||
+ | Наприклад щоб створити архів / tmp / someconfs.tar, містить файли / etc / fstab і / etc / passwd: | ||
+ | tar cf / tmp / someconfs.tar / etc / fstab / etc / passwd | ||
+ | Тут відразу треба помітити дві особливості: | ||
+ | - По-перше, у файлів, імена яких вказані в абсолютному вигляді, тобто починаються з "/", tar автоматично цей "/" обрізає, щоб пізніше можна було розпакувати архів у будь-яке місце (а не тільки назад в / etc /). | ||
+ | - По-друге, при нормальній роботі tar нічого не друкує на екрані (на відміну від pkzip і arj). Щоб він показував оброблювані файли, треба вказати ключ "v": | ||
+ | tar cvf / tmp / someconfs.tar / etc / fstab / etc / passwd. | ||
+ | Якщо вказати "vv", то крім імен будуть показуватися ті ж атрибути, що і при "ls-l". | ||
+ | Взагалі у tar досить нестандартний синтаксис команд: хоча всі ключі і можна вказувати звичайним способом (тобто через "-"), і навіть довгі ключі (з "-"), але зазвичай першим параметром йому вказується поєднання з декількох букв, перша з яких є командою, а решта - ключами. Так, "f" - це теж ключ, який каже, що далі вказано ім'я файлу-архіву (тому "f" треба вказувати в кінці списку). | ||
+ | Зауваження: Хоча в більшості систем tar прекрасно розуміє саме такий синтаксис, в деяких старих Unix'ах перед "поєднанням букв" обов'язково треба вказувати "-". | ||
+ | |||
+ | Для перегляду архіву використовується команда "t" (ключ "v" вказує, що треба видавати більш повну інформацію): | ||
+ | tar tvf / tmp / someconfs.tar | ||
+ | Для розпакування застосовується команда "x": | ||
+ | tar xf / tmp / someconfs.tar | ||
+ | Tar розгортає дерево-вміст архіву в поточній директорії. Щоб розпакувати архів в іншу директорію, треба або перейти в неї (командою cd), або вказати ключ "-C" (розпаковуємо в директорію / tmp): | ||
+ | tar xf / tmp / someconfs.tar-C / tmp | ||
+ | Зауваження: Взагалі, призначення ключа "-C" більш загальне, і треба добре собі уявляти, що він буде робити в кожному конкретному випадку. Але при розпакуванні всього архіву таке використання досягає мети. | ||
+ | Зазвичай. Tar-файли тримають упакованими (найчастіше gzip'ом). Найпростіше - створити архів і потім упакувати його. Але можна вказати як ім'я архіву "-" - тоді результат буде відправлений на стандартний висновок, і потім передати його gzip'у, стандартний висновок якого перенаправити в файл: | ||
+ | tar cf - / etc / fstab / etc / passwd | gzip> someconfs.tgz | ||
+ | |||
+ | При використанні GNU tar (наприклад, в Linux) є ще більш простий спосіб: можна вказати ключ "z", який означає "пропустити файл через gzip": | ||
+ | tar czf someconfs.tgz / etc / fstab / etc / passwd | ||
+ | Цей же ключ можна вказувати при розпакуванні і перегляді архіву. | ||
+ | Зауваження: якщо сказати tar'у створити архів в тій же директорії, звідки беруться вихідні файли (наприклад, в поточному: "tar cf archive.tar."), То сам. Tar-файл теж потрапить в архів - точніше, та його частина, що була створена на момент початку додавання його самого. Справа в тому, що tar (на відміну від Dos'овскіх pkzip і arj) не перевіряє, що файл, який він збирається помістити в архів, - це сам архів. Тому краще самі файли-архіви створювати поза того дерева, з якого беруться файли, або прямо вказувати список всіх файлів, які треба покласти в архів. | ||
+ | |||
+ | '''Сумісність з zip / unzip, unarj''' | ||
+ | Для маніпуляцій с. Zip-файлами практично в будь-якому * nix є програми zip і unzip. Ключі zip і unzip майже ідентичні оним у pkzip / pkunzip. Отримати коротку довідку по ним можна, запустивши яку з цих програм без параметрів. | ||
+ | Для розпакування. Arj-файлів є програма unarj. На відміну від "справжнього" arj, вона не вміє створювати. Arj-архіви, не оптимізована по швидкості і підтримує лише невелику кількість опцій. Підтримуються часто використовувані опції arj - перегляд і розпакування, але при розпакуванні немає можливості вказати, які файли треба витягати - можна розпакувати тільки весь архів. Коротку довідку можна отримати, набравши просто "unarj" без параметрів. | ||
+ | Пакувальник-архіватор RAR давно заслужив авторитет у користувачів Windows, але от в Linux до сих пір найбільш вживані gzip і bzip2. |
Поточна версія на 11:50, 27 квітня 2012
Під архівацією розуміють стиснення даних.
Стиснення даних — це процедура перекодування даних, яка проводиться з метою зменшення їх об'єму, розміру, обсягу. Стиснення буває без втрат (коли можливе відновлення вихідних даних без спотворень) або з втратами (відновлення можливе з незначними спотвореннями). Стиснення без втрат використовується при обробці та збереженні комп'ютерних програм і даних. Стиснення з втратами зазвичай застосовується для зменшення об'єму звукової, фото, та відеоінформації. І, як показує практика, стиснення з втратами для такого роду інформації є набагато дієвим. Стиснення базується на видалені надлишку інформації, яка міститься у вихідних даних. Прикладом надлишку є повторення в тексті фрагментів (наприклад, слів природної або машинної мови). Подібний надлишок зазвичай усувається заміною повторюваних послідовностей більш коротким значенням (кодом). Інший вид надлишку пов'язаний з тим, що деякі значення в даних зустрічаються частіше інших. А від так можна замінити дані, що часто зустрічаються більш короткими кодами, а ті, що рідше зустрічаються - більш довгими (ймовірнісне стиснення). Стиснення даних, які не мають властивості надлишку (наприклад випадковий сигнал чи шум), неможливе, зазвичай неможливо стиснути і зашифровану інформацію.
У KDE та Gnome вбудовані графічні архіватори, які підтримують формати архівів: * tar, * gz, * tar.bz2, * zip та ін.
Існують програми-архіватори та пакувальники:
- пакувальник tar[1];
- архіватор gzip[2];
- архіватор bzip2[3].
В таблиці зазначені основні формати архівів що використовуються операційною системою Linux
Пакувальник compress Сompress упаковує вказаний йому файл і додає до імені розширення. Z. Приклад використання: compress file Для розпакування використовується програма uncompress: uncompress file.Z Зауваження: Якщо вказати ключ "-r" і ім'я директорії, то будуть упаковані / розпаковані всі файли в цій директорії. Але цей ключ ні в якому разі не означає "упакувати всю директорію в один файл"!
Пакувальник gzip Gzip був створений як більш потужна заміна для compress. Використовується він точно так же: gzip file Gzip дозволяє досягати великих ступенів стиснення, ніж compress, і тому майже витіснив його. Оскільки більше стиснення займає більше часу, є можливість вказати gzip'у, як пакувати - швидше (і слабше) або краще (і повільніше). Для цього служать ключі від "-1" (найшвидше стиснення) до "-9" (найбільше стиснення): gzip -9 file За замовчуванням використовується "-6". Для розпакування застосовується програма gunzip. Gunzip вміє також розпаковувати файли .Z і .z.
Пакувальник bzip2 Bzip2 був створений порівняно недавно - в 1996 році. Він використовує при пакуванні алгоритм Burrows-Wheeler (замість Lempel-Ziv, що застосовується в compress / gzip / zip), що дозволяє досягати ще більших ступенів стиснення. Платою за це є кілька більший час упаковки. Використовувані bzip2 ключі майже ідентичні gzip'овим. Але bzip2 за замовчуванням використовує найкраще стиснення ("-9"): Bzip2 file
Архіватор tar Спочатку tar був розроблений для резервного копіювання на стрічку, звідси і його назва - Tape ARchiver. Але оскільки можливість поміщати велику кількість файлів всередину одного надзвичайно зручно (наприклад, для зберігання і передачі груп файлів, наприклад, дистрибутивів), то він отримав більш широке поширення. Взагалі, в кожному * nix є свій підвид tar, зі злегка відрізняються опціями. Але основні опції (створити, розгорнути, перевірити архів) однакові у всіх версіях. У Linux використовується GNU-версія tar, яка доступна в більшості інших Unix (іноді під ім'ям "gtar"). Якщо tar використовується для роботи з файлами-архівами (а не зі стрічкою), то його виклик зазвичай виглядає так: tar <буква-команди> f <ім'я-архіва.tar> [файли ...] В якості команди зазвичай використовується одна з наступних букв: c (Create) створити архів; x (EXtract) розпакувати архів; t (Test) переглянути вміст архіву. Наприклад щоб створити архів / tmp / someconfs.tar, містить файли / etc / fstab і / etc / passwd: tar cf / tmp / someconfs.tar / etc / fstab / etc / passwd Тут відразу треба помітити дві особливості: - По-перше, у файлів, імена яких вказані в абсолютному вигляді, тобто починаються з "/", tar автоматично цей "/" обрізає, щоб пізніше можна було розпакувати архів у будь-яке місце (а не тільки назад в / etc /). - По-друге, при нормальній роботі tar нічого не друкує на екрані (на відміну від pkzip і arj). Щоб він показував оброблювані файли, треба вказати ключ "v": tar cvf / tmp / someconfs.tar / etc / fstab / etc / passwd. Якщо вказати "vv", то крім імен будуть показуватися ті ж атрибути, що і при "ls-l". Взагалі у tar досить нестандартний синтаксис команд: хоча всі ключі і можна вказувати звичайним способом (тобто через "-"), і навіть довгі ключі (з "-"), але зазвичай першим параметром йому вказується поєднання з декількох букв, перша з яких є командою, а решта - ключами. Так, "f" - це теж ключ, який каже, що далі вказано ім'я файлу-архіву (тому "f" треба вказувати в кінці списку). Зауваження: Хоча в більшості систем tar прекрасно розуміє саме такий синтаксис, в деяких старих Unix'ах перед "поєднанням букв" обов'язково треба вказувати "-".
Для перегляду архіву використовується команда "t" (ключ "v" вказує, що треба видавати більш повну інформацію): tar tvf / tmp / someconfs.tar Для розпакування застосовується команда "x": tar xf / tmp / someconfs.tar Tar розгортає дерево-вміст архіву в поточній директорії. Щоб розпакувати архів в іншу директорію, треба або перейти в неї (командою cd), або вказати ключ "-C" (розпаковуємо в директорію / tmp): tar xf / tmp / someconfs.tar-C / tmp Зауваження: Взагалі, призначення ключа "-C" більш загальне, і треба добре собі уявляти, що він буде робити в кожному конкретному випадку. Але при розпакуванні всього архіву таке використання досягає мети. Зазвичай. Tar-файли тримають упакованими (найчастіше gzip'ом). Найпростіше - створити архів і потім упакувати його. Але можна вказати як ім'я архіву "-" - тоді результат буде відправлений на стандартний висновок, і потім передати його gzip'у, стандартний висновок якого перенаправити в файл: tar cf - / etc / fstab / etc / passwd | gzip> someconfs.tgz
При використанні GNU tar (наприклад, в Linux) є ще більш простий спосіб: можна вказати ключ "z", який означає "пропустити файл через gzip": tar czf someconfs.tgz / etc / fstab / etc / passwd Цей же ключ можна вказувати при розпакуванні і перегляді архіву. Зауваження: якщо сказати tar'у створити архів в тій же директорії, звідки беруться вихідні файли (наприклад, в поточному: "tar cf archive.tar."), То сам. Tar-файл теж потрапить в архів - точніше, та його частина, що була створена на момент початку додавання його самого. Справа в тому, що tar (на відміну від Dos'овскіх pkzip і arj) не перевіряє, що файл, який він збирається помістити в архів, - це сам архів. Тому краще самі файли-архіви створювати поза того дерева, з якого беруться файли, або прямо вказувати список всіх файлів, які треба покласти в архів.
Сумісність з zip / unzip, unarj Для маніпуляцій с. Zip-файлами практично в будь-якому * nix є програми zip і unzip. Ключі zip і unzip майже ідентичні оним у pkzip / pkunzip. Отримати коротку довідку по ним можна, запустивши яку з цих програм без параметрів. Для розпакування. Arj-файлів є програма unarj. На відміну від "справжнього" arj, вона не вміє створювати. Arj-архіви, не оптимізована по швидкості і підтримує лише невелику кількість опцій. Підтримуються часто використовувані опції arj - перегляд і розпакування, але при розпакуванні немає можливості вказати, які файли треба витягати - можна розпакувати тільки весь архів. Коротку довідку можна отримати, набравши просто "unarj" без параметрів. Пакувальник-архіватор RAR давно заслужив авторитет у користувачів Windows, але от в Linux до сих пір найбільш вживані gzip і bzip2.