Разопаковане на tar в папка. Проверка на архивните файлове по време на създаване. Създаване на архив с помощта на компресия в Linux

Повечето от файловете на Linux, които се изтеглят от Интернет, са компресирани във формати tar, tar.gz, tar.bz2 и е важно да знаете как да ги извлечете. Тази статия ви показва как да извлечете (разопаковате) и разопаковате (untar) файлове и папки от tar, tar.gz и tar.bz2 файлове от командния ред на Linux. Ще научите също как да преглеждате съдържанието на tar архив, без да го разопаковате и как да извличате само отделен файлили отделна папка. Сам по себе си, tar не е архиватор в обичайния смисъл на думата, т.к той не използва компресия самостоятелно.

Tar е по-често срещан архиватор, използван в Linux системи.

След това полученият * .tar файл се компресира от програма, например gzip. Ето защо архивите обикновено имат разширението .tar.gz или .tar.bz2 (съответно за gzip и bzip2 архиватори). голям размерархивен файл не винаги е необходимо да разархивирате всички файлове, достатъчно е само един файл или папка.

Във версията с Linux VPS, базирана на OpenVZ и Xen, основните компоненти на системата са достатъчни за работа с архиви, но само Tar, Gzip и Bzip2, които работят като едно цяло при създаване на компресиран архив, т.к. самият архиватор на Tar не осигурява компресиране на данни. За целта се използва Gzip или Bzip2. Файловите библиотеки, създадени с Gzip, обикновено имат разширение .tar.gz, а при използване на Bzip2 имат разширение .tar.bz2.

В същото време много архиватори (например Gzip или bzip2) не знаят как да компресират множество файлове, а работят само с един файл или входен поток. Ето защо най-често тези програми се използват заедно. катранът не създава компресиран архив, който съдържа избраните файлове и директории, като същевременно запазва някои от техните атрибути (като права за достъп).

За да разопаковате архива tar.gz в текущата директория, трябва да изпълните командата:

tar -xvzf archive.tar.gz

x - Позволява ви да извличате файлове от архива.
v - Проверява изхода на tar. Това означава, че всички файлове, намерени в архива, ще бъдат показани на екрана. Ако тази опция е пропусната, информацията, показвана по време на обработката, ще бъде ограничена.
f - е задължителна опция... Без него tar се опитва да използва лента вместо файл в шкафа за досие.
z - ви позволява да обработвате компресиран gzip архив (с разширението .gz). Ако забравите да включите тази функция, tar ще генерира грешка. Обратно, тази опция не трябва да се използва за некомпресирани архиви.

За катран знакът изобщо не е задължителен!

Разопаковайте tar файла:

tar -xvf foo.tar

Разопаковайте и разархивирайте файла tar.gz:

tar -xvzf foo.tar.gz

Разопаковайте и разархивирайте файла tar.bz2:

tar -xvjf foo.tar.bz2

Създаване на некомпресиран tarball на Linux

За да създадете такъв архив, използвайте командата:

tar -cf име на файл.tar файл1 файл2 файлN

Параметърът -cf meteo е отговорен за създаването на архива filename.tar, който ще включва определени файлове... Вместо файлове могат да бъдат посочени директории.

Създаване на архив с помощта на компресия в Linux

Тъй като има най-малко два налични метода за свиване, за използване на всеки от тях се използва отделен набор от параметри.

Пример за компресиране на Gzip:

tar -cvzf име на файл.tar.gz име на директория

V в такъв случайопитахме се да компресираме папката dir_name във filename.tar.gz. От посочените опции, -z показва използването на метода Gzip, а -v извежда резултатите от процеса на създаване на архив, указвайки опакованите файлове или папки.

Преглед на съдържанието на архива без разопаковане в Linux

За тези цели се използва следната команда:

tar -tf име на файл.tar.gz

В резултат на изпълнението на командата ще се покаже списък с файлове и папки, съхранявани в архива. Ако добавите -v към списъка с параметри, получавате инкрементален изход на информация за съдържанието, посочващ размера на файловете, правата за достъп, имената на собствениците и техните групи и т.н.

Други функции на Linux tar

