1

У меня есть следующий скрипт bash, который создает tar.gz моей файловой системы на ПК Kubuntu. Проблема в том, что он также пытается сделать резервную копию файла резервной копии tar.gz, хотя я храню резервную копию в /tmp и опускаю /tmp из резервной копии. Мне интересно, почему он создает резервную копию файла в /tmp, хотя я сказал, что нет.

#!/bin/bash
# init

DATE=$(date +20%y%m%d)

sudo tar -cvpzf /tmp/`hostname`_$DATE.tar.gz \
--exclude=/proc \
--exclude=/lost+found \
--exclude=/sys \
--exclude=/mnt \
--exclude=/media \
--exclude=/dev \
--exclude=/tmp \
--exclude=/home/jlacroix/Desktop \
--exclude=/home/jlacroix/Documents \
--exclude=/home/jlacroix/Music \
--exclude=/home/jlacroix/Pictures \
--exclude=/home/jlacroix/Projects \
--exclude=/home/jlacroix/Roms \
--exclude=/home/jlacroix/Videos \
--exclude=/home/jlacroix/.VirtualBox\ VMs \
--exclude=/home/jlacroix/.SpiderOak \
/

scp /tmp/`hostname`_$DATE.tar.gz jlacroix@Pluto:/share/Recovery/Snapshots

sudo rm /tmp/`hostname`_$DATE.tar.gz

1 ответ1

1

Вам нужно добавить «*» после исключенных путей, алгоритм работает так, что алгоритм исключает шаблон, а не каталог.

Так что шаблон / дома / Jlacroix / музыка!= /home/jlacroix/Music/*

Дайте этому шанс, у меня здесь работает.

Редактировать:

Это все еще поддерживает имя каталога, как бы то ни было. Так что действительно нужно, чтобы это выглядело так:

--exclude=/home/[username]/Music/* --exclude=/home/[username]/Music \

Это будет справедливо для остальных предметов.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .