Проверить скопированные данные между общими папками Windows и Linux? - PullRequest
1 голос
/ 18 декабря 2011

Я только что скопировал тонну данных с машины под управлением Windows 7 Ultimate на сервер под управлением Ubuntu Server LTS 10.04.Я использовал утилиту robocopy через PowerShell для выполнения этой задачи, но я не смог найти в Интернете никакой информации о том, проверяет ли Robocopy целостность скопированного файла после его копирования на сервер.если это сделано по своей сути?Нет переключателя, который бы явно позволял вам добавить проверку к передаче файла.

Во-вторых, если это не так или есть неопределенность относительно того, делает ли это, какой самый простой способ сделать этонесколько каталогов с несколькими файлами / подкаталогами?

Спасибо!

Ответы [ 2 ]

2 голосов
/ 18 декабря 2011

Самый простой механизм, который я знаю, будет опираться на md5sum и Unix-подобную find утилиту на вашем компьютере с Windows.

Вы можете сгенерироватьфайл манифеста с именами файлов / md5sums:

find /source -type f -exec md5sum {} \; > MD5SUM

Скопируйте файл MD5SUM на свой компьютер Linux и запустите:

cd /path/to/destination
md5sum --quiet -c MD5SUM

Вы получите список файлов, которые не удалось:

$ md5sum --quiet -c /tmp/MD5SUM 
/etc/aliases: FAILED
md5sum: WARNING: 1 of 341 computed checksums did NOT match
0 голосов
/ 21 ноября 2013

Намного проще использовать юникс diff и rsync

С помощью diff вы можете сравнить два файла, но вы можете сравнить и два каталога. С diff я бы порекомендовал эту команду:

diff -r source/directory/ destination/directory

-r заставляет diff рекурсивно анализировать директорию или

Второй вариант - использовать rsync, предназначенный для синхронизации файлов или каталогов, но с опцией -n вы можете использовать его также для анализа различий между каталогами. rsync также работает, даже если файлы находятся не на одном хосте, это означает, что на одном может быть удаленный хост, и вы можете получить к нему доступ даже с ssh. Pluss rsync действительно гибок с множеством опций avaialbe

rsync -avn --itemize-changes --progress --stats source/directory/ destination/directory/
  • -n заставляет rsync выполнить «пробный запуск», то есть он не вносит изменений в
  • -a Эта опция включает в себя «Рекурсивный режим, символические ссылки, права доступа к файлам, метки времени файла, параметр владельца файла, параметр группы файлов
  • -v увеличение детализации
  • - itemize-change вывод сводки изменений для всех обновлений

Здесь вы можете найти еще больше способов конкурировать с каталогами: https://askubuntu.com/questions/12473/file-and-directory-comparison-tool

На странице rsync википедии вы можете найти альтернативные программы Windows для rsync

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...