катранът осигурява много полезни възможности... Например, възможно е да посочите файлове и директории, които няма да бъдат включени в архива, да добавите файлове ( именувана област с данни на носител за съхранение) към съществуващия архив ( 1) институция или структурно звено на организация, която съхранява, придобива, записва и използва архивни документи; 2) колекция от писмени паметници (ръкописи, писма и др.), вземете списък с обекти, от които да опаковате текстов файли още много. В цялото изобилие от опции, както винаги, това ще ви помогне да го разберете

Помощната програма на командния ред tar се използва за услугата с архиви операционна системаБазиран на UNIX. С негова помощ можете да архивирате данни и да подобрите използването на дисковото пространство.

Свързано видео: Как да разопаковам tar gz в Linux?

V нова версияотбелязани значителни подобрения в производителността мениджър на прозорци, адаптация на интерфейса за мобилни устройства, по-плътно използване на системата за семантични връзки Nepomuk в инфраструктурата за търсене, избягване на използването на нивото на абстракция HAL при работа с оборудване и преработка на концепцията за "дейности" (в руската локализация на "стая"). Изданието за софтуерна компилация на KDE 4.6 се състои от три съставничасти: базова платформа, комплект допълнителни приложенияи буквално...

Съобщение за пускане на ОС Kali LinuxКомпанията Offensive Security препоръча нов дистрибуторски комплект за изследване на системната сигурност - Kali Linux, който пълзеше, за да замени по-рано разработения BackTrack Linux проект и беше издаден вместо очакваната версия на BackTrack 6. Kali Linux е идентичен с BackTrack Linux по отношение на задачите се урежда и освен това е предназначена за тестване на системи за уязвимости, провеждане на одити, анализиране на остатъчни данни и идентифициране на последствията от атаки на нападател...

Навигация за публикации

Заглавие

Tar е един от най-разпространените архиватори в Linux системи... Но tar не компресира файлове в архива. Tar просто пакетира файлове в архив без компресия. За компресиране, tar може да бъде сдвоен с bzip2 или gzip. Тази статия описва как да използвате катран.

Създаване на архив от папка

За да създадете tar архив с gzip компресия, въведете следната команда:

tar -zcf /root/files.tar.gz / начало / папка /

Нека вземем примера парче по парче. Командата tar се изпълнява със следните опции:

z - Архиви с gzip компресия. За да използвате bzip2, трябва да замените клавиша "z" с "j".
c - Създава архив. Без този ключ архивът няма да бъде създаден.
f - Без този ключ архивът няма да бъде създаден. Както се казва в документацията: "без опцията f, tar ще отпечата изхода в stdout при пакетиране и ще се опита да прочете архива от stdin при разопаковане."

Пътят до файла е посочен след клавишите създаден архивс името му: /root/files.tar.gz. Ако посочите относителен път, тогава файлът ще бъде създаден в папката, където е отворен терминалът.

В самия край на командата се предава директорията, която трябва да се архивира / home / folder /. Примерът е абсолютен пъткъм тази папка. В този случай tar архивът ще съдържа всички родителски папки, т.е. когато отворите архива, ще има папка / home / и вътре в нея папка / папка /. Но ако замените абсолютния път с относителен, тогава ще бъде само / папка /.

Разархивирайте

За да разопаковате архива, отидете в папката с него и въведете:

tar -xf файлове.tar.gz

Файловете ще бъдат разопаковани в същата папка, където се намира архивът.

Бутонът x показва разопаковането на архива. Клавишът f е задължителен, точно както при създаване на архив.

Ако трябва да разопаковате архива в конкретна папка, тогава пътят до него може да бъде указан след клавиша C:

tar -xf files.tar.gz -C / начало / папка /

Изключване на папки от архива

Понякога проблемът възниква при изключване на някои подпапки от архива. Например, ако трябва да създадете архив от папката / home /, но съдържанието на папките / cache / и / trash / не трябва да се включва в него. След това трябва да използвате ключа за изключване:

tar -zcf /root/files.tar.gz / home / --exclude = ("* / кеш / *", "* / кошче / *")

В края на стойностите за изключване папките нямат наклонена черта "/". Ако няма наклонена черта, тогава не съдържанието на папката ще бъде изтрито, а цялата папка.

