Я хочу сделать архив моего корневого каталога, но только определенных папок / файлов. Пока это то, что у меня есть, подскажите, пожалуйста, что я делаю не так? Чтобы разобраться в проблеме, у меня есть 3 тестовых файла (test1 и т. Д.) В каталоге / home / user, которые я пытаюсь заархивировать с помощью cpio, причем имя папки является датой. Потерпи меня, я новичок в этом. Спасибо.
today="$(date +%m%d%Y)"
mkdir /home/user/backuptest/$today
LIST="test1 test2 test3"
for i in $LIST
do
find $i -print | cpio -pduv /home/user ;
find $i -print | cpio -pduv /home/user/backuptest/$today
done
Выдержки из моего домашнего сценария резервного копирования, чего оно стоит:
set DIRS = "/etc /root /usr/home /usr/local/etc"
set TMPFILE = /tmp/tar-`date "+%F_%T"`.tmp
set FILENAME = /backup/backup-`hostname -s`_`date "+%F"`.tbz
# Build list of files to be backed up
foreach LOCATION ($DIRS)
find $LOCATION -type fl >> $TMPFILE
end
# Do actual backup
tar cyfTP - $TMPFILE | dd bs=10k of=$FILENAME
# Cleanup list of files
rm -f $TMPFILE
Примечание: существует множество способов сделать что-то там, потому что я фактически передаю архив через сжатие LZMA, шифрование Blowfish, полное / инкрементное / дифференциальное резервное копирование и записываю либо в файл, либо на ленту.