From eefaabc1638dfa94dde8900dc09d0fcae555539e Mon Sep 17 00:00:00 2001 From: yaprodunov Date: Mon, 18 May 2026 09:56:58 +0300 Subject: [PATCH] =?UTF-8?q?=D0=BC=D0=B5=D0=BB=D0=BA=D0=B8=D0=B5=20=D0=B8?= =?UTF-8?q?=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8=D1=8F=20?= =?UTF-8?q?modified:=20=20=20domain=5Fbuilder=5F1.8.sh?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- domain_builder_1.8.sh | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/domain_builder_1.8.sh b/domain_builder_1.8.sh index ab310cc..3046671 100755 --- a/domain_builder_1.8.sh +++ b/domain_builder_1.8.sh @@ -113,7 +113,7 @@ step_03_create_archive() { echo "$(date +%T) Создаем архив..." | tee -a "$LOG_FILE" SIZE_BYTES=$(sudo du -sb "$MOUNT_DIR" | cut -f1) - if sudo tar cf - --preserve-permissions --same-owner --acls --xattrs -C "$MOUNT_DIR" . | pv -s "$SIZE_BYTES" | bzip2 > "$ARCHIVE_PATH" 2>/dev/null; then + if sudo tar cf - --preserve-permissions --same-owner --acls --xattrs -C "$MOUNT_DIR" . | bzip2 > "$ARCHIVE_PATH"; then echo "$(date +%T) Архив успешно создан" | tee -a "$LOG_FILE" if [[ -f "$ARCHIVE_PATH" ]]; then ARCHIVE_SIZE=$(du -h "$ARCHIVE_PATH" | cut -f1) @@ -137,13 +137,26 @@ step_03_create_archive() { TEMP_DIR=$(mktemp -d) echo "📁 Временная папка: $TEMP_DIR" echo "📦 Распаковка tar.bz2..." - pv "$ARCHIVE_PATH" | tar -xj -C "$TEMP_DIR" - echo "🔨 Упаковка в zstd (используем все ядра)..." - if tar --help | grep -q zstd; then - tar -C "$TEMP_DIR" -cf "$BASE_DIR/obraz.tar.zst" --zstd . + if tar -xjf "$ARCHIVE_PATH" -C "$TEMP_DIR"; then + echo "✅ Распаковка успешно завершена" + + echo "🔨 Упаковка в zstd (используем все ядра)..." + if tar --help | grep -q zstd; then + tar -C "$TEMP_DIR" -cf "$BASE_DIR/obraz.tar.zst" --zstd . + else + tar -C "$TEMP_DIR" -cf - . | zstd -T0 -19 -o "$BASE_DIR/obraz.tar.zst" + fi + + if [[ $? -eq 0 ]]; then + echo "✅ Архив образ.tar.zst успешно создан" + ls -lh "$BASE_DIR/obraz.tar.zst" + else + echo "❌ Ошибка при создании архива zstd" + exit 1 + fi else - # Вариант 2: Классический способ через pipe - tar -C "$TEMP_DIR" -cf - . | zstd -T0 -19 -o "$BASE_DIR/obraz.tar.zst" + echo "❌ Ошибка при распаковке $ARCHIVE_PATH" + exit 1 fi rm "$ARCHIVE_PATH" rm -rf "$TEMP_DIR"