Звездичките в имената на папките са с цел да не означават пълен пъткъм папки. При изпълнение на такава команда файловете от папки няма да бъдат включени в архива.

V този материалще разгледаме как можете да разопаковате TAR архив. Подобен файл се създава с софтуерни системиразработен за платформата Unix.

Описание

Преди да помислите как да разопаковате TAR, трябва да разберете за каква цел е разработен този формат. Този тип файл съдържа общ архив, който се състои от няколко материала. TAR е често срещано разширение в Unix средата. Този форматизползвани при предаването на различни софтуер... Доста често TAR се използва за формиране на архиви в файлова система... Файлът съхранява цялата информация за материалите, включително структурата на директорията и времевите марки. Един файл от този тип може да съдържа много материали. И така, как да разопаковам TAR? Windows е операционната система, която се използва най-често от потребителите на компютри. Да започнем с нея.

Как да разопаковам архив на Windows?

Сега ще разгледаме приложението WinZip. Този инструментще разопакова TAR. то еза Shareware файлов архиватор и компресор, който е създаден от Corel. Инструментът има много възможности. Позволява ви да създавате, допълвате и разопаковате архиви. Реализирана персонализирана интеграция в среда на Microsoft Windows. Поддържа 128- и 256-битови ключове. Можете директно да записвате архиви на DVD или CD. Реализирана автоматизация Резервно копие... Поддържа се FTP протокол... Възможно е изпращане на архиви чрез електронна поща... Поддържа се Unicode.

Можете също да взаимодействате с формата, който ни интересува, като използвате програмата 7-Zip. Говорим за безплатен файлов архиватор, който има високо нивокомпресиране на данни. Приложението се развива от 1999 г. Инструментът се разпространява безплатно. Приложението е отворено програмен код... Има две версии на програмата. Първият има графичен интерфейс... Вторият работи на базата на командния ред. Приложението има вграден инструмент за тестване на производителността. Реализиран е многоезичен графичен интерфейс, който има функциите на файлов мениджър с два прозореца. Unicode се поддържа за имена на файлове. 7-Zip е многонишков. Компресията използва специални филтри за нормализиране.

Приложението Smith Micro StuffIt Deluxe също ще ни помогне. Това е инструмент за работа с различни архиви. Програмата ви позволява да криптирате данни, както и да правите резервни копия... Архивираните файлове могат да бъдат защитени с парола. В този случай се използва криптиране с 256- и 512-битови ключове. Програмата е в състояние да автоматичен режимдобавете информация, която ви позволява да възстановите архиви. Реализирана възможността за преглед компресирани файловеи папки. Има вграден планировчик, както и обмен на файлове през интернет.

Други операционни системи

Сега ще разгледаме как да разопаковаме TAR на Mac OS. Подходящ за това Приложение на AppleПомощна програма за архивиране. Можете също да използвате програмата Incredible Bee Archiver. В Android можете също да работите с този формат. Подходящ за това Файлово приложениезрител за Android... Става дума за универсален файлов мениджъркойто поддържа над сто формата. Материалите могат да бъдат манипулирани или преглеждани. Възможно е да разопаковате архиви от интересния за нас формат. Можете също да използвате програмата RarLab. Инструментът GNU Tar ще ви помогне да разопаковате TAR на Linux.

катране архиватор на GNU. tar взема множество файлове и/или директории и ги слива в един голям файл... Това ви позволява да компресирате цяло дърво на директории, което не може да се направи с или bzip2. Tar има много опции, които са описани подробно на неговата страница с ръководство.

$ man tar tar -xvvf foo.tar екстракт foo.tar tar -xvvzf foo.tar.gz екстракт gzipped foo.tar.gz tar -cvvf foo.tar foo / tar съдържание на папка foo в foo.tar

