1. Сейчас программа кладет все файлы в один каталог storage. Если файлов много (в моем примере -- это 50 тыс. файлов), этот каталог начинает существенно тормозить (копирование маленьких файлов в него замедляется раз в сто, тестировал на ReiserFS -- м.б. на ext2/3 будет лучше или хуже -- подозреваю второе). Видимо, имеено смысл создать в каталоге storage подкаталоги по первым двум-трем буквам, и распихивать файлы по этим подкаталогам (файл с хешем abcdfg123456 положить в ab/abcdfg123456 или ab/cdfg123456). 2. Разобраться с обработкой симлинков. Сейчас симлинки на файлы трактуются как обычные файлы, симлинки на каталоги игнорируются. Хочется сделать это поведение более гибким и настраиваемым. 3. Добавить разнообразные проверки и защиты от дурака. 4. Добавить опциональную проверку на точное совпадение в случае совпадения хешей (параноидальный режим). 5. Разобраться с правами на создаваемые каталоги 6. Добавить возможность гибко настраивать, что бэкапить, а что -- нет. (Желательно в синтаксисе команды find -- наличие команды find2perl указывает, что сделать это несложно.) 7. Думаю, я много чего забыл :)