Мне нужно сделать большой каталог с несколькими подкаталогами переносимым - PullRequest
0 голосов
/ 30 июня 2010

У меня есть набор данных, содержащийся в каталоге, который содержит около 30 000 подкаталогов.Каждый из этих каталогов содержит текстовый файл и другой подкаталог.Этот подкаталог содержит некоторое количество текстовых файлов (от 0 текстовых файлов до сотен).Многие из моих коллег используют этот набор данных, но, как таковой, для переноса набора данных с одного из компьютеров / жестких дисков лаборатории в другой требуется не менее 6 часов - не из-за размера набора данных, а из-за громоздкостиформат, в котором он хранится.Я хотел бы создать некоторый архив (например, .tar.gz) для хранения этих данных, чтобы их можно было быстро передавать между компьютерами.Я хотел посмотреть, работал ли кто-нибудь с чем-то подобным раньше и может сказать мне самый быстрый, лучший способ сделать это?Я думаю, что shell-скрипт может быть быстрее, чем просто создать архив самостоятельно.

1 Ответ

0 голосов
/ 30 июня 2010

Предложение: NFS смонтировать каталог.Тогда окно Windows или окно Unix может получить доступ к каталогу.

Комментарий: подобные структуры каталогов являются плохими новостями для inode в файловой системе, а также увеличивают время поиска.

Ответ: Этобудет работать с любым POSIX-совместимым Unix-боксом и предполагает, что для вашего репозитория есть только один базовый каталог -

cd /path/to/archive; tar cvf mycharhive.tar ./archive_dir;  gzip myarchive.tar

Это создает архив tar с относительным путем - то есть вы можете распаковать его в низкоуровневый каталог, а не от корня.

...