Често използвани опции за команди tar

    C - създаване на нов архив

    X - извличане (извличане) на файлове от архива

    –Delete - изтриване (изтриване) на файлове от архива

    R - добавяне на файлове към съществуващ архив

    A - добавяне на tar файлове към съществуващ архив

    T - списък с файлове в архива (съдържание на архива)

    U - актуализиране (актуализация) на архива

    D - операция за сравняване на архив с дадена файлова система

    Z - обработка на архив с примери за gzip и gunzip. Компресирайте или разкомпресирайте, в зависимост от комбинацията от придружаващите опции -c или -x.

    J - обработка на архив с bzip2. Компресирайте или разкомпресирайте, в зависимост от комбинацията от придружаващите опции -c или -x.

tar се стартира със задължителното посочване на едно от основните действия, най-често срещаното от които е създаване и разопаковане на архиви, след което се задават други параметри в зависимост от конкретната операция.

Повечето обща употреба tar е за извличане и разархивиране на пакет, изтеглен от уебсайт или ftp сайт. Повечето файлове имат разширение .tar.gz. Доста често те се наричат ​​"tarball" "s. Това означава множество файлове, които се архивират с tar и след това се компресират с gzip. стари Unix системи.

Като алтернатива може да попаднете на файловете .tar.bz2. В тази форма се разпространяват изходни текстовеядра, тъй като те заемат по-малко място за зареждане. Както може би се досещате, това са файлове, компресирани с tar и компресирани с bzip.

Можете да извлечете всички файлове от такъв архив с помощта на tar с няколко опции на командния ред. Разархивирането на tarball се извършва с опцията -z, което означава, че файлът трябва да се стартира първо през gunzip и след това да се разопакова. Най-често срещаният метод за разопаковане на tarball файлове:

% tar -xvzf .tar.gz файл

Тук има доста опции. Какво имат предвид? Опцията -x означава извличане. Това е важно, защото казва на tar "y какво точно да прави с входния файл. В този случай той ще бъде разделен отново на файловете, от които е бил "зашит". Опцията -v означава да включите подробен режим... Имената на всички файлове, извлечени от архива, ще бъдат показани на екрана. Добра идея е да използвате тази опция, така че разопаковането да не изглежда твърде скучно. Можете също да използвате -vv, за да направите изхода още по-подробен и да ви даде още повече информация за файловете, които се извличат. Опцията -z казва на tar "y да стартира първо файла .tar.gz чрез gunzip. И накрая, опцията -f казва на tar" y, че следващия редв командния ред, това е файлът, с който трябва да работите.

Има няколко начина да напишете същата тази команда. На по-стари системи, които нямат подходящо копие на GNU tar, можете да видите следващо вписванеот същата команда:

% gunzip .tar.gz файл | tar -xvf -

В тази команда файлът първо се разопакова и резултатът се изпраща в tar. Защото gzip записва изхода в stdout по подразбиране, тази команда ще запише разопакования файл в stdout. След това тръбопроводът пренасочва този поток към tar за декомпресия. Знакът “-” означава, че данните са взети от стандартен вход... По този начин командата ще разархивира потока от данни, получен от gzip, и ще го запише на диск.

Друг начин да напишете оригиналната команда е да премахнете знака "-" пред опциите:

% tar xvzf .tar.gz файл

Може също да попаднете на bzip "zip архив. Версията на tar, предоставена в Slackware Linux, може да ги обработва по същия начин като gzip" архивите. Просто вместо опцията -z, трябва да използвате -j:

% tar -xvjf .tar.bz2 файл

Имайте предвид, че tar ще запази извлечените файлове от архива в текущата директория. Следователно, ако имате архив в / tmp, който искате да разопаковате в домашната си директория, имате няколко опции. Първо, архивът може да бъде преместен във вашата домашна директория и след това разширен с помощта на tar. Второ, можете да посочите пътя към архива в командния ред. Трето, можете да използвате опцията -C, за да разархивирате tarball-а в директорията, посочена след тази опция.

% cd $ HOME% cp /tmp/.tar.gzfile. % tar -xvzf .tar.gz файл% cd $ НАЧАЛО% tar -xvzf /tmp/ .tar.gz файл% cd /% tar -xvzf /tmp/.tar.gz файл -C $ НАЧАЛО

Всички горепосочени записи са еквивалентни. Във всеки от тях архивът се разширява до вашата домашна директория, докато оригиналният компресиран архив остава на мястото си.

