15%

Π‘ΡΠΊΠΎΠ½ΠΎΠΌΡŒΡ‚Π΅ 15% Π½Π° всСх услугах хостинга

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ свои Π½Π°Π²Ρ‹ΠΊΠΈ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ скидку Π½Π° любой хостинг-ΠΏΠ»Π°Π½

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠ΄:

Skills
ΠΠ°Ρ‡Π°Ρ‚ΡŒ
01.08.2025

Как Ρ€Π°Π·ΠΌΠΎΠ½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» Π² Linux: ΠŸΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚ΠΎΠ΅ руководство для ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ

Π˜Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² .tar, .tar.gz, .tar.bz2 ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… tar-Ρ„Π°ΠΉΠ»ΠΎΠ² являСтся Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ Π½Π°Π²Ρ‹ΠΊΠΎΠΌ Π² систСмном администрировании Linux ΠΈ Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… процСссах DevOps. Π₯отя Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ взгляд Ρ€Π°Π±ΠΎΡ‚Π° с tar ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ простой, ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹Π΅ Ρ„Π»Π°Π³ΠΈ ΠΈ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, создания сцСнариСв ΠΈ Ρ‚ΠΎΠ½ΠΊΠΎΠ³ΠΎ контроля.

Π’ этом руководствС Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅ ΠΎΠ±ΠΎ всСм: ΠΎΡ‚ Π±Π°Π·ΠΎΠ²ΠΎΠΉ дСкомпрСссии Π΄ΠΎ условного извлСчСния, Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊΠΈΠ½Π³Π° ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½Π½Ρ‹ΠΌΠΈ Π°Ρ€Ρ…ΠΈΠ²Π°ΠΌΠΈ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ„Π°ΠΉΠ» .tar?

Π€Π°ΠΉΠ» .tar (сокращСниС ΠΎΡ‚ Tape Archive) – это консолидированный Π°Ρ€Ρ…ΠΈΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ нСсколько Ρ„Π°ΠΉΠ»ΠΎΠ² Π² ΠΎΠ΄ΠΈΠ½, сохраняя структуру Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΏΡ€Π°Π²Π° доступа ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΊΠΈ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΎΠ½ Π½Π΅ сТимаСтся. Для сТатия часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ‚Π°ΠΊΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹, ΠΊΠ°ΠΊ .gz, .bz2, .xz ΠΈΠ»ΠΈ .zstd.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ извлСчСния

1. Π˜Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° .tar (Π±Π΅Π· сТатия)

tar -xf archive.tar

2. Π˜Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .tar.gz ΠΈΠ»ΠΈ .tgz

tar -xzf archive.tar.gz

3. Π˜Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° .tar.bz2

tar -xjf archive.tar.bz2

4. Π˜Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° .tar.xz

tar -xJf archive.tar.xz

5. Π˜Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° .tar.zst (Zstandard)

tar --use-compress-program=unzstd -xf archive.tar.zst

ΠžΠ±Ρ‰ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„Π»Π°Π³ΠΈ

ЀлагЀункция
-xΠ˜Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅
-fΠ˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Ρ€Ρ…ΠΈΠ²Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ»
-vΠ’Π΅Ρ€Π±ΠΎΠ·Π½Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄ (список Ρ„Π°ΠΉΠ»ΠΎΠ²)
-CΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ
–strip-components=NΠ£Π΄Π°Π»ΠΈΡ‚ΡŒ Π²Π΅Π΄ΡƒΡ‰ΠΈΠ΅ N элСмСнтов ΠΏΡƒΡ‚ΠΈ
–wildcardsΠ’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡŽ подстановочных Π·Π½Π°ΠΊΠΎΠ²
–no-same-ownerΠ˜Π·Π±Π΅Π³Π°Ρ‚ΡŒ смСны Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅Π² Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΡ€ΠΈ ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠΈ
–overwriteΠŸΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΠΈΡΡŒ Π±Π΅Π· подсказок
–exclude=PATTERNΠ˜ΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΡˆΠ°Π±Π»ΠΎΠ½Ρƒ

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

Π˜Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ

tar -xf archive.tar.gz -C /opt/myapp

