3

Как мне tar/gzip и как-то безопасно удалить файлы?

Предыстория: у нас недостаточно места на диске на компьютере с Ubuntu (Hardy Heron), и я хочу использовать tar/gzip, убедиться, что он работает, а затем удалить некоторые каталоги, которые я больше не использую. Я планирую сделать tar gzip для каждого каталога, от которого я избавляюсь. (Gzips будет на жесткий диск, а не на магнитную ленту)

Я нашел решение, которое должно быть безопасным, но не на unix.com. Это небезопасно, потому что в текущих версиях tar, --remove-files может удалять файлы, даже если архив не создан. (Признано как ошибка в этом письме)

Я также заметил параметр --compare, но он говорит, что он «игнорирует файлы в файловой системе, которые не имеют соответствующих членов в архиве».

Кроме того, gzipping не влияет на способность tar проверять существующие файлы?

2 ответа2

3

Вы можете настроить rsync на --delete-after передачи. Он также включает в себя множество других опций - то есть вы можете вообще избежать шага tar / gzip. Используйте rsync для резервного копирования ваших материалов и удаления локальной копии. Для некоторых подробных инструкций смотрите scrounge.org и mikerubel.org и это.

1

Я использую этот скрипт для собственного использования:

#!/bin/ksh
#
# @(#)$Id: save.sh,v 2.2 2007/09/01 23:41:23 jleffler Exp $"
#
# Compress directories to save space

case $(id | sed 's/^uid=\([0-9][0-9]*\)(.*/\1/') in
0)  echo "$(basename $0 .sh): cannot run safely as root!" 1>&2
    exit 1;;
esac

for d in ${*:-`pwd`}
do
    (
    set -e
    echo $d
    cd $d
    b=`basename $d`
    chmod 755 .
    [ ! -d Safe ] && mkdir Safe
    chmod 755 Safe
    # GNU Tar Only!
    find . -type f -print | grep -v '^./Safe' | tar -czf Safe/$b.tgz -T -
    chmod 444 Safe/$b.tgz
    chmod 555 Safe
    (set +e; rm -fr `pwd` 2>/dev/null ; exit 0)
    chmod 755 Safe
    mv Safe/* .
    rmdir Safe
    chmod 555 .
    )
done

Обратите внимание, что «root» может удалять каталоги, даже если владелец не может - поэтому он не разрешает «root» запускать его. Попробуйте это на копии своего каталога, прежде чем рисковать чем-то важным. Я счастлив с этим - вы можете предпочесть что-то еще.

Однажды я заставлю его работать с 'bzip2' или другими компрессорами.

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