backup.sh - сам скрипт
переменная BACKUP_DIR - путь куда складывать бэкапы
файл backup_src.lst - список каталогов которые бэкапим
файл backup_include.lst - список расширений файлов, которые добавляем в бэкап (если он пуст то по умолчанию все, кроме обозначенных в backup_exclude.lst)
файл backup_exclude.lst - список расширений файлов, которые НЕ добавляем в бэкап.
Требует наличия установленного rsync
Скрипт писался и тестировался на FreeBSD 8.1 на других системах не тестировал, если протестируете на какой-нибудь другой системе - отпишитесь пожалуйста.
Немного отредактировал скрипт спасибо awk за подсказку.