И така, какво е хубавото на факта, че можете да разопаковате архиви, ако не можете да ги създадете? tar също може да направи това. В повечето случаи можете просто да замените опцията -x с -c.

% tar -cvzf .tar.gz файл.

В тази команда опцията -c казва на tar "y да създаде архив, а опцията -z предава получения архив през gzip, за да го компресира. Файлът .tar.gz е името на файла за създаване.

Опцията -f не винаги е задължителна, но все пак е по-добре да я използвате. Без него tar ще запише своите данни в стандартен изход, който обикновено се използва за пренасочване на поток към друга програма, както следва:

% tar -cv .tar файл. | gpg --криптиране

Тази команда създава некомпресиран tarball със съдържанието на текущата директория и след това стартира tarball през програмата gpg, която криптира и компресира архива, което прави невъзможно всеки, който няма вашия частен ключ, да го прочете.

катран над ssh

Ако компютърът източник и целевият компютър са свързани чрез LAN или WAN, можете да комбинирате използването на SSH (Secure Shell) и tar за архивиране, копиране и извличане на файлове наведнъж, за да спестите време. Ето как да го направите:

$ (cd ~ / неща; tar --create --gzip --file - *) | \ ssh дестинация tar --extract --gunzip --file --verbose -C неща

Тази команда изпълнява няколко действия наведнъж. Нека го разбием:

    Последователността от команди, приложена в скобисе нарича подчерупка. Промените, направени в подчерупката - например промяна на директорията - няма да повлияят на командата като цяло, а само на средата на под-обвивка. Така че първата escape последователност - (cd ~ / stuff; tar –create –gzip –file - *) променя текущата работна директория на ~ / stuff и след това стартира tar. Тъй като вложената обвивка е последвана от пренасочване към тръбата, всички резултати от подобвивката се изпращат до следващата команда в реда.

    Подобно на много други помощни програми на UNIX, tar може да пише и чете от стандартен потоквход (stdin). Както stdout, така и stdin обикновено се означават с тире (-). Следователно, командата –create –file създава архив на stdout.

    Тръбата (|) прехвърля всички резултати от подчерупката към помощната програма ssh, която от своя страна прехвърля всички необходими данни от изходния компютър към отдалечения.

    И накрая, отдалеченият компютър изпълнява своя собствена инстанция на помощната програма tar, за да извлече данните от архива. Сега –extract –file – чете архива от стандартен вход. Опцията -C принуждава tar на целевия компютър да промени текущата работна директория в stuff, преди да започне каквито и да било операции по разархивиране. Крайният резултат от тази команда като цяло ще бъде ssh архивът и разопаковането му в ~ / stuff.

И така, с една команда архивът беше създаден, прехвърлен и разопакован. Между другото, като промените леко тази команда, можете да копирате архива от отдалечения компютър на локалния и да го разархивирате. Ето командата, която трябва да изпълните локален компютър:

$ ssh дестинация cat archive.tgz | \ (cd ~ / неща; tar --extract --gunzip --file -)

Архив на отдалечен компютърще бъде отворен, след това поток от байтове от cat ще бъде изпратен към вложена обвивка, която ще промени работната директория и след това ще извлече архива. (Добавянето на -C ~ / stuff към командата tar ще доведе до същите резултати; примерът показва само, че подчерупките също могат да обработват въвеждане.)

изключване на катран

– Изключетешаблон (-W изключва = шаблон) Не обработвайте файлове или директории, които съответстват на посочения шаблон. Имайте предвид, че изключенията имат предимство пред шаблони или имена на файлове, посочени в командния ред.

    Пример: Изключете поддиректорията от тестовата директория, когато архивирате tar.svn tar -czf test1.tar.gz --exclude = ". Svn" test /

    Пример: Когато архивирате текущата директория и компресирате Примери за използване на gzip и gunzip, изключете файла с разширенията .tar.gz .iso .deb .py $ tar -czf test.tar.gz *. * --Exclude = "* . Tar.gz "--exclude =" *. iso "--exclude =" *. deb "--exclude =" *. zip "--exclude =" *. py "

разрешения за запазване на катран