Π£Π΄Π°Π»ΠΈΡ‚Π΅ ΠΏΠ°ΠΏΠΊΡƒ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня (выровняйтС структуру)

tar -xf archive.tar.gz --strip-components=1

Π˜Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ²

tar -xf archive.tar.gz ΠΏΡƒΡ‚ΡŒ/ΠΊ/Ρ„Π°ΠΉΠ»Ρƒ1 ΠΏΡƒΡ‚ΡŒ/ΠΊ/Ρ„Π°ΠΉΠ»Ρƒ2

Π˜Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ шаблона с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ подстановочных Π·Π½Π°ΠΊΠΎΠ²

tar -xf archive.tar.gz --wildcards '*.conf'

Π˜Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ с ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡƒΡ‚Π΅ΠΉ

tar -xf archive.tar.gz --exclude='*.log'

ВрСмя извлСчСния ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ

врСмя tar -xf archive.tar.gz

Π Π°Π±ΠΎΡ‚Π° с ΠΊΡ€Π°ΠΉΠ½ΠΈΠΌΠΈ случаями

🧱 Π€Π°ΠΉΠ» ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ tar с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ –ignore-zeros, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½Π½Ρ‹Π΅ Π±Π»ΠΎΠΊΠΈ:

tar -xzf broken.tar.gz --ignore-zeros

πŸ” ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π°Ρ€Ρ…ΠΈΠ² ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ

tar -tf archive.tar.gz # Бписок Ρ„Π°ΠΉΠ»ΠΎΠ²

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° цСлостности (для Ρ‚Π°Ρ€Π±ΠΎΠ»ΠΎΠ² с gzip-сТатиСм)

gzip -t archive.tar.gz && echo "Архив OK"

Π‘ΠΎΠ²Π΅Ρ‚Ρ‹ ΠΏΠΎ написанию сцСнариСв для сисадминов

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ tar Π² сцСнариях Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠ³ΠΎ копирования/восстановлСния:

#!/bin/bash
TARGET_DIR="/var/www"
ARCHIVE="/backups/site-$(date +%F).tar.gz"

tar -czf "$ARCHIVE" -C "$TARGET_DIR" . && echo "Backup saved to $ARCHIVE"

Или автоматичСски распакуйтС ΠΈ установитС:

#!/bin/bash
SRC="$1"
DEST="$2"
mkdir -p "$DEST"
tar -xzf "$SRC" -C "$DEST" --strip-components=1

Π€Π°ΠΉΠ»Ρ‹ tar Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠ΅ мСсто Π² ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠ΅, Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠΌ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠΈ Linux. Освоив Ρ„Π»Π°Π³ΠΈ извлСчСния ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π² tar Π² сцСнарии, Π²Ρ‹ смоТСтС Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π°Ρ€Ρ…ΠΈΠ²Π°ΠΌΠΈ с хирургичСской Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ – ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ ΠΏΡ€Π°Π²Π° собствСнности, ΡΠ³Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡƒΡ‚ΠΈ ΠΈΠ»ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ вСсь Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ процСсс.

ΠšΡ€Π°Ρ‚ΠΊΠ°Ρ справка

# Basic
tar -xf file.tarΒ  Β  # No compression
tar -xzf file.tar.gz # Gzip
tar -xjf file.tar.bz2 # Bzip2
tar -xJf file.tar.xz # XZ
tar --use-compress-program=unzstd -xf file.tar.zstΒ  Β  # Zstandard

# Common options
tar -xvf archive.tarΒ  Β  # Verbose
tar -C /target/dir -xf file.tar.gzΒ  Β  # Extract to folder
tar --strip-components=1 -xf file.tar.gzΒ  Β  # Remove top-level dir

15%

Π‘ΡΠΊΠΎΠ½ΠΎΠΌΡŒΡ‚Π΅ 15% Π½Π° всСх услугах хостинга

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ свои Π½Π°Π²Ρ‹ΠΊΠΈ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ скидку Π½Π° любой хостинг-ΠΏΠ»Π°Π½

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠ΄:

Skills
ΠΠ°Ρ‡Π°Ρ‚ΡŒ