Създайте архив със запазване на правата за достъп. Превключвател -p, –запазване на разрешения, –същите разрешения извличане на информация за разрешенията за файлове (по подразбиране за суперпотребител)

Tar -cvpf archive.tar.gz dir1

Разопаковайте архива, като запазите правата за достъп

Tar -xvpf archive.tar.gz

tar разопаковате в желаната директория

За да разопаковате архива в желаната директория, използвайте превключвателя -C

# man tar ... -C директория В режим c и r това променя директорията, преди да добави следните файлове. В режим x променете директориите след отваряне на архива, но преди да извлечете записи от архива. ...

Например, тестван пример за FreeBSD:

# tar -xvf /usr/home/darkfire/backup.ns.server.254/usr/ports/distfiles.tar -C / usr / ports /

tar split разделя архив на няколко части

Split -b 1000m distfiles.tar distfiles.split.tar

В резултат на това ще получите много файлове като

Distfiles.split.taraa distfiles.split.tarab distfiles.split.tarai

100m означава 100 мегабайта. Можете да напишете 100k - това ще бъде 100 килобайта. Можете да ги съберете отново по следния начин:

Cat distfiles.split.tar * | tar zxvf -

В повечето случаи мрежата има определени ограничения, когато става въпрос за разопаковане на файлове. Или може би използвате VPS без никакъв панел и разопаковането на архива ще изисква и изпълни ssh командинад архива от определен тип... Най-често срещаните видове архиви .tar; .tar.gzи .zip, всеки има своя собствена команда за създаване и разопаковане.

Разопаковане на архиви с помощта на SSH команди

На първо място, трябва да отидете в директорията, където се намира вашият архив. Например, ако вашият архив се намира в директорията public_html / файлове, изпълнете командата, за да отидете там:

CD public_html / файлове

Как да разопаковам .tar.gz

Следната команда ще ви позволи да разопаковате съдържанието на .tar.gz архив:

Tar -zxvf ArchiveName.tar.gz

На екрана ще се покаже списък с файлове от архива и след приключване на разопаковането можете да въведете друга команда, ако е необходимо.

Как да разопаковам .tar

Архив файл с този тип компресия може да бъде разопакован със следната команда:

Tar -xvf ArchiveName.tar

На екрана ще се появи списък с файлове във вашия архив и след приключване на разопаковането конзолата ще бъде свободна да въвежда други команди.

Как да разопаковам .zip

Тази команда ще разопакова .zip:

Разархивирайте ArchiveName.zip

Веднага след като процесът приключи, командна линияще бъде безплатно.

Създаване на архиви с помощта на команди SSH

Сега, когато вече знаем как да разопаковаме всички тези типове архиви, ще разгледаме и обратния процес на създаване на архив, компресиране на файлове във всеки желан формат.

Как да създадете .tar.gz

Методът, показан по-долу, ще ви позволи да компресирате избраните файлове в архив:

Tar -zcf NewArchive.tar.gz yourfile1.php yourfile2.php yourfile3.txt

Ако трябва да компресирате съдържанието на директория, използвайте тази команда:

Tar -zcf NewArchive.tar.gz Име на директория

След завършване, както и досега, конзолата ще бъде свободна за по-нататъшни операции.

Как да създадете .tar

Синтаксисът за създаване на .tar архив с помощта на ssh командата е много прост:

Tar -zcf archive-name.tar.gz filename1.php filename2.php filename3.php

Ако искате да архивирате директория, просто посочете името на директорията в списъка с файлове за архивиране.

Tar -zcf име-архив.tar.gz Име на директория

Веднага щом можете да стартирате команди отново, вашият архив е готов.

Как да създадете .zip

Този тип архив е още по-лесен за създаване. Синтаксисът изглежда така:

Zip архив име.zip име на файл1.php име на файл2.php име на файл3.php

Компресирането на директория има същия синтаксис:

Име на Zip архив Име на директория

Екранът ще покаже процеса на създаване на архива и след като създаването приключи, конзолата отново ще се освободи за други команди.

Заключение

Честито! Следвайки това прости инструкциисега знаеш ли как да създадете и разопаковате .tar.gz, .tar,. zip архивис помощта на SSH команди.